抵抗差分功耗分析攻击和注入错误攻击的数据处理系统的制作方法

文档序号:10213415阅读:729来源:国知局
抵抗差分功耗分析攻击和注入错误攻击的数据处理系统的制作方法
【技术领域】
[0001]本实用新型涉及通讯技术领域,尤其涉及一种抵抗差分功耗分析攻击和注入错误攻击的数据处理系统。
【背景技术】
[0002]随着网络技术的进步,电子商务、电子政务、网上银行等业务得到广泛开展,智能卡具有良好的安全特性,同时具有便于携带、使用方便等特点,这使得它在金融、社保、交通等领域扮演着非常重要角色。但由于网络的开放性,这些新兴业务更容易受到攻击。随着研究的不断深入,针对智能卡的侧信道攻击被认为是最危险的一种攻击方法。侧信道攻击可以利用智能卡的电力消耗、执行时间、故障时的输出与输入行为、辐射、电力尖峰情形等信息来攻击智能卡,最终得到用户的密钥。在各种各样的侧信道攻击中,差分功耗分析攻击是最有效的攻击方法之一。由于智能卡芯片在执行不同的指令进行各种运算时,它的功耗也会有相应的变化,差分功耗分析攻击根据数据和功耗之间的关联性,还原出密钥,进而达到攻击的效果。而注入错误攻击则是在智能卡芯片运算过程中注入时钟或者电压毛刺,使得密码运算发生错误。注入错误攻击就是利用错误的输出数据来对密钥进行还原。差分功耗分析攻击和注入错误攻击对智能卡中的加密算法的成功攻击已经被广泛报道。
[0003]DES算法为密码体制中的对称密码,是1972年美国IBM公司研制的对称密码体制加密算法。其明文按64位进行分组,密钥长64位,密钥事实上是56位参与DES运算(第8、16、24、32、40、48、56、64位是校验位,使得每个密钥都有奇数个1),分组后的明文和56位的密钥按位替代或交换的方法形成密文的加密方法。该算法采用Feistel结构,加密解密算法流程除了轮密钥使用顺序之外,其他基本一致。这种结构能够在硬件中高速实现,具有很好的应用前景。
[0004]现有的DES算法中S盒的输入是6比特的数据,输出是4比特数据,一般都是采用查表方法来实现。当硬件仅仅实现了一个完整的S盒时,由于在加解密过程中寄存器的翻转会泄露功耗信息,从而导致了其无法抵抗相关功耗攻击。当硬件在实现过程中加入了一般的掩码操作,并且对S盒进行了固定掩码处理,则其能够抵抗一阶差分功耗分析。但当进行多个点联合分析时,这种固定掩码操作则所产生的功耗还是会泄露密钥信息,从而使得数据处理的安全性较低。
【实用新型内容】
[0005]本实用新型要解决的技术问题在于,针对现有技术的上述数据处理的安全性较低的缺陷,提供一种抵抗差分功耗分析攻击和注入错误攻击的数据处理系统,提高数据处理的安全性。
[0006]本实用新型解决其技术问题所采用的技术方案是:构造一种抵抗差分功耗分析攻击和注入错误攻击的数据处理系统,包括:
[0007]用于在初始化时根据随机数对初始S盒的数据进行修正,以产生修正后S盒的数据的修正装置;
[0008]连接于所述修正装置,且用于存储初始S盒的数据及修正后S盒的数据的ROM;
[0009]连接于所述ROM,且用于根据修正后S盒的数据进行数据置换的S盒置换装置。
[0010]优选地,所述修正装置包括:
[0011]用于将3比特的随机数扩展成6比特的输入掩码的第一扩展模块;
[0012]用于将所述3比特的随机数扩展成4比特的输出掩码的第二扩展模块;
[0013]连接于所述ROM和所述第一扩展模块,且用于将初始S盒的输入数据与所述输入掩码进行异或以生成6比特的新数据的第一异或模块;
[0014]连接于所述第一异或模块和所述R0M,且用于将所述3比特的随机数与所述6比特的新数据组合成修正后S盒的输入数据的组合模块;
[0015]连接于所述ROM和所述第二扩展模块,用于将初始S盒的输出数据与所述输出掩码进行异或以生成修正后S盒的输出数据的第二异或模块。
[0016]优选地,所述S盒置换装置包括:
[0017]用于将3比特的随机数扩展成6比特的第一新掩码的第三扩展模块;
[0018]用于将所述3比特的随机数扩展成4比特的第二新掩码的第四扩展模块;
[0019]连接于所述第三扩展模块,且用于将带旧掩码的掩码数据去除旧掩码并加入所述第一新掩码以生成带第一新掩码的掩码数据的掩码变换模块;及
[0020]修正S盒模块,而且,所述修正S盒模块的第一输入端输入所述3比特的随机数,所述修正S盒模块的第二输入端连接所述掩码变换模块的输出端,所述修正S盒模块的输出端输出带第二新掩码的掩码数据。
[0021 ]优选地,所述第一扩展模块或所述第三扩展模块包括:第一异或门、第一非门和第一与门,其中,该扩展模块的第一输入口输入所述3比特的随机数的第一位,其第二输入口输入所述3比特的随机数的第二位,其第三输入口输入所述3比特的随机数的第三位,所述第一异或门的两个输入端连接该扩展模块的第一输入口和第二输入口,所述第一非门的输入端连接该扩展模块的第二输入口,所述第一与门的两个输入端分别连接该扩展模块的第一输入口和第三输入口,该扩展模块的第一输出口连接其第一输入口,其第二输出口连接其第二输入口,其第三输出口连接其第三输入口,其第四输出口连接所述第一异或门的输出端,其第五输出口连接所述第一非门的输出端,其第六输出口连接所述第一与门的输出端。
[0022]优选地,所述第二扩展模块或所述第四扩展模块包括:第二异或门、第二非门和第二与门,其中,该扩展模块的第一输入口输入所述3比特的随机数的第一位,其第二输入口输入所述3比特的随机数的第二位,其第三输入口输入所述3比特的随机数的第三位,所述第二异或门的两个输入端分别连接该扩展模块的第一输入口和第二输入口,所述第二非门的输入端连接该扩展模块的第二输入口,所述第二与门的两个输入端分别连接该扩展模块的第二输入口和所述第三输入口,该扩展模块的第一输出口连接所述第二异或门的输出端,其第二输出口连接其第二输入口,其第三输出口连接所述第二非门的输出端,其第四输出口连接所述第二与门的输出端。
[0023]优选地,所述掩码变换模块包括第三异或门和第四异或门,所述第三异或门的第一输入端输入带旧掩码的掩码数据,所述第三异或门的第二输入端输入所述第一新掩码,所述第三异或门的输出端连接所述第四异或门的第一输入端,所述第四异或门的第二输入端输入旧掩码,所述第四异或门的输出端输出带第一新掩码的掩码数据。
[0024]实施本实用新型的技术方案,在进行数据处理前,根据随机数对初始S盒的数据进行修正,以产生修正后S盒的数据,这种实现方式在合理增大芯片面积的前提下,使得S盒的安全性大大增强,从而保证了整个数据处理系统的安全性。
【附图说明】
[0025]下面将结合附图及实施例对本实用新型作进一步说明,附图中:
[0026]图1是本实用新型抵抗差分功耗分析攻击和注入错误攻击的数据处理系统实施例一的逻辑结构图;
[0027]图2是图1中修正装置实施例一的逻辑结构图;
[0028]图3是图1中S盒置换装置实施例一的逻辑结构图;
[0029]图4是第一扩展模块或第三扩展模块实施例一的逻辑结构图;
[0030]图5是第二扩展模块或第四扩展模块实施例一的逻辑结构图;
[0031 ]图6是掩码变换模块实施例一的逻辑结构图。
【具体实施方式】
[0032]图1是本实用新型抵抗差分功耗分析攻击和注入错误攻击的数据处理系统实施例一的逻辑结构图,该数据处理系统包括相连接的修正装置10、R0M20和S盒置换装置30,其中,修正装置10用于在初始化时根据随机数对初始S盒的数据进行修正,以产生修正后S盒的数据;R0M20用于存储初始S盒的数据及修正后S盒的数据;S盒置换装置30用于根据修正后S盒的数据进行数据置换。实施该实施例的技术方案,在进行数据处理前,根据随机数对初始S盒的数据进行修正,以产生修正后S盒的数据,这种实现方式在合理增大芯片面积的前提下,使得S盒的安全性大大增强,从而保证了整个数据处理系统的安全性。
[0033]图2是图1中修正装置实施例一的逻辑结构图,该实施例的修正装置包括第一扩展模块11、第二扩展模块12、第一异或模块13、组合模块14和第二异或模块15。其中,第一扩展模块11用于将3比特的随机数扩展成6比特的输入掩码;第二扩展模块12用于将所述3比特的随机数扩展成4比特的输出掩码;第一异或模块13用于将初始S盒的输入数据与所述输入掩码进行异
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1