IP Library Granted Patent US 9,798,559
Granted Patent B2
US 9,798,559 · App. 14/583,616 · Granted Oct 24, 2017

Trusted binary translation

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,798,559
App. No.
14/583,616
Granted
Oct 24, 2017
Kind
B2
Abstract

In an example, a computing device may include a trusted execution environment (TEE) for executing signed and verified code. The device may receive a trusted binary object in a first form, but the object may need to be converted to a second format, either on-the-fly, or in advance. This may include, for example, a bytecode interpreter, script interpreter, runtime engine, compiler, just-in-time compiler, or other species of binary translator. The binary translator may be run from the TEE, and the output may then be signed by the TEE and treated as a new trusted binary.

Claims (39)

1. A computing apparatus comprising:

a processor;

a memory; and

a trusted execution environment (TEE), comprising a memory enclave and processor instructions for accessing the memory enclave; and

one or more logic elements, including at least one hardware logic element, comprising a binary translation engine for operating within the TEE, and including a trusted compiler, runtime, or interpreter operable for:

receiving a trusted first signed object in a first format, the first signed object signed by a certificate;

translating the first signed object into a trusted second object in a second format;

consulting a certificate expiration or revocation list to determine that the certificate is not expired; and

after determining that the certificate is not expired, signing the second object.

2. The computing apparatus of claim 1 , wherein the first format is a non-native binary format.

3. The computing apparatus of claim 1 , wherein the second format is a native binary format.

4. The computing apparatus of claim 1 , wherein the TEE comprises a memory enclave.

5. The computing apparatus of claim 1 , wherein the TEE comprises a processor operable to provide special TEE instructions.

6. The computing apparatus of claim 1 , wherein the first signed object is to be signed by a key, and wherein signing the second object comprises signing the second object with the key.

7. The computing apparatus of claim 1 , wherein the first signed object is to be signed with a first key, and wherein signing the second object comprises signing the second object with a second key signed by a common issuer of the first key.

8. The computing apparatus of claim 1 , wherein the first signed object is to be signed with a first key, and wherein signing the second object comprises signing the second object with a second key provided by a vendor of the first signed object.

9. The computing apparatus of claim 1 , wherein the binary translation engine is further operable for receiving a code validation object signed by a code validation object key, and verifying the code validation object key.

10. The computing apparatus of claim 9 , wherein verifying the code validation object key comprises receiving a public verification key.

11. One or more tangible, non-transitory computer-readable mediums having stored thereon instructions that, when executed, are operable to provide a binary translation engine including a trusted compiler, runtime, or interpreter operable for:

establishing a trusted execution environment (TEE) within a memory enclave;

receiving into the enclave a first signed object in a first format, the first signed object signed by a certificate;

translating the first signed object into a trusted second object in a second format within the enclave;

consulting a certificate expiration or revocation list to determine that the certificate is not expired; and

after determining that the certificate is not expired, signing the second object within the enclave.

12. The one or more tangible, non-transitory computer-readable mediums of claim 11 , wherein the first format is a non-native binary format.

13. The one or more tangible, non-transitory computer-readable mediums of claim 11 , wherein the second format is a native binary format.

14. The one or more tangible, non-transitory computer-readable mediums of claim 11 , wherein the binary translation engine comprises a binary translator selected from a group consisting of a runtime engine, an interpreter, a just-in-time compiler, ahead-of-time compiler, a virtual machine, a compiler, a linker, and a toolchain utility.

15. The one or more tangible, non-transitory computer-readable mediums of claim 11 , wherein the first signed object is to be signed by a key, and wherein signing the second object comprises signing the second object with the key.

16. The one or more tangible, non-transitory computer-readable mediums of claim 11 , wherein the first signed object is to be signed with a first key, and wherein signing the second object comprises signing the second object with a second key signed by a common issuer of the first key.

