Secure Boot from External Storage Using OTP Authentication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

There is a need for techniques to securely boot electronics devices from external storage devices, ensuring that only valid and authorized software and firmware are loaded and executed, while preventing unauthorized programs from running, to prevent tampering and ensure secure operation.

Innovation Solution

The techniques utilize a non-writable area on external storage devices, such as a one-time programmable (OTP) area, to store secure data like hash digests and cryptographic keys, which are used to authenticate software programs by hashing and verifying signatures, ensuring that only authorized programs are executed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If software and firmware are stored in external non-volatile memory to reduce costs, then storage economy is improved, but security and reliability of execution are worsened because the memory is writable and vulnerable to tampering

Engineering Contradiction:
Improvestorage economyVSAvoidsoftware authenticity
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The external storage device is divided into two distinct areas: a main writable area for storing software programs and a separate non-writable area (OTP/OTW) for storing secure authentication data. This segmentation allows the system to maintain both cost-effectiveness (by using external storage) and security (by isolating authentication data in a protected area).

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A secure authentication mechanism acts as an intermediary between the software stored in external memory and the execution environment. The processor retrieves secure data from the non-writable area to authenticate software before execution, preventing unauthorized or tampered software from running while still allowing legitimate software to execute from the economical external storage.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If software is stored in external writable memory, then storage capacity and access capability are improved, but vulnerability to tampering and unauthorized modification increases

Engineering Contradiction:
Improvestorage capacityVSAvoidtampering vulnerability
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

Authentication is performed preliminarily before software execution. The processor retrieves secure data from the non-writable area and uses it to authenticate the software program from the main area before allowing execution. This preliminary authentication step ensures that even though the main storage area is writable and adaptable, any tampering is detected and prevented before the software can execute or cause harm.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If secure data is stored in non-writable area for authentication, then security against unauthorized execution is improved, but device complexity increases due to additional authentication mechanisms

Engineering Contradiction:
Improveexecution securityVSAvoidauthentication mechanism
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The authentication logic and secure data are extracted into a separate non-writable area, independent from the main software storage. This extraction allows the authentication mechanism to operate independently and securely, while the main software area remains simple and accessible. The complexity is isolated to a small protected area rather than affecting the entire storage system.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS8291226B2Method and apparatus for securely booting from an external storage device
Publication Date: 2012.10.16 QUALCOMM INC
  • US8291226B2 patent drawing
  • US8291226B2 patent drawing
  • US8291226B2 patent drawing

AI summary

Techniques to securely boot up an electronics device (e.g., a cellular phone) from an external storage device are described. Secure data (e.g., a hash digest, a signature, a cryptographic key, and so on) is initially retrieved from a non-writable area of an external memory device (e.g., an one-time programmable (OTP) area of a NAND Flash device). A first program (e.g., a boot program) is retrieved from a writable or main area of the external memory device and authenticated based on the secure data. The first program is enabled for execution if authenticated. A second program may be retrieved from the main area of the external memory device and authenticated based on the secure data. The second program is enabled for execution if authenticated. Additional programs may be retrieved and authenticated. Each program may be authenticated using a secure hash function, a digital signature, and/or some other cryptographic technique.