CN101025771B - 一种安全芯片 - Google Patents
一种安全芯片 Download PDFInfo
- Publication number
- CN101025771B CN101025771B CN200610008338A CN200610008338A CN101025771B CN 101025771 B CN101025771 B CN 101025771B CN 200610008338 A CN200610008338 A CN 200610008338A CN 200610008338 A CN200610008338 A CN 200610008338A CN 101025771 B CN101025771 B CN 101025771B
- Authority
- CN
- China
- Prior art keywords
- circuit
- pmos pipe
- safety chip
- random number
- protection 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明提供了一种安全芯片,在防止非法用户通过能量分析的方法对安全芯片内部的密码算法进行攻击的同时,不增加芯片的额外功耗。本发明的安全芯片,包括加密电路和防护电路,该加密电路用于完成密码算法功能;该防护电路用于削减和扰乱加密电路的功耗特征。所述安全芯片进一步包括控制电路,用于控制防护电路的开启和关闭。本发明的安全芯片通过电容的充放电实现能量的转移,并且还可通过控制电路控制防护电路只有在加密电路运行时才开启。这些都能降低安全芯片的功耗,同时也能达到防能量攻击的目的。
Description
技术领域
本发明涉及集成电路安全技术领域,特别是涉及一种安全芯片。
背景技术
安全芯片是指带有加密技术的集成电路芯片,广泛应用于数字签名、身份认证、信息加密等领域。现有的安全芯片中一般都包含一种或多种加密算法,有的以软件方式实现,有的以硬件方式实现。
一种不破坏集成电路芯片的分析加密算法而得到密文或密钥的攻击方法就是能量攻击。集成电路的制造使用了大量的CMOS(ComplementaryMetal-Oxide-Semiconductor Transistor,互补金属氧化物半导体)管,这导致了执行不同的指令所消耗的能量不同。另外,对0或1的存储也能反映出能量消耗的不同。这样,在程序运行过程中,能量消耗的变化会反映出所执行的指令的内容,这就是基于能量分析而进行攻击的基础。能量攻击法使用测试设备对芯片的电源功耗电流进行监测,记录芯片电源功耗电流的变化过程,分析加密算法从而得到密钥,或从功耗电流的微小差别分析芯片内非易失性存储器的读写过程,得到存入非易失性存储器的内容。
目前的防能量攻击方法主要有以下三种:
第一种是改变CPU结构设计,增加亚指令,打断流水线,改变原有CPU执行指令时的耗电特征,主要用来抵抗针对软件密码算法的攻击。这种方法的缺点是只有掌握CPU设计技术,并拥有原始代码者才有权使用,其他人无法完成。
第二种是改变密码算法结构。通过修改密码算法,打乱原有算法的结构和执行顺序,从而打乱原密码算法运行时消耗电流的原有特征。这种方法的缺点是,必须精通密码理论,自己设计密码算法,并且不被别人知晓。目前常用的DES、3DES、RSA等算法很难利用该方法。
第三种是附加随机功耗电路。在安全芯片原电路之外附加功耗电流随机变化的功耗电路,使该耗能电路的电流叠加在被保护的集成电路的功耗电流之上,掩盖原集成电路所产生的有规律变化的功耗电流。这种方法的缺点是:随机功耗电路产生随机变化的功耗电流,其电流必须与原电路功耗相当或大于原电路功耗,才能将原电路电流特征淹没,且随机功耗电路一直处于工作状态,会增加很大的额外功耗电流;如果两个电流的峰值叠加在一起,瞬间功耗电流会非常大。这些都不利于安全芯片的应用和系统设计。
发明内容
为此,本发明提供了一种安全芯片,在防止非法用户通过能量分析的方法对安全芯片内部的密码算法进行攻击的同时,不需要增加较大的额外功耗。
本发明的安全芯片,包括,加密电路和防护电路,该加密电路用于完成密码算法功能;该防护电路用于削减和扰乱加密电路的功耗特征。
所述防护电路包括随机数生成单元、开关组和电容组,电容组中电容的个数和开关组中开关的组数相同,所述随机数生成单元用于产生随机数,其输出连接到开关组,用于控制开关组中各个开关的开启或关闭;所述开关组分别和随机数生成单元的输出端及电容组连接,用于控制电容组中各电容的充电或放电;所述电容组和开关组连接,电容组中的电容在充电时吸收能量,将加密电路的电流波形尖峰削减,并且在放电时释放能量,形成附加的电流叠加于加密电路电流之上.
其中,所述随机数生成单元可以根据热噪声、压控振荡信号或其它模拟电路信号产生真随机数,也可以用逻辑算法生成伪随机数。所述开关组中的开关为PMOS管。所述电容组中电容的标称值各不相同。
所述安全芯片进一步包括控制电路,用于控制防护电路的开启和关闭。加密电路运行时,开启防护电路,加密电路没有运行时,关闭防护电路。
与现有技术相比,本发明的安全芯片通过电容的充放电实现能量的转移,并且还可通过控制电路控制防护电路只有在加密电路运行时才开启,在降低安全芯片的功耗的同时,也能达到防能量攻击的目的。
附图说明
图1本发明安全芯片第一实施例的系统框图。
图2本发明安全芯片第一实施例的防护电路结构图。
图3本发明安全芯片第二实施例的系统框图。
图4本发明安全芯片第二实施例的控制电路结构图。
图5本发明安全芯片第二实施例的控制电路运行流程图。
具体实施方式
以下将结合附图对本发明进行详细描述。
如图1所示,本发明的安全芯片包括加密电路和防护电路,
所述加密电路是用于完成密码算法功能的电路,可以为任意一种公知的用硬件实现加密技术的电路或使用软件实现加密技术的电路;
所述防护电路用于削减和扰乱加密电路的功耗特征。
如图2所示,上述防护电路包括随机数生成单元、开关组和电容组。
随机数生成单元用于产生随机数,即随机的高低电平信号,其输出连接到开关组,用于控制开关组中各个开关的开启或关闭。随机数生成单元可以根据热噪声、压控振荡信号或其它模拟电路信号产生真随机数,也可以用逻辑算法生成伪随机数。
在已经有随机数发生器的一些带加密技术的集成电路中,如在与原电路中随机数发生器的使用不发生冲突的情况下,也可直接使用原来的随机数发生器。
开关组为多组开关,用于控制电容组中各电容的充电或放电。每一组开关包括2个PMOS管,第一PMOS管201和第二PMOS管202,第一PMOS管201的栅极和第二PMOS管202的栅极均与随机数生成单元的一个输出端连接,第一PMOS管201的源极和第二PMOS管202的漏极连接,第一PMOS管201的漏极与芯片电源VDD连接,第二PMOS管202的源极接地。在本实施例中,当PMOS管的输入为高电平时,开关开启,当PMOS管的输入为低电平时,开关关闭。
电容组中电容203的一端与对应的第一PMOS管201和第二PMOS管202的公共端连接,电容203的另一端接地。电容组中电容的个数和开关组中开关的组数相同,电容充电时吸收能量,可以将加密电路的电流波形尖峰削减;电容放电时释放能量,形成附加的电流叠加于加密电路电流之上。
下面结合开关组中第一PMOS管201和第二PMOS管202的开关状态来说明电容的充放电情况,共有4种组合:第一PMOS管201开启,第二PMOS管202开启,此时电容203处于放电状态;第一PMOS管201开启,第二PMOS管202关闭,此时电容203处于充电状态;第一PMOS管201关闭,第二PMOS管202开启,此时电容203处于放电状态;第一PMOS管201关闭,第二PMOS管202关闭,此时电容203即不充电也不放电。
控制防护电路中电容是否工作的开关是由随机数控制的,即:防护电路中的电容总值是随机变化的。进一步,防护电路中电容的标称值各不相同,这也增加了电容总值变化的随机性。因此,防护电路中电容的随机性充电,使加密电路有规律变化的电流信号的每次削减程度呈现随机性;防护电路中电容的随机性放电,使产生的附加电流信号也呈随机性。从整个芯片外部来看,芯片所消耗的能量是随机的、不确定的,从而抵抗能量攻击。
同时,由于电容的充电和放电,芯片的瞬间功耗电流也不会很大。并且,充电和放电是芯片内能量在时间上的转移,没有增加额外的功耗。
本领域普通技术人员可以理解的是,所述开关也可为若干个NMOS管的组合,或若干个PMOS管与NMOS管的组合,只要能实现开关功能的其它类型的开关电路也都适用于本发明。
图3为本发明的另一实施例的系统框图。安全芯片为带有CPU的芯片(SOC芯片,System On Chip),在第一实施例的基础上增加了一控制电路,用于产生控制信号,其输出端和防护电路连接,用于控制防护电路的开启和关闭。在运行密码算法之前,开启防护电路,密码算法运行结束后,关闭防护电路。
如图4所示,所述控制电路包括锁存器401、与门402、地址译码器403和反相器404。锁存器401有三个输入端:数据输入端D、时钟脉冲输入端和使能输入端En。数据输入端D用于接收CPU发来的数据信号;时钟脉冲输入端用于接受芯片的时钟脉冲信号,以触发锁存器401;使能输入端En和与门402的输出端连接,用于接收使能信号。锁存器401的输出端输出控制信号到防护电路,用于控制防护电路的开启和关闭。与门402有两个输入端,第一输入端接收CPU发送的控制信号经反相器404反相后输出的信号,第二输入端接收CPU发送的地址信号经地址译码器403译码后的输出信号。
以下结合图4及图5描述控制电路的执行过程。
步骤一:锁存器401的数据输入端接收CPU发来的数据信号,同时锁存器401的使能端接收与门402的输出信号。
其中,与门402的第一输入端的输入信号为CPU发送的控制信号经反相器404反相后输出的信号,与门402的第二输入端的输入信号为CPU发送的地址信号经地址译码器403译码后输出的信号。
仅当CPU发送的控制信号为写信号“1”,并且CPU发送的地址信号为锁存器401的地址时,与门402的两个输入均为“1”,其输出到锁存器401的使能端的信号也为“1”,锁存器401处于使能状态。
步骤二:锁存器401的时钟脉冲输入端接收到时钟脉的上升沿信号时,锁存器401输出端输出锁存的信号,输出“1”时,开启防护电路,输出“0”时,关闭防护电路。
在步骤一中,使能防护电路时,CPU发送的数据信号为“1”,禁止防护电路时,CPU发送的数据信号为“0”。
通过控制电路控制防护电路的开启和关闭,即可以实现只有在加密电路运行时,防护电路才开启,进一步降低了芯片的整体功耗。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案而非限制,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神范围,其均应涵盖在本发明的权利要求范围当中。
Claims (5)
1.一种安全芯片,包括,用于完成密码算法功能的加密电路,其特征在于:
该安全芯片进一步包括防护电路,所述防护电路用于削减和扰乱加密电路的功耗特征;
所述防护电路中包括电容组,电容组中的电容在充电时吸收能量,将加密电路的电流波形尖峰削减,并且在放电时释放能量,形成附加的电流叠加于加密电路的电流之上;
所述防护电路中还包括随机数生成单元和开关组;
所述随机数生成单元用于产生随机数,其输出连接到开关组,用于控制开关组中各个开关的开启或关闭;
所述开关组分别和随机数生成单元的输出端及电容组连接,用于控制电容组中各电容的充电或放电,且电容组中电容的个数和开关组中开关的组数相同;
所述开关组为多组开关,每一组开关包括2个PMOS管,第一PMOS管和第二PMOS管,第一PMOS管的栅极和第二PMOS管的栅极均与随机数生成单元的一个输出端连接,第一PMOS管的源极和第二PMOS管的漏极连接,第一PMOS管的漏极与芯片电源连接,第二PMOS管的源极接地;
所述电容组中电容的一端与对应的第一PMOS管和第二PMOS管的公共端连接,电容的另一端接地。
2.如权利要求1所述的安全芯片,其特征在于:随机数生成单元根据热噪声、压控振荡信号或其它模拟电路信号产生真随机数,或者,用逻辑算法生成伪随机数。
3.如权利要求1所述的安全芯片,其特征在于:所述电容组中电容的标称值各不相同。
4.如权利要求1所述的安全芯片,其特征在于:所述安全芯片进一步包括控制电路,用于控制防护电路的开启和关闭。
5.如权利要求4所述的安全芯片,其特征在于:加密电路运行时,开启防护电路,加密电路没有运行时,关闭防护电路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610008338A CN101025771B (zh) | 2006-02-17 | 2006-02-17 | 一种安全芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610008338A CN101025771B (zh) | 2006-02-17 | 2006-02-17 | 一种安全芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101025771A CN101025771A (zh) | 2007-08-29 |
CN101025771B true CN101025771B (zh) | 2010-05-12 |
Family
ID=38744064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610008338A Expired - Fee Related CN101025771B (zh) | 2006-02-17 | 2006-02-17 | 一种安全芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101025771B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN202189369U (zh) * | 2011-07-18 | 2012-04-11 | 中国电力科学研究院 | 一种防御功耗攻击的集成电路 |
CN103023636A (zh) * | 2012-11-15 | 2013-04-03 | 北京昆腾微电子有限公司 | 用于密码芯片的抗功耗分析攻击的稳压器、密码芯片 |
CN105809063B (zh) * | 2014-12-29 | 2019-01-15 | 联想(北京)有限公司 | 一种数据处理方法及安全芯片装置 |
CN106503590B (zh) * | 2016-10-17 | 2019-02-01 | 杭州国芯科技股份有限公司 | 一种芯片防功耗攻击电路及防止功耗攻击的方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1614533A (zh) * | 2003-11-04 | 2005-05-11 | 上海华虹集成电路有限责任公司 | 一种防简单功耗分析攻击的方法 |
-
2006
- 2006-02-17 CN CN200610008338A patent/CN101025771B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1614533A (zh) * | 2003-11-04 | 2005-05-11 | 上海华虹集成电路有限责任公司 | 一种防简单功耗分析攻击的方法 |
Non-Patent Citations (2)
Title |
---|
王新成 蔡吉人 杨义先 孙宏.对SmartCard上RSA的能量攻击和防御.《计算机工程与应用》 35.2003,(35),133-135. |
王新成 蔡吉人 杨义先 孙宏.对SmartCard上RSA的能量攻击和防御.《计算机工程与应用》 35.2003,(35),133-135. * |
Also Published As
Publication number | Publication date |
---|---|
CN101025771A (zh) | 2007-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9154132B2 (en) | Charge distribution control for secure systems | |
US20100194205A1 (en) | Isolation circuitry and method for hiding a power consumption characteristic of an associated processing circuit | |
Tokunaga et al. | Securing encryption systems with a switched capacitor current equalizer | |
Avital et al. | DPA-secured quasi-adiabatic logic (SQAL) for low-power passive RFID tags employing S-boxes | |
CN103460638A (zh) | 对电力分析攻击具安全性的加密装置及其操作方法 | |
JP2016506095A (ja) | セキュアデジタル論理セルおよび論理ブロック給電方法 | |
CN101025771B (zh) | 一种安全芯片 | |
TWI620094B (zh) | 電荷分布控制系統、加密系統和藉由操作其防止以旁通道攻擊之方法 | |
EP3393078A1 (en) | Secure execution environment clock frequency hopping | |
JP6284630B2 (ja) | セキュアシステムおよび保護方法 | |
Lin et al. | Leakage-based differential power analysis (LDPA) on sub-90nm CMOS cryptosystems | |
CN104777761A (zh) | 实现mcu安全性的方法及电路 | |
CN109766729A (zh) | 一种防御硬件木马的集成电路及其加密方法 | |
CN109165531A (zh) | 一种aes掩码方法、电子设备及存储介质 | |
Dakate et al. | Performance comparison of symmetric data encryption techniques | |
US20120159187A1 (en) | Electronic device and method for protecting against differential power analysis attack | |
Miura et al. | An intermittent-driven supply-current equalizer for 11x and 4x power-overhead savings in CPA-resistant 128bit AES cryptographic processor | |
Cui et al. | A new active IC metering technique based on locking scan cells | |
CN101924766A (zh) | 一种双网络通信方法 | |
CN106503590B (zh) | 一种芯片防功耗攻击电路及防止功耗攻击的方法 | |
Saravanan et al. | An energy efficient XOR gate implementation resistant to power analysis attacks | |
Muresan | On-chip cmos self-decoupling battery cell system for security protection | |
CN207198856U (zh) | 物理安全防护电路 | |
CN206178835U (zh) | 一种芯片防功耗攻击的电路 | |
Juretus et al. | Enhanced circuit security through hidden state transitions |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100512 Termination date: 20210217 |