应用于des加密芯片的差分功耗分析屏蔽电路的制作方法

文档序号:7613734阅读:199来源:国知局
专利名称:应用于des加密芯片的差分功耗分析屏蔽电路的制作方法
技术领域
本发明属于信息安全技术领域,具体涉及一种加密芯片的针对差分功耗分析攻击的防御电路。
背景技术
随着智能卡和计算机网络的迅速发展与不断普及,信息安全问题日益突出,因此各种形式的专用密码电路和密码算法处理器广泛地应用于各类产品中。目前,常用的密码算法大致可以分为两类以DES、AES为代表的对称算法和以RSA、ECC为代表的非对称算法。DES(Data Encryption Standard)是目前使用非常广泛的数据加密方法,它于1977年被美国国家标准局作为第46号联邦信息处理标准而采用。
任何安全产品或者密码系统都必须面对一个如何防御攻击和窥测的问题。传统攻击方法是一种数学攻击手段,通过大量的数学计算来搜索密码系统的密钥。该类攻击方法的一个直接的例子就是强力攻击(brute force attack)尝试所有可能的密钥,直至找到正确的密钥。随着计算机性能的增强,这种方法也越来越具有可行性,但是仍需要耗费大量的时间和物力,而且如果密钥的长度增加,攻击难度则会急剧增加。近些年来,出现了一种新的强有力的攻击方法,人们称之为旁道攻击(side-channel attack)。一个实际应用的密码系统,其硬件部件在运行过程中不可避免要泄露一些信息,诸如功耗、时间、电磁波、以及差错信息等。利用上述信息对密码系统进行攻击和窥测已成为信息安全芯片产品的巨大威胁,其危害远远大于传统的攻击手段。差分功耗分析(differential power analysis,DPA)就是一种极为有效的旁道攻击,它对内嵌DES算法的智能卡的成功攻击也被广泛报道。差分功耗分析是一种统计分析方法,它通过收集分析大量的不同数据激励下的芯片功率信号,根据芯片中运行的相应的密码算法确定一个判决方程,并依据判决方程的值将所收集的功率信号分为两大类,最后通过比较两类功率信号的均值之间的差异来验证攻击者对密钥的猜测,从而快速高效的破解DES算法的密钥。
差分功耗分析的物理基础是CMOS逻辑门功耗大小与其是否翻转密切相关,使得电路中运行的数据的0、1状态与电路的功率信号具有一定的相关性。DES加密电路的差分功耗分析的基本思想是输入若干组明文(PTI),收集相应的加密电路若干组功率信号Si[j](i=1~m),i表征了不同的输入明文,j表征信号采样的时间点。然后定义一判决方程D(CTO,Kb)→{0,1},CTO为密文,Kb为b位子密钥。依据假定的Kb,计算方程的值将功率信号分为两类S0={Si[j]D=0} (1)S1={Si[j]D=1} (2)令T[j]=1|S1|ΣSi[j]∈S1Si[j]-1|S0|ΣSi[j]∈S0---(3)]]>|S0|+|S1|=m(4)DES算法的判决方程DD(C1,C6,K16)=C1SBOXi(C6,SK16)(5)C1代表密文CTO的某一比特位,SK16为最后一次循环(第十六次)的子密钥进入一个S盒子的六个比特位,C6代表CTO的六个比特位,其与K16相异或。SBOX1为第一个S盒子查找表的非线性运算。
如果T[j]出现明显的尖峰值则说明猜到了正确的子密钥(确切的说是密钥的一部分),反之则说明猜测的子密钥错误。详细的实现方法可以参考P.Kocher,J.Jaffe,and B.Jun.Differential Power Analysis.Proceeding of Advances in cryptography(CRYPTO’99),1999.388-397.
关于如何抵御差分功耗分析,研究者提出了多种方案,比如增加电路噪声,数据屏蔽,采取基于敏感放大器的逻辑和异步逻辑来设计电路等,但是这些方案需要引入额外的噪声和随机数,改变算法流程,甚至更改主流的设计逻辑。抵御差分功耗分析的关键在于降低其信噪比,一个直接的方法是加入电路噪声,但是噪声产生电路会增加电路的功耗,而且确定防御差分功耗分析需增加多大噪声也是一个非常困难的问题,因此从另一个角度出发,努力减小差分功率信号的值,同样可以降低差分功耗分析的信噪比,若电路不同状态下的功率差异趋于零,则差分功耗分析将失效。

