System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() SPN型密码最优差分和线性特征搜索方法、系统及存储介质技术方案_技高网

SPN型密码最优差分和线性特征搜索方法、系统及存储介质技术方案

技术编号:40296752 阅读:13 留言:0更新日期:2024-02-07 20:45
本发明专利技术公开了一种SPN型密码最优差分和线性特征搜索方法、系统及存储介质。本发明专利技术通过分别构造轻量级Super S‑box的差分分布表DDTSS和线性近似表LATSS,然后以差分概率的和线性概率的上界分别对DDTSS和LATSS进行排序,之后基于改进的分支定界算法,在差分分布表DDTSS和线性近似表LATSS上,以给定的剪枝条件进行最优差分特征和最优线性特征的搜索。本发明专利技术使用更加严格的剪枝条件来优化分支定界搜索策略,能够在较短时间内得到SPN型轻量级密码抵抗差分分析和线性分析的精确安全界。本发明专利技术可用于SPN型轻量级密码的安全性评估,辅助轻量级密码算法的设计,具有较高的实用价值和应用前景。

【技术实现步骤摘要】

本专利技术涉及密码学领域,尤其是一种搜索spn型轻量级密码最优差分和线性特征的方法系统,以及存储相应程序的计算机可读存储介质。


技术介绍

1、spn(substitution permutation network)结构是现代分组密码最常用的一种密码结构,它是由非线性的混淆层和线性扩散层构成,其中混淆层通常采用多个并置的s盒(因此混淆层也被称为s盒层),而线性扩散层则包括基于字的置换和基于字的线性变换。spn结构随着aes(advanced encryption algorithm)的征集得到广泛应用,与aes类似,spn型密码的轮函数f(·)通常包含四个部分:s盒变换(sb)、行移位(sr)、列混淆(mc)、轮密钥加(ak),即spn型密码的轮函数如图1所示。

2、由于8比特s盒和mds(maximum distance separable)矩阵的硬件实现代价都比较高,因此aes这种传统密码算法无法适用于rfid、移动通信、无线传感器网络等资源受限的应用场景。为了适应资源受限的应用场景,轻量级密码算法应运而生。轻量级密码的设计准则是使用最少的硬件实现代价来达到特定的安全性需求,它一般采用硬件实现方式,固化在设备中,因此轻量级密码的硬件实现代价都比较低。在算法设计过程中,为了满足轻量化需求,设计者一般采用轻量化密码部件,例如s盒变换使用4比特s盒,线性变换使用4阶0-1矩阵或者轻量化mds矩阵。

3、在密码分析领域中,差分分析和线性分析是最有效的两种分析方法,因此抵抗差分分析和线性分析也成为现代分组密码设计中要遵循的一条基本准则。评估分组密码抵抗差分分析和线性分析的安全性,常用的两种方法是:(1)计算分组密码的最小差分活跃s盒个数和线性活跃s盒个数;(2)计算分组密码的最大差分特征概率和线性特征概率。

4、对于spn型分组密码,根据宽轨迹设计策略,可以从理论上计算其抵抗差分分析和线性分析的可证明安全界。通过计算最小活跃s盒个数,并结合s盒的最大差分概率和线性概率,设计者可以计算出最大差分特征概率和线性特征概率的上界。虽然计算最小活跃s盒个数的复杂度很低,提高了密码算法设计过程中安全性评估的效率,但是这种方法得到的安全界通常是非紧致的界。例如iso轻量级分组密码标准present,其r轮线性活跃s盒个数为r,s盒的最大线性概率为2-2,因此r轮线性特征概率的上界为2-2r。使用该方法评估present抵抗线性分析的安全性,无法保证31轮present算法能够抵抗线性分析。

5、密码算法安全性评估的精度对于算法性能和实现代价具有重要影响,精确的安全界能够提高设计者对于算法安全性的信心,要达到相同的安全冗余度,设计者可以使用更少的迭代轮数来提高算法性能,或者使用更“轻量”的密码部件来降低算法的硬件实现代价。计算最大差分特征概率和线性特征概率可以得到分组密码抵抗差分分析和线性分析的精确安全界,因此寻找最优差分特征和线性特征(具有最大差分概率和线性概率的特征)成为评估分组密码抵抗差分分析和线性分析的一种标准方法,也是最常用的一种方法。

6、对于markov密码,在随机等价假设和轮密钥独立假设下,一条差分特征的概率等于每一轮差分传播概率的乘积,即对于一条r轮差分特征ω=(α0,α1,…αr),其差分概率dp(ω)为:

7、

8、假设轮函数f(x)的线性逼近表达式的概率为p0,定义线性概率为:

9、lp(μ→ν)=(2p0-1)2,

10、那么在上述两条假设下,一条r轮线性特征γ=(β0,β1,…βr)的线性概率lp(γ)为:

11、

12、由于线性变换的差分概率和线性概率均为1,因此轮函数的差分概率和线性概率等于s盒层的相应概率,s盒的差分概率和线性概率可以分别通过查找差分分布表和线性近似表来计算。

13、定义1s盒的差分分布表

14、设s:是一个m比特s盒,它的差分分布表(ddt,differencedistribution table)是一个2m×2m的表,其中每一行对应s盒的输入差分,每一列对应s盒的输出差分。给定输入差分输出差分差分分布表中第α行、第β列的元素为:

15、

16、定义2s盒的线性近似表

