Silicon Firmware Rollback Prevention via Dual OTP Versioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing semiconductor devices are vulnerable to rollback attacks, where an adversary can replace a newer, secure firmware version with an older, vulnerable version, and the limited OTP space restricts the number of code updates.

Innovation Solution

A secure rollback prevention system using multiple copies of data on external non-volatile memory devices and an OTP, where one firmware copy is open for updates and the other is write-protected, along with dual signed version number copies stored in external memory devices, ensuring that the OTP version cannot be decreased and the flash version can be updated while maintaining secure version control.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single OTP memory is used to store firmware version, then the device structure is simple, but the device is vulnerable to rollback attacks and has limited update capacity

Engineering Contradiction:
Improverollback protectionVSAvoidmemory structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system divides the version storage function into two independent OTP memories: a first OTP memory that stores the original firmware version and a second OTP memory that stores the updated firmware version. This segmentation allows the system to maintain version history and prevent rollback attacks by comparing versions across both memories, while keeping each individual OTP memory structure simple.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system creates a copy of the firmware version information in a second OTP memory after a successful update. This copy serves as a reference to detect rollback attempts, as the system can verify that the current version matches or exceeds the stored version in the second OTP memory, preventing adversaries from restoring older vulnerable versions.

Inventive Principle:
Principle #26Copying

2Productivity

If OTP space is minimized for cost efficiency, then manufacturing cost is reduced, but the number of code updates is restricted

Engineering Contradiction:
Improvefirmware update capacityVSAvoidOTP space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system applies different quality requirements to different OTP memories: the first OTP memory maintains the original version information with standard security requirements, while the second OTP memory stores the updated version information with enhanced security properties. This local differentiation allows efficient use of OTP space while providing robust rollback protection across multiple update cycles.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11216597B2Security system and method for preventing rollback attacks on silicon device firmware
Publication Date: 2022.01.04 NUVOTON
  • US11216597B2 patent drawing
  • US11216597B2 patent drawing
  • US11216597B2 patent drawing

AI summary

A chip system comprising ROM code including a bootloader which runs whenever the chip is powered on; and programmable fuse array memory storing version identifiers, NVMs in which copies of a version of bootable firmware are stored, wherein a first identifier is stored including active major number and minor numbers, signed with a private key; wherein a second identifier is stored including recovery major and minor numbers, signed with said private key; and hardware which obeys a first command by the boot ROM code to disable until next system reset, writing to the recovery NVM other than to the bootloader, and obeys a second command, to lift write protection of the recovery NVM, wherein firmware images associated with both said versions, and both said identifiers, are signed with said private key, and the boot ROM code authenticates firmware image/s and said identifiers.