建立密码芯片汉明重量与光辐射相关关系的方法与流程

文档序号:13237579阅读:253来源:国知局
技术领域本发明涉及信息技术领域,尤其是一种建立密码芯片汉明重量与光辐射相关关系的方法。

背景技术:
光旁路攻击是利用密码芯片运行时的光辐射特性或者某种光(激光、紫外线等)对密码芯片运行时的影响对其进行被动或者主动攻击的一种新型旁路攻击方法,光旁路攻击可以分为光辐射分析攻击和光故障注入攻击。自Kocher在1996和1999年发表具有开创性意义的文章——基于时间的旁路攻击和基于功率的旁路攻击以来,旁路攻击成为密码分析学研究的一个重要领域。相关旁路攻击手段(如功耗分析攻击、电磁辐射攻击、故障注入攻击等)及多种分析方法(如模板攻击、差分分析等)相继被研究。传统的功耗、电磁等旁路攻击主要针对整个系统的信息泄漏进行分析,随着2008年光辐射分析攻击首次被提出,其允许选择密码芯片硬件的特定部分进行光辐射分析,使得光辐射分析攻击的选择性要远胜于功耗、电磁等分析攻击。通过选取密码芯片特定位置/区域进行攻击可以得到信噪比非常好的光旁路信号,这是由于光泄漏信号主要由我们所关心的密码芯片的相关指令操作及其操作数变化导致产生的。然而由于文献中的皮秒成像电路分析系统(PICA)的巨大实验花费和实验的复杂性,使得光辐射分析攻击在当时没有被视为现实的威胁。随着半导体技术和适合可见光、近红外等波段的硅基、铟镓砷、超导等单光子探测技术的快速发展,以及光辐射分析攻击新的研究(例如简单光辐射分析、差分光辐射分析等)的提出,使用中低成本设备开展密码芯片光辐射分析攻击成为可能和现实。为了使得光汉明重量密钥分析方法走向切实可行的应用,亟需提供一种建立密码芯片汉明重量与光辐射相关关系的方法为前者提供标准数据基础。相关背景技术资料可参考如下文献:[1]J,KasperM,SeifertJ-P201419thAsiaandSouthPacificDesignAutomationConferenceSingapore,January20-23,2014p780;[2]J,NedospasovD,SchlosserA,SeifertJ-P2013ConstructiveSide-ChannelAnalysisandSecureDesign(Berlin:Springer-Verlag)p1;[3]SchlosserA,NedospasovD,J,OrlicS,SeifertJ-P2013J.Cryptogr.Eng.3;[4]WangHS2015Ph.D.Dissertation(Shijiazhuang:OrdnanceEngineeringCollage)(inChinese)];[5]KocherP1996CRYPTOCalifornia,August18-22,1996p104;[6]KocherP,JaffeJ,JunB.1999CRYPTOCalifornia,August15-19,1999p388;[7]HnathW2010Ph.D.Dissertation(Massachusetts:WorcesterPolytechnicInstitute)(inUSA);[8]MulderED2010Ph.D.Dissertation(Leuven:KatholiekeUniversiteit)(inTheKingdomofBelgium);[9]BihamE,ShamirA1997CRYPTOVol.1294,LectureNotesinComputerScience,Springer-VerlagUSA,August1997p513;[10]WangT,ZhaoXJ,GuoSZ,ZhangF,LiuHY,ZhengTM2012ChineseJournalofComputers35(2)325(inChinese);[11]KircanskiA,YoussefAM2010AFRICACRYPT2010Stellenbosch,May03-06,2010p261;[12]FerrignoJ,HlaváM2008IETInfor.Secur.294;[13]WangYJ,DingT,MaHQ,JiaoRZ2014Chin.Phys.B23(6)060308;[14]LIANGY,ZENGHP2014Sci.ChinaPhys.Mech.Astron.57(7)1218;[15]SunZB,MaHQ,LeiM,YangHD,WuLA,ZhaiGJ,FengJ2007ActaPhys.Sin.565790(inChinese);[16]WangHS,JiDG,GaoYL,ZhangY,ChenKY,ChenJG,WuLA,WangYZ2015ActaPhys.Sin.64(5)058901-1;[17]ZhangLB,KangL,ChenJ,ZhaoQY,JiaT,XuWW,CaoCH,JinBB,WuPH2011ActaPhys.Sin.60(3)038501LiuY,WuQL,HanZF,DaiYM,GuoGC2010Chin.Phys.B.19(8)080308;[18]MangardS,OswaldE,PoppT(translatedbyFengDG,ZhouYB,LiuJY)2010PowerAnalysisAttacks(Beijing:SciencePress)pp1-129(inChinese);[19]HuXD,WeiJF,HuR2011AppliedCryptography(secondedition)(Beijing:ElectronicIndustryPress)pp1-95(inChinese);[20]BeckerW(translatedbyQuJL)2009AdvancedTime-CorrelatedSinglePhotonCountingTechniques(Beijing:SciencePress)pp1-126(inChinese)。

