国密SM4对称算法实现说明(原SMS4无线局域网算法标准)

    最近浏览了一下国密办的官方网站,新公布了国密算法标准,其中有SM4算法,说明为原SMS4算法,既无线局域网标准的分组数据算法,可参考

http://www.oscca.gov.cn/News/201204/News_1228.htm 公告说明,但不能下载标准文档 。
    SM4为对称算法,密钥长度和分组长度均为128位。按原SMS4的标准描述:加密算法与密钥扩展算法都采用32轮非线性迭代结构。解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反,解密轮密钥是加密轮密钥的逆序。
    看了一下,算法中还描述了类似于DES算中的S盒变换。那如何来设计这个算法,在网上查询一下实现的代码还是满多的,按之前的经验参照Xyssl算法风格和网上查询的示例代码实现C语言实现代码。在此非常感谢Xyssl和
http://hi.baidu.com/numax/blog/item/80addfefddfb93e4cf1b3e61.html这位版主。
    改造后的代码实现了ECB和CBC两种加密模式,未处理数据填充Padding,使用时数据设置为16的倍数。源代码请参考CSDN的资源链接:

http://download.csdn.net/detail/goldboar/4244270,使用VC6实现,测试数据通过。

阅读更多
想对作者说点什么? 我来说一句

sm4算法(原sms4算法

2012年06月02日 201KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