[发明专利]一种基于模板攻击的混沌分组加密分析方法有效

专利信息
申请号: 201911016102.1 申请日: 2019-10-24
公开(公告)号: CN110730062B 公开(公告)日: 2021-07-30
发明(设计)人: 罗玉玲;张顺生;刘俊秀;丘森辉;岑明灿;蔡超波 申请(专利权)人: 广西师范大学
主分类号: H04L9/00 分类号: H04L9/00
代理公司: 桂林市华杰专利商标事务所有限责任公司 45112 代理人: 刘梅芳
地址: 541004 广西壮*** 国省代码: 广西;45
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 模板 攻击 混沌 分组 加密 分析 方法
【权利要求书】:

1.一种基于模板攻击的混沌分组加密分析方法,其特征是,包括如下步骤:

a)实现混沌分组加密过程:

(1)生成轮密钥:混沌密码算法的轮密钥是基于帐篷映射生成的,帐篷映射表示为:

其中参数βi是混沌系统的参数,并且由主密钥Ki生成,主密钥的每个字节都通过以下方法转换到0到1之间相应的βi

其中主密钥的第ith个字节记为Ki,i∈[1,16],x0是在0和1之间的十进制数,并且将x0和β1作为帐篷映射的初始参数,结果x1是通过迭代f(x0,β1)20次,剩下的参数计算为公式(3)所示:

x(i)=f20(x(i-1),βi), (3),

其中,f20表示迭代帐篷映射20次,i∈[2,16],最后x16和β16作为帐篷映射的初始值,并且迭代100+16R次产生伪随机序列,最后的16R个伪随机数字表示为xi,i∈[101,16R],并且轮密钥ki表示为:

ki=floor(xi×255), (4),

其中floor(x)函数返回不大于x的最大整数;

(2)轮密钥同明文相加:在第一轮加密过程中,中间值的第ith个字节由第ith个字节的明文ci和第ith个字节轮密钥ki相异或得到:

其中1≤i≤16;

(3)字节替换操作:S-box查找表进行替换轮密钥和上一轮中间值的异或操作值,使用AES算法中的S-box,它通过数学方式产生;

(4)扩散操作:一轮混淆操作包括两个阶段,第一阶段,中间值的第一个字节保持不变,后面字节通过以下方式得到:

其中1≤i≤15,在第二阶段,上一阶段产生的中间值的最后一个字节保持不变,前一个字节通过以下方式得到:

(5)猫映射:上一步骤产生的16个字节的中间值存储在一个4×4的矩阵中,中间值的初始坐标(xn,yn)通过以下的猫映射转换成新的坐标(xn+1,yn+1):

其中N表示矩阵的大小,xn表示矩阵的列索引,yn表示矩阵的行索引;

(6)重复步骤(2)至步骤(5)共R次;

b)模板攻击分析混沌分组加密:

1)建立模板过程:采用多元高数模型建模,先产生随机明文和随机主密钥,明文和主密钥作为加密系统的输入,并且在加密过程中收集相应的功耗痕迹,每种可能的汉明重量功耗痕迹用于多元高数模型去建模,包括:

1-1)产生随机明文和计算第一轮加密的轮密钥:随机产生D组明文和轮密钥,将明文和轮密钥存储在矩阵P和K中,P和K的尺寸均是D×I,符号I是每组明文和密钥字节数,在第dth组明文的第ith字节定义为pd,i,并且在第dth组轮密钥的第ith字节表示为kd,i

1-2)收集能量消耗数据:D组明文和主密钥作为加密系统的输入,在加密的过程中,D条功耗痕迹存储在矩阵T中,每条痕迹有J个采样点,矩阵T的尺寸是D×J,在痕迹d的采样点j表示为td,j

1-3)计算假设能量消耗:产生假设能量矩阵H的第ith列的过程为:pd,i是第dth个明文的第ith字节,并且kd,i是第dth个轮密钥的第ith字节,pd,i的每个值和kd,i进行异或运算,然后对异或运算的值进行替代盒操作,对替代盒后的结果计算其汉明重量,产生假设能量消耗为公式(9)所示:

相似的,计算剩下的明文和轮密钥可以得到假设能量消耗矩阵;

