一种基于S盒的分割方法技术

技术编号:19327102 阅读:45 留言:0更新日期:2018-11-03 14:13
本发明专利技术公开了一种基于S盒的分割方法,包括如下内容:对于DES算法:用DESL的S盒替换原算法中的S4或用原算法中的S4替换原算法中的所有S盒;对于CAST‑128算法:去掉原算法“循环密钥”操作,将“模加密钥”以及“模减密钥”均改为“异或密钥”的操作。与现有技术相比,本发明专利技术的积极效果是:对于DES算法,采用本发明专利技术的方式替换后,其抵抗差分分析的能力明显提升。对于CAST‑128算法,通过修改S盒及其使用顺序,使得新的轮函数能够抵抗概率为2

A segmentation method based on S box

The invention discloses a method of segmentation based on S-box, which includes the following contents: for DES algorithm, the S-box of DESL is used to replace the S-box of the original algorithm or the S-box of the original algorithm is replaced by the S-box of the original algorithm; for CAST_128 algorithm, the operation of \cyclic key\ of the original algorithm is removed, and the \modular encryption key\ and \modular subtraction key\ are replaced. Are changed to \XOR key\ operations. Compared with the prior art, the positive effect of the present invention is that the ability of resisting differential analysis of the DES algorithm is obviously improved after replacing the DES algorithm with the method of the present invention. For CAST 128 algorithm, by modifying the S-box and its use order, the new round function can resist the probability of 2.

【技术实现步骤摘要】
一种基于S盒的分割方法
本专利技术涉及一种基于S盒的分割方法。
技术介绍
差分分析最初由Biham和Shamir在1990年提出,其现在已经被广泛用于对称密码算法的分析,因此可以通过研究密码算法抵抗差分分析的能力来评估其安全性。目前的研究结果表明,S盒的选择会影响差分路线的概率和传播轮数,进而影响其抵抗差分分析的能力。由于传统的DES算法使用的S盒的设计细节暂时未公开,因此对其S盒进行替换将有提升其抵抗差分分析的能力的可能性。侧信道攻击是攻击者通过观察算法的运行时间、功耗和电磁辐射等手段来获取密钥的手段,而传统的CAST-128算法无法抵抗侧信道攻击。一般的抵抗侧信道攻击的方法主要是通过在算法中增加噪声(如通过在算法运行中加入随机时延),使得攻击者难以识别内部密钥信息,但这种抵制方法难以给出可证明安全的结果;目前最有效的抗侧信道攻击的设计方法是采用掩码机制,该机制是可证明安全的,但掩码机制会使算法的执行效率大大降低,使其在小规模嵌入式设备上运行不切实际。
技术实现思路
为了克服现有技术的上述缺点,本专利技术提供了一种基于S盒的分割方法。本专利技术解决其技术问题所采用的技术方案是:一种基于S盒的分割方法,包括如下内容:一、对于DES算法:步骤一、用DESL的S盒替换原算法中的S4或用原算法中的S4替换原算法中的所有S盒;步骤二、计算原算法4轮、5轮和6轮的最优差分特征的概率;步骤三、计算新算法4轮、5轮和6轮的最优差分特征的概率;步骤四、比较新旧算法的最优差分特征概率,确定新算法的差分特征概率均低于原算法,且新算法的活跃S盒个数与原算法中活跃S盒的个数保持相同;二、对于CAST-128算法:步骤一、去掉原算法“循环密钥”操作,将“模加密钥”以及“模减密钥”均改为“异或密钥”的操作;步骤二、修改S1,使其输入a和b对应的输出值相同,记为S1′;修改S2,使其输入c和d对应的输出值相同,记为S2′;修改S3,使其输入e和f对应的输出值相同,记为S3′;修改S4,使其输入g和h对应的输出值相同,记为S4′;步骤三、将轮函数f1的S盒定为(S1′,S2′,S3′,S4′),轮函数f2的S盒定为(S2′,S3′,S4′,S1′),轮函数f3的S盒定为(S3',S4',S1',S2′),这样每三轮循环一次,组成新算法。与现有技术相比,本专利技术的积极效果是:对于DES算法,采用本专利技术的方式替换后,其抵抗差分分析的能力明显提升,而原算法的S盒抵抗差分分析的能力很弱。对于CAST-128算法,通过修改S盒及其使用顺序,使得新的轮函数能够抵抗概率为2-7的高概率差分特征的出现,因此新算法保持原有抵抗差分分析的能力,同时能够抵抗侧信道攻击。这是因为在修改了S盒之后,新算法的S盒变为非双射S盒,而非双射S盒能够抵抗侧信道攻击。附图说明本专利技术将通过例子并参照附图的方式说明,其中:图1为5轮差分分析的示意图;图2为4轮差分分析的示意图。具体实施方式一种基于S盒的分割方法,包括如下内容:一、对于DES算法:步骤一:替换原算法的S4或用原算法的S4替换其所有S盒;通过分析其8个S盒的差分分布表和线性近似表,可以发现S4的差分分布表和线性近似表中各元素的个数与其他S盒不同,详见表1和表2。因此,考虑替换S4或者用S4替换所有的S盒。步骤二:计算原算法4轮、5轮和6轮的最优差分特征的概率;步骤三:计算新算法4轮、5轮和6轮的最优差分特征的概率;步骤四:比较两个算法的最优差分特征概率;比较发现用S4替换后新算法的差分特征概率均低于原算法,且新算法的活跃S盒个数与原算法中活跃S盒的个数可以保持相同。因此,利用此方式替换后,其抵抗差分分析的能力明显提升,而原算法的S盒抵抗差分分析的能力很弱。表1差分分布表中不同元素的个数161412108642S1112244684168232246S2511165787158226244S348205399141234256S429024015612826896S547265296157233218S646233888185228251S78142436106151202249S867165395179208225表2线性近似表中不同元素的个数二、对于CAST-128算法:步骤一:去掉原算法“循环密钥”操作,将“模加密钥”以及“模减密钥”均改为“异或密钥”的操作;步骤二:修改S1,使其某两个输入a和b对应的输出值相同,记为S1′;修改S2,使其输入c和d对应的输出值相等,记为S2′;修改S3,使其输入e和f对应的输出值相同,记为S3′;修改S4,使其输入g和h对应的输出值相同,记为S4′;我们要求在选择a,b,c,d,e,f,g,h的时候,对于任意的输入x和y,修改后的S盒满足其对应输出差分的低8比特不等于具有相同输出值的两个输入的异或值,即:并且a,b,c,d,e,f,g,h互不相同;步骤三:将轮函数f1的S盒定为(S1′,S2′,S3',S4′),轮函数f2的S盒定为(S2′,S3′,S4′,S1′),轮函数f3的S盒定为(S3',S4',S1',S2'),这样每三轮循环一次,组成新算法;步骤四:评估新算法抵抗差分分析和抵抗侧信道攻击的能力。对于CAST-128,为了使其能够抵抗侧信道攻击,将修改原算法的S盒,使得修改后S盒的某一个输出值对应两个不同的输入值,从而使其变成非双射的S盒。对于每一个S盒,总共有种选择方式进行修改。通过分析S盒的差分分布表发现:对任意一种S盒的修改方式,得到新的S盒的差分分布表的分布规律是相同,因此只随机考虑一种修改方式。假设修改S1中第j项对应的取值(其中0≤j≤255),使其等于第i项对应的取值(其中0≤i≤255且i≠j)。差分分布表的性质并不会随着i和j取值的改变而发生变化,且对CAST-128的4个S盒均成立,因此任意选择i和j取值均可。但是,为了避免在分析过程中通过模加或者模减操作消掉S盒的输出差分值,从而可能会出现高概率或者更长轮数的差分路线。如图1所示,当输入差分为(Δ1,00||00||00||00)时,经过4轮传播之后,其第5轮的输入差分为(Δ2,00||00||00||00)的概率为P1×P2。这会导致可用的差分路线变长或者使得差分路线的概率增大,从而使得新算法抵抗差分分析的能力变弱。因此,我们在修改S盒的时候对于i和j的取值做了步骤二中的限制。本专利技术的工作原理为:1.DES算法在分析DES的8个S盒的差分分布表和线性近似表之后,可以看出S4的差分分布表和线性近似表中各元素的个数与其他S盒不同。因此考虑替换S4或者用S4替换所有的S盒。而通过分析DESL算法中的S盒的差分分布表和线性近似表,可以看出DESL的S盒的差分分布表和线性近似表与DES中除S4之外的其他S盒比较接近。表3DESL的S盒差分分布表和线性近似表总不同元素个数考虑用DESL的S盒替换原DES算法中的S4,得到的差分路线如表4所示。表4用DESL的S盒替换原算法S盒后的差分特征发现对于4轮差分路线来说,找到了概率为2-9.2858的最优差分特征,优于原算法差分路线;对于5轮差分特征,找到了概率为2-13.215的最优差分特征,与原算法差分路线的概率相同;而对于6轮差分特征,新算法的差分概率为2本文档来自技高网...

