Secure hardware for cross-device trusted applications

US9686077B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9686077-B2
Application numberUS-201514629501-A
CountryUS
Kind codeB2
Filing dateFeb 24, 2015
Priority dateMar 6, 2014
Publication dateJun 20, 2017
Grant dateJun 20, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Various technologies described herein pertain to a computing device that includes secure hardware (e.g., a TPM, a secure processor of a processing platform, protected memory that includes a software-based TPM, etc.). The secure hardware includes a shared secret, which is shared by the secure hardware and a server computing system. The shared secret is provisioned by the server computing system or a provisioning computing system of a party affiliated with the server computing system. The secure hardware further includes a cryptographic engine that can execute a cryptographic algorithm using the shared secret or a key generated from the shared secret. The cryptographic engine can execute the cryptographic algorithm to perform encryption, decryption, authentication, and/or attestation.

First claim

Opening claim text (preview).

What is claimed is: 1. A computing device, comprising: secure hardware, comprising: a shared secret, the shared secret being shared by the secure hardware and a server computing system, the shared secret being provisioned by at least one of the server computing system or a provisioning computing system of a party affiliated with the server computing system; and a cryptographic engine; wherein the secure hardware synchronizes to clock values provided by the server computing system; wherein the secure hardware generates a message for accessing a remote resource of the server computing system, the message generated responsive to the secure hardware receiving a command; wherein the cryptographic engine of the secure hardware encrypts the message for transmission to the server computing system, the cryptographic engine encrypts the message using the shared secret or a key generated from the shared secret to generate an encrypted message; and wherein the computing device transmits the encrypted message to the server computing system, the remote resource of the server computing system being accessible based on the encrypted message. 2. The computing device of claim 1 , further comprising: at least one processor; and storage external to the secure hardware, the storage comprises computer-executable instructions that, when executed by the at least one processor, cause the at least one processor to perform acts including: sending the command to the secure hardware; receiving the encrypted message from the secure hardware; and transmitting the encrypted message to the server computing system; wherein the secure hardware comprises: at least one secure processor shielded from access by or interference from sources external to the secure hardware; and secure storage that is inaccessible by the sources external to the secure hardware. 3. The computing device of claim 1 , further comprising: at least one processor; and storage external to the secure hardware, the storage comprises computer-executable instructions executable by the at least one processor during a first set of time periods, the at least one processor being prohibited from executing the computer-executable instructions during a second set of time periods, the first set of time periods and the second set of time periods being non-overlapping; wherein the computer-executable instructions, when executed by the at least one processor, cause the at least one processor to perform acts including: responsive to being executed by the at least one processor during the first set of time periods: sending the command to the secure hardware; receiving the encrypted message from the secure hardware; and transmitting the encrypted message to the server computing system; wherein the at least one processor generates the message for accessing the remote resource of the server computing system during the second set of time periods, and the at least one processor is prohibited from generating the message for accessing the remote resource of the server computing system during the first set of time periods; and wherein the cryptographic engine is executable by the at least one processor during the second set of time periods, and the at least one processor is prohibited from executing the cryptographic engine during the first set of time periods. 4. The computing device of claim 1 , the encrypted message causes the server computing system to write data to remote storage of the server computing system. 5. The computing device of claim 1 , the encrypted message causes the server computing system to read data from remote storage of the server computing system. 6. The computing device of claim 5 , the cryptographic engine decrypts an encrypted reply message using at least one of the shared secret or the key generated from the shared secret, the encrypted reply message being responsive to the encrypted message, the encrypted reply message decrypted to output the data; and the secure hardware further comprising: secure storage, the secure storage locally stores the data. 7. The computing device of claim 5 , wherein differing secure hardware of a differing computing device caused the server computing system to write the data to the remote storage of the server computing system. 8. The computing device of claim 1 , the encrypted message causes a clock value to be retrieved from the server computing system. 9. The computing device of claim 1 , the shared secret further being shared by differing secure hardware of a differing computing device; wherein the secure hardware, the differing secure hardware of the differing computing device, and the server computing system are provisioned with the shared secret by at least one of the server computing system or the provisioning computing system of the party affiliated with the server computing system. 10. The computing device of claim 1 , wherein: the secure hardware verifies whether a condition specified in a policy is satisfied based on data retrieved from the server computing system, the policy corresponds to a hardware protected object received by the secure hardware; and the cryptographic engine decrypts the hardware protected object using at least one of the shared secret or the key generated from the shared secret when the condition is identified as being satisfied, and the cryptographic engine is prohibited from decrypting the hardware protected object when the condition is identified as not being satisfied. 11. The computing device of claim 1 , the secure hardware being a physical Trusted Platform Module (TPM) chip. 12. The computing device of claim 1 , further comprising: a processing platform, comprising: at least one processor that executes an operating system of the computing device; and at least one secure processor in communication with the at least one processor, wherein the secure hardware comprises the at least one secure processor, and the at least one secure processor has access to the shared secret; wherein the at least one processor is prohibited from accessing the shared secret. 13. The computing device of claim 1 , the secure hardware comprising: protected memory of the computing device, the protected memory comprising: a software-based Trusted Platform Module (TPM), the software-based TPM comprising the shared secret and the cryptographic engine. 14. The computing device of claim 1 , the secure hardware comprising: a secure enclave on a processor, the secure enclave stores the shared secret and protects the shared secret from sources external to the secure hardware. 15. The computing device of claim 1 , the cryptographic engine executes a cryptographic algorithm using the shared secret or the key generated from the shared secret to perform at least one of authentication or attestation. 16. Secure hardware, comprising: a shared secret, the shared secret being shared by the secure hardware and a server computing system; a symmetric key generated by the secure hardware based on the shared secret; and a cryptographic engine; wherein the secure hardware synchronizes to clock values provided by the server computing system; wherein the secure hardware generates a message for accessing remote storage of the server computing system, the message generated responsive to the secure hardware receiving a command; and wherein the cryptographic engine of the secure hardware encrypts the message for transmission to the server computing system, the cryptographic engine encrypts the message using the symmetric key to generate an encrypted message, the encrypted message

Assignees

Inventors

Classifications

  • Trusted platform modules [TPM] · CPC title

  • by registering files or documents with a third party · CPC title

  • to assure secure storage of data (address-based protection against unauthorised use of memory G06F12/14; record carriers for use with machines and with at least a part designed to carry digital markings G06K19/00) · CPC title

  • H04L9/3234Primary

    involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token (network architectures or network communication protocols for supporting authentication of entities using an additional device in a packet data network H04L63/0853) · CPC title

  • involving additional devices, e.g. trusted platform module [TPM], smartcard or USB · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9686077B2 cover?
Various technologies described herein pertain to a computing device that includes secure hardware (e.g., a TPM, a secure processor of a processing platform, protected memory that includes a software-based TPM, etc.). The secure hardware includes a shared secret, which is shared by the secure hardware and a server computing system. The shared secret is provisioned by the server computing system …
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification H04L9/3234. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jun 20 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).