[发明专利]一种16轮SM4-256白盒密码实现方法在审
| 申请号: | 201910623740.3 | 申请日: | 2019-07-11 |
| 公开(公告)号: | CN110474761A | 公开(公告)日: | 2019-11-19 |
| 发明(设计)人: | 杨亚涛;张也;张筱薇;赵阳;林天祥;黄湘颖 | 申请(专利权)人: | 北京电子科技学院 |
| 主分类号: | H04L9/06 | 分类号: | H04L9/06 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 100070*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 密码算法 白盒 查找表 小块 密钥信息隐藏 算法执行效率 改进 仿射变换 模式支持 对密钥 加密轮 新模式 密钥 置乱 算法 分组 分割 | ||
1.一种16轮SM4-256白盒密码算法方案与系统,其特征在于,描述了密钥长度为256比特、加密轮数为16轮时改进的SM4密码算法新模式,该模式依据设计原理对轮函数的结构即加密算法的迭代过程进行了改进,输入的256比特明文在256比特初始密钥的作用下,经16轮迭代运算和1次反序变换得到256比特的密文
2.根据权利要求1所述改进的SM4密码算法新模式,其特征在于,加密算法中每轮轮函数产生两个中间变量,即:
其中,是比特异或符号,Xi(i=0,1,...,39)均为32比特数值,是明文m经迭代运算产生的中间变量;
(1)轮函数F中的合成置换T:是一个可逆变换,由非线性变换τ和线性变换L复合而成,即T(·)=L(τ(·));
(2)非线性变换τ:由4个并行的S盒构成,设输入为输出为则(b0,b1,b2,b3)=τ(A)=(Sbox(a0),Sbox(a1),Sbox(a2),Sbox(a3));
(3)线性变换L:非线性变换τ的输出是线性变换L的输入,设输入为输出为则
3.根据权利要求1所述改进的SM4密码算法新模式,其特征在于,依据设计原理对密钥扩展算法即轮密钥的产生过程进行了改进,每轮输入8个32比特的值,产生1个新的中间变量。即:
rki=Ki+8,i=0,1,2,...,15
其中,rki(i=0,1,...,15)均为32比特数值,是密钥扩展算法产生的轮密钥;
(1)FK′扩展算法:将系统参数扩展为
(2)合成置换T′:是一个可逆变换,由非线性变换τ的输出是线性变换L′复合而成,即T′(·)=L′(τ(·));非线性变换τ由4个并行的S盒构成;设输入为输出为则
(3)为标准SM4密码算法的固定参数;
(4)(rk0,rk1,...,rk15)由改进的SM4密码算法中密钥扩展算法生成的轮密钥。
4.根据权利要求1所述改进的SM4密码算法新模式,其特征在于,其模式不仅可用于明文长度/密钥长度为256比特/256比特的情况,也可用于明文长度/密钥长度为128比特/256比特的情况。
5.一种16轮SM4-256白盒密码算法方案与系统,其特征在于,提出了一种改进的SM4白盒密码算法,把改进SM4密码算法的每一轮分割成小块,对每个小块进行置乱编码,将编码后的结果用查找表和仿射变换表示,从而使得密钥信息隐藏在查找表中。输入256比特明文(X0,X1,X2,X3,X4,X5,X6,X7),经过外部置乱编码和16轮变换后,进行反序变换,输出256比特密文(Y0,Y1,Y2,Y3,Y4,Y5,Y6,Y7)。
6.根据权利要求5所述的改进的SM4白盒密码算法方案,其特征在于,明文到密文的映射为置乱编码,把X′=G·X·F看成X的一个置乱编码形式,其中F为输入置乱编码,G为输出置乱编码。在轮变换前后即在第一轮输入之前添加输入置乱编码,最后一轮输出之后添加输出置乱编码,在进行内部编码的同时进行外部编码以保证白盒算法的完整性和可用性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京电子科技学院,未经北京电子科技学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910623740.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种新型即插即用3-DES密码芯片
- 下一篇:环式可编辑区块链的构建方法