17. The one or more tangible, non-transitory computer-readable mediums of claim 11 , wherein first signed object is to be signed with a first key, and wherein signing the second object comprises signing the second object with a second key provided by a vendor of the first object.

18. The one or more tangible, non-transitory computer-readable mediums of claim 11 , wherein the binary translation engine is further operable for receiving a code validation object signed by a code validation object key, and verifying the code validation object key.

19. A method of providing a binary translation engine including a trusted compiler, runtime, or interpreter, comprising:

establishing a memory enclave within a computer memory;

receiving into the memory enclave a trusted first signed object in a first format, the first signed object signed by a certificate;

translating, within the enclave, the first signed object into a trusted second object in a second format;

consulting a certificate expiration or revocation list to determine that the certificate is not expired; and

after determining that the certificate is not expired, signing, within the enclave, the second object.

20. The method of claim 19 , wherein translating comprises:

performing runtime engine operations, interpreting, just-in-time compiling, ahead-of-time compiling, providing virtual machine services, compiling, linking, or providing toolchain utility services.

Assignments (21)
RELEASE OF SECURITY INTEREST Recorded Aug 16, 2024
From: STG PARTNERS, LLC
To: MUSARUBRA US LLC; SKYHIGH SECURITY LLC
Reel/Frame 068671/0435 →
INTELLECTUAL PROPERTY ASSIGNMENT AGREEMENT Recorded Aug 15, 2024
From: MUSARUBRA US LLC
To: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
Reel/Frame 068656/0098 →
INTELLECTUAL PROPERTY ASSIGNMENT AGREEMENT Recorded Aug 15, 2024
From: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
To: MAGENTA SECURITY HOLDINGS LLC
Reel/Frame 068656/0920 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Aug 15, 2024
From: MAGENTA SECURITY HOLDINGS LLC; SKYHIGH SECURITY LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 068657/0666 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2024
From: MUSARUBRA US LLC
To: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
Reel/Frame 068657/0764 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2024
From: MAGENTA SECURITY INTERMEDIATE HOLDINGS LLC
To: MAGENTA SECURITY HOLDINGS LLC
Reel/Frame 068657/0843 →
TERMINATION AND RELEASE OF FIRST LIEN SECURITY INTEREST IN CERTAIN PATENTS RECORDED AT REEL 057453, FRAME 0053 Recorded Aug 15, 2024
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: MUSARUBRA US LLC
Reel/Frame 068655/0413 →
TERMINATION AND RELEASE OF SECOND LIEN SECURITY INTEREST IN CERTAIN PATENTS RECORDED AT REEL 056990, FRAME 0960 Recorded Aug 15, 2024
From: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
To: MUSARUBRA US LLC
Reel/Frame 068655/0430 →
SECURITY INTEREST Recorded Aug 1, 2024
From: MUSARUBRA US LLC; SKYHIGH SECURITY LLC
To: STG PARTNERS, LLC
Reel/Frame 068324/0731 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2022
From: MCAFEE, LLC
To: MUSARUBRA US LLC
Reel/Frame 061007/0124 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 057315 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 11, 2022
From: MCAFEE, LLC
To: MUSARUBRA US LLC
Reel/Frame 060878/0126 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Jul 27, 2021
From: MUSARUBRA US LLC; SKYHIGH NETWORKS, LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 056990/0960 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Jul 27, 2021
From: MUSARUBRA US LLC; SKYHIGH NETWORKS, LLC
To: UBS AG, STAMFORD BRANCH, AS COLLATERAL AGENT
Reel/Frame 057453/0053 →
RELEASE OF SECURITY INTEREST Recorded Jul 26, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MCAFEE, LLC; SKYHIGH NETWORKS, LLC
Reel/Frame 057620/0102 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2015
From: SHAH, SAMIR; SMITH, NED M.; MARTIN, JASON; SHELLER, MICAH J.; CHAKRABARTI, SOMNATH; XING, BIN
To: MCAFEE, INC.
Reel/Frame 035132/0152 →