发明内容
本发明的目的是提出一种应用于DES加密芯片的能够防御差分功耗分析的屏蔽电路。
本发明提出的应用于DES加密芯片的差分功耗分析屏蔽电路,由屏蔽单元1和互补寄存器单元2,结合DES加密方案的基本架构,互相电路连接所构成,其结构见图1所示。本发明中,DES加密流程的本轮运算密钥时,前一轮运算的结果被送入寄存器L15和R15中,寄存器L15由两部分组成28比特的普通寄存器7和4比特互补寄存器2(其输出为8比特)。寄存器L15和R15的输出和本轮的密钥一起经过扩展4、S盒子查找表3、置换5、异或10等运算后输入到寄存器R16和L16中。在前一轮运算的结果被送入寄存器L15和R15的同时,部分结果和本轮子密钥SK16,以及预先设置的虚假子密钥SK*16被送入屏蔽单元1,屏蔽单元1的输出存入寄存器D’中。
本发明主要针对DES加密算法流程的第十六轮运算的密钥,前一轮即第15轮运算的结果L15和R16分别被送入寄存器L15和寄存器R15中。寄存器L15和寄存器R16的输出和第16轮的密钥一起经过扩展4、S盒子查找表3、置换5、异或10等运算后输入到寄存器R16和L16中。第15轮运算结果被送入寄存器L15和R15的同时,部分结果和第16轮密钥和虚假子密钥被送入屏蔽单元1。
本发明中的互补寄存器2的结构如图2所示,由两个寄存器R1、R2和一个反相器G1,以及相应的负载电路G2、G3、G4、G5构成。两个寄存器初始状态相同,输出负载相同,时钟沿赋值。可见,不论输入为0或是1,两个互补寄存器必是一个翻转,另一个不翻转,因此总的功耗在两种情况下没有差别。通过对比采用互补寄存器和未采用互补寄存器的DES加密电路的差分功耗分析结果(如图3,图4所示),可以证明互补寄存器能够有效地减小DES加密电路的差分功率信号,从而使攻击者无法通过差分功耗分析获取密钥。
本发明中的屏蔽单元1的结构如图5所示,其输入为6比特密文,6比特虚假子密钥SK*16,6比特真实子密钥SK16和4比特前一轮运算的结果,其输出为4比特D’。其逻辑表达式为D′=L151SBOXi(C6SK16)SBOXi(C6SK*16),主要运算单元为异或门和两S盒子查找表,两个6比特异或运算单元和屏蔽单元的输入相连,异或运算的输出与S盒子查找表的输入相连,S盒查找表的输出接到两个顺序连接的4比特异或运算单元上,4比特异或运算单元的输出即为屏蔽单元的输出。该屏蔽单元电路能够在攻击者进行差分功耗分析时给出错误的差分功率信号,从而误导攻击者将虚假子密钥当作正确的子密钥。图6,图7给出了添加屏蔽单元1后DES电路的差分功率信号。


