CN111200490B - 使用小型间接随机预充电以防范旁通道攻击的电子元件 - Google Patents

使用小型间接随机预充电以防范旁通道攻击的电子元件 Download PDF

Info

Publication number
CN111200490B
CN111200490B CN201910897935.7A CN201910897935A CN111200490B CN 111200490 B CN111200490 B CN 111200490B CN 201910897935 A CN201910897935 A CN 201910897935A CN 111200490 B CN111200490 B CN 111200490B
Authority
CN
China
Prior art keywords
logic circuit
combinational logic
random data
data
sampling
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
CN201910897935.7A
Other languages
English (en)
Other versions
CN111200490A (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.)
Nuvoton Technology Corp
Original Assignee
Nuvoton Technology Corp
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 Nuvoton Technology Corp filed Critical Nuvoton Technology Corp
Publication of CN111200490A publication Critical patent/CN111200490A/zh
Application granted granted Critical
Publication of CN111200490B publication Critical patent/CN111200490B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/76Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31725Timing aspects, e.g. clock distribution, skew, propagation delay
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3177Testing of logic operation, e.g. by logic analysers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/567Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/75Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31719Security aspects, e.g. preventing unauthorised access during test
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Abstract

本发明揭露一种使用小型间接随机预充电以防范旁通道攻击的电子元件,其包含一组合逻辑电路、至少一状态取样部件以及保护电路。组合逻辑电路具有至少一输入以及至少一输出。状态取样部件在连续的多个时钟周期取样组合逻辑电路的输出的信号。保护电路通过在每一时钟周期中一给定持续时间开始施加随机数据至组合逻辑电路的输入,并在随机数据施加之后改成施加功能性数据至组合逻辑电路的输入,藉此保护组合逻辑电路。状态取样部件仅取样功能性数据。组合逻辑电路中任何信号路径的传输延迟不少于给定持续时间。

Description

