Secure Boot Integrated Circuit Using External Memory Hash Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing integrated circuits for multiple-purpose devices face challenges in securely booting while minimizing silicon area and simplifying design, as they either require significant internal storage for boot code or extensive hardware for cryptographic verification.

Innovation Solution

An integrated circuit design that executes bootloader code from external memory, using a processor in restricted mode to transfer boot code to internal memory, with a separate hash function for authentication and a watchdog timer to ensure secure operation, allowing the chip to boot securely from unauthenticated code while minimizing silicon area.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If boot code is stored in internal memory, then security is improved, but silicon area is increased

Engineering Contradiction:
ImprovesecurityVSAvoidsilicon area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The patent extracts the boot code storage function from internal memory to external memory, allowing the chip to boot securely while minimizing on-chip silicon area. The external memory stores the boot code, and a cryptographic verification mechanism ensures security without requiring large internal storage.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a cryptographic verification mechanism as an intermediary between the external memory and the processor. This mediator verifies the authenticity of boot code before execution, enabling secure booting without storing boot code in internal memory.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If cryptographic verification hardware is added, then security is improved, but device complexity is increased

Engineering Contradiction:
ImprovesecurityVSAvoidhardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent designs the cryptographic verification mechanism to serve multiple functions: verifying boot code authenticity, ensuring security during boot, and enabling flexible deployment scenarios. This multi-functionality reduces the need for separate dedicated hardware components.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent employs parameter changes in the cryptographic verification process, using configurable verification modes and flexible key management parameters to adapt to different security requirements without requiring complex fixed hardware architectures.

Inventive Principle:
Principle #35Parameter changes

3Area of stationary object

If external memory is used for boot code, then silicon area is reduced, but security against re-programming is worsened

Engineering Contradiction:
Improvesilicon areaVSAvoidsecurity against re-programming
Core Design Contradiction:
Area of stationary objectVSReliability

Solution Approach 1:

The patent converts the potential security vulnerability of external memory into a benefit by implementing cryptographic verification. The external memory's flexibility is maintained while its security weakness is compensated through hash verification and authentication mechanisms that detect any re-programming or tampering.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Solution Approach 2:

The patent performs preliminary cryptographic verification of boot code before execution. The verification process checks the authenticity and integrity of external memory contents in advance, preventing re-programming attacks before they can compromise the system.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP1845470B1Multiple purpose integrated circuit
Publication Date: 2016.11.09 STMICROELECTRONICS (RES & DEV) LTD
  • EP1845470B1 patent drawingFigure 1
  • EP1845470B1 patent drawingFigure 2
  • EP1845470B1 patent drawingFigure 3

AI summary

An integrated circuit is operable to execute boot loader code and a boot code from external memory. To provide security so that the CPU does not execute malicious codes, the circuit resets in a restricted mode in which only certain functional units may be connected. In the restricted mode the CPU is only able to fetch boot code from an external memory for transfer to an internal memory. A hash function operates on the fetched boot code to determine whether it is authentic and, if it is determined that the code is authentic the circuit is reset to an unrestricted mode to continue executing from the boot code now stored in the internal memory. Further security is provided by a watchdog timer function which resets the circuit if the boot code is not determined to be authentic within a given period of time.