图1为差分功耗分析屏蔽电路的总体结构示意图。
图2为互补寄存器结构图。
图3为应用普通寄存器结构的DES电路差分功率信号。
图4为应用互补结构寄存器的DES电路差分功率信号。
图5为屏蔽单元结构图。由异或逻辑电路和S盒子查找表组成。
图6为添加屏蔽单元1后DES电路的差分功率信号(虚假子密钥与随机选取子密钥对比)。
图7为添加屏蔽单元1后DES电路的差分功率信号(虚假子密钥与真实子密钥对比)。
图中标号1为屏蔽单元,2为互补寄存器,3为S盒子查找表,4为扩展模块,5为置换模块,6为寄存器D’,L15为寄存器,R16为寄存器,7为28比特寄存器,8为8比特寄存器,9为28比特寄存器,10为异或运算器。
具体实施例方式
下面结合附图进一步描述本发明。
DES加密流程分为三个阶段。首先,64比特的明文经过一个初始置换后,比特重排产生了经过置换的输入。接下来的阶段是由对同一个函数进行16次循环组成的,这个函数本身既包含有置换又包含有替代函数。最后一个循环(第16轮)的64比特输出是输入明文和密钥的函数,它的左右两个部分经过交换后得到预输出。最后通过一个与初始置换相逆的置换就生成了64比特密文。
采用差分功耗分析方法的攻击者根据第16轮循环的运算过程,选定判决方程,依次攻击进入每个S盒子的第16轮子密钥,从而得到共48比特密钥信息,然后只要穷举得到剩余的8比特密钥,即可完成对全部密钥信息的破解。攻击者判别预设的密钥的正确性的依据是差分功率信号是否出现尖峰,而出现尖峰的原因是电路在处理0和1状态是功耗存在差异。因此本发明提出的互补寄存器结构能够使寄存器在不同输入(0或1)时功耗保持恒定,从而去除差分功率信号的尖峰,有效的抑制了差分功耗分析攻击。如图3所示,圆形标注的曲线为根据正确的密钥分类得到的T[j]。正方形标注的曲线为根据错误的密钥分类得到的T[j],可见在未采用互补寄存器时,正确分类的差分功率信号与错误分类的差分功率信号相比始终具有更大的偏置峰值,差分功耗分析能够区分这两类信号,因此密钥的猜测过程也能顺利完成。如图4所示,圆形标注的曲线为根据正确的密钥分类得到的T[j]。正方形标注的曲线为根据错误的密钥分类得到的T[j],可见由于采用互补寄存器,正确分类的差分功率信号的值有了大幅度的减小,偏置峰值甚至能够小于错误分类的差分功率信号,两类信号已经达到难以区分的程度。因此通过差分功耗分析对密钥进行猜测是无法进行的。
互补结构能够提高电路的抗攻击能力,但是它也带来电路面积和平均功耗的上升。DES加密电路有8个S盒子,L15寄存器也为32比特,如采用互补结构,需要增加32个寄存器以及相应的负载电路,显然这一开销不小。综合考虑抗攻击性能和硬件开销,可以对L15的部分位采用互补结构,即对进入S盒子的8段密钥中的若干段进行保护。当然如果被保护的密钥位数较少的话,攻击者可以先通过差分功耗分析获得未保护部分的密钥,然后用穷举搜索的办法对剩余密钥进行强力攻击(brute force attack),因此被保护的密钥位数必须足够多,使得强力攻击不可行或者不合算。针对这个问题,本发明在少部分L15寄存器采用互补结构的基础上,设置屏蔽单元,最终形成如图1所示的差分功耗分析屏蔽电路,从而大幅度地降低电路的硬件开销,并有效防御差分功耗分析和强力攻击。
屏蔽单元的工作原理是由DES差分功耗分析的判决方程可知,若有一个错误的密钥SK*16,那么可得D′(C1,C6,K16)=C1SBOXi(C6,SK*16) (6)显然D′的值是不能正确反映电路中某一位寄存器的赋值状况的,因而由D′分类得到的差分功率信号不会产生明显的偏置尖峰,但是如果在电路中设置这样一位寄存器,使得该寄存器的赋值与D′相一致,即Reg=D′,那么根据D′的0、1状态分类的差分功率信号必然出现明显的偏置尖峰。同时对于与一个S盒子的输出相异或(XOR)的4位寄存器采用互补结构进行保护,这样攻击者在选中正确密钥时反而无法观察到偏置尖峰,于是攻击者会认为SK*16就是正确密钥。这样,当攻击者完成对8个S盒子的攻击后,得到的是一个错误密钥,而且攻击者也无法知道在攻击哪6比特子密钥时发生了错误,因此也不能进行有针对性的强力攻击以获得这一子密钥。
由DES算法可知,C1=L151SBOXi(C6SK16) (7)C1代表密文CTO的某1比特位,C6代表密文CTO的某6比特位,L151代表L15寄存器的某1比特位,SBOXi代表某个S盒子的非线性运算。由式(6),(7)可得,D′=L151SBOXi(C6K16)SBOXi(C6K′16) (8)根据式(8)的逻辑就可形成屏蔽单元的电路。添加屏蔽单元后,只需对4位寄存器(与一个S盒子相关的)采用互补结构进行保护,而可以通过伪造的差分功率信号导致攻击者发生误判,有效地抑制差分功耗分析。
如图6所示,圆形标注的曲线为根据随机选择的密钥分类得到的T[j],正方形标注的曲线为根据屏蔽单元设置的错误密钥分类得到的T[j]。如图7所示,圆形标注的曲线为根据正确的密钥分类得到的T[j],正方形标注的曲线为根据屏蔽单元设置的错误密钥分类得到的T[j]。由图6,图7可见,与按照正确密钥或其它随机选择的密钥进行分类得到的差分功率信号相比,按照预设的错误密钥进行分类得到的差分功率信号具有更明显的偏置尖峰,因此差分功耗分析屏蔽电路能够导致攻击者发生误判,从而有效的保护DES电路的密钥。
权利要求
1.一种应用于DES加密芯片的差分功耗分析屏蔽电路,其特征在于由屏蔽单元(1)和互补寄存器单元(2),结合DES加密方案的基本架构,经电路连接所构成,前一轮运算的结果被送入寄存器(L15)和(R15)中,寄存器(L15)由两部分组成28比特的普通寄存器(7)和(4)比特互补寄存器(2);寄存器(L15)和(R15)的输出和本轮的密钥一起经过扩展(4)、S盒子查找表(3)、置换(5)、异或(10)运算后输入到寄存器(R16)和(L16)中;在前一轮运算的结果被送入寄存器(L15)和(R15)的同时,部分结果和本轮子密钥SK16,以及预先设置的虚假子密钥SK*16被送入屏蔽单元(1),屏蔽单元(1)的输出存入寄存器D’中。
2.根据权利要求1所述的差分功耗分析屏蔽电路,其特征在于所述的屏蔽单元(1)由两个S盒子查找表和异或逻辑电路组成,其输入为6比特密文、6比特虚假子密钥SK*16、6比特真实子密钥SK16和4比特第十五轮运算的结果,其输出为4比特D’,逻辑表达式为D′=L151SBOXi(C6K16)SBOXi(C6K′16)。
3.根据权利要求1所述的差分功耗分析屏蔽电路,其特征在于所述的互补寄存器单元(2)由两个寄存器和一个反相器,以及相应的负载电路G2、G3、G4、G5组成;两个寄存器初始状态相同,输出负载相同,时钟沿赋值;两个寄存器的输入互为反相,不论输入为0或是1,两个互补寄存器必是一个翻转,另一个不翻转,总的动态功耗保持恒定。
全文摘要
本发明属于信息安全技术领域,具体为一种应用于DES加密芯片的差分功耗分析屏蔽电路。由屏蔽单元和互补寄存器单元,结合DES加密方案的基本架构,互相连接所构成。本发明主要针对DES加密流程的第十六轮运算的密钥,第十五轮运算的结果被送入寄存器L15和R15,寄存器L15由两部分组成28比特的普通寄存器和4比特互补寄存器。在第十五轮运算的结果被送入寄存器L15和R15的同时,部分结果和第十六轮子密钥以及预先设置的虚假子密钥被送入屏蔽单元。本发明不但能消除DES加密过程中的差分功率信号,而且能通过伪造的差分功率信号导致攻击者发生误判,从而以较小的硬件代价保护DES加密芯片的密钥。
文档编号H04L9/06GK1753357SQ20051002891
公开日2006年3月29日 申请日期2005年8月18日 优先权日2005年8月18日
发明者曾晓洋, 韩军, 陈俊, 郭亚炜 申请人:复旦大学, 上海微科集成电路有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1