# US 12,182,260 B2 · System and method for detecting fault injection attacks

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,182,260 B2
- Document ID: US12182260B2
- Status: Granted
- Kind: B2
- Application number: 17/217,472
- Filed: 2021-03-30
- Published: 2021-08-05
- Granted: 2024-12-31
- Earliest claimed: 2017-12-18
- Assignees: Nuvoton Technology Corporation
- Applicants: Nuvoton Technology Corporation
- Inventors: Ilan Margalit
- Web page: https://patentgrep.com/patent/US12182260B2

## CPC

- G06F 21/556: {involving covert channels, i.e. data leakage between processes (inhibiting the analysis of circuitry or operation with measures against power attack G06F21/755)}
- G06F 21/54: by adding security routines or objects to programs
- G06F 21/552: {involving long-term monitoring or reporting}
- G06F 21/554: {involving event detection and direct action}
- G06F 21/577: {Assessing vulnerabilities and evaluating computer system security}
- G06F 2221/2113: Multi-level security, e.g. mandatory access control
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A security system configured for deployment on a chip which is to be protected, the system comprising fault injection detection subsystem/s configured for deployment on the chip, each fault injection detection subsystem having plural sensitivity levels which are selectable in real time and comprising at least one hardware fault injection detector circuit/s, configured for deployment on the chip, and/or, coupled thereto, sensitivity level control logic which may be configured for deployment on the chip and which may be operative, in real time, to transition the fault injection detection subsystem, from its current sensitivity level from among said plural selectable sensitivity levels, to a next sensitivity level from among said plural selectable sensitivity levels, e.g. by generating sensitivity control signals (aka sensitivity level selections) and/or feeding the sensitivity control signals to at least one hardware fault injection detector in the subsystem.

## Claims

### Claim 1

A security system configured for deployment on a chip which is to be protected, the system comprising:
at least one fault injection detection subsystem configured for deployment on the chip, each said fault injection detection subsystem having plural sensitivity levels which are selectable in real time and comprising:
at least one hardware fault injection detector circuit/s, configured for deployment on the chip,
and, coupled thereto,
fault injection detection sensitivity level control logic configured for deployment on the chip and operative, in real time, to transition the fault injection detection subsystem, from its current fault injection detection sensitivity level from among said plural selectable fault injection detection sensitivity levels, to a next fault injection detection sensitivity level from among said plural selectable fault injection detection sensitivity levels, by generating fault injection detection sensitivity control signals including fault injection detection sensitivity level selections, and feeding the fault injection detection sensitivity control signals to at least one hardware fault injection detector in the fault injection detection subsystem,
wherein the fault injection detection subsystem has a response time comprising a time-period which elapses from an indication, comprising an opcode indicative of a required sensitivity level for the fault injection detection subsystem, which is provided to sensitivity level selection logic employed by said sensitivity level control logic, and until the fault injection detection subsystem is set at the required sensitivity level, and the chip being protected has a decode-execution cycle, for each single instruction the chip executes, and wherein said response time is shorter than said decode-execution cycle,
wherein the plural fault injection detection sensitivity levels include:
a first level of fault injection detection sensitivity; and
a second level of fault injection detection sensitivity higher than the first level of fault injection detection sensitivity,
and wherein the fault injection detection subsystem, when at the second, higher, of fault injection detection sensitivity level, detects more events as fault injections, than would be detected as fault injections when the system's fault injection detection sensitivity level is at the first, lower level.

### Claim 2 (depends on 1)

The system of claim 1 and wherein said at least one fault injection subsystem also comprises:
at least one functional module/s configured for deployment on the chip which generate/s output signal/s in real time, and feeds said output signals to said sensitivity level control logic thereby to provide said sensitivity level control logic with indications as to the next sensitivity level to be selected from among said plural selectable sensitivity levels.

### Claim 3 (depends on 2)

The system of claim 2 wherein said at least one functional module is operative to generate, and to feed to said sensitivity level control logic, at least one output signal comprising a status indication which indicates whether or not said module is active, and wherein said logic selects said next level depending at least partly on said status indication.

### Claim 4 (depends on 3)

The system of claim 3 wherein said logic, at least once, selects a higher next level responsive to said at least one individual module from among said functional modules becoming active.

### Claim 5 (depends on 3)

The system of claim 3 wherein the at least one output signal represents a level of risk associated with a current activity of said at least one functional module and wherein the sensitivity control logic derives, at least partly from the level of risk, a sensitivity level to be selected as the next level.

### Claim 6 (depends on 5)

The system of claim 5 wherein said logic selects a first sensitivity level as said next level if said functional module is active and has a first level of risk, a second sensitivity level as said next level if said functional module is active and has a second level of risk, lower than said first level of risk, and a third sensitivity level as said next level if said functional module is inactive.

### Claim 7 (depends on 1)

