CN101150392A - 利用数字功耗补偿防功耗攻击的硬件3des - Google Patents
利用数字功耗补偿防功耗攻击的硬件3des Download PDFInfo
- Publication number
- CN101150392A CN101150392A CNA2006101132624A CN200610113262A CN101150392A CN 101150392 A CN101150392 A CN 101150392A CN A2006101132624 A CNA2006101132624 A CN A2006101132624A CN 200610113262 A CN200610113262 A CN 200610113262A CN 101150392 A CN101150392 A CN 101150392A
- Authority
- CN
- China
- Prior art keywords
- 3des
- power consumption
- hardware
- register
- circuit
- 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.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
利用数字功耗补偿防功耗攻击的硬件3DES,用于安全应用领域的智能卡芯片。本发明利用数字电路功耗补偿的方法,设计了两个对称的3DES硬件电路,其中一个用于得到加密结果,另一个仅用于对第一个3DES电路进行功耗补偿。此3DES硬件电路在智能卡中承担加密运算协处理器的作用。此项技术在实现高速3DES加密运算的同时,可有效防止智能卡领域的功耗攻击。
Description
技术领域
本发明主要应用于高安全应用领域的智能卡中,如电信卡、金融卡、社保卡,也可以适用于各种需要进行高速3DES运算和需要防止对3DES进行功耗攻击的安全芯片中。
背景技术
美国国家标准局(NIST)于1977年公布由IBM公司研制的一种加密算法,批准它做为非机要部门使用的数据加密标准,简称DES(Data Encryption Standard)。自从公布以来,它一直超越国界,成为国际上商用保密通信和计算机通信的最常用的加密算法。DES的密钥为56位,密钥太短。3DES是DES的一种变形,采用三重加密的形式,将DES的密钥扩展到了128位,具有更高的安全性。
智能卡又称集成电路卡,它将一个集成电路芯片镶嵌于塑料基片中,封装成卡的形式。智能卡的集成电路芯片中含有CPU和存储器,能够执行存储器中的程序,实现很多复杂协议。目前智能卡的应用领域非常广泛,包括金融、交通、医疗、电信、身份证明等多个行业。随着应用的日益普及,智能卡的安全问题越来越突出。各种加密算法被加入到智能卡中来,3DES就是常用的一种。3DES可以用软件实现,也可以用硬件实现。本发明用硬件实现3DES算法,作为主CPU的协处理器,硬件实现的3DES运算速度是软件实现的几十倍。
功耗攻击的方法是由P.kocher首先提出来的,它的提出给硬件实现的加密系统带来很大威胁。功耗攻击通过检测和分析芯片运算时泄漏的功耗信息,可以在不破坏硬件的情况下得到密钥,是目前边际信道攻击中最强有力的手段之一。功耗攻击使得许多在数学上证明是非常安全的加密算法在硬件实现时出现了很大的隐患。由于智能卡管脚少,易于检测其功耗,而且智能卡应用普遍,攻击成功后可获取的非法利益巨大,所以功耗攻击的主要攻击对象是智能卡。功耗攻击常用的攻击方法有SPA(简单功耗分析,Simple Power Analyze)和DPA(差分功耗分析,Differential Power Analyze)。
发明内容
本发明的内容在于实现了一种利用数字功耗补偿防功耗攻击的硬件3DES电路。CMOS集成电路中的基本单元都由成对的晶体管组成,数字电路中的0、1由高电平和低电平两种状态表示。基本单元维持某一状态的期间,成对的晶体管中总有一个导通,一个截止,此时只有漏电流存在,功耗比较小。但在状态转换时,成对的晶体管会有瞬间的同时导通,电源到地之间会有很大的瞬时电流。在时钟沿到来时,数据寄存器的保持和翻转两种状态会有很大的功耗差别。
功耗攻击的原理就是利用电路的这个特性。在硬件做3DES运算时,数据寄存器的保持还是翻转,跟密钥相关。DPA的步骤:监测3DES运算期间的功耗,利用多次不同明文运算的功耗曲线,把功耗的微小差异加以放大,再对功耗曲线加以适当的数学分析就可以算出密钥。
本发明利用数字电路功耗补偿的方法针对硬件3DES电路(用于实现正常加密运算功能,下文中简称3DES-1)设计了一个专门的功耗补偿电路(下文中简称3DES-2)。3DES-1电路中寄存器占了三分之一,其余为组合逻辑。功耗补偿电路中针对寄存器和组合逻辑都设计了专门的补偿逻辑,使得当3DES-1中的单元保持(或者翻转)时,补偿电路实现翻转(或者保持),两者之和即可保持基本恒定。
现有的3DES硬件设计中没有防功耗攻击的考虑,使得利用3DES运算过程中泄漏的功耗信息足以很快算出密钥,从而对智能卡的安全构成很大的威胁。加入本发明所描述的电路后,不管输入什么样的明文和密钥,硬件3DES运算期间,总体功耗总是维持恒定,攻击者无法利用功耗信息来破译密钥,实现了智能卡加密运算过程的安全。
本发明用硬件方式实现3DES运算,用数字电路补偿的方法,在实现高速3DES运算的同时,可以有效防止对3DES实施功耗攻击。
附图说明
图1总体结构图
图2寄存器的数字补偿电路
图3寄存器数字补偿电路的仿真结果
图4电路结构图
具体实施方式
图1是本发明的总体结构图。硬件3DES-1模块实现高速3DES加密运算。另外设计了一个数字功耗补偿电路模块3DES-2,用于对3DES-1模块进行功耗补偿。要进行功耗补偿,就应该使3DES-2的功耗变化情况与3DES-1模块相反,从而使两者之和恒定,无法从芯片的功耗上分析密钥的情况。
经分析,电路中某个节点的电平有如下四种情况:A.1->0;B.0->1;C.0->0;D.1->1。其中A、B两种翻转的情况功耗基本相同,C、D两种保持的情况功耗基本相同,但翻转的功耗要远大于保持的功耗。要补偿3DES-1中的功耗变化,就要在3DES-2中设计对称的电路,使得当3DES-1中的电路翻转(或保持)时,3DES-2中的对称电路变化情况正好与其相反保持(或翻转)。
在3DES电路中,寄存器占了三分之一,所以首先分析如何对3DES-1中的一个寄存器进行补偿。设计了如图2所示的电路来对寄存器进行功耗补偿,图中寄存器(1)表示3DES-1中的某一位数据寄存器,寄存器(2)表示3DES-2中的对寄存器(1)进行功耗补偿的寄存器。
要对寄存器(1)进行补偿,首先要判断在时钟沿到来时寄存器(1)是翻转还是保持。这用一个异或门来实现。对寄存器(1)的输入输出进行异或,在时钟沿到来的时刻,如果输入输出不同,异或门的值为1,则时钟沿后寄存器(1)翻转;在时钟沿到来的时刻,如果输入输出相同,异或门的值为0,则时钟沿后寄存器(1)保持。
然后,设计寄存器(2)的输入端的数据通路,有两种:保持,即把输出直接做为输入;翻转,即把输出反向后做为输入。由图2可见,寄存器(2)的翻转通路上有一个反向器,为了防止利用二路选择器不同分支延时的不同来进行功耗分析,在数据保持的通路上(二路选择器控制端为1情况下)设计了一个缓冲器,来补偿数据翻转通路上(二路选择器控制端为0情况下)的反相器的延时。
最后,根据异或门判断出的寄存器(1)是翻转还是保持,来选择寄存器(2)的不同输入通路。即把异或门的输出做为寄存器(2)输入通路的二路选择器的控制端。当寄存器(1)翻转时,异或门的值为1,寄存器(2)输入端的二路选择器选择保持通路。当寄存器(1)保持时,异或门的值为0,寄存器(2)输入端的二路选择器选择翻转通路。即在时钟沿到来时3DES-1中的寄存器(1)和3DES-2中的寄存器(2)总是有且仅有一个翻转、一个保持。
用HSPICE对一个寄存器的功耗补偿电路进行了仿真,仿真结果如图3所示。图3中第三条波形是时钟Clock;第四条波形是寄存器(1)的输入数据DataIn;第六条波形是寄存器(1)的输出数据DataOut;第五条波形是寄存器(2)的输出数据;第一条波形是仅对一个普通寄存器进行仿真时的功耗曲线;第二条波形是对图2所示的整个电路的功耗曲线。显然,如果不进行功耗补偿,当第六条波形的寄存器输出有翻转变化时,与输出保持相比,波形1的功耗会有很明显的尖峰。如果进行了功耗补偿,不管第六条波形的寄存器输出是翻转还是保持,波形2的功耗维持基本恒定,无法看出是翻转还是保持。
上面介绍了一个寄存器的补偿电路的设计,推而广之,3DES-1电路中的所有寄存器都可以用上面的方式进行补偿,如图4中所示。3DES-1中的64位数据寄存器的输入输出结果按位进行异或,64位的异或结果做为3DES-2中64位数据寄存器的输入通路二路选择器控制端。3DES-2中每个寄存器的数据保持通路上都设计了缓冲器,来对数据翻转通路上的反相器进行延时补偿。3DES-2中的数据寄存器值与明文或密钥无关,只与3DES-1中对应寄存器位的翻转还是保持情况有关。
如图4所示,3DES-2中也设计了轮变换组合逻辑。根据3DES-2中数据寄存器的翻转(或保持)情况,组合逻辑也进行相应的翻转(或保持)。3DES-2中的轮变换组合逻辑与3DES-1中的轮变换组合逻辑翻转或保持的情况相反,正好对3DES-1中的轮变化组合逻辑进行功耗补偿。
图4中没有画出子密钥Ki生成部分的电路,实际上子密钥生成部分的电路也是根据上面的机制进行功耗补偿。
本发明利用上述数字电路功耗补偿的方式,可以有效的防止功耗攻击的实施。
Claims (5)
1.利用数字功耗补偿防功耗攻击的硬件3DES,其特征在于设计了两个对称的3DES硬件电路,其中一个3DES硬件电路(3DES-1)用于实现正常的3DES加密运算,得到运算结果;另一个3DES硬件电路(3DES-2)结果并不被使用,仅用于对第一个3DES硬件电路进行功耗补偿。
2.根据权利要求1所述的两个对称的3DES硬件电路,其特征在于针对3DES硬件电路(3DES-1)中的每一个数据寄存器在3DES硬件电路(3DES-2)中都设计了对应的功耗补偿电路对其进行功耗补偿;当时钟沿到来时,这两个模块中对应的寄存器对总是有且仅有一个翻转,一个保持。
3.根据权利要求2的寄存器功耗补偿电路,其特征在于在功耗补偿电路中为了防止利用二路选择器不同分支延时的不同来进行功耗分析,在数据保持的通路上(二路选择器控制端为1情况下)设计了一个缓冲器,来补偿数据翻转通路上(二路选择器控制端为0情况下)的反相器的延时。
4.根据权利要求1的硬件3DES,其特征在于功耗补偿模块中所有数据寄存器的输入与明文和密钥具体值无关,只与3DES-1中每一轮运算的每一位寄存器的变化情况有关。
5.根据权利要求1的硬件3DES,其特征在于针对正常运算模块中的组合逻辑在功耗补偿电路中也设计了相应的组合逻辑来进行功耗补偿。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006101132624A CN101150392A (zh) | 2006-09-21 | 2006-09-21 | 利用数字功耗补偿防功耗攻击的硬件3des |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2006101132624A CN101150392A (zh) | 2006-09-21 | 2006-09-21 | 利用数字功耗补偿防功耗攻击的硬件3des |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101150392A true CN101150392A (zh) | 2008-03-26 |
Family
ID=39250748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006101132624A Pending CN101150392A (zh) | 2006-09-21 | 2006-09-21 | 利用数字功耗补偿防功耗攻击的硬件3des |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101150392A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103593628A (zh) * | 2013-11-07 | 2014-02-19 | 中国科学院信息工程研究所 | 一种逻辑复合寄存器系统及抵抗能量分析攻击的方法 |
CN104168279A (zh) * | 2014-08-18 | 2014-11-26 | 昆腾微电子股份有限公司 | 用于安全设备的抵抗电磁分析攻击的装置和方法 |
CN104348625A (zh) * | 2013-08-08 | 2015-02-11 | 新唐科技股份有限公司 | 加解密装置及其加解密方法 |
CN104598828A (zh) * | 2013-10-31 | 2015-05-06 | 上海复旦微电子集团股份有限公司 | 数据的防攻击方法和装置 |
CN109617668A (zh) * | 2018-12-14 | 2019-04-12 | 四川长虹电器股份有限公司 | 一种防止旁路攻击的方法 |
-
2006
- 2006-09-21 CN CNA2006101132624A patent/CN101150392A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104348625A (zh) * | 2013-08-08 | 2015-02-11 | 新唐科技股份有限公司 | 加解密装置及其加解密方法 |
CN104598828A (zh) * | 2013-10-31 | 2015-05-06 | 上海复旦微电子集团股份有限公司 | 数据的防攻击方法和装置 |
CN104598828B (zh) * | 2013-10-31 | 2017-09-15 | 上海复旦微电子集团股份有限公司 | 数据的防攻击方法和装置 |
CN103593628A (zh) * | 2013-11-07 | 2014-02-19 | 中国科学院信息工程研究所 | 一种逻辑复合寄存器系统及抵抗能量分析攻击的方法 |
WO2015066988A1 (zh) * | 2013-11-07 | 2015-05-14 | 中国科学院信息工程研究所 | 一种逻辑复合寄存器系统及抵抗能量分析攻击的方法 |
CN103593628B (zh) * | 2013-11-07 | 2016-06-01 | 中国科学院信息工程研究所 | 一种逻辑复合寄存器系统及抵抗能量分析攻击的方法 |
CN104168279A (zh) * | 2014-08-18 | 2014-11-26 | 昆腾微电子股份有限公司 | 用于安全设备的抵抗电磁分析攻击的装置和方法 |
CN109617668A (zh) * | 2018-12-14 | 2019-04-12 | 四川长虹电器股份有限公司 | 一种防止旁路攻击的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Moore et al. | Improving smart card security using self-timed circuits | |
Moore et al. | Balanced self-checking asynchronous logic for smart card applications | |
Korak et al. | On the effects of clock and power supply tampering on two microcontroller platforms | |
CN1761185B (zh) | 乱序执行的数据流aes加密电路结构 | |
CN104734842B (zh) | 基于伪操作的电路旁路攻击抵御方法 | |
US20170154193A1 (en) | Gate-level masking | |
US7292060B2 (en) | Logic circuit and method thereof | |
CN102970132B (zh) | 一种防止对分组算法进行功耗分析和电磁辐射分析的防护方法 | |
ATE548819T1 (de) | Symmetrisches kryptographisches rechenverfahren und vorrichtung zur verlustminimierung bei chipkarten und anderen verschlüsselungssystemen | |
CN101150392A (zh) | 利用数字功耗补偿防功耗攻击的硬件3des | |
CN102271038A (zh) | 用于生成比特向量的方法 | |
CN107181585A (zh) | 通过变更时脉延迟以防止旁通道攻击的系统及其方法 | |
CN107154843A (zh) | 一种抗功耗攻击的sm4算法的硬件实现系统 | |
Kulikowski et al. | Delay insensitive encoding and power analysis: a balancing act [cryptographic hardware protection] | |
CN107994980B (zh) | 一种采用时钟乱序技术和混沌触发器的抗dpa攻击方法 | |
CN104378103A (zh) | 双轨预充电逻辑单元结构 | |
CN104660466A (zh) | 一种安全测试方法及系统 | |
CN102970131A (zh) | 一种防止对分组算法进行功耗攻击的电路结构 | |
Renaudin et al. | High security smartcards | |
CN103647640B (zh) | 针对des第二轮l寄存器翻转的功耗攻击方法 | |
CN103916235A (zh) | 随机插入伪轮运算对的抗功耗攻击方法 | |
WO2005027403A1 (ja) | 情報処理装置 | |
CN106850214A (zh) | 一种并行加解密方法 | |
Leung et al. | A low power asynchronous GF (2ˆ173) ALU for elliptic curve crypto-processor | |
Yoshikawa et al. | Hardware Trojan for security LSI |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20080326 |
|
RA01 | Restoration of patent right |
Former decision: deemed withdrawal of patent application after publication Former decision publication date: 20100825 |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20080326 |