IP Library Granted Patent US 10,936,722
Granted Patent B2
US 10,936,722 · App. 15/955,703 · Granted Mar 2, 2021

Binding of TPM and root device

Inventors: Moshe Alon (Tel-Aviv, IL); Ziv Hershman (Givat Shmuel, IL); Dan Morav (Herzliya, IL)
Assignee: NUVOTON TECHNOLOGY CORPORATION
G06F21/575G06F21/572H04L9/3271G06F2221/033
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 10,936,722
App. No.
15/955,703
Granted
Mar 2, 2021
Kind
B2
Abstract

A method for initializing a computer system, which includes a Central Processing Unit (CPU), a Trusted Root Device and a Trusted Platform Module (TPM), includes authenticating a boot code of the CPU using the Trusted Root Device, and booting the CPU using the authenticated boot code. A challenge-response transaction, in which the TPM authenticates the Trusted Root Device, is initiated by the CPU following booting of the CPU. Only in response to successful authentication of the Trusted Root Device using the challenge-response transaction, a resource used in operating the computer system is released from the TPM.

Claims (18)

1. A method for initializing a computer system that includes a Central Processing Unit (CPU), a non-volatile memory that holds a boot code of the CPU, a controller and a Trusted Platform Module (TPM), the method comprising:

reading the boot code of the CPU, by the controller, from the non-volatile memory, independently of the CPU, and authenticating the read boot code of the CPU using the controller;

in response to successful authentication of the boot code by the controller, allowing the CPU to read the boot code from the non-volatile memory and to boot using the authenticated boot code;

following booting of the CPU, ascertaining by the CPU that the controller is trustworthy, and that the boot code that the controller authenticated for the CPU is trustworthy, by:

initiating by the CPU a challenge-response transaction in which (i) the CPU requests a challenge from the TPM and forwards the challenge to the controller, (ii) the CPU obtains a response to the challenge from the controller and forwards the response to the TPM, and (iii) the TPM authenticates the controller using the response,

wherein the challenge-response transaction is based on a secret key stored in the controller and in the TPM, and wherein initiating the challenge-response transaction comprises refraining from exposing the secret key insecurely on any interface of the computing system; and

only in response to successful authentication of the controller using the challenge-response transaction, releasing from the TPM a resource used in operating the computer system.

2. The method according to claim 1 , wherein releasing the resource from the TPM comprises releasing a decryption key for decrypting encrypted content of the computer system.

3. The method according to claim 1 , wherein releasing the resource from the TPM comprises releasing an identity key for proving an identity of a user or of the computer system.

4. A computer system comprising a Central Processing Unit (CPU), a non-volatile memory that holds a boot code of the CPU, a controller and a Trusted Platform Module (TPM), wherein:

the controller is configured to read the boot code of the CPU from the non-volatile memory, independently of the CPU, to authenticate the read boot code of the CPU, and, in response to successful authentication of the boot code by the controller, to allow the CPU to read the boot code from the non-volatile memory and to boot using the authenticated boot code;

the CPU is configured to boot using the authenticated boot code, and, after booting, to ascertain that the controller is trustworthy, and that the boot code that the controller authenticated for the CPU is trustworthy, by initiating a challenge-response transaction in which (i) the CPU requests a challenge from the TPM and forwards the challenge to the controller, (ii) the CPU obtains a response to the challenge from the controller and forwards the response to the TPM, and (iii) the TPM authenticates the controller using the response,

wherein the challenge-response transaction is based on a secret key stored in the controller and in the TPM, and wherein the CPU, the controller and the TPM are configured to refrain from exposing the secret key insecurely on any interface of the computing system; and

the TPM is configured to release a resource, for use in operating the computer system, only in response to a successful authentication of the controller using the challenge-response transaction.

5. The computer system according to claim 4 , wherein the resource released by the TPM is a decryption key for decrypting encrypted content on a disk of the computer system.

6. The computer system according to claim 4 , wherein the resource released by the TPM is an identity key for proving an identity of a user or of the computer system.

7. The method according to claim 1 , wherein initiating the challenge-response transaction comprises verifying that the controller has not been replaced with a rogue controller.

8. The computer system according to claim 4 , wherein, in initiating the challenge-response transaction, the CPU is configured to verify that the controller has not been replaced with a rogue controller.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2018
From: ALON, MOSHE; HERSHMAN, ZIV; MORAV, DAN
To: NUVOTON TECHNOLOGY CORPORATION
Reel/Frame 045967/0900 →
Continuity (1)
Related Publication 20190325140A1 · Oct 24, 2019