17、设s:是一个m比特s盒,它的线性近似表(lat,linear approximationtable)是一个2m×2m的表,其中每一行对应s盒的输入掩码,每一列对应s盒的输出掩码。给定输入掩码输出掩码线性近似表中第μ行、第ν列的元素为:

18、

19、寻找最优差分特征和线性特征通常是通过计算机搜索程序辅助完成的,目前学术界最常用的自动化搜索差分特征和线性特征的方法包括:分支定界搜索算法、基于milp(mixed integer linear programming)的方法、基于sat(boolean satisfiabilityproblem)的方法。

20、分支定界搜索算法是由日本学者matsui最早提出的(又称matsui算法),该方法是一种深度优先搜索算法,通过引入分支定界策略来提高算法搜索效率。matsui算法对差分特征和线性特征执行递归搜索,它根据已知的i轮最优特征概率bi(1≤i≤r-1)和r轮最优特征概率br的初始估计值来计算br。对于任意只要matsui算法一定可以得到r轮最优特征概率br。对于feistel密码,其轮函数的差分传播如图2所示,matsui算法搜索最优差分特征的伪代码如算法1所示。

21、

22、

23、虽然matsui算法针对feistel型分组密码取得了较好的效果,能够在有限时间内找到达到安全界的最优差分特征和线性特征,但是对于spn型分组密码,其线性层的快速扩散性质和雪崩效应严重降低了matsui算法的搜索效率。经过bannier、kim等许多学者的不断优化和改进,目前matsui算法对于线性层使用比特置换的spn型轻量级密码(例如present、gift等)具有较高的效率,但是对于线性层使用矩阵变换的spn型密码,该算法的效率依然很低,缺乏实用价值。

24、基于milp的方法和基于sat的方法是两种更通用的自动化分析方法,由于其模型简单、通用性好,在密码算法的设计与分析中得到了广泛应用。这两种方法分别将最优特征的搜索问题转化为混合整数线性规划问题和布尔可满足问题,使用线性不等式组和布尔逻辑表达式来描述分组密码的差分和掩码传播,然后通过专门的求解器进行求解。然而,对于轮数较长或者轮函数较复杂的分组密码,由于需要非常多的变量和不等式或布尔表达式来描述差分和掩码的传播,求解器通常在有限的时间内无法完成求解。

25、尽管许多学者提出了很多方法来提高搜索效率,例如通过引入分而治之、分支定界等策略来优化算法模型,但是对于使用矩阵变换的spn型轻量级密码,其效果依然非常有限,无法在合理时间内找到达到安全界的最优差分特征和线性特征。因此,提高自动化搜索最优本文档来自技高网...

【技术保护点】

1.一种搜索SPN型轻量级密码最优差分和线性特征的方法,其特征在于,包括:

2.如权利要求1所述的搜索SPN型轻量级密码最优差分和线性特征的方法,其特征在于,所述分别构造轻量级Super S-box的差分分布表DDTSS和线性近似表LATSS,包括:

3.如权利要求2所述的搜索SPN型轻量级密码最优差分和线性特征的方法,其特征在于,所述S盒为4比特S盒,所述列混淆矩阵为4阶可逆矩阵。

4.如权利要求2或3所述的搜索SPN型轻量级密码最优差分和线性特征的方法,其特征在于,所述差分分布表DDTSS使用三张相互关联的表单分别存储输出差分、相应的差分概率,和相应差分概率的上界;所述线性近似表LATSS使用三张相互关联的表单分别存储输出掩码、相应的线性概率,和相应线性概率的上界。

5.如权利要求1所述的搜索SPN型轻量级密码最优差分和线性特征的方法,其特征在于,所述对于给定的输入差分和输入掩码,分别在所述差分分布表DDTSS和线性近似表LATSS上,以给定的剪枝条件进行最优差分特征和最优线性特征的搜索,包括:

6.如权利要求1所述的搜索SPN型轻量级密码最优差分和线性特征的方法,其特征在于,进行最优差分特征/线性特征的搜索过程中,相应轮数r,r≥3,最优差分特征概率/线性特征概率的初始估计值的计算方法为:

7.一种计算机可读存储介质,其存储有计算机程序,其特征在于,运行该计算机程序可执行如权利要求1-6任一所述的搜索SPN型轻量级密码最优差分和线性特征的方法。

8.一种搜索SPN型轻量级密码最优差分和线性特征系统,其特征在于,包括处理器和如权利要求7所述的计算机可读存储介质,所述处理器运行所述计算机可读存储介质上的计算机程序。

...

【技术特征摘要】

1.一种搜索spn型轻量级密码最优差分和线性特征的方法,其特征在于,包括:

2.如权利要求1所述的搜索spn型轻量级密码最优差分和线性特征的方法,其特征在于,所述分别构造轻量级super s-box的差分分布表ddtss和线性近似表latss,包括:

3.如权利要求2所述的搜索spn型轻量级密码最优差分和线性特征的方法,其特征在于,所述s盒为4比特s盒,所述列混淆矩阵为4阶可逆矩阵。

4.如权利要求2或3所述的搜索spn型轻量级密码最优差分和线性特征的方法,其特征在于,所述差分分布表ddtss使用三张相互关联的表单分别存储输出差分、相应的差分概率,和相应差分概率的上界;所述线性近似表latss使用三张相互关联的表单分别存储输出掩码、相应的线性概率,和相应线性概率的上界。

5.如权利要求1所述的搜索spn型...

【专利技术属性】
技术研发人员:刘正斌
申请(专利权)人:中国电子科技集团公司第三十研究所
类型:发明
国别省市:

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

1