Sha2MainChipConfig

Trait Sha2MainChipConfig 

Source
pub trait Sha2MainChipConfig:
    Send
    + Sync
    + Clone {
    const BLOCK_BYTES: usize;
    const STATE_BYTES: usize;
    const OPCODE: Rv32Sha2Opcode;
    const BLOCK_READS: usize = _;
    const STATE_READS: usize = _;
    const STATE_WRITES: usize = _;
    const TIMESTAMP_DELTA: usize = _;
    const MAIN_CHIP_WIDTH: usize = _;
}

Required Associated Constants§

Source

const BLOCK_BYTES: usize

Number of bytes in a SHA block (sometimes referred to as message bytes in the code)

Source

const STATE_BYTES: usize

Number of bytes in a SHA state

Source

const OPCODE: Rv32Sha2Opcode

OpenVM Opcode for the instruction

Provided Associated Constants§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl Sha2MainChipConfig for Sha256Config

Source§

const BLOCK_BYTES: usize = 64

Source§

const STATE_BYTES: usize = 32

Source§

const OPCODE: Rv32Sha2Opcode = Rv32Sha2Opcode::SHA256

Source§

impl Sha2MainChipConfig for Sha384Config

Source§

const BLOCK_BYTES: usize = Sha512Config::BLOCK_BYTES

Source§

const STATE_BYTES: usize = Sha512Config::STATE_BYTES

Source§

const OPCODE: Rv32Sha2Opcode = Sha512Config::OPCODE

Source§

impl Sha2MainChipConfig for Sha512Config

Source§

const BLOCK_BYTES: usize = 128

Source§

const STATE_BYTES: usize = 64

Source§

const OPCODE: Rv32Sha2Opcode = Rv32Sha2Opcode::SHA512

Implementors§