CN103916236B - 面向aes算法的抗功耗攻击方法及电路实现 - Google Patents

面向aes算法的抗功耗攻击方法及电路实现 Download PDF

Info

Publication number
CN103916236B
CN103916236B CN201410172447.7A CN201410172447A CN103916236B CN 103916236 B CN103916236 B CN 103916236B CN 201410172447 A CN201410172447 A CN 201410172447A CN 103916236 B CN103916236 B CN 103916236B
Authority
CN
China
Prior art keywords
module
aes
flag
wheel
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410172447.7A
Other languages
English (en)
Other versions
CN103916236A (zh
Inventor
单伟伟
孙华芳
伏星源
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN201410172447.7A priority Critical patent/CN103916236B/zh
Publication of CN103916236A publication Critical patent/CN103916236A/zh
Application granted granted Critical
Publication of CN103916236B publication Critical patent/CN103916236B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明提出了一种面向AES算法的抗功耗攻击方法及其电路实现,其基本原理在于在AES算法电路中添加控制模块和冗余寄存器。AES算法根据控制模块产生的标志位,选择每一轮中间计算数据存储的寄存器位置,使得每一轮加密操作的中间数据交替存储在不同的寄存器中,有效的隐藏了AES算法中间数据的汉明距离,使得AES算法抵抗基于汉明距离模型的功耗分析攻击。本方法具有灵活性高,面积代价小,抗功耗攻击能力强等特点,为设计安全芯片提供了很好的解决方案。

Description

面向AES算法的抗功耗攻击方法及电路实现
技术领域
本发明涉及集成电路硬件实现和信息安全技术领域,尤其是一种面向高级加密算法(Advanced Encryption Standard,AES)硬件电路的抗功耗攻击方法。
背景技术
随着互联网技术与信息科技的快速发展,信息加密技术在很多领域都有非常重要的应用。以密码设备为代表的信息安全产品已经渗入到国家安全和人民生活的方方面面。各种基于AES、RSA等算法的密码芯片得到了广泛地研究和开发。
随着信息技术的发展,密码芯片也面临着越来越多的安全风险,近几年旁路攻击(Side-Channel Attack,SCA,又叫做“侧信道攻击”)作为一种新的密码攻击方法,对密码算法电路提出了严峻挑战。其中功耗分析攻击(Power Analysis Attack)是较为常见和非常有效的旁路攻击手段。功耗分析攻击的实施者首先大量获取加密算法电路在加密过程中泄露的电流或者电压等功耗信息,然后根据明文(或者密文)以及建立的数学模型(数学模型会对密钥进行假设猜测),得到大量中间数据,攻击者通过对比分析中间数据和功耗信息,采用统计处理分析方法,即可破解得到正确密钥信息。功耗分析攻击不需要影响或者破坏加密设备,是一种非入侵式的攻击手段。同时功耗分析攻击实施较为简单,攻击效率非常高,是密码算法电路安全性的一个重要威胁。
在采集到大量实际功耗后,功耗攻击得以成功的关键在于建立准确的功耗数学模型。汉明距离模型的基本思想是计算数字电路在某个特定时段内电路中0→1转换和1→0转换的总数,然后利用转换的总数来刻画电路在该时间段内的功耗。
在信息论中,汉明距离指的是两个位宽等长的数据之间对应位置上数值不同的位的个数。比如两个4比特数据A(1010)和B(1001),对应第3位和第4位数据不同,那么这两个数据的汉明距离为2,可以表示成:
HD(A,B)=HD(1010,1001)=2;
在CMOS数字电路中,汉明距离模型是指计算数字电路在某一个时刻,所有电路发生“1”->“0”或者“0”->“1”的总数,根据转换的总数刻画此时电路的能量消耗。在汉明距离模型中,通常认为电路发生“1”->“0”变化与发生“0”->“1”变化引起的功耗相等,“0”->“0”变化与“1”->“1”变化所引起的功耗相同而且可以忽略。对于数字电路,功耗主要来自于电路的状态转换,而并不依赖于数据本身,并且翻转的器件越多,其功耗越大。因此使用汉明距离模型能够较好的刻画数字电路的能量消耗。在某一时刻,如果能够计算得到电路翻转前的数据D0和翻转后的数据D1,得到数据翻转的个数,从而算出数据的汉明距离,就可以和真实的功耗值建立联系。建立汉明距离模型时,需要知道数据变化前后的数值。汉明距离模型一般用于对寄存器的功耗进行描述。
AES分组密码算法输入明文为128bit,算法包括初始异或操作,中间9轮操作,第10轮的轮末操作;算法每一轮都需要一个128bit子密钥,算法每一轮的中间数据结果保存在128bit的寄存器中。AES密码算法电路在基于相关系数的差分功耗攻击中,中间数据会泄露汉明距离,从而被用来当作假设功耗值用在攻击分析中。
攻击者一般选取中间数据存储的寄存器为攻击点,攻击者首先猜测密钥,进一步猜测相邻两轮的中间值,计算汉明距离,作为寄存器变化所产生的功耗模型,然后采集实际功耗,将功耗模型与实际功耗(或仿真功耗)进行统计分析,得到正确的密钥。
发明内容
发明目的:目前AES密码算法电路在基于相关系数的差分功耗攻击中,中间数据寄存器会泄露汉明距离,从而被用来当作假设功耗值用在攻击分析中。
原始AES分组加密算法,一共由3部分构成,包括初始的与密钥异或,中间9次循环的轮操作,第10轮末变换。AES的初始密钥为128比特,每一轮需要一个128比特子密钥ki(i=0,…,10),一共十一个子密钥,子密钥由初始密钥经过扩展得到。
AES算法9次循环的轮操作包括1)S盒替换,2)行移位,3)列混合,4)密钥异或四个操作,第十轮的操作为1)S盒替换,2)行移位,3)密钥异或,没有列混合操作。其中S盒替换为16个并行S盒操作,每一个S盒的输入输出为8比特。AES每一轮加密结束都有有128比特的中间数据,记做Dn(n=1,…,10),存储在寄存器中,第十轮的结果即为密文输出。
实施功耗攻击时,攻击者通常攻击AES密码算法的最后一轮。AES算法每一轮的子密钥为128比特,猜测第一个8比特密钥,一共有28=256种可能。根据8bit猜测密钥和密文的值,以及AES算法第9,10轮的数学结构,可以推测D9中8比特数据,步骤如下。
(1)根据D10的数据和猜测密钥K10的8比特数据,可以推导出异或之前的数据,即行移位之后的8比特数据。
(2)根据行移位之后的8比特数据以及行移位的规则,进而可以推导出行移位之前的8比特数据,即第一个S盒输出的8比特数据。
(3)根据S盒的输出的8比特数据以及AES的S盒结构,可以进一步倒退得到S盒的8比特数据输入,即D9中的8比特数据。
由D10的值和假设密钥可以推测出D9中前8比特的值,根据中间数据D9和D10的8比特值,可以建立一个8比特的汉明距离模型。
攻击时刻1,第十轮加密结束,针对中间数据寄存器Reg0,汉明距离:
其中InvSbox为逆S盒置换,InvShift为逆移位操作。
进行汉明距离模型攻击时,猜测8比特密钥,即可猜测得到D9中8bit的数值,攻击者从而可成功建立汉明距离模型。
本发明针对上述缺陷,通过改变中间数据存储的寄存器位置,从而使得任一寄存器不再泄露相邻两轮的中间数据的汉明距离,以此提供一种有效的AES算法硬件实现的抗功耗攻击方法。
技术方案:一种面向AES算法的抗功耗攻击方法,其特征在于,在AES加密算法模块中添加控制模块和冗余寄存器,AES分组密码算法根据所述控制模块产生的标志位,选择每一轮中间计算数据存储的寄存器位置,具体包括如下步骤:
步骤一,AES加密硬件实现经过10轮迭代,其中每一轮的中间数据Dn(n=1,..10)保存在128比特原始寄存器Reg0中,在AES加密模块中增加控制模块及一个128比特冗余寄存器Reg1,所述控制模块产生1比特标志位flag,AES加密的每一轮中间结果数据根据flag的值,选择将中间结果存储在原始寄存器Reg0还是所述冗余寄存器Reg1中;
步骤二,初始时,标志位flag的值为0,然后flag根据轮数交替变化,AES算法进行奇数轮加密时flag为1,即第1,3,5,7,9轮加密时flag为1;AES算法进行偶数轮加密时flag为0,即第2,4,6,8,10轮加密时flag为0;
步骤三,AES算法运算时,输入128比特明文,然后通过与初始密钥异或,得到D0,保存在原始寄存器Reg0中;
步骤四,接着AES进行9轮迭代操作,通过迭代运算,AES将子密钥和数据结合起来,子密钥由初始密钥生成,9次迭代运算具有相同的结构,包括4个操作:S盒替换、行移位、列混合、密钥异或;上一轮128比特中间数据Dn-1,经过这4个操作得到这一轮的128比特中间数据Dn,接着中间数据Dn根据flag标志位的值保存到寄存器中,如果flag为0,中间数据Dn保存在上述原始寄存器Reg0中;如果flag为1,中间数据Dn保存在上述冗余寄存器Reg1中。
步骤五,第9次轮迭代的结果D9进行第10轮变换,经过S盒变换、行移位、密钥异或得到数据D10保存在冗余寄存器Reg1中。
一种采用上述抗功耗攻击方法实现的具有抗功耗攻击电路,其特征在于,所述电路在AES加密算法模块中添加控制模块以及冗余寄存器,AES分组密码算法根据所述控制模块产生的标志位,选择每一轮中间计算数据存储的寄存器位置,所述电路具体包括:
初始异或模块及轮操作模块;轮操作模块具体包括S盒替换模块、行移位模块、列混合模块、异或模块、控制标志模块、寄存器模块;初始异或模块完成AES算法的初始异或操作,轮操作模块完成轮运算,该轮操作模块中S盒替换模块完成轮运算中S盒替换操作,行移位模块完成S盒替换后数据的移位操作,列混合模块模块对行移位模块输出的数据完成列混合操作,得到中间数据;中间数据将根据flag标志位的值保存到寄存器Reg0或Reg1中。
本发明的抗功耗攻击原理说明如下:通过添加冗余中间寄存器和标志位方法,AES相邻两轮的中间数据不再保存在同一寄存器中,攻击者无法成功建立汉明距离模型,避免了相邻两轮数据的汉明距离的泄露。以攻击者选取Reg0和Reg1作为攻击寄存器为例,在Reg0和Reg1最后一次发生数据变化时,建立两个汉明距离模型。
针对Reg0,Reg0最后一次数据变化,建立汉明距离:
针对Reg1,Reg1最后一次数据变化,建立汉明距离:
式(1)需要知道D8的值,式(2)中,需要知道的D7值,才能建立汉明距离。AES算法轮操作中存在列混合操作,数据会被重新扩散打散,猜测D7和D8的数据会涉及到128比特的密钥猜测,因此攻击者无法直接猜测得到D7和D8中某8bit数据。因此攻击者无法建立可行的汉明距离模型,从而改进的AES算法可以有效的抵抗基于汉明距离模型的功耗攻击。
进行汉明距离模型攻击时,已知密文,猜测8比特密钥,可以猜测得到D9和D10的数值,但如果不知道最后一轮加密的子密钥,无法猜测得到D7和D8,因为第8轮和第7轮的数据经过:1)S盒替换,2)行移位,3)列混合,4)与密钥异或数据已经完全打散,需要猜测128比特密钥,有2128种可能(2128是很大的数值),因此数据无法预测。可见采用动态改变加密算法中间数据存储位置的方法后,对于Reg0和Reg1,攻击者无法成功建立汉明距离模型,从而可以有效的抵抗功耗攻击。
有益效果:本发明提出的抗攻耗攻击方法只需要添加少量冗余寄存器和标志位,使AES算法运算中相邻两轮的中间数据不再保存在同一寄存器中,避免了相邻两轮数据的汉明距离的泄露,即可切断实际功耗和数据之间的相关性,从而大大提高了AES密码电路的抗功耗攻击能力。此外,该方法的电路实现简便易行,面积代价也很小,很适合密码算法的集成电路实现。最后,此方法具有很强的扩展性,可以用于抵抗算法中其他潜在的攻击点,也可以很方便的移植到其他密码算法中。
附图说明
图1为原始的AES算法结构图;
图2为AES算法基于汉明距离模型的功耗攻击原理;
图3一种面向AES算法的抗功耗攻击方法原理图;
图4一种面向AES算法的抗功耗攻击方法及其电路实现图;
图5为原始AES算法功耗攻击结果图;
图6本发明改进AES算法的功耗攻击结果图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,原始AES分组加密算法,一共由3部分构成,包括初始的与密钥异或,中间9次循环的轮操作,第10轮末变换。AES的初始密钥为128比特,每一轮需要一个128比特子密钥ki(i=0,…,10),一共十一个子密钥,子密钥由初始密钥经过扩展得到。
AES算法中间9次循环的轮操作包括1)S盒替换,2)行移位,3)列混合,4)密钥异或四个操作,第十轮的操作为1)S盒替换,2)行移位,3)密钥异或,没有列混合操作。AES每一轮加密结束都有有128比特的中间数据,记做Dn(n=1,…,10),存储在寄存器中Reg0,第十轮的结果D10即为密文输出。
如图2所示,攻击者通过猜测最后一轮6比特密钥可以得到中间数据的某8比特的值,从而建立汉明距离模型。以攻击者选取最后一轮中间数据作为攻击点为例,攻击者可以建立汉明距离模型。AES算法每一轮的子密钥为128比特,猜测第一个8比特密钥,一共有28=256种可能。根据8bit猜测密钥和密文的值,以及AES算法第9,10轮的数学结构,可以推测D9中8比特数据,步骤如下。
(1)根据D10的数据和猜测密钥K10的8比特数据,可以推导出异或之前的数据,即行移位之后的8比特数据。
(2)根据行移位之后的8比特数据以及行移位的规则,进而可以推导出行移位之前的8比特数据,即第一个S盒输出的8比特数据。
(3)根据S盒的输出的8比特数据以及AES的S盒结构,可以进一步倒退得到S盒的8比特数据输入,即D9中的8比特数据。
由D10的值和假设密钥可以推测出D9中前8比特的值,根据中间数据D9和D10的8比特值,可以建立一个8比特的汉明距离模型。
攻击时刻1,第十轮加密结束,针对中间数据寄存器Reg0,汉明距离:
其中InvSbox为逆S盒置换,InvShift为逆移位操作。
进行汉明距离模型攻击时,猜测8比特密钥,即可猜测得到D9中8bit的数值,攻击者从而可成功建立汉明距离模型。
如图3所示,本发明采用的一种面向AES算法的抗攻耗攻击方法及电路实现包括如下步骤:
步骤一,AES加密硬件实现需要10轮迭代,其中每一轮的中间数据Dn(n=0,1,..10)保存在128比特寄存器Reg0中,本发明在AES加密模块中增加控制模块及一个128bit冗余寄存器Reg1,所述控制模块产生1比特标志位flag,AES加密的每一轮中间结果数据根据flag的值,选择将中间结果存储在原始寄存器Reg0还是新增的冗余寄存器Reg1中。
步骤二,初始时,标志位flag的值为0,然后flag根据轮数交替变化,AES算法进行奇数轮加密时flag为1,即第1,3,5,7,9轮加密时flag为1;AES算法进行偶数轮加密时flag为0,即第2,4,6,8,10轮加密时flag为0。
步骤三,AES算法运算时,输入128比特明文,然后通过与初始密钥异或,得到D0,保存在Reg0中。
步骤四,接着AES进行9轮迭代操作,通过迭代运算,AES将子密钥和数据结合起来,子密钥由初始密钥生成。9次迭代运算具有相同的结构,包括4个操作:1)S盒替换,2)行移位,3)列混合,4)与密钥异或。上一轮128比特中间数据Dn-1,经过这4个操作得到这一轮的128比特中间数据Dn,接着中间数据Dn根据flag标志位的值保存到中间寄存器中,如果flag为0,中间数据Dn保存在Reg0中;如果flag为1,中间数据Dn保存在Reg1中。
步骤五,第9次轮迭代的结果进行第10轮变换,得到密文输出。
如图4所示,为一种面向AES算法的抗攻耗攻击方法电路实现图。加密电路的信号接口,包含时钟信号CLK、复位信号RSTn、加密开始信号Load、128比特明文DATA_IN、128比特密钥KEY、128比特密文输出DATA_OUT以及加密结束信号DONE。加密电路先输入128比特明文DATA_IN和128比特密钥KEY,加密开始信号Load出现高电平时表示加密开始;电路基于一种面向AES算法的抗攻耗攻击方法执行AES加密算法,加密流程图如图1所示,加密电路具有抗功耗攻击能力;当DONE信号出现高电平,表明加密完成,64比特密文由DATA_OUT输出,完成一次加密,等待下一次明文的输入。
本文接着对RBCP可重构实现的AES算法进行了基于汉明距离模型的功耗分析攻击。首先输入配置信息,可重构密码算法电路完成AES密码算法,初始密钥为128位0,最后一轮的128bit子密钥为’b4ef5bcb3e92e21123e951cf6f8f188e’。根据发明内容第四段分析,针对AES算法的攻击点在最后一轮。攻击者可以猜测最后一轮8bit子密钥,并根据密文建立假设功耗矩阵。仿真功耗迹采集了1,000条。对RBCP实现的AES的功耗分析攻击结果如图5所示。图中一共有28=256条相关系数曲线。图中横坐标为功耗点,纵坐标为相关系数。AES算法的功耗迹为40个周期(文中在加密开始前多采样了两个时钟周期),频率为20MHz,功耗迹经过压缩后只有40几个功耗点。
首先本专利采用硬件描述语言verilog设计了原始AES密码算法,接着采用DC工具进行综合,进行500次加密操作,初始密钥为,初始密钥为128位0,最后一轮的128bit子密钥为’b4ef5bcb3e92e21123e951cf6f8f188e’。并用PTPX进行了功耗仿真,以仿真的功耗作为实际功耗,进而采集到了1000次AES算法加密的功耗迹和1000组对应输入明文。接着根据汉明距离模型和1000组输入明文,计算得到1000次加密中间数据的汉明距离,得到一个基于汉明距离的假设功耗矩阵,对应1000次的仿真功耗轨迹。接着将假设功耗矩阵和仿真功耗轨迹做差分功耗攻击。根据差分功耗攻击原理,针对AES算法,攻击者首先猜测最后一轮128bit子密钥的前8比特密钥,具有256种可能情况,计算相关系数会得到256条相关性曲线。如果得到的某一差分功耗曲线中有明显的尖峰出现,则说明该曲线所对应的子密钥猜测是正确的,即攻击者获得了正确的子密钥。而如果对所有的256个子密钥猜测值,对应的差分功耗曲线均没有尖峰出现,那么说明密钥信息被有效的隐藏。原始AES算法,经过差分功耗攻击得到256条差分功耗曲线如图5所示。未防护的AES密码算法在第180条曲线(曲线编码为曲线0到曲线255),会出现多个尖峰,尖峰的大小约为0.1,表明功耗分析攻击得到的猜测密钥为‘180’。最后一轮的子密钥前8bit为’b4’,为十进制的180,可见功耗分析攻击成功。
继续猜测AES 128bit子密钥的第二个8bit密钥,建立汉明距离矩阵,与功耗矩阵进行对比可以破解得到第二个8bit密钥,同理可以破解AES第一轮所有子密钥,根据密钥扩展原理可以很容易得到初始密钥。通过分析1000次加密即可以得到密钥。可见未防护的AES易受到基于汉明距离模型的功耗攻击。
接着采用了本专利提出了动态改变中间数据存储位置的方法改进了AES算法。具体实施步骤是采用verilog语言,对原始AES密码算法进行修改,添加控制模块和冗余寄存器。本专利对改进的AES算法进行仿真,验证了功能的正确性,然后进行综合,输入明文进行功耗仿真,得到50,000条功耗迹。接着实施了基于汉明距离模型的功耗分析攻击,得到相关系数矩阵,其结果如图6所示。
图中可以看出正确密钥(图中粗线所示)淹没在了256条曲线之中,改进后的AES算法,功耗迹从1,000条增加到50,000条后,正确密钥曲线都没有出现尖峰。改进后的AES算法有效的抵抗了功耗分析攻击,证明了动态改变中间数据寄存器方法的有效性。
该案例证明一种面向AES算法硬件电路实现的抗功耗攻击方法是切实可行的,能够达到可重构密码处理器抗功耗攻击的目的。
本发明通过添加冗余寄存器和标志位,使得每一轮加密操作的中间数据交替存储在不同的寄存器中,即可切断实际功耗和假设功耗值之间的相关性。本方法灵活性高,面积代价小,抗功耗攻击能力强。同时此方法,具有很强的扩展性,可以用于抵抗算法中其他潜在的攻击点。