使用小型间接随机预充电以防范旁通道攻击的电子元件
技术领域
本发明关于一电子电路的数据安全的技术领域,特别是关于用以防范旁通道攻击(side-channel attacks)的方法以及系统。
背景技术
近年来,已经发展多种用以从电子元件撷取信息的技术,例如旁通道攻击(side-channel attacks)。此种攻击通常由未经授权方执行,以存取储存在电子元件中的机密信息。旁通道攻击的原理主要是基于逻辑元件在状态转换时通常会耗费较多能量。旁通道攻击不须电性接触载有信息的电子元件,而是通过非侵入式测量电子元件发出的电子信号及/或辐射,以撷取信息。
目前已有多种可保护电子元件防范旁通道攻击的应对措施。例如,Baddam在西元2012年2月在Southampton大学的电资学院的物理应用科学发表的标题为"Hardware Levelcountermeasure Against Differential Power Analysis"的博士论文中描述几个类型的应对措施,特别是双轨预充电(Dual Rail Precharge,DRP)电路。
发明内容
根据本发明的一实施例,本发明提供一种电子元件,其包含一组合逻辑电路(combinational logic circuit)、至少一状态取样部件(state-sampling components)、以及一保护电路(protection circuitry)。组合逻辑电路具有至少一输入以及至少一输出。至少一状态取样部件用以在连续的多个时钟周期(clock cycles)对组合逻辑电路的至少一输出的信号进行取样。保护电路在每一时钟周期中执行以下操作以保护组合逻辑电路:在状态取样部件于时钟周期中的一取样时间之前在一给定持续时间中开始施加随机数据至该组合逻辑电路的该至少一输入;以及施加该随机数据之后,改成施加一功能性数据至该组合逻辑电路的该至少一输入,由该状态取样部件取样至少一输入的信号;在该组合逻辑电路的该输入以及该输出之间的任何信号路径上的一传输延迟不少于该给定持续时间,其中在该状态取样部件的该取样时间之前该随机数据在该给定持续时间中开始施加。
根据一实施例,随机数据以及该功能性数据提供至该状态取样部件以作为输入,由于该传输延迟不少于该给定持续时间,该状态取样部件仅取样该功能性数据而没有取样该随机数据。在一些实施例中,组合逻辑电路具有一保持时间裕度,该保持时间裕度设定至少为该给定持续时间。在一实施例中,组合逻辑电路包含至少一延迟单元,其插置在至少一信号路径中,用以设定该保持时间裕度(hold-time margin)至少为该给定持续时间。
在一实施例中,电子元件可包含至少第一及第二加密引擎,用以执行加密操作,其中该保护电路使用该第一加密引擎以产生该随机数据,但不使用该第一加密引擎执行该加密操作,并使用该第二加密引擎产生该随机数据,但不使用该第二加密引擎执行该加密操作。
在一实施例中,保护电路用以在每一该多个时钟周期中多次修改该随机数据。在一实施例中,用于施加该随机数据以及该功能性数据的时序由该电子元件预先设定,该电子元件基于该组合逻辑电路的独立性能预先设定该时序。在另一实施例中,保护电路用以基于该组合逻辑电路的实际性能,适应性修改用于施加该随机数据以及该功能性数据的一时序。在另一实施例中,保护电路用以适应性修改该时序,藉以优化施加该随机数据的一工作周期。在一实施例中,在后续功能性数据施加在该组合逻辑电路的该至少一输入之前,该组合逻辑电路完成该随机数据在所有信号路径上的传输。
根据本发明的一实施例,本发明更提供一种用于保护一组合逻辑电路的方法,且组合逻辑电路具有至少一输入以及至少一输出。此方法包含下列步骤:在连续的多个时钟周期中,使用至少一状态取样部件对该组合逻辑电路的该输出的信号进行取样;在每一该多个时钟周期中,执行以下步骤以保护该组合逻辑电路:在该时钟周期中该状态取样部件的一取样时间之前,于一给定持续时间中开始施加一随机数据至该组合逻辑电路的该输入;施加该随机数据之后,改成施加功能性数据至该组合逻辑电路的输入,其待由该状态取样部件取样;其中在该组合逻辑电路的输入以及输出之间的任何信号路径上的一传输延迟不少于该给定持续时间,其中在该状态取样部件的该取样时间之前该随机数据在该给定持续时间中开始施加。
附图说明
图1为根据本发明的一实施例的可防范旁通道攻击的安全电子元件的示意方块图。
图2与图3为图1的电子元件的信号时序图。
图4为根据本发明的一实施例的具有平衡延迟的组合逻辑电路的方块图。
图5A为根据本发明的一实施例的乱数产生器的示意方块图,其中乱数产生器包含互连的两个加密引擎。
图5B为本发明的一实施例的用于图5A的乱数产生器的另一多工器的示意方块图。
图6为一本发明的再一实施例的用于防范旁通道攻击的安全电子元件的示意方块图。
附图标号:
20:安全电子元件
24:组合逻辑电路
28、56、64、84、FF:正反器
32、68、72:多工器
36、80、RNG:乱数产生器
40、44:时间点
48、DLY_G1、DLY_G2、DLY1、DLY2、DLY3:延迟单元
52:AES逻辑电路
60:SHA逻辑电路
ALD、ALD1、ALD2、ALD3:功能性数据
C1、C2、C3:时钟信号
CR:时钟树
G1、G2、G3:逻辑门
L:逻辑级
M1:输入
MQ:取样数据
Q、D、D1:输出
Q1:功能性数据
R1、RPD、RPD1、RPD2、RPD3、RPDD、RPDD0、RPDD1、MD:随机数据
S1:MUX控制信号
SRFF:SR正反器
T_ALD_max:最大传输时间
T_ALD_min:最小传输时间
T_RPD_max:最大传输时间
T_RPD_min:最小传输时间
具体实施方式
以下将配合图式及实施例来详细说明本发明的实施方式,藉此对本发明如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
概观(OVERVIEW)
本发明的实施例描述用于保护电子元件防范旁通道攻击的改良方法以及电路。在本文中揭露的技术可使用于多种类型的安全元件,例如安全存储器元件以及嵌入控制器。
在实施例中,安全电子元件包含组合逻辑电路。组合逻辑电路通常包含多个互连的逻辑级,其一起对功能性数据进行指定的安全操作。组合逻辑电路接收功能性数据以处理至少一输入,并在至少一输出上提供处理结果。至少一正反器(FF)、或其他状态取样部件用以在连续的多个时钟周期中取样组合逻辑电路的输出的信号。所取样的的信号在下一个时钟周期做为输入。
安全元件更包含保护电路,其用以保护组合逻辑电路不受旁通道攻击。在一些实施例中,保护电路在每一时钟周期轮流施加随机数据与功能性数据至组合逻辑电路的输入。在本发明中,随机数据的类型亦包含伪随机数据。因此,组合逻辑电路在一部分时钟周期中处理随机数据,而在其他时钟周期中处理功能性数据。随机数据的处理可有效随机化组合逻辑电路瞬时功耗,使得攻击者难以通过侦测组合逻辑电路的功耗或是辐射功率来重建机密信息。
应注意的是在本发明的技术方案中,功能性数据以及随机数据以相同信号路径传送并通过相同的正反器。在给定的时钟周期中,保护电路通常在正反器的取样时间之前在上述时钟周期中开始施加随机数据至组合逻辑电路的输入一特定持续时间。之后。保护电路改成施加功能性数据至组合逻辑电路的输入,以让正反器进行取样。
先施加随机数据的优点在于增加组合逻辑电路处理随机数据的时间比例,可更佳地随机化功耗。另一方面,先施加随机数据的风险在于正反器可能会因为时序变异而没有取样到功能性数据,但是取样到随机数据。具体而言,如果组合逻辑电路的至少一信号路径的传输延迟小于正反器取样时间之前的随机数据开始的持续时间,正反器将取样到随机数据。
在一些实施例中,保护电路及/或组合逻辑电路的设计可保证上述情境不会发生。也就是说,本发明的设计可保证组合逻辑电路的任何路径的传输延迟不小于FF(正反器)取样时间之前的随机数据开始的持续时间。在此限制下,即使随机数据在FF取样时间之间就施加到组合逻辑电路的输入,正反器也不会取样到随机数据,而只会取样到功能性数据。
在一些实施例中,对组合逻辑电路的保持时间裕度设定一合适的下限值可满足上述限制。设定下限值相当于平衡组合逻辑电路的信号路径的传输延迟。在一实施例中,可通过在至少一信号路径(通常是具有最小传输延迟的路径)中插置延迟单元来实现传输延迟的平衡。
本发明揭露的技术提供对旁通道攻击的安全防范。在一些实施例中,使用安全元件既有的加密引擎来产生随机数据。再者,由于是在保持时间及/或设置时间裕度的期间施加随机数据,本发明的技术方案对于时钟速度不会有影响或是影响很小。在最实用情境,随机数据以及功能性数据的输入时间可重叠而其在组合逻辑电路中的传送路径不同。此时间重叠的做法可提高功耗随机化的程度,因此可提高安全程度。此外,由于本发明揭露的技术可降低功能性数据施加于组合逻辑电路的时钟周期的比例,所以亦降低安全元件的静态漏电。
以下将描述本发明的各个实施例以及相关的性能折衷方案。
系统说明
图1为本发明的一实施例的可防范旁通道攻击的安全电子元件20的示意方块图。在一实施例,安全电子元件20可包含一集成电路(IC),例如整合加密电路的存储器元件、或是包含加密或是验证电路的嵌入控制器(EC)或是基板管理控制器(BMC)、或是其他任何适合的安全电子元件。
在本示例中,安全电子元件20包含一组合逻辑电路24。组合逻辑电路24具有至少一输入M1以及至少一输出D1,组合逻辑电路24可透过输入M1接收载有输入数据的数字输入信号,并透过输出D1输出载有输出数据的数字输出信号。组合逻辑电路24包含多个互连逻辑级L,例如逻辑门。逻辑级L执行组合逻辑电路24的指定函数,或是将输入M1转换成输出D1。作为单纯的逻辑组合,组合逻辑电路24没有储存功能,例如输出D1的处理只依据输入M1的目前数值。
安全电子元件20更包含至少一正反器(FF)28,其用以在连续的多个时钟周期中取样组合逻辑电路24的输出D1。在此,正反器28指"状态取样部件",都是用于取样组合逻辑电路24的目前状态。在其他的实施例中,状态取样部件可包含多个栓锁器,静态随机读取存储器(SRAM)单元、或是其他任何适合的存储器单元。每一经取样的输出可为“逻辑高电平(logic high)”或是“逻辑低电平(logic low)”。
正反器28由时钟信号C1(亦可称为取样时钟)控制,时钟信号C1来自时钟树(clockroot)CR。在本示例中,正反器28可对输出D1在时钟信号C1的每一周期的上升边缘进行取样,但此仅为举例,非为限制本发明。经取样的输出(其不包含只作为安全电子元件20的输出而没有经过内部组合逻辑电路)以Q1表示。经取样的输出Q1透过多工器32而施加至组合逻辑电路24的输入M1,以做为组合逻辑电路24在下一时钟周期的输入信号。
在一些实施例中,组合逻辑电路24用以执行特定安全操作或是建立功能。组合逻辑电路24可包含,例如,一乘法级、一执行加密、解密、标记或是验证处理迭代、或是其他任何适合的安全相关操作的电路。
除非有充分的保护,否则一攻击者可侦测组合逻辑电路24的瞬时功耗来非法撷取机密信息。攻击者可能侦测,例如,安全电子元件20从电源供应器消耗的瞬时电力、或是安全电子元件20发出的电磁的瞬时功率。
在一些实施例中,安全电子元件20更包含一保护电路,用以保护安全电子元件20防范旁通道攻击。在本示例中,保护电路包含以下元件:
一乱数产生器(RNG)36,用以产生随机数据R1或是伪随机数据的字流(wordstream)。随机数据亦以随机预充电数据(random pre-charging data,RPD)表示。
多工器(MUX)32,其用以交替将随机数据R1(RPD)以及经取样的功能性数据Q1驱动输入M1。其中,组合逻辑电路24输出的功能性数据(ALD)亦称为演算数据。
延迟单元DLY1、DLY2以及DLY3,其位于时钟树CR(clock tree)中;以及一SR正反器SRFF。此些元件控制时钟信号C1(其用于正反器28)以及一MUX控制信号S1(用于控制多工器32)之间的相对时序。通常,时钟树CR包含DLY1,而以下将会讨论DLY2以及DLY3的设计选择。在本示例中,DLY2为DLY1以及DLY3之间的差异。
可选地,组合逻辑电路24中的延迟单元(如以下图4所示)。
使用随机预充电技术防范旁通道攻击
如上所述,保护电路轮流以功能性数据(ALD)以及随机数据(RPD)驱动组合逻辑电路24的输入。上述轮流行为在每一时钟周期执行。也就是说,每一时钟周期包含RPD输入至组合逻辑电路24的时段、以及ALD输入至组合逻辑电路24的时段。回应此些输入,每一逻辑级L在时钟周期的一部分时段处理随机数据,而在其他时段处理功能性数据。因此,组合逻辑电路24的瞬时功耗可随机化,使得攻击者难以通过侦测功耗或是辐射能量来重建功能性数据(ALD)。
在一些实施例中,根据符合条件的时序,保护电路选择精确时序将随机数据(RPD)输入组合逻辑电路24以及将功能性数据(ALD)输入组合逻辑电路24。
在每一时钟周期,在功能性数据稳定可供取样之前(例如,在正反器于此时钟周期的取样时间之前),随机数据提供在组合逻辑电路24的输入。也就是说,MUX控制信号S1控制多工器32再时钟信号C1的上升边缘之前,将乱数产生器36的输出传送到输入M1。
然而,正反器28不会取样随机数据(RPD),而只会取样功能性数据(ALD)。
为了符合这两个条件,组合逻辑电路24中的任何路径的信号传输时间(亦称为传输延迟)必须足够长。如果组合逻辑电路24的至少一路径的传输路径延迟太少,随机数据将会在正反器28的取样时间之前传送到输出D1并被取样。
具体来说,如图2所示,从输入M1的随机数据开始到正反器28取样(时钟信号C1的上升边缘)之前的持续时间等于DLY3。为了保证正反器28不会取样到随机数据,组合逻辑电路24中从输入M1至输出D1的任何路径的最小传输时间必须不会少于DLY3。
图2为图1的安全电子元件20的信号时序,由上向下,在时间轴上显示以下信号:
时钟信号C1:其提供至正反器28。在本示例中,正反器在时钟信号C1的上升边缘取样组合逻辑电路24的输出D1。正反器28的取样时间点以40表示。
MUX控制信号S1:用以控制多工器32。在本示例中,当MUX控制控制信号S1为"逻辑高电平"时,多工器32选择输出乱数产生器36产生的随机数据R1。当MUX控制控制信号S1为“逻辑低电平”时,多工器32选择输出正反器的输出端Q所输出的经取样的功能性数据Q1。多工器32于时间点44开始施加随机数据(MUX控制控制信号S1从“逻辑低电平”切换成“逻辑高电平”)。
功能性数据Q1:在取样时间点40上正反器28取样功能性数据(ALD)的结果。在连续的多个时钟周期中功能性数据表示为ALD1、ALD2、ALD3,以此类推。
输入M1:其从多工器32传送至组合逻辑电路24。如同先前所述,根据MUX控制信号S1,输入M1的信号在随机数据(RPD)以及功能性数据(ALD)之间交替。在连续的时钟周期中,随机数据表示为RPD1、RPD2、RPD3...,以此类推。
输出D1:其为组合逻辑电路24的输出。在本示例中,组合逻辑电路24的不同的路径具有不同的延迟。因此,在一些时段,图中标示为XXXXX,输出D1的信号载有暂态数据、随机数据以及功能性数据的混合。在其他时段,在输出D1的所有信号只载有稳定非暂态的随机数据(RPD),或是稳定非暂态的功能性数据(ALD)。
图中可见,组合逻辑电路24在每一时钟周期的一明显时段处理随机数据,而在时钟周期的其余时段处理功能性数据。因此,组合逻辑电路24的瞬时功耗以及辐射能量可随机化,藉此保护安全电子元件20防范旁通道攻击。
尽管组合逻辑电路24在每一时钟周期的相当长时段处理随机数据,但是正反器28仍只会取样到功能性数据而不会取样到随机数据。可透过观察功能性数据Q1(其为在时间点40取样输出D1的取样版本)得到此结果。
图3为图1的安全电子元件20的信号时序。相对于图2的范例,图3的范例显示更积极的设计方式,其对组合逻辑电路24的延迟平衡有更高要求,以提供对旁通道攻击的更高防范程度。
在图3中,随机数据在组合逻辑电路24的最大传输时间以T_RPD_max表示。随机数据在组合逻辑电路24的最小传输时间以T_RPD_min表示。功能性数据在组合逻辑电路24的最大传输时间以T_ALD_max表示。功能性数据在组合逻辑电路24的最小传输时间以T_ALD_min表示。图中显示设置时间裕度以及保持时间裕度。
在输入M1的随机数据以RPD0、RPD1…表示,在输出D1上的随机数据以RPDD0、RPDD1…表示。由于组合逻辑电路24可能会改变RPD以及RPDD,所以RPD的数值可能与对应的RPDD数值不同。
根据图1以及图3所示的实施例,可看出RPDD在时钟信号C1的下降缘附近为稳定。因此,在另一实施例中,RPDD可用一组下降缘正反器来取样,以作为下一周期的伪随机数据。在又一实施例,RPDD亦可与乱数产生器36的输出进行"互斥或(XOR)"处理,以增强R1的随机性。应注意的是组合逻辑电路24在单一时钟周期中处理两组数据(在具体情况,在一时段处理ALD而在另一时段处理RPD),而不需降低电路临界设定路径延迟。
图2与图3图显示相对于时钟信号C1(或称取样时钟),如何设定MUX控制信号S1的时序以及时钟宽度(例如,随机数据以及功能性数据之间轮流输出)的两个范例。亦可使用其他时序以及时钟宽度的设定。以下将说明用于界定MUX控制信号S1的限制以及设计考量。
为了容易清楚描述,图中假定忽略多工器32以及正反器28的传输延迟。在从时钟信号C2以及C3衍生出MUX控制控制信号S1的SRFF中,重置输入端(R)的优先权假定高于设定输入端(S)的优先权。为了清楚描述,在本示例中MUX控制控制信号S1的下降缘与C1的上升边缘重合。然而,本发明不受此关系的限制,也可能会有其他关系。例如,MUX控制控制信号S1的下降缘可晚于C1的上升边缘,然而,因为ALD的最大传输时间只会从MUX控制控制信号S1的下降缘开始而仍然在C1的上升缘上结束,所以此时临界设定时序可能会受影响。再者,延迟MUX控制控制信号S1的下降时间将可提高随机数据的持续时间,例如,可以提高保护程度,但是其代价是组合逻辑电路24需要有更严格的设定时间。
在一些实施例中,图1的配置可在安全电子元件20中复制成多个,并分别应用于组合逻辑电路24的不同部分。也就是说,组合逻辑电路24可区分成多个部分,例如根据时序及/或实体相接近的部分来进行区分。保护电路的个别举例可耦接于每一部分,其可包含一个别多工器以及个别多工器控制,且可能有不同的延迟值,如DLY1、DLY2及/或DLY3。
在一些实施例中,多个正反器28以及多工器32之间的实体距离保持在最小值,以将正反器输出负载降到最低,藉以将漏电降到最低。此外,可使用额外应对措施来避免正反器28的漏电,例如,使用DRP或是掩膜,如图6所示。
通过平衡组合逻辑电路中的延迟,轮流使用随机数据以及功能性数据且保证仅取样到功能性数据
如上所述,为了确保正反器28不会在输出D1取样到随机数据,组合逻辑电路24中的最小传输时间必须不小于正反器28的取样时间之前的随机数据在输入M1开始进行的持续时间。例如在图2所示的机制中,上述持续时间为时间点44(在MUX控制控制信号S1上)以及时间点40(在信号C1上)之间的持续时间。组合逻辑电路24中的任何路径的传输延迟必须大于此持续时间。
在一些实施例中,上述用于确保组合逻辑电路24的任何路径的传输延迟不少于给定持续时间的限制可应用于实现组合逻辑24的集成电路的设计期间。例如,在集成电路设计期间,组合逻辑电路24的保持时间裕度的数值可设定成至少为给定持续时间。保持时间裕度通常大于必须确保正确时序的裕度。
一般而言,可在集成电路设计的任何一阶段,例如在线路合成(synthesis)期间阶段、放置&接线(P&R)阶段、或是其他阶段,为传输延迟设定一下限值。
通常,通过刻意提高组合逻辑电路24的至少一最快信号路径的传输延迟,来实现设定传输延迟的下限值。传输延迟本来就高于给定持续时间的其他路径,则不需改变。在一些实施例中,不需有安全功能的特定信号路径,例如不输送机密信息的路径,也不在传输延迟平衡的考量范围内。
平衡操作可降低不同路径之间的传输延迟差异。因此,"设定组合逻辑电路24的多种路径的传输延迟的下限值"的操作相当于是"平衡组合逻辑电路24的多种路径的传输延迟"。组合逻辑电路24的多种路径的传输延迟越平衡,则可以有更高的保持时间裕度。如上述内容所解释,保持时间裕度可允许随机数据插入使功耗随机化但是随机数据不会被取样。
确保传输延迟足够高的一种方法是在组合逻辑电路24的一些逻辑级之间插置延迟单元。
图4为本发明的一实施例具有平衡延迟的组合逻辑电路24的示意方块图。在此高度简单化的范例中,组合逻辑电路24的逻辑级包含3个逻辑门G1、G2以及G3。每一栅极具有一特定传输延迟。为了平衡组合逻辑电路24的多种路径的传输延迟,两延迟单元48可插置在组合逻辑电路24的电路设计中。延迟单元DLY_G1的效果近似栅极G1的传输延迟,而延迟单元DLY_G2的效果近似栅极G2的传输延迟。因此,组合逻辑电路24的三个信号路径具有大约相同的延迟。
延迟单元,例如DLY_G1、DLY_G2以及DLY_G3,可用任何适合的方式来实现;例如,可使用伪逻辑单元、使用缓冲单元、或是使用接线(例如更常的走线)。
图4绘示本发明的示例性实施例。在其他实施例,其他任何适合技术可用于平衡组合逻辑电路24的各种信号路径的传输延迟。
在一示例性实施例,以下的虚拟码(pseudo-code)可用于平衡延迟:
·将集成电路设计以及时序限制条件载入一静态时序分析工具,例如synopsys的PrimeTime或是集成电路编译器;
·根据电路设计上的取舍设定时序平衡限制条件(TBL);
·对于组合逻辑电路24的每一输出接脚;
·取得通过此接脚的具有最小时间冗余的时序路径;
·视需要,增加延迟单元以提高延迟直到最小路径时序时间冗余小于TBL。
例如,上述处理可在电路设计的具有慢速模拟条件接线后阶段(post-routingstage),例如,慢速模拟条件包含高温、低电压、慢速单元处理角模型(slow cell processcorner model)、高电容接线或其组合。
此外,可在电路设计时序最佳化工具上对设置时间裕度设定一适合的下限值可改善延迟平衡,其中超出所需的设置时间裕度以符合电路设计时序需求。例如,限制设置时间是有利的,因为(i)降低延迟(其之后需要平衡),以及(ii)可减少最长以及最短路径之间的工艺变异。
乱数产生器配置的示例
在各种实施例,乱数产生器36可用任何适合的模拟及/或数字电路来实现。乱数产生器36不一定需要以时钟驱动,因此也可以用模拟噪声源来实现。在其他的实施例中,乱数产生器36可用全数字硬体来实现,例如,使用时钟逻辑以产生一伪随机数据序列。在一些实施例中,乱数产生器36可重复利用安全电子元件20既有的安全相关电路,例如,安全散列演算法(SHA)或是进阶加密标准(AES)加密引擎。在此情况下,建议每次以随机种子运行SHA或是进阶加密标准。
图5A为本发明的一实施例的用于实现乱数产生器36的乱数产生器的示意方块图。此实施例可用于已经采用SHA以及AES的安全电子元件20执行旁通道攻击应对措施以外的安全操作。
在图5A所示的示例中,乱数产生器包含两个互连的乱数产生器(以下称为加密引擎),图5A的左侧显示的进阶加密标准(AES)加密引擎包含AES逻辑电路52以及正反器56,右侧显示的SHA加密引擎包含SHA逻辑电路60以及正反器64。多工器68接收正反器56与64的输出,并将其多工处理至AES逻辑电路52的输入。多工器72接收正反器56与64的输出,并将其多工处理至SHA逻辑电路60的输入。图5A中,信号AES NOISE EN(图5A中以AES NOISE EN标示)为启动AES噪声,而信号SHA NOISE EN(图5A中以SHA NOISE EN标示)为启动SHA噪声。
在一些实施例中,在一部分期间,安全电子元件20使用AES加密引擎而不使用SHA加密引擎;在其他期间,安全电子元件20使用SHA加密引擎而不使用AES加密引擎。在此些实施例,未使用的乱数产生器可重复利用并作为乱数产生器36,以产生随机数据(RPD)。也就是说,当安全电子元件20使用AES加密引擎而未使用SHA加密引擎时,SHA加密引擎用于产生RPD。当安全电子元件20使用SHA加密引擎而未使用AES加密引擎时,AES加密引擎用于产生RPD。
正反器56以及64可代表AES以及SHA加密引擎内部的暂存器,且不一定耦接于主模组输出(例如,进阶加密标准密码或是SHA摘要)。因此,当执行对应的加密引擎时,此些数值在每一时钟周期可改变。
信号AES_NOISE_EN以及信号SHA_NOISE_EN可进入对应的加密引擎,而进入一"噪声"状态,其中加密引擎连续摘要越来越多的数据,藉以维持产生随机乱数直到加密引擎停止,例如,直到NOISE_EN信号重置。多工器68以及72与图1的多工器32类似。
图5B为本发明的一实施例用于图5A的乱数产生器的多工器68与72的另一配置的示意方块图。乱数产生器的其他部分维持并未改变。
图5A与图5B的乱数产生器配置仅为举例说明,本发明并不受其限制,而其他任何适合的实现方式亦可使用。例如,乱数产生器(RNG)可用至少两个任何类型的加密引擎的组合来实现,例如使用Rivest-Shamir-Adleman(RSA)加密引擎、Elliptic-CurveCryptography(ECC)加密引擎或是CRC加密引擎。
整合额外的应对措施
图6为本发明的再一实施例的防范旁通道攻击的安全电子元件的示意方块图。图6可证明图1至图3的保护机制可结合额外的安全应对措施。图6显示一种可能结合的应对措施,作为范例说明。
在本示例中,从正反器28读取以及写入正反器28的数据使用一额外乱数产生器80来进行掩饰。在正反器28取样之前,由乱数产生器80产生的随机数据MD与组合逻辑电路24的输出D结合,例如使用位异或门(bitwise XOR)来结合。除此之外,额外的正反器84取样随机数据MD。在驱动组合逻辑电路24的输入之前,正反器84输出的取样数据MQ与多工器32的取样输出相结合,例如,使用位异或门来结合。
额外的实施例以及变化例
在一些实施例中,在每一时钟周期,乱数产生器36多次修改随机数据。例如,请参阅图2的输入M1,在标示为间隔RPD中的随机数据的数值至少改变一次。
在一些实施例中,施加随机数据以及功能性数据的时序不是固定的。通过修改时序,可能可以控制时钟周期中施加随机数据的期间的比例,以及在时钟周期中施加功能性数据的的期间的剩余比例。也可能可以控制在正反器取样时间(例如图2与图3所示的时间点40)之前的随机数据开始(例如图2与图3所示的时间点44)的持续时间。在图1所示的配置,例如,可通过修改延迟单元DLY3以修改上述时序。
在本发明中,用语“施加随机数据以及功能性数据的时序"表示在时钟周期中从随机数据开始(例如,时间点44)至正反器取样时间(例如,时间点40)的尺寸及/或位置。
在一些实施例中,根据电子元件的组合逻辑电路的独立性能,施加随机数据以及功能性数据的时序的设定独立于每一安全电子元件20。例如,此设定可利用独立安全电子元件之间的保持时间裕度的统计差异,例如,工艺变异。
例如,考量安全电子元件20的组合逻辑电路24发生有一高设置时间裕度以及一低保持时间裕度。在此独立的安全电子元件20中,时序可设定为在正反器取样时间(例如,时间点40)之后开始施加随机数据,并在正反器取样时间(例如,时间点40)之后停止施加随机数据。上述顺序的设定可在任何适合时间执行,例如,在安全电子元件20生产或是最后测试的期间执行。此设定有时可视为电路校正或是训练序列。
此外,在安全电子元件20中,依据组合逻辑电路的目前实际性能,保护电路可与施加随机数据以及功能性数据的时序在时间上相适配。例如,此配试可利用随时间发生的传输延迟差异,例如因为温度、电压或其他操作条件造成的差异。此配试亦可利用元件对元件差异(device-to-device variations)。
在一示例性实施例,通过监控组合逻辑电路24的输出(D1),保护电路可施加预先定义训练序列至组合逻辑电路24的输入(M1),以及预估组合逻辑电路24的保持时间裕度(其等效于信号路径的传输延迟之间的平衡程度),并设定时序(例如,DLY2以及DLY3的时序)。例如,上述顺序的配试可在上电或是重置时执行,及/或在每次使用组合逻辑电路24进行加密操作之前周期地执行。
在此实施例,当保持时间裕度为高时,可通过在时钟周期的更前部分(在正反器取样时间之前)施加随机数据以增强安全性。在其他时间,当保持时间裕度为低时,随机数据可能必须施加在时钟周期的较晚部分(正反器取样时间之前),但在此情况下,设定裕度通常较高,所以随机数据亦可施加在数据取样时间之后。
在通常实施例中,例如,当工艺变异、电压变异以及温度变异造成组合逻辑电路24的最慢传输时间,在慢速工艺-电压-温度(PVT)角下,保持时间裕度为高的。在此条件下,可通过在时钟周期的较早部分(正反器取样时间更早之前)施加随机数据,以增强安全性。通过相同方式,在快速工艺电压温度(PVT)角,保持时间裕度可趋向变小,而随机数据可在时钟周期的较后部分(在正反器取样时间之前)施加。
为了证明适配施加随机数据功能性数据功能性数据的时序的益处,请考量以下示例性数值。假定组合逻辑电路24的最小传输时间在慢速PVT角为10nS,而在快速PVT角为6ns,以及组合逻辑电路24的最大传输时间在慢速PVT角为20nS,而在快速PVT角为12ns。
在此情况下,保护电路可执行延迟单元DLY2以及DLY3的适应性校正,使得在慢速PVT角下可在正反器取样时间(例如时间点40)之前10ns(例如时间点44)施加随机数据(RPD),直到正反器的取样时间(例如时间点40)为止。在快速PVT角,可在正反器的取样时间(例如时间点40)之前的6ns(例如时间点44)施加RPD,一直持续到正反器的取样时间(例如时间点40)之后的8nS。
在上述示例性内容,施加随机数据以及功能性数据的时序的设定为了优化施加随机数据的工作周期(时钟周期的部分的比例),并确保随机数据不被取样。此条件亦可将施加功能性数据的工作周期(时钟周期中的部分的比例)降到最低。因此,亦可降低安全电子元件20的静态漏电。
为了概念清楚起见,图1、图4、图5A、图5B与图6所示的安全电子元件、组合逻辑电路以及乱数产生器的配置仅为示例。在其他实施例,也可使用其他任何适合的配置。在各种实施例,安全电子元件、组合逻辑电路及/或乱数产生器可使用任何适合的硬体来实现,例如可使用至少一离散部件、至少一特殊应用集成电路(ASIC)及/或至少一现场可编程门阵列(FPGA)。
虽然本发明以前述的实施例揭露如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,因此本发明的专利保护范围须视本说明书所附的权利要求所界定者为准。

