首页/安全/加密与证书速查/SM3 密码杂凑算法(国密)
加密算法基础95 条

SM3 密码杂凑算法(国密)

国密哈希标准(GB/T 32905-2016):输出 256 位、块长 512 位、64 轮,用于 SM2 签名、TLCP 的 PRF/MAC 与国密设备校验。

加密与证书速查安全更新于 2026-10-12
标准GB/T 32905-2016
输出 / 块256 位 / 512 位
轮数64 轮
配套使用SM2 签名哈希、TLCP MAC、HMAC-SM3

计算与测试向量

计算与测试向量
printf abc | openssl dgst -sm3
# 输出:66c7f0f462eeedd9d1f2d46bdc10e4e24167c4875cf2f7a2297da02b8f4ba8e0
SM3 与 SHA-256 结构相近但参数与常量不同,不能互相替换;协议对接必须双方都启用 SM3。

易错点

  • 部分 OpenSSL 版本对 SM3 支持有限(如缺少 SM3 的 HMAC 优化),集成前确认版本能力
  • TLCP 中 SM3 既用于摘要也用于 MAC 与 PRF,参数配置需与对端一致

数据来源与参考

  • GB/T 32905-2016(SM3 密码杂凑算法)
  • GB/T 38636-2020(TLCP)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