一种压缩密钥猜测空间的侧信道攻击方法技术

技术编号:30154150 阅读:57 留言:0更新日期:2021-09-25 15:04
本发明专利技术公开了一种压缩密钥猜测空间的侧信道攻击方法,首先随机产生大量明文并使用加密算法进行加密运算,通过汉明重量模型模拟算法加密过程产生的功耗,并构建仿真功耗曲线集;采用对单个字节密钥的高4bit进行分析的方法,使用辅助攻击点进行差分功耗攻击,得到4bit密钥差分值分布情况,筛选出两个与真实密钥最相关的值;然后构造密钥候选区间,并使用主要攻击点进行攻击找出正确密钥。本发明专利技术能够使密钥猜测空间大小由256变为32,减少了不必要的运算,而且通过该方法可以很好的避开一些与密钥非常相似的错误猜测密钥,从而提升攻击的正确率,同时也提升了对功耗曲线的利用率。同时也提升了对功耗曲线的利用率。

【技术实现步骤摘要】
一种压缩密钥猜测空间的侧信道攻击方法


[0001]本专利技术属于侧信道分析领域,具体涉及一种压缩密钥猜测空间的侧信道攻击方法,更进一步的利用不同功耗点泄露的信息,可提高攻击效率及准确率。

技术介绍

[0002]密码学的安全性越来越受到人们的关注。人们普遍认为,密码芯片的安全性不仅取决于数学安全性,而且与设备的运行情况密切相关。传统密码分析中常用黑盒的方式来对一个密码算法进行分析,黑盒模型将密码算法当成一个黑色的盒子,内部的元件不可探查,攻击者只能通过输入与输出来攻击密码,典型的分析方法有如差分分析,代数分析等等。而侧信道分析通过利用密码算法在物理设备上运行时泄露如时间、功耗、电磁等信息与算法本身的部件结合来攻击算法,相比传统的密码分析方法,侧信道分析拥有更大破坏性,能高效的攻击密码算法,许多算法本身在数学特性上已经十分安全,几乎能抵御任何黑盒攻击,但仍然会被侧信道分析所破解。传统的功耗攻击通常容易受到个别相关性较高的密钥猜测值的影响,导致最终的攻击结果在跳动在正确密钥与相关性较高的密钥猜测值之间,这极大影响了最终的攻击结果,因此探索一种压缩密钥空间的侧信道方法是十分必要的。

技术实现思路