The system of claim 1 wherein said chip has multiple possible power states including at least one idle state/s and at least one awake state/s and wherein said logic selects said next level responsive to a new state of the chip, the new state comprising one of said multiple possible states.

### Claim 8 (depends on 7)

The system of claim 7 wherein said functional module comprises firmware which triggers transitions between said possible power states thereby to cause said current state to be known to said sensitivity control logic.

### Claim 9 (depends on 7)

The system of claim 7 wherein the next level is selected before the chip's power state transitions to said new state.

### Claim 10 (depends on 9)

The system of claim 9 wherein the detector is set to said next level before the chip's power state transitions to said new state.

### Claim 11 (depends on 7)

The system of claim 7 wherein the next level is selected after the chip's power state has transitioned to said new state.

### Claim 12 (depends on 11)

The system of claim 11 wherein the detector is set to said next level after the chip's power state has transitioned to said new state.

### Claim 13 (depends on 1)

The system of claim 1 wherein said system is deployed on said chip to be protected.

### Claim 14 (depends on 2)

The system of claim 2 wherein said at least one fault injection detection subsystem comprises plural fault injection detection subsystems, each configured for deployment on the chip and each including a hardware fault injection detector and sensitivity level control logic coupled thereto.

### Claim 15 (depends on 14)

The system of claim 14 wherein said system is deployed on said chip to be protected, wherein said at least one functional module/s comprise at least first and second functional modules, and wherein the plural subsystems include first and second subsystems which are respectively protecting said first and second functional modules and wherein the first module is closer to the first subsystem than is the second module, and the second module is closer to the second subsystem than is the first module.

### Claim 16 (depends on 14)

The system of claim 14 and wherein at least one subsystem from among said plural fault injection detection subsystems protects at least one functional module on the chip, and wherein each individual detector from among the plural subsystems' respective hardware fault injection detectors has a sensitivity level selected, in real time, by at least one functional module which is protected by said individual detector.

### Claim 17 (depends on 16)

The system of claim 16 and wherein each of the detector/s has plural sensitivity levels which are selectable in real time.

### Claim 18 (depends on 1)

The system of claim 1 and wherein said subsystem comprises plural detectors and wherein the sensitivity level of said subsystem at time t is implemented as a number of detectors, from among said plural detectors, which are enabled at said time t and wherein said sensitivity control logic determines how many of the plural detectors are enabled at time t, thereby to provide a counter-measure with a real-time configurable sensitivity level such that lower sensitivity levels are implemented by smaller numbers of activated detector circuits, and higher sensitivity levels are implemented by larger numbers of activated detector circuit.

### Claim 19 (depends on 2)

The system of claim 2 wherein said at least one functional module/s comprises plural functional modules and wherein said sensitivity control logic derives a sensitivity level to be selected as the next level by combining output indications from each of said plural functional modules, into a single set of sensitivity control signals.

### Claim 20 (depends on 4)

The system of claim 4 wherein said logic, at least once, releases to a level which is lower than said higher next level, responsive to at least said individual module becoming inactive.

### Claim 21 (depends on 3)

The system of claim 3 wherein said functional module comprises a cryptographic module which is associated with a high level of risk.

### Claim 22

A chip protection method comprising:
providing at least one fault injection detection subsystem configured for deployment on the chip, each said fault injection detection subsystem having plural sensitivity levels which are selectable in real time, said providing comprising:
deploying at least one hardware fault injection detector circuit/s on the chip, and,
coupling, to said hardware fault injection detector circuit/s, fault injection detection sensitivity level control logic configured for deployment on the chip and operative, in real time, to transition the fault injection detection subsystem from its current fault injection detection sensitivity level from among said plural selectable fault injection detection sensitivity levels, to a next fault injection detection sensitivity level from among said plural selectable fault injection detection sensitivity levels, by generating fault injection detection sensitivity control signals including fault injection detection sensitivity level selections and feeding the fault injection detection sensitivity control signals to at least one hardware fault injection detector in the fault injection detection subsystem,
wherein the fault injection detection subsystem has a response time comprising a time-period which elapses from an indication, comprising an opcode indicative of a required sensitivity level for the fault injection detection subsystem, which is provided to sensitivity level selection logic employed by said sensitivity level control logic, and until the fault injection detection subsystem is set at the required sensitivity level, and the chip being protected has a decode-execution cycle, for each single instruction the chip executes, and wherein said response time is shorter than said decode-execution cycle,
wherein the plural fault injection detection sensitivity levels include:
a first level of fault injection detection sensitivity; and
a second level of fault injection detection sensitivity higher than the first level of fault injection detection sensitivity,
and wherein the fault injection detection subsystem, when at the second, higher, of fault injection detection sensitivity level, detects more events as fault injections, than would be detected as fault injections when the system's fault injection detection sensitivity level is at the first, lower level.