Claims (2)

1.一种面向AES算法的抗功耗攻击方法,其特征在于,在AES加密算法模块中添加控制模块和冗余寄存器,AES分组密码算法根据所述控制模块产生的标志位,选择每一轮中间计算数据存储的寄存器位置,在AES加密模块中增加控制模块及一个128比特冗余寄存器(Reg1),所述控制模块产生1比特标志位flag,AES加密硬件实现经过10轮迭代,AES加密的每一轮中间结果数据Dn根据flag的值,选择将中间结果存储在128比特原始寄存器(Reg0)还是所述冗余寄存器(Reg1)中,其中n=0,1,..10;其中,初始时,标志位flag的值为0,然后flag根据轮数交替变化,AES算法进行奇数轮加密时flag为1,即第1,3,5,7,9轮加密时flag为1;AES算法进行偶数轮加密时flag为0,即第2,4,6,8,10轮加密时flag为0;具体包括如下步骤:
步骤一,AES算法运算时,输入128比特明文,然后通过与初始密钥异或,得到D0,保存在原始寄存器(Reg0)中;
步骤二,接着AES进行9轮迭代操作,通过迭代运算,AES将子密钥和数据结合起来,子密钥由初始密钥生成,9次迭代运算具有相同的结构,包括4个操作:S盒替换、行移位、列混合、密钥异或;上一轮128比特中间数据Dn-1,经过这4个操作得到这一轮的128比特中间数据Dn,接着中间数据Dn根据flag标志位的值保存到寄存器中,如果flag为0,中间数据Dn保存在上述原始寄存器(Reg0)中;如果flag为1,中间数据Dn保存在上述冗余寄存器(Reg1)中;
步骤三,第9次轮迭代的结果D9进行第10轮变换,经过S盒变换、行移位、密钥异或得到数据D10保存在冗余寄存器(Reg1)中。
2.一种采用权利要求1所述抗功耗攻击方法实现的具有抗功耗攻击电路,其特征在于,所述电路在AES加密算法模块中添加控制模块以及冗余寄存器,AES分组密码算法根据所述控制模块产生的标志位,选择每一轮中间计算数据存储的寄存器位置,所述电路具体包括:
初始异或模块及轮操作模块;轮操作模块具体包括S盒替换模块、行移位模块、列混合模块、异或模块、控制标志模块、寄存器模块;初始异或模块完成AES算法的初始异或操作,轮操作模块完成轮运算,该轮操作模块中S盒替换模块完成轮运算中S盒替换操作,行移位模块完成S盒替换后数据的移位操作,列混合模块对行移位模块输出的数据完成列混合操作,得到中间数据;中间数据将根据flag标志位的值保存到寄存器(Reg0或Reg1)中。
CN201410172447.7A 2014-04-25 2014-04-25 面向aes算法的抗功耗攻击方法及电路实现 Active CN103916236B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410172447.7A CN103916236B (zh) 2014-04-25 2014-04-25 面向aes算法的抗功耗攻击方法及电路实现

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410172447.7A CN103916236B (zh) 2014-04-25 2014-04-25 面向aes算法的抗功耗攻击方法及电路实现

