写给开发人员的实用密码学 - 国密哈希算法SM3实现要点

本文探讨了在libtomcrypt中实现国密标准SM3哈希算法的关键点,包括参照GM/T 0004-2012标准,定义struct ltc_hash_descriptor结构,设置OID,初始化、处理和测试函数。同时提到了HMAC的实现,并提供了测试用例和移植代码链接。

在《写给开发人员的实用密码学 - Hash算法》和《写给开发人员的实用密码学 - MAC》这两篇文章分别介绍了哈希算法和消息验证码,其中消息验证码使用到了哈希算法。国密标准中也定义了一种哈希算法 SM3,本文就来谈一谈在 libtomcrypt 中实现 SM3 算法的要点。

SM3 算法描述可以参考《GM/T 0004-2012 SM3密码杂凑算法》这个标准文档。实现代码可以参考 GmSSL 项目的 sm3.c 文件。

往 libtomcrypt 中添加一种新的哈希算法,实际上是要定义一个 struct ltc_hash_descriptor 结构:

struct ltc_hash_descriptor {
    /*
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云水木石

但行好事,莫问前程

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值