[0003]本专利技术目的是解决传统侧信道攻击对功耗曲线利用率低,容易受到个别相似的密钥猜测值影响的问题。通过联立两个功耗点进行攻击,在辅助攻击点,通过对密钥的高4bit位进行分析,确定密钥所在范围,构造密钥的候选区。基于密钥候选区使用主要功耗点进行攻击,避开了相似高的密钥猜测值的影响,从而达到提升正确率的效果。r/>[0004]为了实现上述技术目的,本专利技术的技术方案是,提供的一种压缩密钥猜测空间的侧信道攻击方法实现方法,包括如下步骤:
[0005]一种压缩密钥猜测空间的侧信道攻击方法,包括如下步骤:
[0006]步骤1:随机产生大量明文并使用加密算法进行加密运算,通过汉明重量模型模拟算法加密过程产生的功耗,并构建仿真功耗曲线集。
[0007]步骤2:采用对单个字节密钥的高4bit进行分析的方法,使用辅助攻击点进行差分功耗攻击,得到4bit密钥差分值分布情况。
[0008]步骤3:对所有猜测密钥的差分值分布情况进行分析,筛选出两个与真实密钥最相关的值。
[0009]步骤4:围绕着步骤3所筛选出的两个值,构造密钥候选区间。
[0010]步骤5:基于密钥候选区间,使用主要攻击点进行攻击找出正确密钥。
[0011]所述的一种压缩密钥猜测空间的侧信道攻击方法,步骤1包括如下步骤:
[0012]步骤1.1:选取所攻击的加密算法的轮密钥加、字节替换两个功耗点,在轮密钥加这一点密钥的区分度低,选用该点来构造密钥候选区间,在字节替换这一点密钥区分度高,
选用该点用于恢复最终密钥,因此划分轮密钥加为辅助攻击点,字节替换为主要攻击点。
[0013]步骤1.2:随机生成大量16字节的明文m
i
,在密钥固定为k的情况下进行第一轮加密,对分别经过2个不同功耗点后产生的所有加密中间值进行保存。
[0014]步骤1.3:重复步骤1.2,直至在2个功耗点分别获得N个中间值后,进行步骤1.4。
[0015]步骤1.4:通过功耗模型将两个功耗点得到的中间值映射为能量消耗值,并保存于不同集合T1,T2,其中T1对应在轮密钥加这一功耗点的能量消耗值,T2对应在字节替换这一功耗点的能量消耗值,即:
[0016][0017][0018]其中HW()为汉明重量计算算法,SubByte()为AES算法字节替换运算。
[0019]所述的一种压缩密钥猜测空间的侧信道攻击方法,所述的步骤1.4中,所述的功耗模型为汉明重量模型,对于被处理的加密数据,计算当前字节的汉明重量,是将字节转为比特后判断其含有1的个数,1的个数即为汉明重量。
[0020]所述的一种压缩密钥猜测空间的侧信道攻击方法,步骤2中使用辅助攻击点进行攻击包括如下步骤:
[0021]步骤2.1:将16字节密钥分成16个部分来分别进行攻击,设当前攻击的密钥为第b 个,b初始值为1,对第b个字节密钥的前4个bit位进行穷举,密钥猜测空间为2∧4,猜测范围为0

15。
[0022]步骤2.2:将所有猜测的高4bit密钥k
n
与所有明文m
i
的高4bit进行轮密钥加运算,得到经过轮密钥加操作后的4bit中间值V
i,n

