pub val BLOCK_SIZE: usize = 136
pub rec State;
SHAKE256 XOF 状态
pub fun init() State;
初始化一个新的 SHAKE256 状态
ret:已初始化的状态
pub fun update(s: *State, data: *u8, len: usize);
向 XOF 状态中喂入数据
s:指向 XOF 状态的指针 data:指向输入字节的指针 len:要处理的字节数
pub fun finalize(s: *State);
结束吸收并准备挤出(squeeze);在 squeeze 之前调用一次
s:指向 XOF 状态的指针
pub fun squeeze(s: *State, out: *u8, len: usize);
挤出输出字节;可重复调用以获取更多输出
s:指向 XOF 状态的指针 out:指向输出缓冲区的指针 len:要生成的字节数
pub fun xof(data: *u8, len: usize, out: *u8, out_len: usize);
单次调用在字节缓冲区上生成 out_len 字节的 SHAKE256 输出
data:指向输入字节的指针 len:输入字节数 out:指向输出缓冲区的指针 out_len:要生成的输出字节数