[发明专利]一种抗功耗分析的密码算法代换电路有效
申请号: | 201310417989.1 | 申请日: | 2013-09-13 |
公开(公告)号: | CN103618595A | 公开(公告)日: | 2014-03-05 |
发明(设计)人: | 吴斌 | 申请(专利权)人: | 杭州晟元芯片技术有限公司 |
主分类号: | H04L9/06 | 分类号: | H04L9/06 |
代理公司: | 浙江杭州金通专利事务所有限公司 33100 | 代理人: | 赵芳;徐关寿 |
地址: | 310012 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 功耗 分析 密码 算法 代换 电路 | ||
技术领域
本发明涉及一种密码算法代换电路。
技术背景
随着信息技术的发展与普及,智能卡等实现密码算法的电路也日益广泛,这些密码设备越来越多地承载着个人和商业机密信息。分组密码是智能卡等密码设备所必须支持的功能,也是保护信息安全的关键模块。分组密码算法一般采用轮结构,每次加密或解密需要进行多次轮运算(例如12或16次),每一次轮运算中,都包含有密钥参与的多次非线性或线性运算。在密码芯片中,这些运算一般通过逻辑电路实现,而逻辑电路所消耗的功率与密钥中各比特位的取值有关,因此密码芯片的功率消耗与密钥值存在一定的关联,这就为密码的安全造成了潜在的威胁。
另一方面,芯片破解技术的发展,对应用于信息安全领域的芯片造成了极大的威胁。物理攻击属于传统的芯片破解技术,即破坏掉芯片的封装,并利用探针或显微镜获取芯片内部的关键信息。近年来出现的功耗分析技术,不需要破坏芯片,只是通过测量芯片电源引脚上泄露的功耗信息,将其采样成为若干条功耗轨迹曲线,再通过某些算法来分析芯片采用的信息安全算法以及密钥。目前国内外很多科研机构与芯片设计公司展开了对功耗分析技术的研究,利用最先进的功耗分析技术,可以在几秒内破解算法密钥。所以在设计信息安全领域的芯片时,必须考虑增加一些抵抗破解技术的措施,以提高芯片的安全性。
为提高分组密码抵抗功耗攻击的能力,学术界提出了很多措施,例如双轨逻辑、掩码算法等。其中双轨逻辑是在逻辑电路底层进行修改,采用专门设计的逻辑结构,当输入数据某一位取值为1或0时,其输出功耗基本相等。掩码算法是广泛采用的一种抗功耗攻击措施,它将输入明文先与一个随机数做异或操作,直到加密或解密结束后再将正确数据恢复,这样在轮运算当中,电路中的数据都是真实值与随机掩码进行异或操作的结果,从而密钥值不会对功耗产生直接的影响。
在分组密码中,经常使用代换(substitution)操作来进行非线性运算,基本的代换单元是指输入一组固定长度的数据,通过一个查找表来输出对应的另一组数据,这两组数据的长度可以不相等,典型的代换操作如DES或AES算法中的S盒。令S(X)表示某个代换单元对输入X的输出,其非线性运算满足:S(A+B) ≠ S(A) + S(B)。在密码芯片中,分组密码一般由专用的硬件加速器来执行,其中用来实现代换操作的电路结构即是代换电路。
现有的代换电路包括无掩码代换电路和常规掩码代换电路。无掩码代换电路如图1所示,无掩码代换电路有1个M位的输入Sbox_in,1个N位的输出Sbox_out,一般满足M>=N。该电路模块实现的功能是根据输入(Sbox_in)的值,通过查找表(2M-to-1 Lookup Table)查找相对应的一个N位数值并输出。以DES加解密电路中的S盒为例,M=6,N=4,即输入端有2M=64个可能值,输出端有2N=16个可能值,这16个值包括0~15等用4位二进制数可以表示的整数。当输入值固定时,对应1个固定的4位输出值。
无掩码代换电路的缺点在于:在无掩码代换电路中,输入信号Sbox_in是密钥与明文数据进行异或等操作的结果,所以其输出值Sbox_out与密钥值之间具有一定的统计关联。在差分功耗攻击(DPA)中,将密钥值固定,用其对多组随机明文加密,同时监测分组加密电路的功耗,经过一定强度的计算,即可猜测出真实的密钥值。以上DPA攻击的原理在于,代换电路的功耗变化主要由输出值Sbox_out的汉明重量(Hamming Weight)变化决定,而其汉明重量与密钥值存在统计关联。
常规掩码代换电路如图2所示,常规掩码代换电路在无掩码代换电路的基础上,增加了1个M位的随机数Rand,该随机信号与正常的输入信号Sbox_in合并成1个2M位的信号,再作为查找表(22M-to-1 Lookup Table)的输入信号。以DES加解密电路中的S盒为例,如采用此方案,则查找表有2M=12位的输入,即要根据22M=4096个可能的输入值选择出响应的1个输出作为Sbox_out。Rand是一个M位的随机数,在每次加密操作中,Rand取值都不同。在此方案中,由于随机数Rand才存在,输出信号Sbox_out与输入信号Sbox_in的对应关系被破坏,在分组密码电路的其它部分,可采取某些措施将无掩码代换电路的Sbox_out值恢复。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州晟元芯片技术有限公司,未经杭州晟元芯片技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310417989.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:电子跳高装置
- 下一篇:一种艾地苯醌药用预混料及其制备方法和含其药物制剂