1-4)分类痕迹:8位二进制数的汉明重量的范围是从0到8,从加密设备收集到的痕迹根据相应的汉明重量分类为9组,h1,i和h2,i假设为痕迹t1和t2的汉明重量,其为0,随后hD-1,i和hD,i假设为tD-1和tD的汉明重量,其为8,汉明重量为0的痕迹分为第一组,汉明重量为8的痕迹分为最后一组,在这种情况下,矩阵T被转换为相应的矩阵T1

1-5)计算平均痕迹:根据矩阵H的第ith列,计算在矩阵T1中每种汉明重量的平均痕迹,矩阵T1转换成矩阵T2,T2的尺寸为W×J,其中J是每条痕迹总采样点数,W是可能汉明重量的总数;

1-6)找到痕迹兴趣点:找到在执行不同操作时,表现出巨大差异的兴趣点,每个可能汉明重量操作w范围从8到0,并且每个采样点(j,Aw,j)定义为平均能量,如果存在Nw,j条痕迹,当执行汉明重量操作w,计算平均能量为公式(10)所示:

当获得每种汉明重量痕迹的均值时,计算两种汉明重量痕迹均值之差再求和,计算过程如公式(11)所示:

获得一个带有尖峰的痕迹Dj,选择尖峰点的步骤如下:第一步,在Dj中选择最高的尖峰点,保存j的值为兴趣点;第二步,丢弃j附近的N个点,N是这个尖峰点的最小空间;第三步,重复前面两步,直到所有的兴趣点都找出来,当选择兴趣点时候,兴趣点之间应该至少一个时钟周期,兴趣点的最小高度,应该高于噪声平面,n个兴趣点被选择出来;

1-7)计算协方差矩阵C和均值向量m:每条痕迹采样点之间都是正态分布,相应的参数m和σ估计为和每条痕迹t建模为多元正态分布,由协方差矩阵C和均值向量m描述,其中协方差矩阵C为公式(12)所示:

在兴趣点之间的均值向量m如公式(13)所示:

m=(m1,m2,m3…mn)T. (13),

多元正态分布概率密度函数如公式(14)所示:

其中,det(C)表示矩阵C的行列式,C-1表示C的逆矩阵;

2)恢复密钥过程:一个128位的二进制固定主密钥,分为16个8位的密钥;对第一轮的加密的轮密钥的第一个8位进行攻击,选择加密算法的替代盒输出为攻击点,收集相对较少的痕迹,计算每个可能密钥的概率,最大的多元正态分布概率对应的密钥就是最可能的正确的轮密钥,

2-1)产生随机明文和固定主密钥:随机产生F组明文,存储在矩阵B中,矩阵B的大小是F×I,其中I是每组明文中字节数量,第fth组明文的第ith个字节定义为bf,i

2-2)收集能量消耗数据:将F组随机明文和固定主密钥输入到加密系统里面,在加密过程中,收集F条能量痕迹,存储在矩阵G中,矩阵G的大小为F×J,J表示采样点数量,并且gf,j表示在第fth条痕迹中的第j个采样点;

2-3)计算假设能量消耗:计算假设能量消耗矩阵Ui的第fth行的过程:每一个可能密钥值s和bf,i进行异或操作,其中s∈[0,255]是一个8位轮密钥的可能值,然后计算上一步结果的替代盒操作,最后计算替代盒操作后的汉明重量值,类似的,计算其他组明文和可能的轮密钥进行操作产生的假设能量消耗矩阵Ui,矩阵Ui中的每个元素如公式(15)所示:

其中,矩阵Ui中的第(f,s)个元素表示假设能量消耗,相对应于第fth组明文的第ith个字节和可能的密钥s;

2-4)计算每个可能密钥的概率:第fth条痕迹的采样值表示为矩阵G的第fth行,其中第fth条痕迹在兴趣点的值标记为0≤i≤n,第fth条痕迹所有兴趣点表示为一个向量如公式(16)所示:

是汉明重量对应多元高斯概率,计算为公式(17)所示:

在矩阵G的第fth行对应的矩阵Ui的汉明重量为矩阵Pi的计算如公式(18)所示:

结合所有的值,具体描述如公式(19)所示:

如果可能轮密钥等于十六进制数0xFF,并且在三条痕迹中的多元高斯概率为(0.85,0.9,0.86),那么总的结果计算为0.6579,如果一条痕迹不能匹配到模板,那么被迫很快下降,并且错误的轮密钥猜测会被排除,最终,的最大值被找出,意味着猜测密钥是最有可能适合模板,计算如公式(20)所示:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广西师范大学,未经广西师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201911016102.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top