sha256

std.crypto.hash.sha256

val DIGEST_SIZE

pub val DIGEST_SIZE: usize = 32

val BLOCK_SIZE

pub val BLOCK_SIZE: usize = 64

rec State

pub rec State;

fun init

pub fun init() State;

使用标准 IV 初始化一个新的 SHA-256 状态

ret:已初始化的状态

fun update

pub fun update(s: *State, data: *u8, len: usize);

向哈希状态中喂入数据

s:指向哈希状态的指针 data:指向输入字节的指针 len:要处理的字节数

fun final

pub fun final(s: *State, digest: *u8);

结束哈希计算并写入 32 字节的摘要

s:指向哈希状态的指针 digest:指向 32 字节输出缓冲区的指针

fun hash

pub fun hash(data: *u8, len: usize, digest: *u8);

单次调用计算字节缓冲区的 SHA-256 摘要

data:指向输入字节的指针 len:要哈希的字节数 digest:指向 32 字节输出缓冲区的指针