[发明专利]基于依赖密钥的S盒的SM4白盒实现方法有效
申请号: | 201610555791.3 | 申请日: | 2016-07-15 |
公开(公告)号: | CN107623568B | 公开(公告)日: | 2022-09-06 |
发明(设计)人: | 范修斌;白琨鹏 | 申请(专利权)人: | 青岛博文广成信息安全技术有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06;H04L9/00 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 266200 山东省青岛市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 依赖 密钥 sm4 实现 方法 | ||
白盒技术是指通过查表来实现密码算法密钥保护的技术。本发明给出了基于依赖密钥的S盒的SM4白盒实现方法。本发明属于信息安全技术领域,涉及密码算法。基于依赖密钥的S盒的SM4白盒实现方法有两个基本算子构成,它们分别为D盒、R盒。本发明给出了详细的基于依赖密钥的S盒的SM4白盒实现方法以及安全性分析。
技术领域
本发明属于信息安全技术领域,涉及密码算法的实现方法。
背景技术
白盒技术是指通过查表来实现密码算法密钥保护的技术。该技术提供了一种在终端用户没有专门介质保护密钥情况下的一种密码算法软件安全应用方法。白盒技术主要应用领域是数字产权保护。该技术虽然允许用户在设备中使用密码软件,但防止非法用户恢复、传播密码算法的密钥而牟利。同时,该技术又可以防止能量攻击。由此可见,白盒技术具有重要的实践意义。人们已经研发了基于固定S盒的SM4白盒实现方法,本发明给出了基于依赖密钥的S盒的SM4白盒实现方法。
发明内容
依赖密钥的S盒是指其中f为:
g(x)=x8+x7+x6+x5+x4+x2+1
生成的GF(28)上的求逆运算,λr,j为8×8的可逆线性变换,ur,j为8比特向量,且λr,j,ur,j由密钥控制生成。
基于依赖密钥的S盒的SM4白盒实现方法中,有两个基本算子,即D盒和R盒,分别称之为状态变换算子和密钥保护算子。下面先介绍D盒、R盒,然后给出基于依赖密钥的S盒的SM4白盒实现方法的描述以及安全性分析。
D盒:
D盒算子用于将本轮输入的32比特数据进行状态变换,定义如下:
其中:
(1)r=1,2,…,32是当前的轮数,i,j=0,1,2,3,i,j都由右向左增序,i是指32比特输入的序,j是每个32比特输入的8比特一组的4个分组的序;
(2)Dr,i,j算子8进32出,其为左作用算子,即Dr,i,j的作用方式为其中是函数或算子的作用;
(3)MB是在GF(2)上随机选取的32×32可逆线性变换,mb是在GF(2)上随机选取的8×8可逆线性变换;
(4)br,α,i,j,α=0,1,2,3是4个独立随机选取的8比特数值;
(5)B和B′为:
(5.1)
(5.2)
(5.3)Br+i-1,1,3,Br+i-1,1,2,Br+i-1,1,1,Br+i-1,1,0,Br+i-1,0,3,Br+i-1,0,2,Br+i-1,0,1,Br+i-1,0,0是8个独立随机选取的32比特随机数;
(5.4)B′r+i-1,3,B′r+i-1,2,B′r+i-1,1,B,r+i-1,0是只有3个自由度的4个32比特随机数。
R盒:
R盒是密钥保护算子,定义如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛博文广成信息安全技术有限公司,未经青岛博文广成信息安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610555791.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种新型电镀用挂架
- 下一篇:一种汽车左右门饰条电镀挂载装置