【技术保护点】
1.一种基于S盒的分割方法,其特征在于:包括如下内容:一、对于DES算法:步骤一、用DESL的S盒替换原算法中的S4或用原算法中的S4替换原算法中的所有S盒;步骤二、计算原算法4轮、5轮和6轮的最优差分特征的概率;步骤三、计算新算法4轮、5轮和6轮的最优差分特征的概率;步骤四、比较新旧算法的最优差分特征概率,确定新算法的差分特征概率均低于原算法,且新算法的活跃S盒个数与原算法中活跃S盒的个数保持相同;二、对于CAST‑128算法:步骤一、去掉原算法“循环密钥”操作,将“模加密钥”以及“模减密钥”均改为“异或密钥”的操作;步骤二、修改S1,使其输入a和b对应的输出值相同,记为S′1;修改S2,使其输入c和d对应的输出值相同,记为S′2;修改S3,使其输入e和f对应的输出值相同,记为S′3;修改S4,使其输入g和h对应的输出值相同,记为S′4;步骤三、将轮函数f1的S盒定为(S′1,S′2,S′3,S′4),轮函数f2的S盒定为(S′2,S′3,S′4,S′1),轮函数f3的S盒定为(S′3,S′4,S′1,S′2),这样每三轮循环一次,组成新算法。

【技术特征摘要】
1.一种基于S盒的分割方法,其特征在于:包括如下内容:一、对于DES算法:步骤一、用DESL的S盒替换原算法中的S4或用原算法中的S4替换原算法中的所有S盒;步骤二、计算原算法4轮、5轮和6轮的最优差分特征的概率;步骤三、计算新算法4轮、5轮和6轮的最优差分特征的概率;步骤四、比较新旧算法的最优差分特征概率,确定新算法的差分特征概率均低于原算法,且新算法的活跃S盒个数与原算法中活跃S盒的个数保持相同;二、对于CAST-128算法:步骤一、去掉原算法“循环密钥”操作,将“模加密钥”以及“模减密钥”均改为“异或密钥”的操作;步骤二、修改S1,使其输入a和b对应的输出值相同,记为S′1;修改S2,使其输...

【专利技术属性】
技术研发人员:赵伟王美琴曹云飞范佳汤殿华王林周宇张文政
申请(专利权)人:中国电子科技集团公司第三十研究所
类型:发明
国别省市:四川,51

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

1