[0023][0024]步骤2.3:将得到的中间值V
i,n
,按照以下区分函数D进行分类,分成S0,S1两类并记录其对应消耗的能量值。
[0025][0026]S0={T1|D=0},S1={T1|D=1}
[0027]步骤2.4:对集合S0,S1中所有数据取算术平均值,并将集合S0得到的算术平均值与集合S1得到的算术平均值作差,取最终结果的绝对值作为差分值Δt。将猜测密钥的值作为横坐标,猜测密钥对应的差分值作为纵坐标,绘制折线图,由此得到代表该字节高4bit差分值分布情况的折线图。
[0028][0029]其中|S0|表示集合S0所含的元素个数,|S1|表示集合S1所含的元素个数。
[0030]所述的一种压缩密钥猜测空间的侧信道攻击方法,步骤3中使用筛选候选密钥包括如下步骤:
[0031]步骤3.1:根据得到的差分折线图,找出图中按差分值排序最大的4个点用于密钥候选分析,其中每个点横坐标对应的是猜测密钥值,纵坐标对应的是差分值。
[0032]步骤3.2:在选取的4个点中,根据以下规则来选取其中2个点作为和密钥信息最相关的两个点:
[0033]1)每两个点的坐标信息相加,如果只有1组数据横坐标的值相加为15,则选取该组数据。
[0034]2)每两个点的坐标信息相加,如果有2组数据横坐标的值相加为15,则取纵坐标相加较大的一组数据。
[0035]3)每两个点的坐标信息相加,如果没有数据横坐标的值相加为15,则选取纵坐标最大的两点。
[0036]所述的一种压缩密钥猜测空间的侧信道攻击方法,步骤4中构造密钥候选区间包括如下步骤:
[0037]步骤4.1:以步骤3取出的两个点为p1和p2,构造密钥候选区间C1为p
1x
×
16~p
1x
×ꢀ
16+15,构造密钥候选区间C2为p
2x
×
16~p
2x
×
16+15,其中p
1x
为p1的横坐标值,p
2x
为 p2横坐标值,区间C1,C2如下:
[0038]C1:{x|16p
1x
≤x≤16p
1x
+15}
[0039]C2:{x|16p
2x
≤x≤16p
2x
+15}。
[0040]所述的一种压缩密钥猜测空间的侧信道攻击方法,本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种压缩密钥猜测空间的侧信道攻击方法,其特征在于,包括如下步骤:步骤1:随机产生大量明文并使用加密算法进行加密运算,通过汉明重量模型模拟算法加密过程产生的功耗,并构建仿真功耗曲线集;步骤2:采用对单个字节密钥的高4bit进行分析的方法,使用辅助攻击点进行差分功耗攻击,得到4bit密钥差分值分布情况;步骤3:对所有猜测密钥的差分值分布情况进行分析,筛选出两个与真实密钥最相关的值;步骤4:围绕着步骤3所筛选出的两个值,构造密钥候选区间;步骤5:基于密钥候选区间,使用主要攻击点进行攻击找出正确密钥。2.根据权利要求1所述的一种压缩密钥猜测空间的侧信道攻击方法,其特征在于:步骤1包括如下步骤:步骤1.1:选取所攻击的加密算法的轮密钥加、字节替换两个攻击点,在轮密钥加处的密钥区分度低,选用该点来构造密钥候选区间,在字节替换这一点密钥区分度高,选用该点用于恢复最终密钥,因此划分轮密钥加为辅助攻击点,字节替换为主要攻击点;步骤1.2:随机生成大量16字节的明文m
i
,在密钥固定为k的情况下进行第一轮加密,对分别经过2个不同功耗点后产生的所有加密中间值进行保存;步骤1.3:重复步骤1.2,直至在2个功耗点处分别获得N个中间值后,进行步骤1.4;步骤1.4:通过功耗模型将两个攻击点处的中间值映射为能量消耗值,并保存于不同集合T1,T2,其中T1对应在轮密钥加这一攻击点的能量消耗值,T2对应在字节替换这一功耗点的能量消耗值,即:即:其中HW()为汉明重量计算算法,SubByte()为AES算法字节替换运算。3.根据权利要求2所述的一种压缩密钥猜测空间的侧信道攻击方法,其特征在于:所述的步骤1.4中,所述的功耗模型为汉明重量模型,对于被处理的加密数据,计算当前字节的汉明重量,是将字节转为比特后判断其含有1的个数,1的个数即为汉明重量。4.根据权利要求3所述的一种压缩密钥猜测空间的侧信道攻击方法,其特征在于:步骤2中使用辅助攻击点进行攻击包括如下步骤:步骤2.1:将16字节密钥分成16个部分来分别进行攻击,设当前攻击的密钥为第b个,b初始值为1,对第b个字节密钥的前4个bit位进行穷举,密钥猜测空间为2^4,猜测范围为0

15;步骤2.2:将所有猜测的高4bit密钥k
n
与所有明文m
i
的高4bit进行轮密钥加运算,得到经过轮密钥加操作后的4bit中间值V
i,n
;步骤2.3:将得到的中间值V
i,n
,按照以下区分函数D进行分类,分成S0,S1两类并记录其对应消耗的能量值;
S0={T1|D=0},S1={T1|D=1}步骤2.4:对集合S0,S1中所有数据取算术平均值,并将集合S0得到的算术平均值与集合S1得到的算术平均值作差,取最终结果的绝对值作为差分值

t;将猜测密钥的值作为横坐标,猜测密钥对应的差分值作为纵坐标,绘制折线图,由此得到代表该字节高4bit差分值分布情况的折线图;其中|S0|表示集合S0所含的元素个数,|S1|表示集合S1所含的元素个数。5.根据权利要求4所述的一种压缩密钥猜测空间的侧信道攻击方法,其特征在于:步骤3中使用筛选候选密钥包括如下步骤:步骤3.1:根据得到的差分折线图,找出图中按差分值排序最大的4个点用于密钥候选分析,其中每...

【专利技术属性】
技术研发人员:李迪郭影陈文杨金玲刘嘉辉李浪
申请(专利权)人:衡阳师范学院
类型:发明
国别省市:

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

1