CN112507396B - 使用门控时钟进行数据取样完整性检查的电子装置及方法 - Google Patents

使用门控时钟进行数据取样完整性检查的电子装置及方法 Download PDF

Info

Publication number
CN112507396B
CN112507396B CN202010294538.3A CN202010294538A CN112507396B CN 112507396 B CN112507396 B CN 112507396B CN 202010294538 A CN202010294538 A CN 202010294538A CN 112507396 B CN112507396 B CN 112507396B
Authority
CN
China
Prior art keywords
signal
clock
flip
protection
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.)
Active
Application number
CN202010294538.3A
Other languages
English (en)
Other versions
CN112507396A (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 CN112507396A publication Critical patent/CN112507396A/zh
Application granted granted Critical
Publication of CN112507396B publication Critical patent/CN112507396B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • 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
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic 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/21EXCLUSIVE-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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
    • H03L7/08Details of the phase-locked loop
    • H03L7/10Details of the phase-locked loop for assuring initial synchronisation or for broadening the capture range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Manipulation Of Pulses (AREA)
  • Logic Circuits (AREA)

Abstract

本发明提供了一种使用门控时钟进行数据取样完整性检查的电子装置及方法,该电子装置包括时钟产生电路,组合逻辑电路,一个或多个功能状态取样元件以及保护逻辑。时钟产生电路配置为产生具有周期性时钟周期的时钟信号。组合逻辑电路包括多个内部网路和一个或多个输出。功能状态取样元件配置为根据时钟信号周期性地取样组合逻辑电路的各个输出。保护逻辑配置为从组合逻辑电路的内部网路或输出接收一个或多个信号,以在一个或多个接收到的信号中检测在周期时钟周期的预定部分期间发生的信号不稳定性。根据组合逻辑电路的设计,该些信号被期望是稳定的,并且回应于检测到的信号不稳定性而初始化回应动作。

Description

使用门控时钟进行数据取样完整性检查的电子装置及方法
技术领域
本发明涉及电子电路中的数据安全性,尤其涉及用于防止故障注入攻击的方法和系统。
背景技术
故障注入攻击是用于从安全电子电路(例如密码电路)存取、分析或提取信息的一系列技术。故障注入攻击通常包括例如通过物理接触信号线,通过施加大功率激光或电磁脉冲,或在电源或其他外部接口上引起故障。预计该故障会导致电路输出敏感信息,或以其他方式帮助攻击者穿透电路或其存储的信息。
用于检测和/或减轻故障注入攻击的各种技术在本领域中是已知的。例如,美国专利申请公开2009/0315603描述了一种用于从电子电路的多个第一正反器的组中检测至少一个第一正反器的状态的扰动的方法和电路。将该组中的第一正反器的各个输出与其功能目的无关地组合以提供信号及其反相信号,藉以触发两个第二正反器,将其数据输入强制为相同状态,第二正反器的各个输出正反器组合在一起以提供检测结果。至少对于该组中的第一正反器中的一个的每一触发沿包括脉冲的脉冲信号初始化第二正反器。
作为另一个例子,美国专利7,977,965描述了一种用于数字IC中的软错误检测的系统和方法。系统包括耦合到锁存器的观察电路,电路能够在锁存器的状态改变时作出回应。系统还包括提供给锁存器和观察电路的同步时钟。对于锁存器,时钟定义了一个时间窗口,在此期间内阻止了锁存器接收数据,并且时钟以同步方式在观察电路中启用了回应。时钟以这样的方式同步:当防止锁存器接收数据时,仅在窗口内启用电路的回应。
美国专利申请公开2005/0235179描述了一种逻辑电路,逻辑电路包括逻辑模组,逻辑模组包括功能同步正反器,功能同步正反器接收包括多个并行位的功能结果并提供同步结果。用于检查功能正反器的完整性的模组包括:第一编码块,其接收功能结果并提供第一代码;第二编码块,其接收同步结果并提供第二代码;检查同步正反器,其接收第一结果。编码和提供第三编码,以及比较器,用于将第二编码与第三编码进行比较并提供第一误差信号。
发明内容
本发明的实施例提供一种电子装置,电子装置包括组合逻辑电路、一个或多个功能状态取样元件、一个或多个保护状态取样元件以及保护逻辑。组合逻辑电路具有一个或多个输出。功能状态取样元件配置为对组合逻辑电路的各个输出进行取样。保护状态取样元件分别与功能状态取样元件相关联,每一保护状态取样元件配置为对组合逻辑电路的输出进行取样,以获取与相应功能状态取样元件相同的输出,但是具有相对于预定的时间偏移功能状态取样元件。保护逻辑配置为检测由功能状态取样元件取样的输出与由保护状态取样元件取样的各个输出之间的差异,并回应于该差异而初始化回应动作。
在本案实施例中,电子装置还包括延迟元件,其配置为延迟组合逻辑电路的输出以便产生延迟输出,功能状态取样元件配置为取样每一输出和延迟输出,以及相应的保护状态取样元件配置为取样另一输出和延迟输出。
在其他实施例中,电子装置还包括配置为延迟时钟信号以便产生延迟时钟信号的延迟元件,功能状态取样元件配置为由时钟信号和延迟时钟信号之一来计时,并且相应的保护状态取样元件配置为由时钟信号和延迟时钟信号中的另一个来计时。
在一实施例中,功能状态取样元件和相应的保护状态取样元件包括正反器(FFs)。在另一实施例中,功能状态取样元件包括驱动第二锁存器的第一锁存器,并且相应的保护状态取样元件包括与第一锁存器相关联的第三锁存器。
在又一实施例中,保护逻辑配置为合并在两个或更多个功能状态取样元件与两个或更多个保护状态取样元件之间检测到的多个差异,并且回应于合并的差异来发起回应动作。在又一实施例中,保护逻辑配置为仅当检测到的差异在时钟周期的预定部分期间发生时才发起回应动作。在本发明的实施例中,功能状态取样元件配置为以第一阀值电压对组合逻辑电路的输出进行取样,并且相应的保护状态取样元件配置为以高于第一阀值电压的第二阀值电压对组合逻辑电路的相同输出进行取样。
根据本发明的实施例,另外提供了一种用于保护电子装置的方法。方法包括使用一个或多个相应的功能状态取样元件来取样组合逻辑电路的一个或多个输出。还使用分别与功能状态取样元件相关联的一个或多个保护状态取样元件来取样一个或多个输出。每一保护状态取样元件都对组合逻辑电路的相同输出进行取样作为相应的功能状态取样元件,但是相对于功能状态取样元件具有预定义的时间偏移。检测由功能状态取样元件取样的输出与由保护状态取样元件取样的各个输出之间的差异,并且回应于该差异而初始化回应动作。
根据本发明的实施例,还提供一种电子装置,电子装置包括时钟产生电路、组合逻辑电路、一个或多个功能状态取样元件以及保护逻辑。时钟产生电路配置为产生具有周期性时钟周期的时钟信号。组合逻辑电路包括多个内部网路和一个或多个输出。一个或多个功能状态取样元件配置为根据时钟信号周期性地取样组合逻辑电路的各个输出。保护逻辑被配置为从组合逻辑电路的内部网路或输出接收一个或多个信号,以在一个或多个接收到的信号中检测在周期时钟周期的预定部分期间发生的信号不稳定性。根据组合逻辑电路的设计,信号被期望是稳定的,并且回应于检测到的信号不稳定性而初始化回应动作。
在一些实施例中,保护逻辑配置为接收控制信号,控制信号从时钟信号导出并定义时钟周期的预定义部分,在该预定义部分中信号被期望是稳定的,并使用该控制信号来检测在周期时钟周期的预定义部分中发生信号不稳定性。在一个实施例中,保护逻辑配置为回应于检测到的信号不稳定性而产生脉冲,以脉冲来驱动保护状态取样元件的数据输入,并且回应于保护状态取样元件的输出而初始化回应动作。
在本发明的实施例中,保护逻辑配置为回应于检测到的信号不稳定性而生成修改后的时钟信号,以修改后的时钟信号来驱动保护状态取样元件的时钟输入,以及回应于保护状态取样元件的输出初始化回应动作。在实施例中,保护逻辑配置为从不在组合逻辑电路的关键时序路径上的各个网路接收信号。
根据本发明的实施例,还提供了一种用于保护具有多个内部网路和一个或多个输出的组合逻辑电路的方法,其中根据具有周期性时钟周期的时钟信号对输出进行取样。方法包括从组合逻辑电路的内部网路或输出接收一个或多个信号。在一个或多个接收信号中检测在周期时钟周期的预定义部分期间发生的信号不稳定性,其中根据组合逻辑电路的设计,信号被期望是稳定的。回应于检测到的信号不稳定性而初始化回应动作。
附图说明
通过下面结合附图对实施例的详细描述,可以更全面地理解本发明,其中:
图1A及图1B为本发明的使用一对具有相对延迟的正反器(FFs)来验证数据取样完整性的电路的方块图;
图2A及图2B为本发明的使用具有重复锁存器和相对延迟的正反器电路来验证数据取样完整性的电路的方块图;
图3A、图3B及图3C为本发明通过检测来自多个组合逻辑网的信号之间的差异来验证数据取样完整性的电路的方块图;
图4为本发明的使用在关键定时路径之外的多个组合逻辑网来验证数据取样完整性的电路的方块图;以及
图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:输出
具体实施方式
本发明的实施例提供了用于保护电子装置引起定时违规的攻击(例如,故障注入攻击)的改进的方法和电路。本发明的实施例主要涉及故障注入的故障注入攻击,但是所揭露的技术对于防止各种其他类型的攻击同样有用。所揭露的技术可以在各种类型的电子装置中使用,例如存储装置和嵌式控制器。
在本发明的实施例中,电子装置包括组合逻辑电路。组合逻辑电路通常包括多个互连的逻辑级,上述逻辑级会一起对功能数据执行某些指定的操作。组合逻辑电路接收在一个或多个输入上进行处理的功能数据,并在一个或多个输出上提供处理结果。
该电子装置还包括一个或多个正反器(FFs),其配置为以连续的时钟周期对组合逻辑电路的输出进行取样。这些正反器在这里被称为“功能正反器”,会在组合逻辑电路的输出处对功能信号的状态进行取样。功能正反器的取样输出可以在下一个时钟周期中用做组合逻辑电路的输入。
实际上,组合逻辑要花一些时间来处理输入(直到输出处理结果)。该时间在本文中称为传播延迟。为了正确操作,组合逻辑的传播延迟必须符合电子装置的建立时间和保持时间要求。否则,功能正反器会取样错误的值(此类事件有时称为“时序违规”)。在正常工作条件下(设计为装置要支持的条件),当满足建立时间和保持时间要求时,通过设计保证馈入功能正反器的组合逻辑输出稳定,并且在功能周围具有正确的处理结果正反器取样时间,以确保功能正反器正确取样结果。
在示例攻击情形中,攻击者会试图使功能正反器取样错误、无意的值,例如,通过向功能正反器或组合逻辑中插入或引入故障,或通过在其正常操作之外操作电子装置来进行操作,例如通过篡改其时钟频率、温度或电压范围。
考虑一个示例场景,由于故障注入攻击,在组合逻辑电路的一个或多个输入存在故障。故障可包括例如小于1×10-9秒的短电压尖波或任何其他合适的故障。故障可进入组合逻辑电路,并传播到一个或多个输出。
在组合逻辑电路的给定输出上,若传播的故障效应恰巧与对所讨论的输出进行取样的功能正反器的取样时间一致,则功能正反器可能会取样错误状态。然后,该错误状态将在下一个时钟周期中用做组合逻辑电路的输入。这样的事件可能导致组合逻辑电路发生故障。例如,在故障注入攻击的情况下,将组合逻辑电路强制进入异常状态可能会导致意外的信息泄漏。
为了保护电子装置免受攻击,在一些实施例中,电子装置包括一个或多个另外的正反器(称为“保护正反器”)和保护逻辑。每一保护正反器与功能正反器其中之一相关联,并且配置为对组合逻辑电路的输出进行取样以与对应的功能正反器相同,但是相对于功能正反器具有预定的时间偏移。通常将时间偏移设置为足够长的时间,以使功能正反器和对应的保护正反器中的至少一个具有较高的可能性来捕获不同的值,这是由于取样导致的(组合逻辑)输出在取样时间附近的不稳定性,通过组合逻辑或任何其他注入故障传播的故障。
保护逻辑配置为检测由功能正反器取样的输出与由保护正反器取样的各个时间偏移输出之间的差异。若检测到差异,则将保护逻辑配置为会初始化适当的回应动作,例如发出警报。
本发明描述了双重取样方案的多种实施例。例如,可以通过延迟提供两个正反器之一的数据(组合逻辑输出)或时钟信号来实现时间偏移。在一些实施例中,功能正反器的其中一部分(例如,其中一个锁存器)在保护正反器中重复。在一些实施例中,保护逻辑合并了来自多对功能/保护正反器的可能的差异。
在一些实施例中,使用所揭露的技术仅保护功能正反器的选定的部分子集。在一些实施例中,功能正反器和相应的保护正反器配置为以不同的阀值电压取样,因此即使在两个取样时间都出现故障,保护或功能正反器之一也会捕获到一个小故障。在一些实施例中,保护正反器的输入相对于相应功能正反器的输入是反相的。
此外,本发明所揭露的技术不限于正反器,并且可以使用多种其他合适类型的状态取样元件来实施。在本发明的上下文中和在请求项中,术语“状态取样元件”是指对组合逻辑电路的输出的当前状态进行取样的任何元件。状态取样元件可以包括例如锁存器,静态随机存取存储器(SRAM)单元或其他合适类型的存储单元。为了清楚起见,下面涉及正反器的描述会通过示例的方式来呈现。
在本发明所述的其他实施例中,保护逻辑从组合逻辑电路接收选择的信号。保护逻辑配置为在一个或多个信号中检测在时钟周期的预定部分期间发生的信号不稳定性,其中根据组合逻辑电路的设计,信号被期望是稳定的。回应于检测到的信号不稳定性,初始化适当的回应动作。
本发明描述了上述技术的几种变体。在一些实施例中,保护逻辑回应于检测到的信号不稳定性而产生脉冲,并利用该脉冲来驱动锁存器的数据输入。锁存器的输出用于初始化回应动作。在其他实施例中,保护逻辑回应于检测到的信号不稳定性而生成修改后的时钟信号,并利用修改后的时钟信号来驱动正反器的时钟输入。正反器输出用于初始化回应动作。在示例实施例中,所选择的信号是从不在组合逻辑电路的关键定时路径上的网路获取的。
通过相关延迟双重取样所做的攻击监测,请参阅图1A,其为根据本发明的实施例用于验证数据取样完整性的电路的电子装置20的方块图。电子装置20可包括例如安全不变性存储器装置或安全嵌式控制器,其使用所揭露的技术被保护免受故障注入攻击。或者电子装置20可包括其中需要防止攻击的任何其他合适类型的电子装置。
通常,尽管不是必要的,但是电子装置20的各种元件包括在集成电路(IC)中。电子装置20通常包括用于执行其指定功能的各种输入和输出(未示出)。
在本示例中,电子装置20包括组合逻辑电路24,为简洁起见也被称为“组合逻辑”。组合逻辑电路24通常包括多个互连的逻辑级(例如,逻辑门),它们一起对功能数据执行某些指定的操作。例如,在安全装置中,组合逻辑电路24可以执行诸如加密或解密,或安全签名或验证之类的密码操作的一部分或全部。然而,通常,所揭露的技术可以与执行任何其他适当功能的任何其他适当类型的组合逻辑一起使用。组合逻辑电路24包括一个或多个输入,用于接收用于处理的功能数据,以及一个或多个输出,用于输出处理结果。
电子装置20还包括一个或多个双取样的正反器电路(dual-sampling FF,DFF)28。每一正反器电路28在每一时钟周期中取样组合逻辑电路24的相应输出。每一正反器电路28的取样输出在下一个时钟周期中用做组合逻辑电路24的相应输入。每一正反器电路28由时钟信号(CK)计时,时钟信号由适当的时钟产生电路生成并由时钟树逻辑(clock treelogic)40提供。
图1A底部为每一正反器电路28的内部结构。将由正反器电路28取样的组合逻辑电路24的输出表示为Din。将反馈作为组合逻辑电路24的输入的正反器电路28的取样输出表示为Qout
在实施例中,正反器电路28包括功能正反器32A和保护正反器32B。在本示例中,两个正反器都是延迟正反器,尽管在替代实施例中也可以使用其他合适的正反器类型。功能正反器(DFF)32A配置为对Din取样,以便在每一CK周期产生Qout。保护正反器(DFF)32B配置为对Din的延迟复制进行取样。
在示例中,正反器电路28包括将Din延迟预定时间偏移的延迟元件36。保护正反器32B在延迟元件(DLY)36的输出处对延迟的Din进行取样。功能正反器32A和保护正反器32B都由相同的时钟信号(CK)计时。如上所述,通常将延迟元件36的延迟设置为足够长,使功能正反器32A和保护32B在发生攻击时取样不同的值。另一方面,应避免过长的延迟,因为较长的延迟元件会占用面积,并且由于延迟会降低正反器电路的建立时间或保持时间容限。在实施例中,延迟元件36的延迟在0.5至3×10-9秒的范围内,也可以使用任何其他合适的延迟值。
异或(XOR)门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任何描述的实施例可以被实施为单一程式馆单元,代替常规正反器单元。在其他实施例中,这些电路可以被实现为分立器件(如图中所示)。
在涉及在功能正反器和保护正反器取样的数据之间插入相对延迟的任何揭露技术中,可以将延迟应用于保护正反器取样的数据信号(在这种情况下,功能正反器对非延迟数据信号)或功能正反器取样的数据信号(在这种情况下,保护正反器会取样未延迟的数据信号)。
在多重组合逻辑网中通过监测不稳定信号的攻击监测,图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分解成几个部分(绘制为椭圆)。虚线的关键定时路径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为根据本发明实施例的用于使用时钟门控(clock 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 (8)

1.一种电子装置,其特征在于,包含:
一时钟产生电路,配置为产生具有一周期性时钟周期的一时钟信号;
一组合逻辑电路,包含多个内部网路和一个或多个输出;
一个或多个功能状态取样元件,配置为根据该时钟信号周期性地取样该组合逻辑电路的每一该些输出;以及
一保护逻辑,由下列程序构成:
从该组合逻辑电路的该些内部网路或输出端接收一或多个信号;
在一或多个接收信号中,检测在该周期性时钟周期的一预定部分期间发生的一信号不稳定性,其中根据该组合逻辑电路的一设计,所述接收信号被期望是稳定的;以及
回应于该检测到的信号不稳定性而初始化一回应动作;
其中,该保护逻辑配置为接收一控制信号,该控制信号从时钟信号导出并定义该时钟周期的预定部分,其中所述接收信号被期望是稳定的,并且使用该控制信号检测发生信号不稳定性时的该周期性时钟周期。
2.根据权利要求1所述的电子装置,其特征在于,该保护逻辑配置为回应于该检测到的信号不稳定性而产生一脉冲,以该脉冲驱动一保护状态取样元件的一数据输入,并且回应于该保护状态取样元件的输出而初始化该回应动作。
3.根据权利要求1所述的电子装置,其特征在于,该保护逻辑配置为回应于该检测到的信号不稳定性而产生一修改的时钟信号,以该修改的时钟信号来驱动一保护状态取样元件的一时钟输入,并且回应于该保护状态取样元件的输出而初始化该回应动作。
4.根据权利要求1所述的电子装置,其特征在于,该保护逻辑配置为不在该组合逻辑电路的一关键定时路径上的各个网路接收所述接收信号。
5.一种用于保护具有多个内部网路以及一个或多个输出的一组合逻辑电路的方法,该些输出取样于具有一周期性时钟周期的一时钟信号进行取样,其特征在于,该方法包括:
从该组合逻辑电路中的该些内部网路或输出端接收一个或多个信号;
在一个或多个接收信号中,检测在该周期性时钟周期的一预定部分期间发生的一信号不稳定性,其中根据该组合逻辑电路的一设计,所述接收信号被期望是稳定的;以及
回应于该检测到的信号不稳定性而初始化一回应动作;
其中,该方法还包括接收一控制信号,该控制信号从时钟信号导出并定义该时钟周期的预定部分,其中所述接收信号被期望是稳定的,并且使用该控制信号检测发生该信号不稳定性时的该周期性时钟周期。
6.根据权利要求5所述的方法,其特征在于,初始化该回应动作包括:回应于该检测到的信号不稳定性而产生一脉冲,以该脉冲驱动一保护状态取样元件的一数据输入并且回应于该保护状态取样元件的输出而初始化该回应动作。
7.根据权利要求5所述的方法,其特征在于,初始化该回应动作包括回应于该检测到的信号不稳定性而生成一修改的时钟信号,以该修改的时钟信号来驱动一保护状态取样元件的一时钟输入,并且回应于该保护状态取样元件的输出来初始化该回应动作。
8.根据权利要求5所述的方法,其特征在于,所述接收信号包括不在该组合逻辑电路的一关键时序路径上的各个网路接收该一个或多个信号。
CN202010294538.3A 2019-09-16 2020-04-15 使用门控时钟进行数据取样完整性检查的电子装置及方法 Active CN112507396B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/571,255 2019-09-16
US16/571,255 US11244046B2 (en) 2019-09-16 2019-09-16 Data-sampling integrity check using gated clock

Publications (2)

Publication Number Publication Date
CN112507396A CN112507396A (zh) 2021-03-16
CN112507396B true CN112507396B (zh) 2024-04-09

Family

ID=74867924

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010294538.3A Active CN112507396B (zh) 2019-09-16 2020-04-15 使用门控时钟进行数据取样完整性检查的电子装置及方法

Country Status (4)

Country Link
US (1) US11244046B2 (zh)
JP (1) JP7066791B2 (zh)
CN (1) CN112507396B (zh)
TW (1) TWI793405B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11520940B2 (en) * 2020-06-21 2022-12-06 Nuvoton Technology Corporation Secured communication by monitoring bus transactions using selectively delayed clock signal
CN113204514B (zh) * 2021-05-29 2022-03-25 郑州信大捷安信息技术股份有限公司 一种提高芯片的spi接口频率的方法
US20230077386A1 (en) * 2021-09-10 2023-03-16 Arm Limited Attack Detector Architecture
US20230179206A1 (en) * 2021-12-07 2023-06-08 Mediatek Inc. Clock gating cells

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590880B1 (en) * 2004-09-13 2009-09-15 National Semiconductor Corporation Circuitry and method for detecting and protecting against over-clocking attacks
TWI521378B (zh) * 2014-10-07 2016-02-11 新唐科技股份有限公司 偵測錯誤注入的裝置與方法
CN105701422A (zh) * 2014-11-27 2016-06-22 华邦电子股份有限公司 集成电路及其错误检测方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
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
US7428694B2 (en) 2004-03-02 2008-09-23 Stmicroelectronics S.A. Device for protection against error injection into a synchronous flip-flop of an elementary logic module
TWI323562B (en) * 2007-01-25 2010-04-11 Realtek Semiconductor Corp A delay stage selecting circuit and a related method thereof
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
TWI388123B (zh) * 2008-02-28 2013-03-01 Japan Display West Inc 相位偵測器,相位比較器及時脈同步裝置
US8042010B2 (en) * 2008-10-22 2011-10-18 Synopsys, Inc. Two-phase clock-stalling technique for error detection and error correction
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
US8407540B2 (en) * 2009-07-06 2013-03-26 Arm Limited Low overhead circuit and method for predicting timing errors
US7977965B1 (en) 2010-03-12 2011-07-12 International Business Machines Corporation Soft error detection for latches
TWI452828B (zh) * 2011-04-19 2014-09-11 Univ Nat Taiwan 時脈產生裝置
EP2662745A4 (en) * 2011-07-06 2015-01-14 Mitsubishi Electric Corp SIGNAL PROCESSING DEVICE
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
TWI542156B (zh) * 2014-05-09 2016-07-11 瑞昱半導體股份有限公司 時脈資料回復電路與方法以及等化訊號分析電路與方法
US9523736B2 (en) 2014-06-19 2016-12-20 Nuvoton Technology Corporation Detection of fault injection attacks using high-fanout networks
US9397663B2 (en) * 2014-07-22 2016-07-19 Winbond Electronics Corporation Fault protection for high-fanout signal distribution circuitry
TWI550291B (zh) * 2014-11-19 2016-09-21 華邦電子股份有限公司 積體電路及其錯誤檢測方法
CN105391542B (zh) * 2015-10-22 2019-01-18 天津大学 用于集成电路检测电磁故障注入攻击探测方法及探测器
CN105337609B (zh) * 2015-12-02 2018-07-20 上海兆芯集成电路有限公司 延迟锁定回路
US10452493B2 (en) * 2016-05-24 2019-10-22 Virginia Tech Intellectual Properties, Inc. Microprocessor fault detection and response system
TWI637186B (zh) * 2017-03-28 2018-10-01 奇景光電股份有限公司 異常時脈偵測方法及其電路
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
US10224936B1 (en) * 2018-01-30 2019-03-05 Realtek Semiconductor Corp. Self-calibrating frequency quadrupler circuit and method thereof
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
TWI670939B (zh) * 2018-12-03 2019-09-01 新唐科技股份有限公司 具有校正功能的延遲線電路及其校正方法
US11355457B2 (en) 2019-06-19 2022-06-07 Nxp B.V. Fully digital glitch detection mechanism with process and temperature compensation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7590880B1 (en) * 2004-09-13 2009-09-15 National Semiconductor Corporation Circuitry and method for detecting and protecting against over-clocking attacks
TWI521378B (zh) * 2014-10-07 2016-02-11 新唐科技股份有限公司 偵測錯誤注入的裝置與方法
CN105701422A (zh) * 2014-11-27 2016-06-22 华邦电子股份有限公司 集成电路及其错误检测方法

Also Published As

Publication number Publication date
TWI793405B (zh) 2023-02-21
CN112507396A (zh) 2021-03-16
JP2021047850A (ja) 2021-03-25
TW202113655A (zh) 2021-04-01
US20210081529A1 (en) 2021-03-18
US11244046B2 (en) 2022-02-08
JP7066791B2 (ja) 2022-05-13

Similar Documents

Publication Publication Date Title
CN112507396B (zh) 使用门控时钟进行数据取样完整性检查的电子装置及方法
CN112507400B (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
US7594150B2 (en) Fault-tolerant architecture of flip-flops for transient pulses and signal delays
JP2012516629A (ja) 性能監視用クリティカルパス回路
Potestad-Ordóñez et al. Fault attack on FPGA implementations of Trivium stream cipher
EP3639047B1 (en) Method for detecting at least one glitch in an electrical signal and device for implementing this method
Potestad-Ordóñez et al. Experimental and timing analysis comparison of FPGA trivium implementations and their vulnerability to clock fault injection
Luo et al. Faulty clock detection for crypto circuits against differential fault analysis attack
Ye et al. An anti-Trojans design approach based on activation probability analysis
Haider et al. Hatch: A formal framework of hardware trojan design and detection
Bastos et al. How to sample results of concurrent error detection schemes in transient fault scenarios?
Giridharan et al. A MUX based Latch Technique for the detection of HardwareTrojan using Path Delay Analysis
Köylü et al. Exploiting PUF Variation to Detect Fault Injection Attacks
Bastos et al. A new bulk built-in current sensor-based strategy for dealing with long-duration transient faults in deep-submicron technologies
Wang et al. A low-cost fault injection attack resilient fsm design
CN218122643U (zh) 一种电磁注入检测电路和密码芯片
Deshpande Hardware fault attack detection methods for secure embedded systems
Vasile et al. Improved tamper detection circuit based on linear-feedback shift register
Askeland et al. Who Watches the Watchers: Attacking Glitch Detection Circuits
Pomeranz et al. Reduced Fault Coverage as a Target for Design Scaffolding Security
JP2008289086A (ja) 半導体装置

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