Hybrid integration of software development kit with secure execution environment

US10511583B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10511583-B2
Application numberUS-201816165955-A
CountryUS
Kind codeB2
Filing dateOct 19, 2018
Priority dateDec 31, 2014
Publication dateDec 17, 2019
Grant dateDec 17, 2019

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.

A portable communication device may include a mobile application executing in an application execution environment and a secure application executing in a trusted execution environment. The secure application may receive, from the mobile application, a storage request to store sensitive data. The storage request may include an encrypted data type identifier and an encrypted sensitive data. The secure application may decrypt the encrypted data type identifier and the encrypted sensitive data using a transport key, and re-encrypt the sensitive data using a storage key. The re-encrypted sensitive data can then be stored in a memory of the portable communication device which is outside the trusted execution environment.

First claim

Opening claim text (preview).

What is claimed is: 1. A portable communication device comprising: one or more processor circuits; and one or more memory units coupled to the one or more processor circuits and storing computer readable code implementing a secure application in a trusted execution environment, which when executed by the one or more processor circuits, performs operations including: receiving, by the secure application from a mobile application executing in an application execution environment of the portable communication device, a first storage request to store first sensitive data, the first sensitive data being a first token or a cryptogram generation key, the first storage request including a first encrypted data type identifier and first encrypted sensitive data; decrypting, by the secure application, the first encrypted data type identifier and the first encrypted sensitive data using a transport key; determining, by the secure application, whether the first decrypted data type identifier indicates that the first sensitive data is a token or a cryptogram generation key; re-encrypting, by the secure application based on the first decrypted data type identifier, the first sensitive data using a key to generate re-encrypted first sensitive data; and storing the re-encrypted first sensitive data outside the trusted execution environment, wherein the first sensitive data is the first token, wherein the first decrypted data type identifier indicates that the first sensitive data is a token, wherein the key is a token-storage key, and wherein the operations further include: receiving, by the secure application from the mobile application, a second storage request to store second sensitive data, the second storage request including a second encrypted data type identifier and second encrypted sensitive data; decrypting, by the secure application, the second encrypted data type identifier and the second encrypted sensitive data using the transport key; determining, by the secure application, that the second decrypted data type identifier indicates the second sensitive data to store is a token; re-encrypting, by the secure application, the second sensitive data using the token-storage key to generate a re-encrypted token; and storing the re-encrypted token outside the trusted execution environment. 2. The portable communication device of claim 1 , wherein the operations further include: receiving, by the secure application from the mobile application, a request to retrieve the first token, the request including the re-encrypted first sensitive data; decrypting, by the secure application, the re-encrypted first sensitive data using the token-storage key; and sending, by the secure application to the mobile application, the first token. 3. The portable communication device of claim 1 , wherein the first encrypted sensitive data is received by the mobile application from a server, and the first encrypted sensitive data is signed by the server, and wherein the operations further include: verifying, by the secure application, that the first encrypted sensitive data was signed by the server using a certificate associated with the server. 4. A method for managing sensitive data in a portable communication device having a mobile application executing in an application execution environment and a secure application executing in a trusted execution environment, the method comprising: receiving, by the secure application from the mobile application executing in the application execution environment of the portable communication device, a first storage request to store first sensitive data, the first sensitive data being a first token or a cryptogram generation key, the first storage request including a first encrypted data type identifier and first encrypted sensitive data; decrypting, by the secure application, the first encrypted data type identifier and the first encrypted sensitive data using a transport key; determining, by the secure application, whether the first decrypted data type identifier indicates that the first sensitive data is a token or a cryptogram generation key; re-encrypting, by the secure application based on the first decrypted data type identifier, the first sensitive data using a key to generate re-encrypted first sensitive data; and storing the re-encrypted first sensitive data outside the trusted execution environment, wherein the first sensitive data is the first token, wherein the first decrypted data type identifier indicates that the first sensitive data is a token, wherein the key is a token-storage key, the method further comprising: receiving, by the secure application from the mobile application, a second storage request to store second sensitive data, the second storage request including a second encrypted data type identifier and second encrypted sensitive data; decrypting, by the secure application, the second encrypted data type identifier and the second encrypted sensitive data using the transport key; determining, by the secure application, that the second decrypted data type identifier indicates the second sensitive data to store is a token; re-encrypting, by the secure application, the second sensitive data using the token-storage key to generate a second re-encrypted token; and storing the second re-encrypted token outside the trusted execution environment. 5. The method of claim 4 , further comprising: receiving, by the secure application from the mobile application, a request to retrieve the first token, the request including the re-encrypted first sensitive data; decrypting, by the secure application, the re-encrypted first sensitive data using the token-storage key; and sending, by the secure application to the mobile application, the first token. 6. The method of claim 4 , wherein the first encrypted sensitive data is received by the mobile application from a server, and the first encrypted sensitive data is signed by the server, and wherein the method further comprises: verifying, by the secure application, that the first encrypted sensitive data was signed by the server using a certificate associated with the server. 7. The method of claim 4 , further comprising: storing, by the secure application, a crypto library in the trusted execution environment, the crypto library including the transport key, a key-storage key, and the token-storage key. 8. The method of claim 4 , further comprising: selecting, by the secure application, the token storage key to use for the re-encrypting of the decrypted first sensitive data based on the first encrypted data type identifier indicating the first storage request is for a token. 9. The portable communication device of claim 1 , the operations further comprising: storing, by the secure application, a crypto library in the trusted execution environment, the crypto library including the transport key and the token-storage key. 10. The portable communication device of claim 1 , the operations further comprising: selecting, by the secure application, the token-storage key to use for the re-encrypting of the decrypted first sensitive data based on the first encrypted data type identifier indicating the first storage request is for a token. 11. The portable communication device of claim 1 , the operations further comprising: receiving, from an access device, transaction data for conducting a transaction; decrypting the first sensitive data using the token-storage key; and transmitting, to the access device, the first sensitive data for conducting the transaction. 12. The method of claim 4 , further comprising: receiving, by the secure application from an access device, t

Assignees

Inventors

Classifications

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

  • H04L63/062Primary

    for key distribution, e.g. centrally by trusted party (cryptographic mechanisms or cryptographic arrangements for key distribution involving a central third party H04L9/0819) · CPC title

  • using key encryption key · CPC title

  • Generation of secret information including derivation or calculation of cryptographic keys or passwords · CPC title

  • combining multiple encryption tools for a transaction · 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 US10511583B2 cover?
A portable communication device may include a mobile application executing in an application execution environment and a secure application executing in a trusted execution environment. The secure application may receive, from the mobile application, a storage request to store sensitive data. The storage request may include an encrypted data type identifier and an encrypted sensitive data. The …
Who is the assignee on this patent?
Visa Int Service Ass
What technology area does this patent fall under?
Primary CPC classification H04L63/062. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 17 2019 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).