Publications (2)

Publication Number Publication Date
CN103916236A CN103916236A (zh) 2014-07-09
CN103916236B true CN103916236B (zh) 2017-02-15

Family

ID=51041657

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410172447.7A Active CN103916236B (zh) 2014-04-25 2014-04-25 面向aes算法的抗功耗攻击方法及电路实现

Country Status (1)

Country Link
CN (1) CN103916236B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105656619B (zh) * 2016-02-02 2019-02-26 清华大学无锡应用技术研究院 一种aes加密方法和基于其的抗功耗攻击方法
US10103873B2 (en) * 2016-04-01 2018-10-16 Intel Corporation Power side-channel attack resistant advanced encryption standard accelerator processor
CN106452725B (zh) * 2016-06-14 2019-05-31 东南大学 一种基于寄存器掩码的面向aes算法的抗功耗攻击方法
CN107241324B (zh) * 2017-06-01 2020-07-31 东南大学 基于机器学习的密码电路功耗补偿抗旁路攻击方法及电路
CN107864035B (zh) * 2017-10-13 2020-06-19 华南理工大学 一种实现在aes电路中基于功耗均衡编码的抗dpa攻击方法
CN108134665B (zh) * 2017-12-20 2020-11-17 东南大学 一种面向IoT应用的8比特AES电路
CN108206736B (zh) * 2018-01-11 2019-03-15 衡阳师范学院 一种轻量级密码算法HBcipher实现方法与装置
CN111224770B (zh) * 2019-12-25 2021-03-30 中国科学院软件研究所 一种基于门限技术的抗侧信道与故障攻击的综合防护方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834720A (zh) * 2009-03-13 2010-09-15 索尼公司 加密处理设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5433498B2 (ja) * 2010-05-27 2014-03-05 株式会社東芝 暗号処理装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834720A (zh) * 2009-03-13 2010-09-15 索尼公司 加密处理设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"An approach of using different positions of double registers to protect AES hardware structure from DPA";Ying Zhou et al;《2010 Third International Symposium on Electronic Commerce and Security》;20100731;第223-227页 *
"抗功耗攻击的密码芯片电路级防护关键技术研究";乐大珩;《中国博士学位论文全文数据库 信息科技辑》;20120315(第3(2012)期);第五章 *

