IP Library Granted Patent US 9,507,942
Granted Patent B2
US 9,507,942 · App. 14/079,087 · Granted Nov 29, 2016

Secure BIOS mechanism in a trusted computing system

Inventor: G. Glenn Henry (Austin, TX)
Assignee: VIA TECHNOLOGIES, INC.
G06F21/572G06F2221/2139
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,507,942
App. No.
14/079,087
Granted
Nov 29, 2016
Kind
B2
Abstract

An apparatus including a ROM and a microprocessor. The ROM includes BIOS contents that are stored as plaintext and an encrypted digest. The encrypted digest includes an encrypted version of a first digest corresponding to the BIOS contents. The microprocessor is coupled to the BIOS ROM, and includes a tamper timer and a tamper detector. The tamper timer periodically generates an interrupt at a prescribed interval. The tamper detector accesses the BIOS contents and the encrypted digest upon assertion of the interrupt, and directs the microprocessor to generate a second digest corresponding to the BIOS contents and a decrypted digest corresponding to the encrypted digest using the same algorithms and key that were employed to generate the first digest and the encrypted digest, and compares the second digest with the decrypted digest, and precludes operation of the microprocessor if the second digest and the decrypted digest are not equal.

Claims (41)

1. An apparatus for protecting a basic input/output system (BIOS) in a computing system, the apparatus comprising:

a BIOS read only memory (ROM), comprising:

BIOS contents, wherein said BIOS contents are stored as plaintext; and

an encrypted message digest, wherein said encrypted message digest comprises an encrypted version of a first message digest that corresponds to said BIOS contents;

a tamper detector, operatively coupled to said BIOS ROM, configured to generate a BIOS check interrupt at a combination of prescribed intervals and event occurrences, and configured to access said BIOS contents and said encrypted message digest upon assertion of said BIOS check interrupt, and configured to direct a microprocessor to generate a second message digest corresponding to said BIOS contents and a decrypted message digest corresponding to said encrypted message digest, and configured to compare said second message digest with said decrypted message digest, and configured to preclude said operation of said microprocessor if said second message digest and said decrypted message digest are not equal; and

a random number generator disposed within said microprocessor, wherein said random number generator generates a random number at completion of a current BIOS check, which is employed to set a following prescribed interval, whereby said prescribed intervals are randomly varied.

2. The apparatus as recited in claim 1 , wherein said BIOS ROM is disposed separately from said tamper timer and said tamper detector on a system board of the computing system.

3. The apparatus as recited in claim 1 , wherein said microprocessor employs the Secure Hash Algorithm to generate said second message digest.

4. The apparatus as recited in claim 1 , wherein said microprocessor employs the Advanced Encryption Standard algorithm to generate said decrypted message digest.

5. The apparatus as recited in claim 1 , wherein said microprocessor comprises a dedicated crypto/hash unit disposed within execution logic, and wherein said crypto/hash unit generates said second message digest and said decrypted message digest, and wherein said key is exclusively accessed by said crypto/hash unit.

6. The apparatus as recited in claim 1 , wherein said random number generator is disposed within execution logic in said microprocessor.

7. The apparatus as recited in claim 5 , wherein said key and said tamper timer cannot be accessed by program instructions that are executed by said microprocessor.

8. An apparatus for protecting a basic input/output system (BIOS) in a computing system, the apparatus comprising:

a BIOS read only memory (ROM), comprising: BIOS contents, wherein said BIOS contents are stored as plaintext; and

an encrypted message digest, wherein said encrypted message digest comprises an encrypted version of a first message digest that corresponds to said BIOS contents; and

a microprocessor, coupled to said BIOS ROM, said microprocessor comprising:

a tamper detector, operatively coupled to said BIOS ROM, configured to generate a BIOS check interrupt at a combination of prescribed intervals and event occurrences, and configured to access said BIOS contents and said encrypted message digest upon assertion of said BIOS check interrupt, and configured to direct said microprocessor to generate a second message digest corresponding to said BIOS contents and a decrypted message digest corresponding to said encrypted message digest, and configured to compare said second message digest with said decrypted message digest, and configured to preclude said operation of said microprocessor if said second message digest and said decrypted message digest are not equal; and

a random number generator disposed within said microprocessor, wherein said random number generator generates a random number at completion of a current BIOS check, which is employed to set a following prescribed interval, whereby said prescribed intervals are randomly varied.

9. The apparatus as recited in claim 8 , wherein said BIOS ROM is disposed separately from said tamper timer and said tamper detector on a system board of the computing system.

10. The apparatus as recited in claim 8 , wherein said microprocessor employs the Secure Hash Algorithm to generate said second message digest.

11. The apparatus as recited in claim 8 , wherein said microprocessor employs the Advanced Encryption Standard algorithm to generate said decrypted message digest.

12. The apparatus as recited in claim 8 , said microprocessor further comprising:

a dedicated crypto/hash unit disposed within execution logic, wherein said crypto/hash unit generates said second message digest and said decrypted message digest, and wherein said key is exclusively accessed by said crypto/hash unit.

13. The apparatus as recited in claim 8 , wherein said random number generator is disposed within execution logic in said microprocessor.

14. The apparatus as recited in claim 12 , wherein said key cannot be accessed by program instructions that are executed by said microprocessor.

15. A method for protecting a basic input/output system (BIOS) in a computing system, the method comprising:

storing BIOS contents as plaintext in a BIOS ROM along with an encrypted message digest that comprises an encrypted version of first message digest that corresponds to the BIOS contents;

generating a BIOS check interrupt that interrupts normal operation of the computing system at a combination of prescribed intervals and event occurrences;

upon assertion of the BIOS check interrupt, accessing the BIOS contents and the encrypted message digest, and generating a second message digest corresponding to the BIOS contents and a decrypted message digest corresponding to the first encrypted message digest using the same algorithms and key that were employed to generate the first message digest and the encrypted message digest;

comparing the second message digest with the decrypted message digest;

precluding operation of the microprocessor if the second message digest and the decrypted message digest are not equal; and

employing a random number generator within the microprocessor to generate 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.

16. The method as recited in claim 15 , further comprising:

separately disposing the BIOS ROM on a system board of the computing system.

17. The method as recited in claim 15 , wherein said accessing comprises:

employing the Secure Hash Algorithm to generate the second message digest.

18. The apparatus as recited in claim 15 , wherein said accessing further comprises:

employing the Advanced Encryption Standard algorithm to generate the decrypted message digest.

19. The method as recited in claim 15 , wherein the microprocessor comprises a dedicated crypto/hash unit disposed within execution logic, and wherein the crypto/hash unit generates the second message digest and the decrypted message digest, and wherein the key is exclusively accessed by the crypto/hash unit.

20. The method as recited in claim 15 , wherein the random number generator is disposed within execution logic in the microprocessor.

21. The method as recited in claim 19 , wherein the key cannot be accessed by program instructions that are executed by the microprocessor.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2013
From: HENRY, G. GLENN
To: VIA TECHNOLOGIES, INC.
Reel/Frame 031594/0153 →
Continuity (1)
Related Publication 20150134975A1 · May 14, 2015