[发明专利]一种利用DPA曲线极性进行密钥提取的方法及系统有效
申请号: | 201010239907.5 | 申请日: | 2010-07-26 |
公开(公告)号: | CN101908111A | 公开(公告)日: | 2010-12-08 |
发明(设计)人: | 唐明;伍前红;张焕国;高思;窦青;沈菲;李渡;张驭宇;王国熹 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F21/00 | 分类号: | G06F21/00 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 张火春 |
地址: | 430072*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 利用 dpa 曲线 极性 进行 密钥 提取 方法 系统 | ||
技术领域
本发明涉及信息安全技术领域,尤其涉及一种利用DPA曲线极性进行密钥提取的方法及系统。
背景技术
现今计算机的广泛应用,给我们带来了巨大的社会、经济效益,但同时也暴露了计算机信息安全方面的脆弱性,而其中密码是信息安全的关键所在。通过对密码进行分析,可以得到通信双方的通信内容,从而窃取别人的隐私等。因此,一个好的密码算法,需要有较好的抗攻击性。
相较传统意义上的密码分析,旁路式攻击(Side Channel Attack,SCA)是针对密码体制具体实现来获得有用的信息。其中包括TA、DPA、DFA、SPA等多种旁路式攻击。这类攻击较之其他的攻击方式,具有更隐蔽、更快速的特点。自提出以来,对很多密码系统的安全性构成了严重的威胁,而其中的能量攻击(PowerAttack,PA)以其容易实施、复杂度低等特点成为研究的热点。在参考文献1中,Paul Kocher首先提出了利用不同指令消耗能量不同来推测处理器正在执行的指令,从而获取信息的简单功耗攻击(Simple Power Analysis,SPA);进而提出了利用功耗与运算数据的相关性攻击的差分功耗攻击(Differential Power Analysis,DPA)。
在Paul Kocher提出的原始DPA攻击中,利用DPA差分所得的功耗曲线是否有峰值来判断是否猜测到了部分正确的密钥,而所得到的峰值的大小、极性并没有利用。而这里所提出的极性DPA攻击是对原始DPA攻击进行的改良。我们试图利用DPA峰值的极性,以降低原始DPA攻击的复杂度,从而更容易完成对密码的分析,得到正确密钥。
参考文献1:《Differential Power Analysis》,Paul Kocher,Joshua Jae,and Benjamin JunDifferential Power Analysis.Crypto99
发明内容
针对上述存在的技术问题,本发明的目的是提供一种利用DPA曲线极性进行密钥提取的方法及系统,利用DPA分析中曲线的正负极性,进行加密算法中密钥的分析与提取,本方法可用于对硬件加密设备或系统中已有密钥的提取,并可用于对硬件设备物理安全性的评价。
为达到上述目的,本发明采用如下的技术方案:
一种利用DPA曲线极性进行密钥提取的方法,包括:
测试要攻击的芯片,获得AES在该芯片上的具体实现情况下,每个bit产生DPA峰值的极性,获得攻击位置每个bit的DPA峰值极性;
利用明文,对加密过程的中间状态进行划分,得出峰值极性;
通过原始DPA极性数组与攻击DPA极性数组进行异或,从而得到密钥。
所述测试要攻击的芯片,获得AES在该芯片上的具体实现情况下,每个bit产生DPA峰值的极性,获得攻击位置每个bit的DPA峰值极性的步骤进一步包括以下子步骤:
①密钥寄存器清零或已知密钥值K;
②生成随机明文,利用芯片加密,记录功耗曲线组P[1..M][1..N]
其中,N为功耗曲线上的采样点数,M为功耗曲线条数,每条曲线上有N个采样点,一共记录M组功耗曲线;
③由于已知Plain[i]和K[127:0]相当于已知X[i][127:0],利用X[i][j]做划分,得到曲线集合P1{P[i][1..N]|X[i][j]=1}和P0{P[i][1..N]|X[i][j]=0},其中,X表示加密过程的中间状态,i表示使用的明文-功耗分组,j表示攻击的bit;其中Plain表示明文,K表示密钥,X表示加密过程的中间状态。
④计算ΔDj,获得bitj对应的DPA曲线以及峰值的极性,其中ΔDj表示第j bit DPA攻击所得到的DPA峰值;
⑤重复步骤③、④,得到全部128bit峰值极性,记做原始DPA极性数组pole[127:0]。
所述利用明文,对加密过程的中间状态进行划分,得出峰值极性的步骤进一步包括以下子步骤:
①生成随机明文,利用芯片加密,记录功耗曲线组P[1..M][1..N]
其中,N为功耗曲线上的采样点数,M为功耗曲线条数,每条曲线上有N个采样点,一共记录M组功耗曲线;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010239907.5/2.html,转载请声明来源钻瓜专利网。