Secure BIOS Mechanism with Fuse Override and Integrity Checks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for securing a Basic Input/Output System (BIOS) in computing systems face challenges in balancing accessibility for upgrades with the need to protect against unauthorized tampering, as moving BIOS storage onto the microprocessor die complicates upgrades and encryption methods degrade system performance.

Innovation Solution

The solution involves storing BIOS contents as plaintext with an encrypted message digest, using a tamper detection mechanism that generates random intervals for checking integrity, and employing a JTAG control chain to program intervals and event occurrences, with a fuse to indicate unauthorized activity and an access control element to manage programming, ensuring secure operation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If BIOS storage is moved onto the microprocessor die, then security against tampering is improved, but ease of upgrade deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoidease of upgrade
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The invention separates the BIOS storage into two parts: the main BIOS code remains externally accessible for easy upgrades, while only the critical security verification data (message digest and encrypted key) is placed in internal secure storage on the microprocessor die. This segmentation allows upgrades of the main BIOS without compromising security, as the integrity verification mechanism remains intact.

Inventive Principle:
Principle #1Segmentation

2Reliability

If encryption is applied to BIOS contents, then security against tampering is improved, but system performance deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The invention extracts only the essential security verification element (the encrypted message digest) from the full BIOS encryption approach. Instead of encrypting the entire BIOS contents which would require heavy decryption operations for every access, only a small cryptographic hash (message digest) is encrypted and stored. This reduces the decryption overhead from megabytes of data to just a few bytes, dramatically improving system performance while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If random interval checking is implemented, then detection of unauthorized modification is improved, but use of energy increases

Engineering Contradiction:
Improvedetection capabilityVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The invention implements periodic integrity checking of the BIOS at predetermined intervals rather than continuous monitoring. The microprocessor is configured to verify the integrity of the BIOS code by comparing its message digest against the encrypted stored version at these periodic intervals. This periodic action maintains strong detection capability while significantly reducing energy consumption compared to continuous verification, as the system alternates between normal operation and verification modes.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentEP3316170B1Fuse-enabled secure BIOS mechanism with override feature
Publication Date: 2021.04.07 VIA TECH INC
  • EP3316170B1 patent drawingFigure 1~2
  • EP3316170B1 patent drawingFigure 3
  • EP3316170B1 patent drawingFigure 4

AI summary

An apparatus is provided for protecting a basic input/output system (BIOS) in a computing system. The apparatus includes a BIOS read only memory (ROM), a tamper detector, a random number generator, a JTAG control chain, a fuse, a machine specific register, and an access controller. The BIOS ROM includes BIOS contents stored as plaintext, and an encrypted message digest, where the encrypted message digest has an encrypted version of a first message digest that corresponds to the BIOS contents. The tamper detector is operatively coupled to the BIOS ROM, and is configured to generate a BIOS check interrupt at a combination of prescribed intervals and event occurrences, and is configured to access the BIOS contents and the encrypted message digest upon assertion of the BIOS check interrupt, and is configured to direct a microprocessor to generate a second message digest corresponding to the BIOS contents and a decrypted message digest corresponding to the encrypted message digest, and is configured to compare the second message digest with the decrypted message digest, and is configured to preclude the operation of the microprocessor if the second message digest and the decrypted message digest are not equal. The random number generator disposed within the microprocessor, and generates a random number at completion of a current BIOS check, which is employed to set a following prescribed interval, whereby the prescribed intervals are randomly varied. The JTAG control chain is configured to program the combination of prescribed intervals and event occurrences within tamper detection microcode storage. The fuse is configured to indicate whether programming of the combination of prescribed intervals and event occurrences is to be disabled. The machine specific register is configured to store a value therein. The access control element is coupled to the fuse, the machine specific register, and the JTAG control chain, and is configured to determine that the fuse is blown, and configured to direct the JTAG control chain to enable programming of the combination of prescribed intervals and event occurrences if the value matches an override value within the access control element during a period that the value is stored within the machine specific register.