技术实现要素:
本发明要解决的技术问题是提供一种切实可行的建立密码芯片汉明重量与光辐射相关关系的方法,为光汉明重量密钥分析方法提供标准数据基础。为解决上述技术问题,本发明所采取的技术方案如下。建立密码芯片汉明重量与光辐射相关关系的方法,该方法用于分析密码芯片的光泄露与汉明数据的依赖性并对其进行标准化关联;Ⅰ、该方法采用如下硬件配置:包括运行加密算法的单片机密码芯片、单光子探测器、光泄漏测量装置;主控计算机、分析处理计算机、反相器和衰减器;其中,主控计算机通过RS232串行口给单片机发送相关指令,以控制其执行相关程序和数据处理;分析处理计算机主要保存光辐射迹并进行相关格式转换等处理;光泄漏测量装置模块用于接收单光子探测器的输出,完成密码芯片在运行时泄漏光子的计数并形成光辐射迹,为后期的分析处理做准备;Ⅱ、该方法包括操作步骤如下:A、以单片机的R7数据寄存器为测试对象,运行MOVR7,A指令进行光泄漏分析,整个过程让光纤和透镜对准密码芯片上R7数据寄存器的位置;B、设定光泄漏测量装置模块的单次时间周期,对每个样本进行重复采集数分钟;对于R7寄存器而言,数据存储形式为一个8位的二进制数,且各位之间相互独立,故可能的值有28=256种,其汉明重量有9种可能(即0、1、2、3、4、5、6、7、8);操作时将256种取值分别送至R7寄存器,对256个值分别送2次,合计采集512个光辐射迹样本;C、根据R7寄存器数据汉明重量的值对各光辐射迹进行平均化处理,选择光辐射迹中与R7数据处理相关的时间通道,对其进行放大处理;选定其中效果和差异最为明显的时间通道作为参考时间点;D、依据参考时间点上的测量数据直接得到操作数R7寄存器值的汉明重量与泄漏光子数的对应关系,即得。作为本发明的一种优选技术方案,所述单片机采用运行AES密码算法的单片机。作为本发明的一种优选技术方案,步骤A中,指令的核心被测代码为:NOP1μs;MOVR7,A1μs;XRLP1,#08H2μs。作为本发明的一种优选技术方案,步骤A中,工作电压选用6.4V的电压值,测定时间是4μs。作为本发明的一种优选技术方案,步骤B中,在给R7寄存器送入数值前对其进行清零操作。作为本发明的一种优选技术方案,步骤B中,设定TCSPC模块的单次时间周期为5μs,实际有效周期是4μs;对每个样本进行重复采集十分钟。作为本发明的一种优选技术方案,步骤C中,选定具有如下特点的时间通道作为参考时间点:光子泄露数量随操作数R7的不同汉明重量而发生显著变化,9条光辐射迹按顺序依次与8、7、6、5、4、3、2、1、0的汉明重量相对应,随着操作数R7汉明重量的增加,密码芯片泄漏的光子数依次增多。采用上述技术方案所产生的有益效果在于:通过本发明的方法能够切实可行的建立密码芯片汉明重量与光辐射相关关系,为光汉明重量密钥分析方法提供标准数据基础。本发明得到了下表所示的“操作数R7的汉明重量”与“泄漏光子数”的对应关系,依据此对应关系建立标准线形图谱,直接用密码芯片的密钥分析。汉明重量值与泄漏光子数的对应关系以本发明获得的标准参考数据为基础,可以构建出一种简单有效的针对高级加密标准(AES)加密算法的密码芯片光辐射分析方法,该方法根据密码芯片运行时的光泄漏特性,利用时间相关单光子计数技术搭建光辐射分析攻击实验平台,在AES加密算法执行第一次轮密钥加操作后和字节替换操作后分别进行光泄露信号采集,通过选择几组明文即可成功地破解AES加密算法的密钥。附图说明图1为实施例3中R7寄存器9种不同汉明重量的平均光泄漏点状图及其线性拟合结果。图2为实施例4中AES密码算法的状态矩阵及其光泄漏点(中间值)的示意图。图3是实施例6中R7寄存器9种汉明重量的平均泄漏轨迹图示。具体实施方式实施例1、密码芯片光辐射迹组成光辐射迹是在密码芯片运行过程中,利用单光子探测器和光子记录模块采样的光子数在时域上的分布,它是光泄漏信号强度与时间的一个函数,反映了运行过程中的密码芯片在各时间点上的光子泄露情况。光辐射迹中既包含了对于破解密钥有用的信息,也包含了部分噪声信号。对于噪声信号的处理很大程度上决定了密钥分析的效率和精确性。光辐射迹某一时间点的信号组成如下:P=Pop+Pda+Pco+Pno,(1)在式(1)中,P为光辐射迹某一点的光子泄漏总量,Pop为该点的操作依赖分量,Pda为该点的数据依赖分量,Pno是电子噪声,Pco是一个常数分量。其中,Pop和Pda是光辐射分析中最重要的分量,尤其是Pda,这是因为光辐射分析攻击主要是利用了运行时密码芯片的光辐射迹依赖于其执行的运算和处理的数据,执行不同的操作及处理不同的数据,会导致产生不同的光辐射迹。电子噪声Pno主要由量子化噪声、外部环境干扰、电源及时钟噪声等组成,它导致密码芯片在运行程序和处理数据不变的情况下采集的光辐射迹仍然会出现不同。为了提高信噪比并降低电子噪声对分析效率的影响,一方面,可以采用TCSPC(时间相关单光子计数,下同)技术记录光子,其具有比模拟信号记录技术更小的量子化噪声;另一方面,因为Pno服从正态分布N(0,σ2),为使得期望值趋于0,可以进行多次光信号采集,用求平均值的方法减少电子噪声影响。Pco主要是由与运行程序和处理数据没有关联的晶体管转换造成的,一般认为是一个常量。实施例2、密码芯片光辐射信号仿真模型开展密码芯片光辐射分析攻击,经常需要将指令的操作数或者其变化映射为光子泄漏的数量。对于某次攻击而言,攻击者关心的是多次仿真所获得的光辐射迹之间的差异,其绝对值在分析攻击中并无实际意义,因此,攻击者采用的仿真模型比较简单,常用两类四种模型,多元模型:汉明重量模型(Hamming-WeightModel)、汉明距离模型(Hamming-DistanceModel),二元模型:比特模型(Bitmodel)、零值模型(ZeroModel)。实际攻击时采用哪一种仿真模型,需要根据攻击对象(数据)变化特点、密码芯片对密码算法的实现方式(软件实现、硬件实现)、攻击方法的使用等灵活选择。令X、Y表示两个n位二进制数,可以将X和Y分别看作一个具有n个元素的位向量(bitvector),X,Y∈{0,1
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1