IP Library › Granted Patent US 11,200,350
Granted Patent B2
US 11,200,350 · App. 16/937,183 · Granted Dec 14, 2021

Method and apparatus for trusted display on untrusted computing platforms to secure applications

Inventors: Virgil D. Gligor (Pittsburgh, PA); Zongwei Zhou (Mountain View, CA); Miao Yu (Pittsburgh, PA)
Assignee: CARNEGIE MELLON UNIVERSITY
G06F21/84G06F9/45508G06F9/45558G06F21/53G06F21/57G06F21/62G06F21/70G06F21/71H04L63/1491G06F2221/2141G06F2221/2149
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 11,200,350
App. No.
16/937,183
Granted
Dec 14, 2021
Kind
B2
Abstract

This invention provides a method for providing trusted display to security sensitive applications on untrusted computing platforms. This invention has a minimal trusted code base and maintains full compatibility with the computing platforms, including their software and hardware. The core of the invention is a GPU separation kernel that (1) defines different types of GPU objects, (2) mediates access to security-sensitive GPU objects, and (3) emulates accesses to security-sensitive GPU objects whenever required by computing platform compatibility.

Claims (23)

1. A method of providing a trusted display for secure applications on an untrusted computing platform using a graphic processing unit (GPU) having a plurality of GPU objects associated therewith, comprising:

determining which of the plurality of GPU objects are security-sensitive objects;

mediating accesses to the security-sensitive GPU objects issued by the secure applications and non-secure operating systems and applications; and

emulating accesses to a subset of the security-sensitive GPU objects for the non-secure operating systems and applications.

2. The method of claim 1 wherein mediating access to the security-sensitive GPU objects includes enforcing a set of access invariants.

3. The method of claim 2 wherein emulating access to the subset of the security-sensitive GPU Objects includes emulating expected returns from accesses to GPU objects.

4. The method of claim 3 wherein the returns are emulated when untrusted components access security-sensitive GPU objects shared by the non-secure operating systems and applications or when untrusted components access the subset of the security-sensitive GPU objects in violation of the access invariants.

5. The method of claim 3 further comprising prioritizing displaying output of secured applications over displaying output of non-secure operating systems and applications.

6. The method of claim 3 wherein the method is implemented by software running in a secured environment provided by a trusted computing base.

7. The method of claim 6 wherein the trusted computing base provides a trusted path from one or more user input devices to the GPU, the trusted path including one or more secure applications executing in the secured environment provided by the trusted computing base.

8. The method of claim 7 wherein a user-chosen pattern inaccessible to the non-secure operating systems and applications is displayed on a user visible display area selected by a secure application.

9. The method of claim 1 wherein the GPU is accessed by the secure applications and the non-secure operating systems and applications concurrently.

10. The method of claim 6 wherein the trusted computing base is implemented as a micro-hypervisor.

11. The method of claim 2 further comprising:

intercepting accesses to any of the security-sensitive GPU objects; and

verifying a configuration of the security-sensitive GPU objects by the non-secure operating systems and applications.

12. The method of claim 1 further comprising:

displaying output from the secure applications in a first display window and output from non-secure operating systems and applications in a second display window.

13. The method of claim 1 wherein the GPU is part of a video card driving one or more external displays.

14. The method of claim 1 wherein mediating accesses to the security-sensitive GPU objects further comprises allowing or preventing access to the security-sensitive GPU objects.

15. The method of claim 14 further comprising:

raising one or more warnings when access to a security-sensitive GPU object is prevented.

16. The method of claim 11 wherein verifying the configuration of said security-sensitive objects includes verifying all or a subset of the set of access invariants.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2020
From: GLIGOR, VIRGIL D.; ZHOU, ZONGWEI; YU, MIAO
To: CARNEGIE MELLON UNIVERSITY
Reel/Frame 054133/0727 →
Continuity (3)
Division 15752450
Provisional Application 62284695 · Oct 6, 2015
Related Publication 20200356703A1 · Nov 12, 2020