买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】基于冗余轮的SM4白盒加密实现方法、计算机设备和介质_航天信息股份有限公司_202111515807.5 

申请/专利权人:航天信息股份有限公司

申请日:2021-12-13

公开(公告)日:2024-04-12

公开(公告)号:CN114205157B

主分类号:H04L9/40

分类号:H04L9/40;H04L9/06

优先权:

专利状态码:有效-授权

法律状态:2024.04.12#授权;2022.04.05#实质审查的生效;2022.03.18#公开

摘要:本发明提供一种基于冗余轮的SM4白盒加密实现方法、计算机设备和介质,该基于冗余轮的SM4白盒加密实现方法包括:在常规轮中任意位置插入5N个冗余轮,其中,N大于或者等于1;根据冗余轮的T函数,通过标准SM4密码算法生成轮密钥,并根据轮密钥构造查找表;所述T函数为仿射变换;以及根据所述查找表,生成白盒密文以对所述SM4白盒进行加密得到编码数据。本发明能有效增加冗余轮被辨别出来的难度,提高实用性。

主权项:1.一种基于冗余轮的SM4白盒加密实现方法,其特征在于,包括:在常规轮中任意位置插入5N个冗余轮,其中,N大于或者等于1;根据冗余轮的T函数,通过标准SM4密码算法生成轮密钥,并根据轮密钥构造查找表;所述T函数为仿射变换;根据所述查找表,生成白盒密文以对所述SM4白盒进行加密得到编码数据;其中,所述在常规轮中任意位置插入5个冗余轮的步骤包括:在第i轮之后插入第一冗余轮,表示为:Xi+4=Xi⊕TXi+1⊕Xi+2⊕Xi+3=Xi⊕Xi+1⊕Xi+2⊕Xi+3⊕c;其中,i表示当前轮数;Xi为第i轮输入的明文片段,Xi+1为第i+1轮输入的明文片段,Xi+2为第i+2轮输入的明文片段,Xi+3为第i+3轮输入的明文片段,Xi+4为第i+4轮输入的明文片段,各明文片段长度均为32比特;⊕为32位异或运算符;T为SM4分组密码算法规定的合成置换运算;c为32比特随机常向量,在每组5个冗余轮中为固定值;在第i轮之后插入第二冗余轮,表示为:Xi+5=Xi+1⊕TXi+2⊕Xi+3⊕Xi+4=Xi+1⊕Xi+2⊕Xi+3⊕Xi+4⊕c=Xi+1⊕Xi+2⊕Xi+3⊕Xi⊕Xi+1⊕Xi+2⊕Xi+3⊕c⊕c=Xi;其中,Xi+5为第i+5轮输入的明文片段;在第i轮之后插入第三冗余轮,表示为:Xi+6=Xi+2⊕TXi+3⊕Xi+4⊕Xi+5=Xi+2⊕Xi+3⊕Xi+4⊕Xi+5⊕c=Xi+2⊕Xi+3⊕Xi⊕Xi+1⊕Xi+2⊕Xi+3⊕c⊕Xi⊕c=Xi+1;其中,Xi+6为第i+6轮输入的明文片段;在第i轮之后插入第四冗余轮,表示为:Xi+7=Xi+3⊕TXi+4⊕Xi+5⊕Xi+6=Xi+3⊕Xi+4⊕Xi+5⊕Xi+6⊕c=Xi+3⊕Xi⊕Xi+1⊕Xi+2⊕Xi+3⊕c⊕Xi⊕Xi+1⊕c=Xi+2;其中,Xi+7为第i+7轮输入的明文片段;在第i轮之后插入第五冗余轮,表示为:Xi+8=Xi+4⊕TXi+5⊕Xi+6⊕Xi+7=Xi+4⊕Xi+5⊕Xi+6;⊕Xi+7⊕c=Xi⊕Xi+1⊕Xi+2⊕Xi+3⊕c⊕Xi⊕Xi+1⊕Xi+2⊕c=Xi+3;其中,Xi+8为第i+8轮输入的明文片段;所述冗余轮的T函数表示为:TX=X⊕c其中c为任意32比特常向量,T函数输入值X为之前3轮迭代的输出结果;所述查找表表示为:QiTX=QiX⊕c=Qli,0·x0⊕c0⊕r0⊕Qli,1·x1⊕c1⊕r1⊕Qli,2·x2⊕c2⊕r2⊕Qli,3·x3⊕c3⊕r3其中Qi为生成SM4白盒查找表的仿射变换,Qli,0,Qli,1,Qli,2,Qli,3为Qi仿射变换的线性变换,r0,r1,r2,r3为随机位移,r=r0⊕r1⊕r2⊕r3为Qi的位移向量,Qli,k·xk⊕ck⊕rk,k=0,1,2,3为子查询表输出。

全文数据:

权利要求:

百度查询: 航天信息股份有限公司 基于冗余轮的SM4白盒加密实现方法、计算机设备和介质

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。