BIOS Integrity Protection via Tamper Detection and Hash Verification
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for securing a computing system's BIOS struggle to balance accessibility for upgrades with protection against unauthorized tampering, as moving BIOS storage onto the microprocessor die complicates upgrades and encryption-based solutions degrade system performance.
Innovation Solution
A technique involving a BIOS ROM with plaintext contents and an encrypted message digest, coupled with a tamper detector, random number generator, JTAG control chain, and access controller, which generates and compares message digests to ensure integrity and randomly varies check intervals to prevent unauthorized access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If BIOS storage is moved onto the microprocessor die, then protection against tampering is improved, but ease of upgrade deteriorates
Solution Approach 1:
The patent segments the BIOS protection mechanism into two parts: the BIOS storage remains separate and accessible for upgrades, while a tamper detector component is integrated into the microprocessor die. This segmentation allows the BIOS to be upgraded independently while maintaining security through the integrated tamper detector that monitors BIOS integrity.
Solution Approach 2:
The patent introduces a tamper detector as an intermediary component that sits between the BIOS storage and the system operations. This intermediary monitors BIOS integrity by detecting tampering attempts and can prevent unauthorized modifications, thereby providing protection without requiring the BIOS itself to be integrated into the processor die.
2Reliability
If encryption is applied to BIOS contents, then protection against tampering is improved, but system performance deteriorates
Solution Approach 1:
The patent extracts the encryption requirement by using a different approach: instead of encrypting BIOS contents, it stores an unencrypted BIOS and separately stores an encrypted hash value. The tamper detector computes and compares hash values to detect tampering, eliminating the need for continuous decryption operations and thus avoiding performance degradation.
Solution Approach 2:
The patent creates a cryptographic copy (hash value) of the BIOS contents rather than encrypting the contents themselves. This hash copy is stored in encrypted form and used for verification purposes only, allowing integrity checking without requiring decryption of the actual BIOS data during system operation.
3Measurement precision
If frequent BIOS checks are performed, then detection of tampering is improved, but system performance deteriorates
Solution Approach 1:
The patent implements periodic BIOS integrity checks through the tamper detector, which operates at predetermined intervals rather than continuously. This periodic action provides adequate tampering detection capability while minimizing the performance impact by allowing normal system operations to proceed between check intervals.
Solution Approach 2:
The patent performs a simplified verification action (hash comparison) rather than a complete BIOS analysis. This partial action provides sufficient tampering detection by comparing cryptographic hashes, which is computationally much less intensive than full BIOS verification, thus maintaining system performance while achieving detection goals.
Data Source
AI summary
An apparatus for protecting BIOS, including a BIOS ROM, a detector, a generator, JTAG control, a fuse, and a controller. The BIOS ROM stores plaintext and an encrypted digest that is an encrypted version of a first digest corresponding to BIOS contents. The detector generates an interrupt at a combination of prescribed intervals and event occurrences, accesses the BIOS contents and the encrypted digest upon the interrupt, and directs a microprocessor to generate a second digest of the BIOS contents and a decrypted digest corresponding to the encrypted digest, compares the second digest with the decrypted digest, and precludes operation of the microprocessor when the second digest and decrypted digest are unequal. A random number is generated completion of a current BIOS check, and sets a following prescribed interval. JTAG control programs the combination of prescribed intervals and event occurrences.