Claims (20)

1.一种电子元件,其特征在于,包含:
一组合逻辑电路,具有至少一输入以及至少一输出;
至少一状态取样部件,用以在连续的多个时钟周期对所述组合逻辑电路的所述至少一输出的信号进行取样;以及
一保护电路,在每一所述多个时钟周期中执行以下操作以保护所述组合逻辑电路:
在所述状态取样部件于所述时钟周期中的一取样时间之前,在一给定持续时间中开始施加随机数据至所述组合逻辑电路的所述至少一输入;以及
施加所述随机数据之后,改成施加一功能性数据至所述组合逻辑电路的所述至少一输入,以让所述状态取样部件进行取样;
其中在所述组合逻辑电路的所述输入以及所述输出之间的任何信号路径上的一传输延迟不少于所述给定持续时间,其中在所述状态取样部件的所述取样时间之前所述随机数据在所述给定持续时间中开始施加。
2.根据权利要求1所述的电子元件,其特征在于,所述随机数据以及所述功能性数据输入至所述状态取样部件,由于所述传输延迟不少于所述给定持续时间,所述状态取样部件仅取样所述功能性数据而没有取样所述随机数据。
3.根据权利要求1所述的电子元件,其特征在于,所述组合逻辑电路具有一保持时间裕度,所述保持时间裕度设定至少为所述给定持续时间。
4.根据权利要求3所述的电子元件,其特征在于,所述组合逻辑电路包含至少一延迟单元,其插置在至少一信号路径中,用以设定所述保持时间裕度至少为所述给定持续时间。
5.根据权利要求1所述的电子元件,其特征在于,更包含第一加密引擎及第二加密引擎,用以执行加密操作,其中所述保护电路使用所述第一加密引擎以产生所述随机数据,但不使用所述第一加密引擎执行所述加密操作,并使用所述第二加密引擎产生所述随机数据,但不使用所述第二加密引擎执行所述加密操作。
6.根据权利要求1所述的电子元件,其特征在于,所述保护电路用以在每一所述多个时钟周期中多次修改所述随机数据。
7.根据权利要求1所述的电子元件,其特征在于,用于施加所述随机数据以及所述功能性数据的时序由所述电子元件预先设定,所述电子元件基于所述组合逻辑电路的独立性能预先设定所述时序。
8.根据权利要求1所述的电子元件,其特征在于,所述保护电路用以基于所述组合逻辑电路的实际性能,适应性修改用于施加所述随机数据以及所述功能性数据的一时序。
9.根据权利要求8所述的电子元件,其特征在于,所述保护电路用以适应性修改所述时序,藉以优化施加所述随机数据的一工作周期。
10.根据权利要求1所述的电子元件,其特征在于,在将所述功能性数据施加在所述组合逻辑电路的所述至少一输入之前,所述组合逻辑电路先完成所述随机数据在所有所述信号路径上的传输。
11.一种用于保护一电子元件的一组合逻辑电路的方法,其特征在于,所述组合逻辑电路具有至少一输入以及至少一输出,所述方法包含:
在连续的多个时钟周期中,使用至少一状态取样部件对所述组合逻辑电路的所述至少一输出的信号进行取样;以及
在每一所述多个时钟周期中,执行以下步骤以保护所述组合逻辑电路:
在所述时钟周期中所述状态取样部件的一取样时间之前,于一给定持续时间中开始施加一随机数据至所述组合逻辑电路的所述输入;以及
施加所述随机数据之后,改成施加功能性数据至所述组合逻辑电路的输入,以让所述状态取样部件进行取样;
其中在所述组合逻辑电路的所述输入以及所述输出之间的任何信号路径上的一传输延迟不少于所述给定持续时间,其中在所述状态取样部件的所述取样时间之前所述随机数据在所述给定持续时间中开始施加。
12.根据权利要求11所述的方法,其特征在于,所述随机数据以及所述功能性数据输入至所述状态取样部件,由于所述传输延迟不少于所述给定持续时间,所述状态取样部件仅取样所述功能性数据而没有取样所述随机数据。
13.根据权利要求11所述的方法,其特征在于,所述组合逻辑电路具有一保持时间裕度,所述保持时间裕度设定至少为所述给定持续时间。
14.根据权利要求13所述的方法,其特征在于,所述组合逻辑电路包含至少一延迟单元,其插置在至少一信号路径中,用以设定所述保持时间裕度至少为所述给定持续时间。
15.根据权利要求11所述的方法,其特征在于,所述电子元件包含第一加密引擎及第二加密引擎,用以执行加密操作,其中产生所述随机数据的步骤包含:
使用所述第一加密引擎以产生所述随机数据,但不使用所述第一加密引擎执行所述加密操作,并使用所述第二加密引擎产生所述随机数据,但不使用所述第二加密引擎执行所述加密操作。
16.根据权利要求11所述的方法,其特征在于,更包含:
在每一所述多个时钟周期中多次修改所述随机数据。
17.根据权利要求11所述的方法,其特征在于,更包含:
使用所述电子元件基于所述组合逻辑电路的独立性能,预先设定用于施加所述随机数据以及所述功能性数据的时序。
18.根据权利要求11所述的方法,其特征在于,更包含:
基于所述组合逻辑电路的实际性能,适应性修改用于施加所述随机数据以及所述功能性数据的一时序。
19.根据权利要求18所述的方法,其特征在于,适应性修改所述时序的步骤包含:
优化施加所述随机数据的一工作周期。
20.根据权利要求11所述的方法,其特征在于,在后续功能性数据施加在所述组合逻辑电路的所述至少一输入之前,完成所述随机数据在所述组合逻辑电路的所有所述信号路径上的传输。
CN201910897935.7A 2018-11-18 2019-09-23 使用小型间接随机预充电以防范旁通道攻击的电子元件 Active CN111200490B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/194,342 2018-11-18
US16/194,342 US10878133B2 (en) 2018-11-18 2018-11-18 Mitigation of side-channel attacks using small-overhead random pre-charging

Publications (2)

Publication Number Publication Date
CN111200490A CN111200490A (zh) 2020-05-26
CN111200490B true CN111200490B (zh) 2023-04-07

Family

ID=70727247

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910897935.7A Active CN111200490B (zh) 2018-11-18 2019-09-23 使用小型间接随机预充电以防范旁通道攻击的电子元件

Country Status (4)

Country Link
US (1) US10878133B2 (zh)
JP (1) JP7005576B2 (zh)
CN (1) CN111200490B (zh)
TW (1) TWI693791B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180089426A1 (en) * 2016-09-29 2018-03-29 Government Of The United States As Represented By The Secretary Of The Air Force System, method, and apparatus for resisting hardware trojan induced leakage in combinational logics
US11601120B2 (en) 2021-02-03 2023-03-07 Nuvoton Technology Corporation Attack-resistant ring oscillators and random-number generators
US20220150046A1 (en) * 2021-09-16 2022-05-12 Intel Corporation Deterring side channel analysis attacks for data processors having parallel cryptographic circuits
TWI818503B (zh) * 2022-04-11 2023-10-11 新唐科技股份有限公司 加密裝置以及加密方法
CN116743504B (zh) * 2023-08-14 2023-10-17 佳瑛科技有限公司 一种数字数据在网络线缆中的安全传输方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017037725A1 (en) * 2015-09-06 2017-03-09 Bar-Ilan University Randomized logic against side channel attacks
CN107016292A (zh) * 2016-01-26 2017-08-04 华邦电子股份有限公司 防止通过功率分析进行窃听的电子电路及防止窃听的方法
CN107181585A (zh) * 2016-03-13 2017-09-19 华邦电子股份有限公司 通过变更时脉延迟以防止旁通道攻击的系统及其方法
CN107395189A (zh) * 2016-05-17 2017-11-24 意法半导体(鲁塞)公司 集成电路的保护
CN107735981A (zh) * 2016-02-23 2018-02-23 谷歌有限责任公司 用于防御加密攻击的时钟周期随机化

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3769940B2 (ja) * 1998-08-06 2006-04-26 株式会社日立製作所 半導体装置
US7840803B2 (en) * 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
WO2005081085A2 (en) 2004-02-13 2005-09-01 The Regents Of The University Of California Logic system for dpa and/or side channel attack resistance
US7577820B1 (en) * 2006-04-14 2009-08-18 Tilera Corporation Managing data in a parallel processing environment
DE602006008599D1 (de) 2006-06-29 2009-10-01 Incard Sa Verfahren zum Schutz von IC-Karten vor Leistungsanalyse-Attacken
JP5332616B2 (ja) * 2006-11-10 2013-11-06 日本電気株式会社 クロック信号分周回路
JP5458611B2 (ja) * 2009-03-13 2014-04-02 ソニー株式会社 暗号処理装置
US8427194B2 (en) * 2010-05-24 2013-04-23 Alexander Roger Deas Logic system with resistance to side-channel attack by exhibiting a closed clock-data eye diagram
JP5926655B2 (ja) * 2012-08-30 2016-05-25 ルネサスエレクトロニクス株式会社 中央処理装置および演算装置
US8983068B2 (en) * 2013-03-06 2015-03-17 Infineon Technologies Ag Masked nonlinear feedback shift register
US10489611B2 (en) * 2015-08-26 2019-11-26 Rambus Inc. Low overhead random pre-charge countermeasure for side-channel attacks
US10142103B2 (en) * 2015-12-07 2018-11-27 The Boeing Company Hardware assisted fast pseudorandom number generation
WO2018002934A1 (en) * 2016-06-29 2018-01-04 Bar-Ilan University Pseudo- asynchronous digital circuit design
US10256973B2 (en) 2016-09-30 2019-04-09 Intel Corporation Linear masking circuits for side-channel immunization of advanced encryption standard hardware

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017037725A1 (en) * 2015-09-06 2017-03-09 Bar-Ilan University Randomized logic against side channel attacks
CN107016292A (zh) * 2016-01-26 2017-08-04 华邦电子股份有限公司 防止通过功率分析进行窃听的电子电路及防止窃听的方法
CN107735981A (zh) * 2016-02-23 2018-02-23 谷歌有限责任公司 用于防御加密攻击的时钟周期随机化
CN107181585A (zh) * 2016-03-13 2017-09-19 华邦电子股份有限公司 通过变更时脉延迟以防止旁通道攻击的系统及其方法
CN107395189A (zh) * 2016-05-17 2017-11-24 意法半导体(鲁塞)公司 集成电路的保护

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种新型的抗DPA攻击可配置逻辑结构;乐大珩;《电子学报》;第39卷(第02期);全文 *

Also Published As

Publication number Publication date
TW202021276A (zh) 2020-06-01
TWI693791B (zh) 2020-05-11
US20200159967A1 (en) 2020-05-21
CN111200490A (zh) 2020-05-26
JP7005576B2 (ja) 2022-01-21
US10878133B2 (en) 2020-12-29
JP2020087453A (ja) 2020-06-04

Similar Documents

Publication Publication Date Title
CN111200490B (zh) 使用小型间接随机预充电以防范旁通道攻击的电子元件
US7716502B2 (en) Current flattening and current sensing methods and devices
Kong et al. PUFatt: Embedded platform attestation based on novel processor-based PUFs
US9135453B2 (en) Preventing data extraction by side-channel attack
Canivet et al. Glitch and laser fault attacks onto a secure AES implementation on a SRAM-based FPGA
Saputra et al. Masking the energy behavior of DES encryption [smart cards]
US20130055039A1 (en) Fully Programmable Parallel PRBS Generator
KR101946509B1 (ko) 클락 지연들을 변동시킴으로써 부채널 공격들로부터 보호하는 시스템 및 방법
Yan et al. Phase calibrated ring oscillator PUF design and implementation on FPGAs
Kaps et al. DPA resistant AES on FPGA using partial DDL
WO2019115520A1 (en) Dynamic masking
Almeida et al. Ransomware attack as hardware trojan: a feasibility and demonstration study
Homsirikamol et al. A universal hardware API for authenticated ciphers
Fischer et al. An open-source multi-FPGA modular system for fair benchmarking of true random number generators
Shuvo et al. Ldtfi: Layout-aware timing fault-injection attack assessment against differential fault analysis
Igarashi et al. Concurrent faulty clock detection for crypto circuits against clock glitch based DFA
Wang et al. Hardware trojan attack in embedded memory
US20140292371A1 (en) Multi-threshold dual-spacer dual-rail delay-insensitive logic (mtd3l) circuit design
Jayasinghe et al. Quadseal: Quadruple balancing to mitigate power analysis attacks with variability effects and electromagnetic fault injection attacks
US11906581B2 (en) Hardware component and a method for implementing a camouflage of current traces generated by a digital system
Rahman et al. Design and security-mitigation of custom and configurable hardware cryptosystems
Portella do Canto et al. Buying AES Design Resistance with Speed and Energy
US11080020B2 (en) Information processing device and random number generating method
Liu et al. A low-overhead and high-reliability physical unclonable function (PUF) for cryptography
EP4243333A1 (en) Electronic circuit and method for securing and desynchronizing register transfers to mitigate side channel attacks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant