CN112507400A - 电子装置及用于保护电子装置的方法 - Google Patents
电子装置及用于保护电子装置的方法 Download PDFInfo
- Publication number
- CN112507400A CN112507400A CN202010484912.6A CN202010484912A CN112507400A CN 112507400 A CN112507400 A CN 112507400A CN 202010484912 A CN202010484912 A CN 202010484912A CN 112507400 A CN112507400 A CN 112507400A
- Authority
- CN
- China
- Prior art keywords
- state sampling
- output
- protection
- flip
- combinational logic
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000005070 sampling Methods 0.000 claims abstract description 138
- 230000004044 response Effects 0.000 claims abstract description 22
- 230000009471 action Effects 0.000 claims abstract description 19
- 230000003111 delayed effect Effects 0.000 claims description 41
- 230000008859 change Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 13
- 238000002347 injection Methods 0.000 description 10
- 239000007924 injection Substances 0.000 description 10
- 230000007704 transition Effects 0.000 description 9
- 230000000737 periodic effect Effects 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 210000004027 cell Anatomy 0.000 description 4
- 230000001934 delay Effects 0.000 description 4
- 230000000630 rising effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009118 appropriate response Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000001976 improved effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 230000009974 thixotropic effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/003—Modifications for increasing the reliability for protection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/76—Protecting 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/20—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
- H03K19/21—EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Logic Circuits (AREA)
- Manipulation Of Pulses (AREA)
Abstract
本发明提供一种电子装置及用于保护电子装置的方法,电子装置包括组合逻辑电路,一个或多个功能状态取样器件、一个或多个保护状态取样器件以及保护逻辑,组合逻辑电路具有一个或多个输出,功能状态取样器件配置为对组合逻辑电路的各个输出进行取样,保护状态取样器件分别与功能状态取样器件相关联,每个保护状态取样器件与其对应的功能状态取样器件对组合逻辑电路的同一输出进行取样,但是相对于功能状态取样器件,保护状态取样器件具有预定的时间偏移,保护逻辑配置为检测由功能状态取样件取样的输出与由保护状态取样器件取样的各个输出之间的差异,并回应于该差异而启动回应动作。
Description
技术领域
本发明涉及电子电路中的数据安全性,尤其涉及用于防止故障注入攻击的方法和系统。
背景技术
故障注入攻击是用于从安全电子电路(例如密码电路)存取、分析或提取信息的一系列技术。故障注入攻击通常包括例如通过实体接触信号线,通过施加大功率激光或电磁脉冲,或在电源或其他外部接口上引起突波(glitch)。预计该故障会导致电路输出敏感信息,或以其他方式帮助攻击者穿透电路或其存储的信息。
用于检测和/或减轻故障注入攻击的各种技术在本领域中是已知的。例如,美国专利申请公开2009/0315603描述了一种用于从电子电路的多个第一正反器的组中检测至少一个第一正反器的状态的扰动的方法和电路。将该组中的第一正反器的各个输出与其功能目的无关地组合以提供信号及其反相信号,藉以触发两个第二正反器,将其数据输入强制为相同状态,第二正反器的各个输出正反器组合在一起以提供检测结果。包含至少作为对于该组中的第一正反器中的一个的每一触发沿的脉冲的脉冲信号可启动第二正反器。
作为另一个例子,美国专利7,977,965描述了一种用于数字IC中的软错误检测的系统和方法。系统包括耦合到锁存器的观察电路,电路能够在锁存器的状态改变时作出回应。系统还包括提供给锁存器和观察电路的同步时钟。对于锁存器,时钟定义了一个时间窗口,在此时间窗口期间内阻止了锁存器接收数据,并且时钟以同步方式在观察电路中启用了回应。时钟以这样的方式同步:当防止锁存器接收数据时,仅在窗口内启用电路的回应。
美国专利申请公开2005/0235179描述了一种逻辑电路,逻辑电路包括逻辑模块,逻辑模块包括功能同步正反器,功能同步正反器接收包括多个并行位元(several bits inparallel)的功能结果并提供同步结果。用于检查功能正反器的完整性的模块包括:第一编码块,其接收功能结果并提供第一代码;第二编码块,其接收同步结果并提供第二代码;检查同步正反器,其接收第一结果。编码和提供第三编码,以及比较器,用于将第二编码与第三编码进行比较并提供第一误差信号。
发明内容
本发明的实施例提供一种电子装置,电子装置包括组合逻辑电路、一个或多个功能状态取样器件、一个或多个保护状态取样器件以及保护逻辑。组合逻辑电路具有一个或多个输出。功能状态取样器件配置为对组合逻辑电路的各个输出进行取样。保护状态取样器件分别与功能状态取样器件相关联,每一保护状态取样器件配置为与其对应的功能状态取样器件对组合逻辑电路的同一输出进行取样,但是相对于功能状态取样器件,保护状态取样器件具有预定的时间偏移。保护逻辑配置为检测由功能状态取样器件取样的输出与由保护状态取样器件取样的各个输出之间的差异,并回应于该差异而启动回应动作。
在本案实施例中,电子装置还包括延迟器件,其配置为延迟组合逻辑电路的输出以便产生一延迟输出,功能状态取样器件配置为取样上述输出和延迟输出中的一个,以及相应的保护状态取样器件配置为取样上述输出和延迟输出中的另一个。
在其他实施例中,电子装置还包括配置为延迟时钟信号以便产生延迟时钟信号的延迟器件,功能状态取样器件配置为使用时钟信号和延迟时钟信号之一作为其取样时脉,并且相应的保护状态取样器件配置为使用时钟信号和延迟时钟信号中的另一个作为其取样时脉。
在一实施例中,功能状态取样器件和相应的保护状态取样器件包括正反器(FFs)。在另一实施例中,功能状态取样器件包括驱动第二锁存器的第一锁存器,并且相应的保护状态取样器件包括与第一锁存器相关联的第三锁存器。
在又一实施例中,保护逻辑配置为合并在两个或更多个功能状态取样器件与两个或更多个保护状态取样器件之间检测到的多个差异,并且回应于合并的差异来启动回应动作。在又一实施例中,保护逻辑配置为仅当检测到的差异在时钟周期的预定部分期间发生时才启动回应动作。在本发明的实施例中,功能状态取样器件配置为以第一阀值电压对组合逻辑电路的输出进行取样,并且相应的保护状态取样器件配置为以高于第一阀值电压的第二阀值电压对组合逻辑电路的相同输出进行取样。
根据本发明的实施例,另外提供了一种用于保护电子装置的方法。方法包括使用一个或多个相应的功能状态取样器件来取样组合逻辑电路的一个或多个输出。还使用分别与功能状态取样器件相关联的一个或多个保护状态取样器件来取样一个或多个输出。每一保护状态取样器件与其对应的功能状态取样器件对组合逻辑电路的同一输出进行取样,但是相对于功能状态取样器件,保护状态取样器件具有预定时间偏移。检测由功能状态取样器件取样的输出与由保护状态取样器件取样的各个输出之间的差异,并且回应于该差异而启动回应动作。
根据本发明的实施例,还提供一种电子装置,电子装置包括时钟产生电路、组合逻辑电路、一个或多个功能状态取样器件以及保护逻辑。时钟产生电路配置为产生具有周期性时钟周期的时钟信号。组合逻辑电路包括多个内部网络和一个或多个输出。一个或多个功能状态取样器件配置为根据时钟信号周期性地取样组合逻辑电路的各个输出。保护逻辑被配置为从组合逻辑电路的内部网络或输出接收一个或多个信号,以在一个或多个接收到的信号中检测在周期时钟周期的预定部分期间发生的信号不稳定性。根据组合逻辑电路的设计,信号被期望是稳定的,并且回应于检测到的信号不稳定性而启动回应动作。
在一些实施例中,保护逻辑配置为接收控制信号,控制信号从时钟信号导出并定义时钟周期的预定义部分,在该预定义部分中信号被期望是稳定的,并使用该控制信号来检测在周期时钟周期的预定义部分中发生信号不稳定性。在一个实施例中,保护逻辑配置为回应于检测到的信号不稳定性而产生脉冲,以脉冲来驱动保护状态取样器件的数据输入,并且回应于保护状态取样器件的输出而启动回应动作。
在本发明的实施例中,保护逻辑配置为回应于检测到的信号不稳定性而生成修改后的时钟信号,以修改后的时钟信号来驱动保护状态取样器件的时钟输入,以及回应于保护状态取样器件的输出启动回应动作。在实施例中,保护逻辑配置为从不在组合逻辑电路的关键时序路径上的各个內部网络接收信号。
根据本发明的实施例,还提供了一种用于保护具有多个内部网络和一个或多个输出的组合逻辑电路的方法,其中根据具有周期性时钟周期的时钟信号对输出进行取样。方法包括从组合逻辑电路的内部网络或输出接收一个或多个信号。在一个或多个接收信号中检测在周期时钟周期的预定义部分期间发生的信号不稳定性,其中根据组合逻辑电路的设计,信号被期望是稳定的。回应于检测到的信号不稳定性而启动回应动作。
附图说明
通过下面结合附图对实施例的详细描述,可以更全面地理解本发明,其中:
图1A及图1B为本发明的使用一对具有相对延迟的正反器(FFs)来验证数据取样完整性的电路的方块图;
图2A及图2B为本发明的使用具有重复锁存器和相对延迟的正反器电路来验证数据取样完整性的电路的方块图;
图3A、图3B及图3C为本发明通过检测来自多个组合逻辑网的信号之间的差异来验证数据取样完整性的电路的方块图;
图4为本发明的使用在关键时序路径(critical timing path)之外的多个组合逻辑网来验证数据取样完整性的电路的方块图;以及
图5、图6及图7为本发明的使用时钟门控来验证数据取样完整性的电路的方块图。
[符号说明]
20、81:电子装置
24:组合逻辑电路
28、48、56:正反器电路
32A:功能正反器
32B、102:保护正反器
36、64:延迟器件
40:时钟树逻辑
44、60、68、82、90、106:异或门
62:正反器
72:锁存器
76、118:与门
80:非门
84:关键时序路径
94、110:反相器(非门)
98、104:或门
114:时钟门收集块
D:数据信号
L1:第一锁存器
L11:锁存器
L2:第二锁存器
Q:输出
具体实施方式
本发明的实施例提供了用于保护电子装置引起时序违规(timing violations)的攻击(例如,故障注入攻击)的改进的方法和电路。本发明的实施例主要涉及故障注入的故障注入攻击,但是所揭露的技术对于防止各种其他类型的攻击同样有用。所揭露的技术可以在各种类型的电子装置中使用,例如存储装置和嵌式控制器。
在本发明的实施例中,电子装置包括组合逻辑电路。组合逻辑电路通常包括多个互连的逻辑级(logic stage),上述逻辑级会一起对功能数据执行某些指定的操作。组合逻辑电路接收在一个或多个输入上进行处理的功能数据,并在一个或多个输出上提供处理结果。
该电子装置还包括一个或多个正反器(FFs),其配置为以连续的时钟周期对组合逻辑电路的输出进行取样。这些正反器在这里被称为“功能正反器”,会在组合逻辑电路的输出处对功能信号的状态进行取样。功能正反器的取样输出可以在下一个时钟周期中用做组合逻辑电路的输入。
实际上,组合逻辑要花一些时间来处理输入(直到输出处理结果)。该时间在本文中称为传播延迟。为了正确操作,组合逻辑的传播延迟必须符合电子装置的建立时间(setup time)和保持时间(hold time)要求。否则,功能正反器会取样错误的值(此类事件有时称为“时序违规”)。在正常工作条件下(设计为装置要支持的条件),当满足建立时间和保持时间要求时,通过设计保证馈入功能正反器的组合逻辑输出稳定,并且在功能周围具有正确的处理结果正反器取样时间,以确保功能正反器正确取样结果。
在示例攻击情形中,攻击者会试图使功能正反器取样到错误、无意的值,例如,通过向功能正反器或组合逻辑中插入或引入故障,或通过在其正常操作之外操作电子装置来进行操作,例如通过篡改其时钟频率、温度或电压范围。
考虑一个示例场景,由于故障注入攻击,在组合逻辑电路的一个或多个输入出现突波(glitch)。此突波可包括例如小于1×10-9秒的短电压尖波或任何其他合适的突波。突波可进入组合逻辑电路,并传播到一个或多个输出。
在组合逻辑电路的给定输出上,若传播的突波效应恰巧与对所讨论的输出进行取样的功能正反器的取样时间一致,则功能正反器可能会取样到错误状态。然后,该错误状态将在下一个时钟周期中用做组合逻辑电路的输入。这样的事件可能导致组合逻辑电路发生故障。例如,在故障注入攻击的情况下,将组合逻辑电路强制进入异常状态可能会导致意外的信息泄漏。
为了保护电子装置免受攻击,在一些实施例中,电子装置包括一个或多个另外的正反器(称为“保护正反器”)和保护逻辑。每一保护正反器与功能正反器其中之一相关联,并每一保护正反器与相应的功能正反器对组合逻辑电路的同一输出进行取样,但是相对于功能正反器,保护正反器具有预定的时间偏移。通常将时间偏移设置为足够长的时间,以使功能正反器和对应的保护正反器中的至少一个具有较高的可能性会因为组合逻辑或任何其他注入故障传播的突波导致在取样时间附近的(组合逻辑)输出不稳定性,而撷取到不同的值。
保护逻辑配置为检测由功能正反器取样的输出与由保护正反器取样的各个时间偏移输出之间的差异。若检测到差异,则将保护逻辑配置为会启动适当的回应动作,例如发出警报。
本发明描述了双重取样方案的多种实施例。例如,可以通过延迟提供两个正反器之一的数据(组合逻辑输出)或时钟信号来实现时间偏移。在一些实施例中,功能正反器的其中一部分(例如,其中一个锁存器)在保护正反器中重复。在一些实施例中,保护逻辑合并了来自多对功能/保护正反器的可能的差异。
在一些实施例中,使用所揭露的技术仅保护功能正反器的选定的部分子集。在一些实施例中,功能正反器和相应的保护正反器配置为以不同的阀值电压取样,因此即使在两个取样时间都出现突波,保护正反器或功能正反器之一也会捕获到一个小突波(smallglitch)。在一些实施例中,保护正反器的输入相对于相应功能正反器的输入是反相的。
此外,本发明所揭露的技术不限于正反器,并且可以使用多种其他合适类型的状态取样器件来实施。在本发明的上下文中和在权利要求中,术语“状态取样器件”是指对组合逻辑电路的输出的当前状态进行取样的任何器件。状态取样器件可以包括例如锁存器,静态随机存取存储器(SRAM)单元或其他合适类型的存储单元。为了清楚起见,下面涉及正反器的描述会通过示例的方式来呈现。
在本发明所述的其他实施例中,保护逻辑从组合逻辑电路接收选择的信号。保护逻辑配置为在一个或多个信号中检测在时钟周期的预定部分期间发生的信号不稳定性,其中根据组合逻辑电路的设计,信号被期望是稳定的。回应于检测到的信号不稳定性,启动适当的回应动作。
本发明描述了上述技术的几种变体。在一些实施例中,保护逻辑回应于检测到的信号不稳定性而产生脉冲,并利用该脉冲来驱动锁存器的数据输入。锁存器的输出用于启动回应动作。在其他实施例中,保护逻辑回应于检测到的信号不稳定性而生成修改后的时钟信号,并利用修改后的时钟信号来驱动正反器的时钟输入。正反器输出用于启动回应动作。在示例实施例中,所选择的信号是从不在组合逻辑电路的关键时序路径上的网络获取的。
请参阅图1A,其为根据本发明的实施例用于验证数据取样完整性的电路的电子装置20的方块图。电子装置20可包括例如安全不变性存储器装置或安全嵌式控制器,其使用所揭露的技术被保护免受故障注入攻击。或者电子装置20可包括其中需要防止攻击的任何其他合适类型的电子装置。
通常,尽管不是必要的,但是电子装置20的各种器件包括在集成电路(IC)中。电子装置20通常包括用于执行其指定功能的各种输入和输出(未示出)。
在本示例中,电子装置20包括组合逻辑电路24,为简洁起见也被称为“组合逻辑”。组合逻辑电路24通常包括多个互连的逻辑级(例如,逻辑闸),它们一起对功能数据执行某些指定的操作。例如,在安全装置中,组合逻辑电路24可以执行诸如加密或解密,或安全签名或验证之类的密码操作的一部分或全部。然而,通常,所揭露的技术可以与执行任何其他适当功能的任何其他适当类型的组合逻辑一起使用。组合逻辑电路24包括一个或多个输入,用于接收用于处理的功能数据,以及一个或多个输出,用于输出处理结果。
电子装置20还包括一个或多个双取样的正反器电路28(dual-sampling FF,DFF)。每一正反器电路28在每一时钟周期中取样组合逻辑电路24的相应输出。每一正反器电路28的取样输出在下一个时钟周期中用做组合逻辑电路24的相应输入。每一正反器电路28使用时钟信号(CK)作为其取样时脉,时钟信号由适当的时钟产生电路生成并由时钟树逻辑40(clock tree logic)提供。时脉树逻辑可连接一时脉源(clock root)。
图1A底部为每一正反器电路28的内部结构。将由正反器电路28取样的组合逻辑电路24的输出表示为Din(图1A与图1B标示为D_in)。将反馈作为组合逻辑电路24的输入的正反器电路28的取样输出表示为Qout(图1A与图1B标示为Q_out)。
在实施例中,正反器电路28包括功能正反器32A和保护正反器32B。在本示例中,两个正反器都是延迟正反器,尽管在替代实施例中也可以使用其他合适的正反器类型。功能正反器(DFF)32A配置为对Din取样,以便在每一CK周期产生Qout。保护正反器(DFF)32B配置为对Din的延迟复制进行取样。
在示例中,正反器电路28包括将Din延迟一预定时间偏移(predefined timeoffset)的延迟器件(DLY)36。保护正反器32B在延迟器件36的输出处对延迟的Din进行取样。功能正反器32A和保护正反器32B都使用相同的时钟信号(CK)作为其取样时脉。如上所述,通常将延迟器件36的延迟设置为足够长,使功能正反器32A和保护正反器32B在发生攻击时取样不同的值。另一方面,应避免过长的延迟,因为较长的延迟器件会占用面积,并且由于延迟会降低正反器电路的建立时间或保持时间容限。在实施例中,延迟器件36的延迟在0.5至3×10-9秒的范围内,也可以使用任何其他合适的延迟值。
异或门(XOR gate)44在功能正反器32A和保护正反器32B的取样输出(Q)之间执行逻辑异或运算。异或门44的输出用做警报信号。
若Din上没有故障,则功能正反器32A和保护正反器32B的取样输出将相同,因此警报信号将保持低电平。若Din在正反器取样时间之前不久改变(比延迟器件36的延迟短),则通常功能正反器32A和保护正反器32B之一将在改变之后取样该值,而另一个正反器将在改变之前取样该值。若两个正反器取样相同的值,则警报信号将保持低电平。若功能正反器32A和保护正反器32B取样不同的值,则警报信号将变高电平,表明数据取样完整性受到损害。因此,在示例中,异或门44用做保护逻辑,其检测功能正反器32A和保护正反器32B的取样输出之间的差异。
在图1A的示例中,延迟被施加到由保护正反器(32B)取样的数据信号(Din),而功能正反器(32A)取样非延迟的数据信号(Din)。然而,也可以将延迟应用于由功能正反器(32A)取样的数据信号,在这种情况下,保护正反器(32B)将取样非延迟的数据信号。
在图1A的示例中,所有功能正反器由各自的保护正反器保护。在替代实施例中,仅功能正反器的选定子集以这种方式被保护。
图1B为根据本发明实施例的用于使用一对具有相对延迟的正反器(FFs)来验证数据取样完整性的替代正反器电路的方块图。可以使用图1B的电路代替上面图1A的正反器电路28。本实施例与图1A的实施例的不同之处在于,通过延迟时钟信号而不是数据信号来实现时间偏移。
在图1B的实施例中,功能正反器32A和保护正反器32B都取样非延迟数据信号Din(组合逻辑电路24的输出之一)。延迟器件36被配置为延迟时钟信号(CK)。功能正反器32A由无延迟时钟信号提供时钟,而保护正反器32B由延迟时钟信号(延迟器件36的输出)提供时钟。在替代实施例中,功能性正反器32A可以用延迟的时钟信号作为其取样时脉,在这种情况下,保护正反器32B是用非延迟的时钟信号作为其取样时脉。
在一些实施例中,对于一组受保护的正反器结构,例如图1B和图2B的结构,一次产生延迟的时钟。也就是单一延迟器件36可以服务于多个受保护的正反器。
在某些情况下,由于到异或门44输出的时序传播差异(即使在正确的电路操作中),警报信号可能会在功能正反器32A信号Q和保护正反器32B信号Q的过渡时间附近瞬时判定。因此,在一些实施例中,可以用附加的正反器对警报信号进行取样,以过滤这种故障并防止错误警报。
图2A为根据本发明的另一实施例的用于验证数据取样完整性的正反器电路48的方块图。正反器电路48可以例如在电子装置20中使用,以代替上面的图1A的正反器电路28。该实施例以及下面的图2B的实施例表明,为了实现相应的保护状态取样器件,并非必须复制整个功能状态取样器件。
在图2A的示例中,功能状态取样器件包括一个正反器,正反器包含两个锁存器,第一锁存器L1驱动第二锁存器L2。第一锁存器L1对数据信号D(组合逻辑电路24的输出之一)进行取样。第二锁存器L2对第一锁存器L1的输出进行取样,并输出电路48的取样输出Q。第一锁存器L1的启用(E)输入由时钟信号的反相形式驱动。第二锁存器L2的启用输入由时钟信号的两次反相版本驱动。
在本示例中,保护状态取样器件包括表示为L11的锁存器。锁存器L11由与第一锁存器L1相同(反相)的时钟信号启用,并对数据信号D的延迟复制进行取样。数据信号的延迟复制由延迟器件36产生。异或门44对第一锁存器L1和锁存器L11的取样输出进行异或。异或门44的输出用做警报信号。
在图2A的示例中,异或门44用做保护逻辑,其检测功能和保护状态取样器件的取样输出之间的差异。
图2B为根据本发明的另一实施例的用于验证数据取样完整性的正反器电路56的方块图。正反器电路56可以例如在电子装置20中使用,以代替上面的图1A的双取样正反器电路28。本实施例与图2A的实施例的不同之处在于,通过延迟时钟信号而不是数据信号来实现时间偏移。
在图2B的实施例中,第一锁存器L1和锁存器L11都取样非延迟的数据信号D(组合逻辑电路24的输出之一)。延迟器件36被配置为延迟(反相的)时钟信号。第一锁存器L1由非延迟(反相的)时钟信号启用,而锁存器L11由延迟(反相的)时钟信号(延迟器件36的输出)启用。在一个替代实施例中,第一锁存器L1由延迟(反相的)时钟信号启用,而锁存器L11由非延迟(反相的)时钟信号启用。
注意,在图2A和图2B中,锁存器L11仅在时钟信号(CLK)为高电平时保持其输出稳定,以过滤错误警报检测,例如可以通过时钟信号(CLK)下降的边缘来对警报进行取样。多个警报信号可以例如通过或门合并,并将一个取样器件用于一组警报信号。
图1A、图1B、图2A和图2B所示的电子装置和电路的结构是纯粹为了概念清楚起见而描绘的示例。在替代实施例中,可以使用任何其他合适的。
例如,在上述实施例中,功能状态取样器件和相应的保护状态取样器件以相同的阀值电压取样数据信号。在替代实施例中,功能状态取样器件可以配置为具有比相应的保护状态取样器件更低的阀值电压。
在一些实施例中,图1A、图1B、图2A和图2B任何描述的实施例可以被实施为单一编程库单元(single library cell),代替常规正反器单元(regular FF cell)。在其他实施例中,这些电路可以被实现为分立器件(discrete device)(如图1A、图1B、图2A和图2B中所示)。
在涉及在功能正反器和保护正反器取样的数据之间插入相对延迟的任何揭露技术中,可以将延迟应用于保护正反器取样的数据信号(在这种情况下,功能正反器对非延迟数据信号)或功能正反器取样的数据信号(在这种情况下,保护正反器会取样未延迟的数据信号)。
图3A和图3B为根据本发明的实施例的包括保护逻辑电路的电子装置的保护装置,保护逻辑电路用于通过检测从组合逻辑网获取的信号中的信号不稳定性来验证数据取样的完整性。
图3A的示例电路合并了来自组合逻辑电路的多个选择的信号。图3B的保护逻辑电路检查是否在时钟周期的预定部分内发生信号不稳定性,其中根据组合逻辑电路的设计,该等信号被期望是稳定的。在本文中,术语“信号不稳定”和“信号改变”是指从一种逻辑状态到另一种逻辑状态的转变,即,从“低”到“高”的转变,反之亦然。
在图3A所示的中,正反器62对组合逻辑电路24的输出进行取样。每一正反器62在每一时钟周期中对组合逻辑电路24的相应输出进行取样,并且每一正反器62的取样输出被用做正反器的相应输入。在下一个时钟周期中的组合逻辑电路24。每一正反器62由表示为CK的时钟信号提供时钟,该时钟信号由适当的时钟产生电路生成并由时钟树逻辑40提供。典型的电路也具有输入和输出,但是为简化起见,在图中将其省略。
另外,保护逻辑包括异或门60,异或门60在来自组合逻辑电路24的多个信号之间执行逻辑异或,以便产生合并的“异或”输出。该装置还从时钟树逻辑40输出一个表示为“脉冲”的控制信号。“脉冲”信号是从时钟信号中得出的,并定义了时钟周期中“异或”输出信号(异或门60的输出)的一部分,可以预期由正反器62进行取样是稳定的。该信号可以被图3B和图3C的电路使用,以检测在禁止的时间窗口内异或信号是否发生变化。可以例如相对于功能状态取样器件的取样时间,或者相对于具有时钟信号的周期性的任何其他合适的参考时间来定义时钟周期的一部分。
图3B的电路从图3A的电路接收合并的异或信号和“脉冲”信号。延迟器件64的延迟由延迟合并异或信号表示DLY1。异或门68对合并的异或信号的延迟和非延迟复制进行异或。与门(AND gate)76在异或门68的输出与“脉冲”信号之间产生逻辑AND。与门76的输出设置锁存器72(或其他合适的保护状态取样器件)的“SET”数据输入。非门(NOT gate)80使“脉冲”信号反相,并用否定的“脉冲”信号驱动锁存器72的“RESET”输入。锁存器72的输出用做警报信号。
通过这种,仅当(i)在一个或多个组合逻辑24输出中检测到变化(或其他检测到的信号,如图4所示),并且(ii)该变化发生在要求数据信号(组合逻辑电路24的输出)稳定的时间间隔内。
图3C为根据本发明的实施例的图3B的保护逻辑电路的替代实施方式的方块图。在上面的图3B中,锁存器72在每个时钟周期被定期重置,亦即,警报信号被清除,并且故障检测过程在每个周期会自动重复。在图3C中,当检测到故障时,警报信号将保持高电平,直到外部“RESET”信号有效为止。
图3A至图3C仅以示例的方式示出。在替代实施例中,可以使用任何其他合适的合并方案。
图4为根据本发明实施例的电子装置81的方块图,该电子装置81包括用于使用脱离关键时序路径的多个组合逻辑网来验证数据取样完整性的电路。示出了组合逻辑电路24分解成几个部分(图4中绘制为椭圆形的部分)。虚线的关键时序路径84示出了通过组合逻辑电路24的关键时序路径。
在本示例中,选择三个表示为N1、N2和N3的网络进行保护。被认为是保护逻辑一部分的异或门82对从网络N1、N2和N3获取的信号进行异或。异或门82的输出用做异或信号,该异或信号输入到保护电路,例如上面的图3B或图3C的电路或下面的图5至图7。异或门82的作用类似于以上图3A的异或门60的作用。
在各种实施例中,可以选择电子装置81的任何合适的网络来进行保护。特别地,选择不在关键时序路径84上的网络是有利的。通过这种选择,由保护方案引起的建立时间和/或保持时间余量的减少是可以容忍的。保护方案不会降低电子装置81的整体性能(例如,最大可达到的时钟速率)。
图3A至图3C所示的电子装置和电路的结构是纯粹为了概念清楚起见而描绘的示例。在替代实施例中,可以使用任何其他合适的。
例如,尽管以上示例电路从组合逻辑电路24中的多个网络收集信号,但是所揭露的技术也可以应用于单一网络。在后一种情况下,可以省略异或门60。
在各种实施例中,由上述各种电路产生的“警报”信号可以用于在检测到对故障进行取样时启动或执行任何适当的回应动作。例如,电子装置20可以向主机或人类用户发出警报,关闭一些或全部装置电路或功能,或者擦除敏感数据。
图5和图6为根据本发明实施例的用于使用时钟门控(cloak gating)来验证数据取样完整性的保护逻辑电路的方块图。图5和图6的电路类似于上面的图3B和图3C,它们检测组合逻辑电路24的选定网中的信号不稳定性(例如故障),这种不稳定性是在时钟周期的一部分中产生的,那些信号被期望是稳定的。然而,不同于图3B和图3C中,图5和图6通过正反器的门控时钟输入而不是正反器的数据输入来触发警报。
请参阅图5。图5的电路包括异或门90,异或门90在从选定的输出和/或组合逻辑电路24的内部网络获取的两个或多个信号之间执行逻辑异或,以产生合并的“异或”输出。本示例示出了表示为“1”、“2”和“3”的三个信号,但是所揭露的技术可以与任何其他合适数量的信号一起使用。下文中的图7进一步提供了用于处理从大量网络中获取的大量信号的其他方案。
延迟器件64的延迟由延迟合并异或信号表示DLY1。异或门68对异或信号的延迟和非延迟复制进行异或。反相器(非门)94将异或门68的输出颠倒。直到这一点的电路都可以被视为“信号变化检测器”,每当在选定的网络之一(“1”、“2”或“3”)中发生信号变化(例如,由攻击引起的故障)时,则反相器(非门)94将输出长度为DLY1的脉冲。
在本案实施例中,仅当在时钟信号(CLK)为低(“0”)时发生检测到的信号变化时,才应该触发警报。本示例中的假设是从“低”到“高”(时钟上升)的时钟转换上执行取样,应选择信号以便在正常操作下,当时钟为“低”时,它们将保持稳定。
为了仅检测感兴趣的信号变化,或门(OR gate)98输出反相器(非门)94的输出与时钟信号(CLK)之间的逻辑OR(由适当的时钟产生电路产生)。或门98的输出处的信号在本文中称为修改的时钟信号。修改后的时钟信号用于为保护正反器102提供时钟。保护正反器102的数据输入(D)始终设置为“高”。通常在复位时使用RST线将保护正反器102初始化为“0”。
保护正反器102的输出(Q)(表示为“TOGGLE(双态触变)”)用于检测攻击,如下所示:或门98的输出(因此保护正反器102的时钟CK)包括时钟信号(CLK)。另外,若在时钟信号(CLK)为“低”的同时所选网络之一(“1”,“2”或“3”)中发生信号变化(例如,由攻击引起的故障),则备用脉冲长度DLY1的“0”将出现在或门98的输出上(并因此出现在保护正反器102的时钟CK上)。实际上,在图5的示例中,在正常工作条件下,或门98的输出应始终保持“高电平”,并且不希望出现时钟转换。因此,任何时钟上升边缘都可以用做攻击指示。
在正常条件下(亦即,当网络“1”、“2”和“3”在时钟信号(CLK)为“低”时信号不变时),保护正反器102的TOGGLE(双态触变)输出始终为“低”。当在时钟信号(CLK)为“低”时,在网络“1”、“2”和“3”中的一个或多个中发生信号变化时,保护正反器102的TOGGLE(双态触变)输出将转换为“高”。因此,TOGGLE(双态触变)可用做表示可疑攻击的警报信号。
在一些实施例中,上述电路被重复多次,其中每个电路处理组合逻辑电路24的一组不同的网络。或门104对多个电路的切换输出进行或运算。或门104的输出用做警报信号。
请参阅图6。图6的电路在门控保护正反器102的时钟CK的方式上类似于上面的图5的电路,亦即,电路的一部分在异或门90之间并且包括异或门90。与图5的电路不同,在图6中,保护正反器102的输出(Q)通过反相器(非门)110被反馈到保护正反器102的数据输入(D)。参照图5,在正常条件下(亦即,当网络“1”、“2”和“3”的信号在时钟信号(CLK)为“低”时没有变化时),保护正反器102的TOGGLE(双态触变)输出始终为“低”。当在时钟信号(CLK)为“低”时,在网络“1”、“2”和“3”中的一个或多个中发生信号变化时,保护正反器102的TOGGLE(双态触变)输出将转换为“高”。因此,该TOGGLE(双态触变)可用做表示可疑攻击的警报信号。
在图6的替代中,可以省略反相器(非门)94。在此替代中,保护正反器102的TOGGLE(双态触变)输出在施加到保护正反器102的CK的每个时钟脉冲上切换(反转极性在“高”和“低”之间)。
在正常情况下(亦即,当网络为“1”、“2”和“3”的信号在时钟信号(CLK)为“低”时不变)时,保护正反器102的TOGGLE(双态触变)输出将在时钟信号(CLK)的每个周期上切换。此外,当时钟信号(CLK)为“低”时,在网络“1”、“2”和“3”中的一个或多个网络中发生信号变化时,保护正反器102的TOGGLE(双态触变)输出也将切换(由于在示波器上出现额外的脉冲)。异或门68的输出并传播到CK。TOGGLE(双态触变)信号的定期周期性切换模式中的此更改可用于检测攻击。
同样在图6中(包括省略了图6中的替代配置反相器(非门)110),上述电路可以重复多次,每个电路处理组合逻辑电路24的一组不同的网络。异或门106可以对多个电路的TOGGLE(双态触变)输出进行异或。然后,异或门106的输出可用做警报信号。
图7为根据本发明实施例的用于使用时钟门控来验证数据取样完整性的电路的方块图。图7的电路包括多个时钟门收集块(clock gate collection blocks)114。每个时钟门收集块114的结构与上面图5或图6的电路的时钟门控部分相似(在异或门90和或门98之间的电路部分,但没有保护正反器102)。
与门118输出多个时钟门收集块114的输出的逻辑AND,与门118的输出用于为单个保护正反器102的CK输入提供时钟。图7的合并方案在管芯方面是有效的面积,因为它减少了正反器的数量。
举例来说,图7的电路使用图6的正反器方案(其中,保护正反器102的输出Q经由反相器(非门)110反馈到输入D)。然而,可替代地,也可以使用图5的方案(其中保护正反器102的输入D保持恒定)。当省略了图6中的替代配置反相器(非门)110,应该将与门118替换为或门。
图5至图7所示的电子设备和电路的配置仅出于概念清楚的目的描绘的示例。在替代实施例中,可以使用任何其他合适的。
例如,如上所述,图5至图7适用于从“低”到“高”(时钟上升)的时钟转变上取样的电路,这意味着当时钟为“低”时,信号将保持稳定。但是,该选择仅是示例性的。所揭露的电路可以以直接的方式适于在从“高”到“低”(时钟下降)的时钟转变上取样的电路中的操作,其中期望当时钟为“高”时信号是稳定的。
作为另一示例,尽管图5和图6从组合逻辑电路24中的多个网络收集信号,但是所揭露的技术也可以应用于单个网络。在后一种情况下,可以省略异或门90。
在各种实施例中,可以使用任何适当的硬体来实现任何揭露的电子装置和电路,例如使用一个或多个分立器件,一个或多个特定应用集成电路(ASICs)和/或一个或多个现场可编程门阵列(FPGAs)。
以上所述的实施例仅为说明本发明的技术思想及特点,其目的在使所属技术领域具有通常知识者能够了解本发明的内容并据以实施,当不能以之限定本发明的权利要求范围,即大凡依本发明所揭示的精神所作的均等变化或修饰,仍应涵盖在本发明的权利要求范围内。
Claims (16)
1.一种电子装置,其特征在于,包含:
一组合逻辑电路,包含一个或多个输出;
一个或多个功能状态取样器件,配置用以取样所述组合逻辑电路的所述输出;
一个或多个保护状态取样器件,分别与所述功能状态取样器件相联结,每一所述保护状态取样器件与其对应的功能状态取样器件对组合逻辑电路的同一输出进行取样,但是相对于功能状态取样器件,所述保护状态取样器件具有一预定时间偏移;以及
一保护逻辑,配置用以检测由所述功能状态取样器件取样的所述输出与由所述保护状态取样器件取样的每一相同输出之间的差异,并回应于所述差异而启动一回应动作。
2.根据权利要求1所述的电子装置,其特征在于,还包括一延迟器件,配置用以延迟所述组合逻辑电路的输出以便产生一延迟输出,其中所述功能状态取样器件配置为取样所述输出和所述延迟输出中的一个,以及其中一相应的保护状态取样器件配置为取样所述输出和所述延迟输出中的另一个。
3.根据权利要求1所述的电子装置,其特征在于,还包括一延迟器件,配置用以延迟一时钟信号以便产生一延迟时钟信号,其中所述功能状态取样器件配置为使用所述时钟信号和所述延迟时钟信号之一来作为其取样时脉,以及其中一相应的保护状态取样器件配置为使用另一所述时钟信号和所述延迟时钟信号来作为其取样时脉。
4.根据权利要求1所述的电子装置,其特征在于,所述功能状态取样器件和相应的保护状态取样器件包括正反器。
5.根据权利要求1所述的电子装置,其特征在于,所述功能状态取样器件包括驱动一第二锁存器的一第一锁存器,并且相应的保护状态取样器件包括与所述第一锁存器相关联的一第三锁存器。
6.根据权利要求1所述的电子装置,其特征在于,所述保护逻辑配置用以合并在两个或更多个所述功能状态取样器件与两个或更多个所述保护状态取样器件之间检测到的多重差异,并且回应于所述差异来启动所述回应动作。
7.根据权利要求1所述的电子装置,其特征在于,所述保护逻辑在仅当检测到的所述差异在一时钟周期的一预定部分期间发生时才启动所述回应动作。
8.根据权利要求1所述的电子装置,其特征在于,所述功能状态取样器件配置为以一第一阀值电压对所述组合逻辑电路的一输出进行取样,以及其中相应的保护状态取样器件配置为以高于所述第一阀值电压的一第二阀值电压对所述组合逻辑电路的所述相同输出进行取样。
9.一种用于保护电子装置的方法,其特征在于,所述方法包括:
使用一个或多个相应的功能状态取样器件来取样一组合逻辑电路的一个或多个输出;
使用分别与所述功能状态取样器件相关联的一个或多个保护状态取样器件来取样一个或多个输出;其中每一所述保护状态取样器件与其对应的功能状态取样器件对组合逻辑电路的同一输出进行取样,但是相对于所述功能状态取样器件,保护状态取样器件具有一预定时间偏移;以及
检测由所述功能状态取样器件取样的所述输出与由所述保护状态取样器件取样的每一所述输出之间的一差异,并且回应于所述差异而启动一回应动作。
10.根据权利要求9所述的方法,其特征在于,取样一个或多个输出包括延迟所述组合逻辑电路的一输出以便产生一延迟输出,由所述功能状态取样器件取样每一所述输出和所述延迟输出,以及由一相应的保护状态取样器件取样另一所述输出和所述延迟输出。
11.根据权利要求9所述的方法,其特征在于,取样一个或多个输出包括延迟一时钟信号以便产生一延迟时钟信号,由所述时钟信号和所述延迟时钟信号之一作为所述功能状态取样器件的取样时脉,以及由另一所述时钟信号和所述延迟时钟信号作为所述相应的保护状态取样器件的取样时脉。
12.根据权利要求9所述的方法,其特征在于,所述功能状态取样器件和所述相应的保护状态取样器件包括正反器。
13.根据权利要求9所述的方法,其特征在于,所述功能状态取样器件包括驱动一第二锁存器的一第一锁存器,并且所述相应的保护状态取样器件包括与所述第一锁存器相关联的一第三锁存器。
14.根据权利要求9所述的方法,其特征在于,所述保护逻辑配置为合并在两个或更多个功能状态取样器件与两个或更多个保护状态取样器件之间检测到的多个差异,并且回应于所述差异来启动所述回应动作。
15.根据权利要求9所述的方法,其特征在于,所述保护逻辑配置为仅当检测到的所述差异在一时钟周期的一预定部分期间发生时才启动所述回应动作。
16.根据权利要求9所述的方法,其特征在于,所述功能状态取样器件配置为以一第一阀值电压对所述组合逻辑电路的一输出进行取样,以及其中所述相应的保护状态取样器件配置为以高于所述第一阀值电压的一第二阀值电压对所述组合逻辑电路的相同输出进行取样。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/571,242 US11321457B2 (en) | 2019-09-16 | 2019-09-16 | Data-sampling integrity check by sampling using flip-flops with relative delay |
US16/571,242 | 2019-09-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112507400A true CN112507400A (zh) | 2021-03-16 |
CN112507400B CN112507400B (zh) | 2024-05-24 |
Family
ID=74869641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010484912.6A Active CN112507400B (zh) | 2019-09-16 | 2020-06-01 | 电子装置及用于保护电子装置的方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11321457B2 (zh) |
JP (1) | JP6968234B2 (zh) |
CN (1) | CN112507400B (zh) |
TW (1) | TWI760694B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11409323B2 (en) * | 2019-12-20 | 2022-08-09 | Arm Limited | Delay monitoring scheme for critical path timing margin |
US11567855B1 (en) * | 2020-09-09 | 2023-01-31 | Two Six Labs, LLC | Automated fault injection testing |
TWI783309B (zh) * | 2020-11-25 | 2022-11-11 | 瑞昱半導體股份有限公司 | 電路設計方法和相關電路 |
GB2603549B (en) * | 2021-05-21 | 2023-03-15 | Nordic Semiconductor Asa | Physical security protection for integrated circuits |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050218401A1 (en) * | 2004-03-31 | 2005-10-06 | Stmicroelectronics, Sa | Device for detecting an attack against an integrated circuit chip |
US20140132293A1 (en) * | 2012-11-15 | 2014-05-15 | Freescale Semiconductor, Inc. | Integrated circuit with degradation monitoring |
US20140132315A1 (en) * | 2012-11-15 | 2014-05-15 | Puneet Sharma | Integrated circuit with degradation monitoring |
US20160253524A1 (en) * | 2013-07-16 | 2016-09-01 | Mitsubishi Electric Corporation | Semiconductor device |
US20170344438A1 (en) * | 2016-05-24 | 2017-11-30 | Virginia Polytechnic Institute And State University | Microprocessor fault detection and response system |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS592057B2 (ja) | 1979-02-07 | 1984-01-17 | 株式会社日立製作所 | エラ−訂正・検出方式 |
US5493242A (en) | 1993-06-30 | 1996-02-20 | Vlsi Technology, Inc. | Status register with asynchronous read and reset and method for providing same |
DE19529434B4 (de) | 1995-08-10 | 2009-09-17 | Continental Teves Ag & Co. Ohg | Microprozessorsystem für sicherheitskritische Regelungen |
US7121639B2 (en) * | 2002-12-02 | 2006-10-17 | Silverbrook Research Pty Ltd | Data rate equalisation to account for relatively different printhead widths |
US7747936B2 (en) | 2004-03-02 | 2010-06-29 | Stmicroelectronics Sa | Device for protection against error injection into an asynchronous logic block of an elementary logic module |
US7966509B2 (en) * | 2006-05-30 | 2011-06-21 | Nvidia Corporation | System and method for performing low power dynamic trimming |
EP1993057B1 (fr) | 2007-05-18 | 2010-10-20 | STMicroelectronics (Rousset) SAS | Détection d'une perturbation d'état d'une bascule d'un circuit électronique |
FR2935059B1 (fr) * | 2008-08-12 | 2012-05-11 | Groupe Des Ecoles De Telecommunications Get Ecole Nationale Superieure Des Telecommunications Enst | Procede de detection d'anomalies dans un circuit de cryptographie protege par logique differentielle et circuit mettant en oeuvre un tel procede |
FR2946787A1 (fr) | 2009-06-16 | 2010-12-17 | St Microelectronics Rousset | Procede de detection d'une attaque par injection de faute d'un dispositif de memoire, et dispositif de memoire correspondant |
US7977965B1 (en) | 2010-03-12 | 2011-07-12 | International Business Machines Corporation | Soft error detection for latches |
JP2014038294A (ja) * | 2012-08-20 | 2014-02-27 | Waseda Univ | 故障攻撃検出回路および暗号処理装置 |
US9122891B2 (en) | 2013-08-12 | 2015-09-01 | Microsoft Technology Licensing, Llc | Functional timing sensors |
US9523736B2 (en) | 2014-06-19 | 2016-12-20 | Nuvoton Technology Corporation | Detection of fault injection attacks using high-fanout networks |
US10013581B2 (en) | 2014-10-07 | 2018-07-03 | Nuvoton Technology Corporation | Detection of fault injection attacks |
US10289840B2 (en) | 2017-06-02 | 2019-05-14 | Silicon Laboratories Inc. | Integrated circuit with tamper protection and method therefor |
EP3506548A1 (en) * | 2017-12-27 | 2019-07-03 | Secure-IC SAS | Quantitative digital sensor |
TWI663837B (zh) * | 2018-03-13 | 2019-06-21 | 群聯電子股份有限公司 | 鎖相迴路電路校正方法、記憶體儲存裝置及連接介面電路 |
US10305479B1 (en) * | 2018-06-12 | 2019-05-28 | Nxp B.V. | Fault attack protection against synchronized fault injections |
US10649487B2 (en) | 2018-07-05 | 2020-05-12 | Microchip Technology Incorporated | Fail-safe clock monitor with fault injection |
US11263322B2 (en) * | 2018-08-27 | 2022-03-01 | Infineon Technologies Ag | Secure x-modular redundancy |
US11355457B2 (en) * | 2019-06-19 | 2022-06-07 | Nxp B.V. | Fully digital glitch detection mechanism with process and temperature compensation |
-
2019
- 2019-09-16 US US16/571,242 patent/US11321457B2/en active Active
-
2020
- 2020-02-13 TW TW109104591A patent/TWI760694B/zh active
- 2020-06-01 CN CN202010484912.6A patent/CN112507400B/zh active Active
- 2020-06-22 JP JP2020107357A patent/JP6968234B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050218401A1 (en) * | 2004-03-31 | 2005-10-06 | Stmicroelectronics, Sa | Device for detecting an attack against an integrated circuit chip |
US20140132293A1 (en) * | 2012-11-15 | 2014-05-15 | Freescale Semiconductor, Inc. | Integrated circuit with degradation monitoring |
US20140132315A1 (en) * | 2012-11-15 | 2014-05-15 | Puneet Sharma | Integrated circuit with degradation monitoring |
US20160253524A1 (en) * | 2013-07-16 | 2016-09-01 | Mitsubishi Electric Corporation | Semiconductor device |
US20170344438A1 (en) * | 2016-05-24 | 2017-11-30 | Virginia Polytechnic Institute And State University | Microprocessor fault detection and response system |
Also Published As
Publication number | Publication date |
---|---|
JP6968234B2 (ja) | 2021-11-17 |
JP2021047845A (ja) | 2021-03-25 |
TW202113641A (zh) | 2021-04-01 |
CN112507400B (zh) | 2024-05-24 |
US20210081528A1 (en) | 2021-03-18 |
US11321457B2 (en) | 2022-05-03 |
TWI760694B (zh) | 2022-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112507400B (zh) | 电子装置及用于保护电子装置的方法 | |
CN112507396B (zh) | 使用门控时钟进行数据取样完整性检查的电子装置及方法 | |
US9523736B2 (en) | Detection of fault injection attacks using high-fanout networks | |
US11100224B2 (en) | Interference detection device and detection sensitivity adjusting method thereof | |
TWI521378B (zh) | 偵測錯誤注入的裝置與方法 | |
US8466727B2 (en) | Protection against fault injections of an electronic circuit with flip-flops | |
Haider et al. | Advancing the state-of-the-art in hardware trojans detection | |
US20070162798A1 (en) | Single event upset error detection within an integrated circuit | |
JP2002535793A (ja) | 集積回路上の機密モジュールの統合 | |
WO2013057707A1 (en) | A method and circuit structure for suppressing single event transients or glitches in digital electronic circuits | |
CN113835012A (zh) | 定时错误检测和校正电路 | |
Elakkumanan et al. | Time redundancy based scan flip-flop reuse to reduce SER of combinational logic | |
Palframan et al. | Time redundant parity for low-cost transient error detection | |
CN116089937A (zh) | 一种可抵御多种故障注入的全数字传感器 | |
Zhang et al. | A digital and lightweight delay-based detector against fault injection attacks | |
Bastos et al. | How to sample results of concurrent error detection schemes in transient fault scenarios? | |
US20230027416A1 (en) | Method for detecting perturbations in a logic circuit and logic circuit for implementing this method | |
Bastos et al. | A new bulk built-in current sensor-based strategy for dealing with long-duration transient faults in deep-submicron technologies | |
US9665421B2 (en) | Safe secure bit storage with validation | |
Alghareb et al. | Soft error effect tolerant temporal self-voting checkers: Energy vs. resilience tradeoffs | |
Wang et al. | A low-cost fault injection attack resilient fsm design | |
Deshpande | Hardware fault attack detection methods for secure embedded systems | |
Manich et al. | A highly time sensitive XOR gate for probe attempt detectors | |
Vasile et al. | Improved tamper detection circuit based on linear-feedback shift register | |
Askeland et al. | Who Watches the Watchers: Attacking Glitch Detection Circuits |
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 |