使用自等价编码及其隐函数构造的SM4白盒实现方法技术

技术编号:41253123 阅读:23 留言:0更新日期:2024-05-11 09:14
本发明专利技术公开了一种使用自等价编码及其隐函数构造的SM4白盒实现方法,它可以实现SM4的软件安全实现,包含自等价构造以及隐函数构造两种方案。自等价构造方案将密钥嵌入到自等价编码以及SM4的线性层变换之中,可以有效抵抗密钥提取攻击;而隐函数构造方案则结合自等价编码对轮函数的输入进行线性方程组求解以求得轮函数的输出。两个方案均采用自等价编码,因此SM4的白盒实现不依赖于白盒密钥查找表。这使得两种方案所需的存储空间较小,具有较好的性能表现;其中,隐函数构造方案基于线性方程组求解,使得轮函数的密钥及编码被隐匿执行,相比自等价构造方案具有更好的安全性,但性能表现有所下降。

【技术实现步骤摘要】

本专利技术涉及信息安全,具体涉及基于自等价编码及其隐函数构造的sm4白盒实现方法。


技术介绍

1、sm4分组密码算法简称为sm4算法。为配合wapi无线局域网标准的推广应用,sm4算法于2006年公开发布,2012年3月发布成为国家密码行业标准(标准号为gm/t 0002-2012),2016年8月发布成为国家标准(标准号为gb/t 32907-2016)。2021年6月25日,sm4算法作为国际标准iso/iec 18033-3:2010/amd1:2021《信息技术安全技术加密算法第3部分:分组密码补篇1:sm4》,由国际标准化组织iso/iec正式发布。

2、白盒密码(white-box cryptography)是面向密码算法设备已被攻击者完全操控的环境下,设计的可抵抗密钥提取攻击的密码算法。其通常为使用查找表以及编码技术对密码算法中的密钥相关操作进行混淆保护,使得攻击者无法在内存以及密码执行过程中获取密钥信息。

3、自等价编码(self-equivalence encodings)是利用密码算法中非线性层(如s盒)的自等价本文档来自技高网...

【技术保护点】

1.一种使用自等价编码的SM4白盒实现方法,其特征在于,使用SM4的S盒的仿射自等价编码,对密钥进行隐藏,并引入仿射变换编码对密钥与自等价编码进行合并,使得轮函数仅由仿射变换与S盒操作构成,包括以下步骤:

2.根据权利要求1所述的SM4白盒实现方法,其特征在于步骤一中使用的编码Pi及为互逆的32比特随机仿射变换。

3.根据权利要求1所述的SM4白盒实现方法,其特征在于轮函数中每个S盒构造仿射自等价每组的仿射自等价编码(Bi,Ai)是随机选取且保密的,其中0≤i≤3。为了与轮状态编码组合,构造32比特的仿射自等价编码A=diag(A0,A1,A2,A3)及B=dia...

【技术特征摘要】

1.一种使用自等价编码的sm4白盒实现方法,其特征在于,使用sm4的s盒的仿射自等价编码,对密钥进行隐藏,并引入仿射变换编码对密钥与自等价编码进行合并,使得轮函数仅由仿射变换与s盒操作构成,包括以下步骤:

2.根据权利要求1所述的sm4白盒实现方法,其特征在于步骤一中使用的编码pi及为互逆的32比特随机仿射变换。

3.根据权利要求1所述的sm4白盒实现方法,其特征在于轮函数中每个s盒构造仿射自等价每组的仿射自等价编码(bi,ai)是随机选取且保密的,其中0≤i≤3。为了与轮状态编码组合,构造32比特的仿射自等价编码a=diag(a0,a1,a2,a3)及b=diag(b0,b1,b2,b3),即使用4个8比特的仿射自等价编码进行对角线拼接形成32比特仿射变换。

4.根据权利要求1所述的sm4白盒实现方法,其特征在于所述轮函数通过32比特仿射变换mi+j、ci、di和非线性变换s组成,其中0≤i≤32与1≤j≤3。

5.一种使用自等价编码并基于隐函数构造的sm4白盒实现方法,其特征在于,利用sm4的s盒的仿射自等价编码,将白盒sm4的轮函数转换为隐函数,根据轮函数的输入列出线性方程式,...

【专利技术属性】
技术研发人员:龚征汤宇锋易宁
申请(专利权)人:广州安研信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1