Also Published As

Publication number Publication date
CN103916236A (zh) 2014-07-09

Similar Documents

Publication Publication Date Title
CN103916236B (zh) 面向aes算法的抗功耗攻击方法及电路实现
CN103905182B (zh) 基于动态改变中间数据存储位置的抗攻击方法及电路实现
Hwang et al. AES-Based Security Coprocessor IC in 0.18-$ muhbox m $ CMOS With Resistance to Differential Power Analysis Side-Channel Attacks
CN103067155A (zh) 一种防止基于功耗分析的des算法攻击的方法及测试电路
Bi et al. Tunnel FET current mode logic for DPA-resilient circuit designs
CN103166751A (zh) 用于保护分组密码免受模板攻击的方法和装置
CN101938349A (zh) 一种适用于硬件实现的s盒及其电路实现方法
CN103795527A (zh) 防止基于功耗分析攻击aes算法的软件掩码防护方案
CN105871536B (zh) 一种基于随机延时的面向aes算法的抗功耗攻击方法
Duan et al. Differential power analysis attack and efficient countermeasures on PRESENT
CN107204841B (zh) 一种抵御差分功耗攻击的分组密码多s盒实现的方法
CN102710413A (zh) 一种抗dpa/spa攻击的系统和方法
CN104301095A (zh) Des轮运算方法和电路
CN104283673A (zh) 密码电路系统的随机动态电压调节抗攻击方法及电路系统
He et al. High-speed pipeline design for hmac of sha-256 with masking scheme
CN106452725B (zh) 一种基于寄存器掩码的面向aes算法的抗功耗攻击方法
CN107483182A (zh) 一种基于乱序执行的面向aes算法的抗功耗攻击方法
CN107994980A (zh) 一种采用时钟乱序技术和混沌触发器的抗dpa攻击方法
CN103888245A (zh) 一种智能卡的s盒随机化方法和系统
CN108650072A (zh) 一种支持多种对称密码算法芯片及其抗攻击电路实现方法
CN107689863A (zh) 一种算术加法掩码转布尔异或掩码的防护电路
CN109936437B (zh) 一种基于d+1阶掩码的抗功耗攻击方法
Wang et al. Cryptanalysis and improvement on a cryptosystem based on a chaotic map
CN102932147A (zh) 基于隐马尔科夫模型的椭圆曲线密码计时攻击方法
CN201039199Y (zh) 一种抗功耗攻击的字节替换电路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant