一种防止差分功耗分析的智能卡加密方法及装置制造方法及图纸

技术编号:13894114 阅读:57 留言:0更新日期:2016-10-24 19:53
本发明专利技术的实施例提供一种防止差分功耗分析的智能卡加密方法及装置,涉及信息安全技术领域,能够实现对差分功耗分析攻击的防御,提高智能卡密钥的安全性。该方法包括:获取64位的明文,并对该明文进行初始置换;对经过初始置换后的明文进行16轮加密运算,并在每一轮加密运算过程中的至少一种运算后添加随机延时;完成第16轮加密运算后,进行逆初始置换还原真实的密文信息,存储并输出该密文信息。本发明专利技术应用于智能卡加密。

【技术实现步骤摘要】

本专利技术涉及信息安全
,尤其涉及一种防止差分功耗分析的智能卡加密方法及装置
技术介绍
TD-LTE(英文:Time Division Long Term Evolution,中文:分时长期演进)电力无线专网以其高带宽、低延时、灵活覆盖及安全可靠等特性,在配用电通信领域得到了广泛的应用与发展。其中,TD-LTE电力无线专网无线链路的安全性取决于无线专网智能卡芯片,而智能卡芯片的安全性应取决于其所使用的密码算法、认证方式以及安全协议的复杂度。而现有的电力无线智能卡芯片通常使用DES(英文:Data Encryption Algorithm,中文:数据加密算法)加密算法来进行加解密。其中,DES加密技术是一种典型的对称加密算法。对称加密算法的含义是加密和解密使用相同的密钥,通信双方需要同时知道密钥并且确定不被泄漏。DES加密算法流程具体过程包括:64位的明文首先进行初始置换,然后分为左右两部分,通过S盒、异或、左右交换等操作进行16次轮运算,最后经过逆初始置换得到密文。在DES加密算法提出不久,便有许多人试图使用旁路攻击(side-channel attack)密码分析技术攻击该算法,该算法无需对密钥算法进行繁琐的数学分析,而是利用加密过程中产生的物理泄露(例如,温度、声波、电磁辐射、执行时间、功率消耗等)来获取密钥等隐秘信息。其中,DPA(英文:Differential Power Analysis,中文:差分功耗分析攻击)是现今最为普遍的一种旁路攻击方法,攻击者可以通过旁路接入的方法,记录加密时的功耗情况,然后通过不断地变换明文,逐位破解分析功耗波形图,从而破译密钥。具体的,对于DES加密算法,当攻击者猜对某一轮进入S盒的子密钥时,便可按一定规则差分处理后的相关功耗曲线将显示出一些很突出的尖峰,若差分功耗曲线出现明显的尖峰,则表示本轮密钥猜测成果。差分功耗分析技术,实质是通过对比差分功耗图来逐位破解密钥,其具体破解
步骤如下:从密钥的最高位开始假设要攻击的密钥位为0,针对每一位密钥的攻击都是破解该密钥位对应的那一轮加密运算;在加密模型中对明文进行这一轮加密,查看加密结果中某一个固定位的值是0还是1;在芯片中对同一明文进行加密,获取功耗图,若加密模型中,结果的某一个固定位的值是0,就将这条功耗图放在0集合中,否则将其放入1集合中;按照上述过程把所有明文加密的功耗图分为两组,并计算每一组的平均功耗曲线;把这两个分组的平均功耗曲线相减得到差分功耗曲线,在差分曲线中所假设密钥位对应的时间点上,若出现尖峰则说明假设正确,该密钥位为0,否则说明假设错误,该密钥位为1;按照上述步骤依次破解密钥的每一位。这样通过采集大量的能量痕迹,利用统计学原理和差分分析方法便可猜测并破解加密密钥。
技术实现思路
本专利技术的实施例提供一种防止差分功耗分析的智能卡加密方法及装置,能够实现对差分功耗分析攻击的防御,提高智能卡密钥的安全性。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,提供一种防止差分功耗分析的智能卡加密方法,包括:获取64位的明文,并对所述明文进行初始置换;对经过初始置换后的明文进行16轮加密运算,并在每一轮加密运算过程中的至少一种运算后添加随机延时;完成第16轮加密运算后,进行逆初始置换还原真实的密文信息,存储并输出所述密文信息。第二方面,提供一种防止差分功耗分析的智能卡加密装置,包括:置换模块、运算模块、延时模块以及存储器;其中,所述置换模块连接所述存储器,用于从所述存储器中获取64位的明文,并对所述明文进行初始置换;所述运算模块连接所述置换模块,用于对所述置换模块进行初始置换后的明文进行16轮加密运算;所述延时模块连接所述运算模块,用于在所述运算模块对经过初始置换后的明文进行16轮加密运算的每一轮加密运算过程中的至少一种运算
后添加随机延时;所述置换模块连接所述运算模块,还用于在所述运算模块完成第16轮加密运算后,进行逆初始置换还原出真实的密文信息,并将所述密文信息写入所述存储器;所述存储器,用于存储并输出所述密文信息。本专利技术的实施例提供的防止差分功耗分析的智能卡加密方法及装置,通过在现有的DES算法的16轮加密运算的每轮加密运算中加入随机延时的过程,从而使得每次加密的运算位置随机变化,进而增大破解的难度,使得加密后的智能卡能够实现对差分功耗分析攻击的防御,提高了智能卡密钥的安全性。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为现有的DES加密算法步骤图;图2为现有的DES加密算法中S盒变换的变换流程图;图3为本专利技术实施例提供的防止差分功耗分析的智能卡加密方法的方法流程图;图4为本专利技术实施例提供的随机延时添加示意图;图5为本专利技术实施例提供的S盒的运算顺序随机化的方法流程图;图6为本专利技术实施例提供的随机噪声的添加方法流程图;图7为本专利技术实施例提供的防止差分功耗分析的智能卡加密装置的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的
范围。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。本专利技术实施例提供的防止差分功耗分析的智能卡加密方法的执行主体可以为防止差分功耗分析的智能卡加密装置,或者用于执行上述防止差分功耗分析的智能卡加密方法的智能卡芯片、中央处理器(英文:Central Processing Unit,简称:CPU)或者可以为上述智能卡芯片中的控制单元或者功能模块。参照图1所示的现有的DES加密算法步骤图可知,现有的DES加密算法包括如下步骤:1)将明文分组,每个分组输入为64位的明文;2)使用IP置换表对明文进行初始置换,初始置换过程是与密钥无关的操作;3)加密迭代过程,有16个形同的处理过程,称谓轮(round),即整个加密过程共16轮加密运算;4)对经过16轮加密运算的明文进行逆初始置换,这一变换过程也不需要密钥,能够还原出真实的密文;5)输出64位的密文。如图1所示,16轮加密运算中的每一的加密运算的执行过程如下:1)明文分组:对64位明文进行移位操作,将64位明文分成左半部分(L)和右半部分(R),每部分各32位,本轮运算中的右半部分直接作为下一轮运算的左半部分,右半部分的32位进行扩展置换变为48位,其输出包括8个5位的块,每块包含4位对应的输入位,加上两个临界的块中紧邻的位;2)密钥混合:将经过扩展的48位右半部分与本轮的48位密钥进行异或运算;3)S盒变换:将2)中的结果经过S盒变换,由原来的48位变换为32位;其中,具体的转换过程如本文档来自技高网
...

