IP Library Granted Patent US 10,650,167
Granted Patent B2
US 10,650,167 · App. 15/960,213 · Granted May 12, 2020

Trusted computing

Inventors: Dominic Rizzo (Mountain View, CA); Peiter Charles Zatko (Mountain View, CA)
Assignee: Google LLC
G06F21/71G06F21/31G06F21/35G06F21/6218G06F21/74G06F21/79H04L63/0428G06F3/041G06F2221/2103
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,650,167
App. No.
15/960,213
Granted
May 12, 2020
Kind
B2
Abstract

A trusted computing device (TCD) includes an isolated environment, host interface, secure interface, and program instructions. The environment includes an isolated environment processor (IEP), memory (secure and non-secure partition), and an auxiliary processor (AP). Memory and AP are connected for data communication with the IEP, and communicate with a host only through the IEP. The host interface and each secure interface are connected for data communication with the IEP. The instructions provision TCD for cryptographic operations via a secure interface; present a first file system partition comprising a write file and a read file with file creation/deletion privileges allocated only to the IEP at the host interface via the IEP; present a non-secured file system partition with access to the non-secure partition via the host interface via the IEP; receive, via the write file, requests to perform trusted computing; perform requested computing using the IEP, secure memory, and AP; and write results to the read file.

Claims (63)

1. A computer-implemented method of secure host interaction within a trusted computing device, the method comprising:

receiving, from a trusted source via a secure interface of the trusted computing device, a set of restricted information;

storing the set of restricted information in secure storage within an isolated environment of the trusted computing device;

receiving, from an untrused host device via a host interface of the trusted computing device, a write-file entry comprising an executable command for a write file of the trusted computing device, wherein the host interface of the trusted computing device is separate from the secure interface of the trusted computing device;

identifying at least a portion of the set of restricted information that is responsive to the write-file entry comprising the executable command from the untrusted host device;

generating a secure output based on at least the portion of the set of restricted information; and

availing the secure output in a read file of the trusted computing device, wherein the untrusted host device accesses the secure output from the read file via the host interface and completes any host-side processing of the secure output.

2. The computer-implemented method of claim 1 , further comprising:

storing the write-file entry in the write file of the trusted computing device.

3. The computer-implemented method of claim 1 ,

wherein the executable command for the write file of the trusted computing device identifies the at least the portion of the set of restricted information.

4. The computer-implemented method of claim 3 , wherein determining at least the portion of the set of restricted information that is responsive to the write-file entry comprises:

determining at least the portion of the set of restricted information that includes information relevant to the executable command.

5. The computer-implemented method of claim 3 , wherein generating the secure output based on at least the portion of the set of restricted information comprises:

generating the secure output based on at least the portion of the set of restricted information, the secure output for use by the untrusted host device to initiate the executable command.

6. The computer-implemented method of claim 1 , wherein availing the secure output in the read file of the trusted computing device comprises:

generating the secure output by encrypting the secure output; and

storing the secure output in the read file for access by the untrusted host device via the host interface.

7. The computer-implemented method of claim 1 , wherein receiving the set of restricted information comprises:

receiving, from the trusted source via the secure interface of the trusted computing device, the set of restricted information during manufacture of the trusted computing device.

8. A trusted computing device comprising:

a secure interface for connecting to a trusted source;

a host interface for connecting to an untrusted host device, the host interface is separate from the secure interface;

a file system partition comprising a write file and a read file;

and an isolated environment comprising;

secure storage;

an isolated hardware processor interfaced with the secure storage and configured to:

receive, from the trusted source via the secure interface, a set of restricted information,

cause the secure storage to store the set of restricted information

receive, from the untrusted host device via the host interface, a write-file entry comprising an executable command for the write file of the file system partition,

identify at least a portion of the set of restricted information that is responsive to the write-file entry comprising the executable command from the untrusted host device,

generate a secure output based on at least the portion of the set of restricted information, and

cause the read file of the file system partition to store the secure output, wherein the untrusted host device accesses the secure output from the read file via the host interface and completes any host-side processing of the secure output.

9. The trusted computing device of claim 8 , where the isolated processor is further configured to:

cause the write file of the file system partition to store the write-file entry.

10. The trusted computing device of claim 8 ,

wherein the executable command for the write file of the file system partition identifies the at least the portion of the set of restricted information.

11. The trusted computing device of claim 10 , wherein to determine at least the portion of the set of restricted information that is responsive to the write-file entry, the isolated processor is configured to:

determine at least the portion of the set of restricted information that includes information relevant to the executable command.

12. The trusted computing device of claim 10 , wherein to generate the output based on at least the portion of the set of restricted information, the isolated processor is configured to:

generate the secure output based on at least the portion of the set of restricted information, the secure output for use by the untrusted host device to initiate the executable command.

13. The trusted computing device of claim 8 , wherein the isolated processor is further configured to:

generate a secure the secure output by encrypting the secure output, wherein the read file of the file system partition stores the secure output for access by the untrusted host device via the host interface.

14. The trusted computing device of claim 8 , wherein to receive the set of restricted information, the isolated processor is configured to:

receive, from the trusted source via the secure interface of the trusted computing device, the set of restricted information during manufacture of the trusted computing device.

15. A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method for secure host interaction within a trusted computing device, the method comprising:

receiving, from a trusted source via a secure interface of the trusted computing device, a set of restricted information;

storing the set of restricted information in secure storage within an isolated environment of the trusted computing device;

receiving, from an untrusted host via a host interface of the trusted computing device, a write file write-file entry comprising an executable command for a write file of the trusted computing device, wherein the host interface of the trusted computing device is separate from the secure interface of the trusted computing device;

identifying at least a portion of the set of restricted information that is responsive to the write-file entry comprising the executable command from the untrusted host device;

generating a secure output based on at least the portion of the set of restricted information; and

availing the secure output in a read file of the trusted computing device, wherein the untrusted host device accesses the secure output from the read file via the host interface and completes any host-side processing of the secure output.

16. The non-transitory computer-readable medium of claim 15 , wherein the method further comprises:

storing the write-file entry in the write file of the trusted computing device.

17. The non-transitory computer-readable medium of claim 15 ,

wherein the executable command for the write file of the trusted computing device identifies the at least the portion of the set of restricted information.

18. The non-transitory computer-readable medium of claim 17 , wherein determining at least the portion of the set of restricted information that is responsive to the write-file entry comprises:

determining at least the portion of the set of restricted information that includes information relevant to the executable command.

19. The non-transitory computer-readable medium of claim 17 , wherein generating the secure output based on at least the portion of the set of restricted information comprises:

generating the secure output based on at least the portion of the set of restricted information, the secure output for use by the untrusted host device to initiate the executable command.

20. The non-transitory computer-readable medium of claim 15 , wherein availing the secure output in the read file of the trusted computing device comprises:

generating a secure the secure output by encrypting the secure output; and

storing the secure output in the read file for access by the untrusted host device via the host interface.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2018
From: ZATKO, PEITER CHARLES; RIZZO, DOMINIC
To: GOOGLE INC.
Reel/Frame 046422/0284 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2018
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 046606/0160 →
Continuity (3)
Continuation 15389436 · Dec 22, 2016
Continuation 14587551 · Dec 31, 2014
Related Publication 20180247083A1 · Aug 30, 2018
Cited By (1)
US 12,223,110