1、SM4算法说明
SM4分组密码算法,原名SMS4。与DES和AES算法类似,是一种分组密码算法。其长度是128bit,密钥长度128bit。加密算法与密钥扩展算法均采用32轮非线性迭代结构、以字word(32bit)为单位进行加秘运算,每一次迭代运算均为一轮变换函数F。SM4算法加/解密算法得结构相同,只是使用得轮密钥相反,其中解密轮密钥是加密轮密钥得逆序。
具体实现说明详见“GMT 0002-2012 SM4分组密码算法.pdf”说明,全部代码详见openssl-3.3.0-alpha1中sm4.c代码。
2、结构图说明
下图描述了加解密的详细过程。
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/b5ad7b1484324d82ba0f00d3576ed91c.png)
ECB模式说明如下图。
加密
解密