一种抵御能量分析攻击的aes对称互补型硬件实现方法

文档序号:7807971阅读:397来源:国知局
一种抵御能量分析攻击的aes对称互补型硬件实现方法
【专利摘要】一种抵御能量分析攻击的AES对称互补型硬件实现方法,包括步骤:设置与AES初始输入逻辑上完全互补的初始值、设置与AES每轮子密钥逻辑上完全互补的初始值、进行操作、进行操作、进行操作、⑥进行操作。本发明保证每轮的中间变量汉明比重一样,而且证任意两轮之间的中间变量汉明距离总是为0,在RTL级别上实施的抵御能量分析攻击的方法,便于实现,无需定制互补型逻辑门逻辑,对于后端的布线布局没有影响,无需考虑负载平衡、导线互连等物理问题。
【专利说明】一种抵御能量分析攻击的AES对称互补型硬件实现方法

【技术领域】
[0001] 本发明属于信息安全芯片设计【技术领域】,具体为一种抵御能量分析攻击的AES对 称互补型硬件实现方法,广泛应用于高度安全性的加密运算设备。

【背景技术】
[0002] 随着网络的不断普及,社会信息化程度的日益提高,信息安全的重要性已经逐步 凸现出来。加密作为信息安全中一个最为有力的武器,正在发挥着重要的作用。Advanced Encryption Standard(以下缩写为AES)加密算法在成为高级加密标准到今天,经历了长 期的考验。
[0003] 任何安全产品或者密码系统都必须面对一个如何防御攻击和窥测的问题,近些年 来,出现了一种新的强有力的攻击方法,人们称之为旁路攻击(SCA)。旁路攻击就是利用密 码芯片在运行过程中泄露的旁路信息,诸如功耗、时间、电磁波、以及差错信息等,利用上述 信息对密码系统进行攻击和窥测。旁路攻击已成为信息安全芯片产品的巨大威胁,其危害 远远大于传统的数学分析手段。
[0004] 功耗攻击是旁路攻击的一种,利用密码芯片执行加密运算时消耗的功耗来对密钥 进行攻击。芯片在处理不同运算的时候所消耗的功耗是不同的,即使处理同一条指令操作 数不同功耗也是不一样的,因此对功耗进行分析,可以推算出密钥来。功耗攻击分为简单功 耗分析攻击(SPA)和差分功耗分析攻击(DPA),其中DPA攻击更有效,应用领域更广泛。
[0005] DPA攻击的原理是利用被攻击设备在加密过程中所实际消耗的功耗与加密算法中 间值的相关性,从而得出密钥的一种攻击方法。根据输入的明文和猜测的密钥,加密算法的 中间值总是可以计算的。因此对抗能量分析攻击方法的研究就变得非常地有必要。
[0006] Kris Tiri在2004年首次提出了抗能量分析攻击的WDDL (波动动态差分逻辑)技 术(见K.Tiri and I. Verbauwhede, "A logic level design methodology for a secure DPA resistant ASIC or FPGA implementation, 〃in Design, Automation and Test in Europe Conference and Exhibition, 2004. Proceedings, 2004, pp. 246_251Vol· 1) 〇 该技 术将两个互补型的逻辑门组成一个复合型的逻辑门,来达到能量消耗的平衡。WDDL技术由 于从产生能量不平衡的根源出发,采用互补性逻辑门代替普通单个的逻辑门,可以从根源 上抵御能量分析攻击。因此它是一种通用的抵制能量分析攻击的方法,不需要考虑具体的 算法。但是,WDDL电路在设计上存在许多难点,以至于WDDL仅仅停留在理论上,而没有大 规模地应用到芯片量产。采用WDDL电路,后端的布局布线必须使用手工完成,这将会耗费 大量的时间和精力。没有成熟的EDA软件的支持,是WDDL电路不能大规模量产的一个重要 的原因。


【发明内容】

[0007] 本发明要解决的技术问题是在RTL(寄存器传输级)级上提供一种抵御能量分析 攻击的AES对称互补型硬件实现方法,采用目前通用的商业EDA软件即可完成芯片设计的 流程,起到类似WDDL电路的效果。
[0008] 本发明原理如下:
[0009] 本发明采用一种与AES算法引擎完全互补的算法引擎,称为CAES。AES引擎与CAES 引擎相当于WDLL逻辑中两个相互补偿的单元。记IAES、ICAES分别为AES和CAES算法引擎中 相对应的中间变量,在任何时候总有下面的关系成立:
[0010] IaeS = Icaes ( 1 )
[0011] 通过公式(1)可以看出本发明采用的AES与CAES互补型设计可以保证整个算法 弓丨擎在任何时刻的汉明比重与汉明距离相同,可以有效地起到抵御能量分析攻击的目的。
[0012] 本发明的技术解决方案如下:
[0013] 一种抵御能量分析攻击的AES对称互补型硬件实现方法,其特点在于,该方法包 括如下步骤:
[0014] ①设置与AES初始输入逻辑上完全互补的初始值;
[0015] ②设置与AES每轮子密钥逻辑上完全互补的初始值;
[0016] ③利用步骤①和步骤②输入的初始值,进行与AES中Addkey操作逻辑上完全互补 的操作;
[0017] ④进行与AES中Subbyte操作逻辑上完全互补的Subbyte操作;
[0018] ⑤进行与AES中Shiftrow操作逻辑上完全互补的5?诉raw操作;
[0019] ⑥进行与AES中Mixcolumn操作逻辑上完全互补的操作。
[0020] 与现有技术相比,本发明具有以下有益效果:
[0021] 首先,AES与CAES的每一个中间变量都在逻辑上互补,不仅可以保证每轮的中间 变量汉明比重一样,而且可以保证任意两轮之间的中间变量汉明距离总是为0。
[0022] 其次,本发明是在RTL级别上实施的抵御能量分析攻击的方法,便于实现,无需定 制互补型逻辑门逻辑。再者,由于是RTL级别上的方法,对于后端的布线布局没有影响,无 需考虑负载平衡、导线互连等物理问题。

【专利附图】

【附图说明】
[0023] 图1AES与互补型CAES硬件实现方案。
[0024] 图2计算GF ((24)2)域上乘法逆。
[0025] 图3AES Sbox能量分析攻击。
[0026] 图4AES与CAES互补型Sbox能量分析攻击。

【具体实施方式】
[0027] 下面结合实施例和附图对本发明做详细的说明,本实施例在以本发明技术方案为 前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于 下述的实施例。
[0028] 图1是本发明AES与互补型CAES硬件实现方案,AES与CAES互补性的存在,AES 与CAES的初始输入与每轮运算的子密钥逻辑互补,且内部的操作完全互补,保证了 AES引 擎与CAES引擎任何变量的汉明比重与汉明距离相同,从而起到能量的动态平衡。详细地:
[0029] 1、AES初始输入DIN与CAES初始输入万尿逻辑上完全互补,作为Addkey操作的 其中一个输入。
[0030] 2、AES每轮子密钥roundkey与CAES每轮子密钥/O〃wi/<v逻辑上完全完全互补, 作为Addkey操作的其中一个输入。
[0031] 3、AES其中的Addkey操作与CAES其中的Addkey操作逻辑上完全互补,又因为它 们的输入完全互补,所以它们的输出完全互补,且Addkey操作的输出作为下一轮的输入或 者作为最后的结果(最后一轮)输出。
[0032] 将AES其中的Addkey操作输入数据记为列向量[bQ,& b2, b3, b4, b5, b6, b7]T,轮密 钥记为列向量[kQ, kp k2, k3, k4, k5, k6, k7]T,输出记为列向量[cQ, q,c2, c3, c4, c5, c6, c7]T,异或 操作记为" ~ 则AES的Addkey操作可以表示为:
[0033]

【权利要求】
1. 一种抵御能量分析攻击的AES对称互补型硬件实现方法,其特征在于,该方法包括 如下步骤: ① 设置与AES初始输入逻辑上完全互补的初始值; ② 设置与AES每轮子密钥逻辑上完全互补的初始值; ③ 利用步骤①和步骤②输入的初始值,进行与AES中Addkey操作逻辑上完全互补的 A/i/kv 操作; ④ 进行与AES中Subbyte操作逻辑上完全互补的操作; ⑤ 进行与AES中Shiftrow操作逻辑上完全互补的57?诉/'ou'操作; ⑥ 进行与AES中Mixcolumn操作逻辑上完全互补的操作。
2. 根据权利要求1所述的抵御能量分析攻击的AES对称互补型硬件实现方法,其特征 在于,所述的步骤③操作,具体如下: 将步骤①得到的输入数据记为列向量[b'0 ν,b'2, V,b'4, V,b'6,b' 7]τ,将步骤② 得到的轮密钥记为列向量[k'。,V,k' 2, k3',k' 4, k5',k' 6, k' 7]τ,输出记为列向量[C'。,Cl',c ' 2, c' 3, c' 4, c' 5, c' 6, c' 7]τ,同或操作记为"·'?",公式如下:
3. 根据权利要求1所述的抵御能量分析攻击的AES对称互补型硬件实现方法,其特征 在于,所述的步骤④^^操作,包含以下两个变换: 变换1 :与AES完全互补的乘法逆运算。 变换2 :与AES完全互补的仿射变换。
4. 根据权利要求3所述的抵御能量分析攻击的AES对称互补型硬件实现方法,其特征 在于,所述的与AES完全互补的乘法逆运算,包括以下三个步骤: 步骤1 :将GF(28)上的数据转换成GF(24)上的数据:记GF(28)的数据为列向量 [X。,Xi, x2, x3, x4, x5, x6, χ7]τ,转换为 GF(24)上的数据记为列向量[al, ah]T = [al。,ali, al2, a 13, ahQ, ah^ ah2, ah3]T,则转换的公式如下:
步骤2: CAES复合域GF( (24)2)上的求逆,公式如下: ahxc = ahs ?λ alxe 二{ah ?八("、}? η! gama = ahxe ?"alxe theta = gama1 aph = (hc(a ? ah apl = theia?('ah ?Aal) 式中,"S"表示CAES中GF (24)域上的平方操作,"(8)"表示CAES中GF (24)域上的乘法 操作,"I"表示CAES中GF(24)域上的求逆运算; 步骤3 :将GF (24)的数据再转换到GF (28),公式如下:
5.根据权利要求4所述的抵御能量分析攻击的AES对称互补型硬件实现方法,所述的 与AES完全互补的仿射变换,公式如下:
6.根据权利要求1所述的抵御能量分析攻击的AES对称互补型硬件实现方法,其特征 在于,所述的步骤⑥Μ/?〃训操作定义如下:
【文档编号】H04L29/06GK104092533SQ201410312769
【公开日】2014年10月8日 申请日期:2014年7月2日 优先权日:2014年7月2日
【发明者】朱念好, 周玉洁, 刘红明 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1