国密 SM3 哈希算法扩展库。
相关库: crypt.sm4, BouncyCastle.SM2
SM3 块大小:64 字节(512 位)
SM3 输出长度:32 字节(256 位)
创建可增量更新的 SM3 哈希对象
返回哈希对象,包含 update、final、finalHex、finalBase64、reset、digest、digestHex 等方法
创建可增量更新的 HMAC-SM3 对象
参数 @key 指定密钥(字符串或 buffer)
返回 HMAC 对象,包含 update、final、finalHex、finalBase64、reset 等方法
计算 SM3 哈希值
参数 @data 指定字符串或 buffer
返回哈希值(buffer 类型,32字节)
计算 SM3 哈希值并返回 Base64 字符串
参数 @data 指定字符串或 buffer
返回哈希值的 Base64 编码字符串
计算文件的 SM3 哈希值
参数 @filePath 指定文件路径
参数 @bufferSize 可选,指定缓冲区大小,默认 1MB
返回文件哈希值(buffer 类型,32字节)
计算文件的 SM3 哈希值并返回 Base64 字符串
参数 @filePath 指定文件路径
参数 @bufferSize 可选,指定缓冲区大小,默认 1MB
返回文件哈希值的 Base64 编码字符串
计算文件的 SM3 哈希值并返回十六进制字符串
参数 @filePath 指定文件路径
参数 @bufferSize 可选,指定缓冲区大小,默认 1MB
返回文件哈希值的十六进制字符串(64个字符)
计算 SM3 哈希值并返回十六进制字符串
参数 @data 指定字符串或 buffer
返回哈希值的十六进制字符串(64个字符)。
可选指定 @lower 为 true 将返回值转为小写。
计算 HMAC-SM3
参数 @data 指定字符串或 buffer
参数 @key 指定密钥(字符串或 buffer)
返回 HMAC 值(buffer 类型,32字节)
计算 HMAC-SM3 并返回 Base64 字符串
参数 @data 指定字符串或 buffer
参数 @key 指定密钥(字符串或 buffer)
返回 HMAC 值的 Base64 编码字符串
计算 HMAC-SM3 并返回十六进制字符串
参数 @data 指定字符串或 buffer
参数 @key 指定密钥(字符串或 buffer)
返回 HMAC 值的十六进制字符串(64个字符)。
可选指定 @lower 为 true 将返回值转为小写。
密钥派生函数
参数 @data 指定输入数据(字符串或 buffer)
参数 @salt 指定盐值(字符串或 buffer)
参数 @iterations 可选,迭代次数,默认 1000
参数 @keyLength 可选,派生密钥长度,默认 32 字节
返回派生的密钥(buffer 类型)
验证哈希值
参数 @data 指定数据(字符串或 buffer)
参数 @expectedHash 指定期望的哈希值(buffer 或十六进制字符串)
返回布尔值,表示验证是否通过
验证 HMAC
参数 @data 指定数据(字符串或 buffer)
参数 @key 指定密钥(字符串或 buffer)
参数 @expectedHmac 指定期望的 HMAC 值(buffer 或十六进制字符串)
返回布尔值,表示验证是否通过