【技术保护点】
一种防止差分功耗分析的智能卡加密方法,其特征在于,包括:获取64位的明文,并对所述明文进行初始置换;对经过初始置换后的明文进行16轮加密运算,并在每一轮加密运算过程中的至少一种运算后添加随机延时;完成第16轮加密运算后,进行逆初始置换还原真实的密文信息,存储并输出所述密文信息。

【技术特征摘要】
1.一种防止差分功耗分析的智能卡加密方法,其特征在于,包括:获取64位的明文,并对所述明文进行初始置换;对经过初始置换后的明文进行16轮加密运算,并在每一轮加密运算过程中的至少一种运算后添加随机延时;完成第16轮加密运算后,进行逆初始置换还原真实的密文信息,存储并输出所述密文信息。2.根据权利要求1所述的方法,其特征在于,所述在每一轮加密运算过程中的至少一种运算后添加一个随机延时,包括以下至少一个步骤:在每一轮加密运算的扩展变换与第一异或运算之间添加一个随机延时;在每一轮加密运算的异或运算与S盒变换之间一个添加随机延时;在每一轮加密运算的S盒变换与P变换之间一个添加随机延时;在每一轮加密运算的P变换与第二异或运算之间添加一个随机延时;在每一轮加密运算的第二异或运算之后添加一个随机延时;在每一轮加密运算的8个S盒之间添加随机延时。3.根据权利要求1或2所述的方法,其特征在于,所述对经过初始置换后的明文进行16轮加密运算的每一轮加密运算的8个S盒运算过程中,还包括:将所述每一轮加密运算的8个S盒运算的运算顺序随机化。4.根据权利要求1或2所述的方法,其特征在于,所述对经过初始置换后的明文进行16轮加密运算的过程中,还包括:触发随机噪声干扰程序,进行无意义的随机运算,产生随机噪声。5.根据权利要求1所述的方法,其特征在于,所述获取64位的明文之前,所述方法还包括:对待加密的明文进行分组,每个分组输入的明文为64位明文。6.一种防止差分功耗分析的智能卡加密装置,其特征在于,包括:置换模块、运算模块、延时模块以及存储器;其中,所述置换模块连接所述存储器,用于从所述存储器中获取64位的明文,并对所述明文进行初始置换;所述运算模块连接所述置换...

【专利技术属性】
技术研发人员:陈立明董旭柱谢雄威吴争荣刘志文俞小勇罗洋禤亮黄晓胜陶凯李瑾秦昊黄冠琅
申请(专利权)人:中国南方电网有限责任公司电网技术研究中心南方电网科学研究院有限责任公司中国电子科技集团第七研究所广西电网有限责任公司电力科学研究院广西电网有限责任公司南宁供电局
类型:发明
国别省市:广东;44

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

1