# US 12,010,104 B1 · Systems and methods for facilitating digital document communication

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,010,104 B1
- Document ID: US12010104B1
- Status: Granted
- Kind: B1
- Application number: 17/862,789
- Filed: 2022-07-12
- Granted: 2024-06-11
- Earliest claimed: 2017-02-08
- Assignees: United Services Automobile Association (USAA)
- Applicants: United Services Automobile Association (USAA)
- Inventors: Adrian Borunda; Andrew L. Anaruk; Heather Hernandez; Gunjan C. Vijayvergia; William H. Wright, III; John Shelton; Cory S. Pickrel; Minya Liang; Sudarshan Rangarajan
- Web page: https://patentgrep.com/patent/US12010104B1

## CPC

- H04L 9/0894: {Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage}
- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- H04L 9/08: Key distribution {or management, e.g. generation, sharing or updating, of cryptographic keys or passwords (network architectures or network communication protocols for supporting key management in a packet data network H04L63/06)}
- H04L 9/3213: {using tickets or tokens, e.g. Kerberos (network architectures or network communication protocols for entities authentication using tickets in a packet data network H04L63/0807)}
- H04L 9/3234: {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)}
- H04L 63/0435: {wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for symmetric key encryption H04L9/06)}
- H04L 63/062: {for key distribution, e.g. centrally by trusted party (cryptographic mechanisms or cryptographic arrangements for key distribution involving a central third party H04L9/0819)}
- H04L 63/0807: {using tickets, e.g. Kerberos (cryptographic mechanisms or cryptographic arrangements for entity authentication using tickets or tokens H04L9/3213)}
- H04W 12/03: Protecting confidentiality, e.g. by encryption
- H04W 12/043: using a trusted network node as an anchor
- H04W 12/068: {using credential vaults, e.g. password manager applications or one time password [OTP] applications}
- H04W 12/30: Security of mobile devices; Security of mobile applications
- H04W 12/33: using wearable devices, e.g. using a smartwatch or smart-glasses
- H04W 12/63: Location-dependent; Proximity-dependent
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

Methods, systems, and apparatus, including computer programs encoded on computer storage media, to provide digital identification. One of these methods includes receiving a request for a digital document from a digital wallet executing on a mobile device. The method includes identifying a digital document provider capable of providing the requested document. The method includes sending the request for the digital document to the identified digital document provider. The method includes receiving, from the digital document provider, information that enables the mobile device to view the digital document and does not enable the computer system to view the digital document.

## Claims

### Claim 1

A computer-implemented method, comprising:
receiving, by at least one processor and from an application on a computing device, a request for a digital document;
receiving, by the at least one processor, an encrypted container and a token, the encrypted container comprising an encrypted version of the digital document, wherein:
the token identifies a location at which an encryption key capable of decrypting the encrypted container is stored; and
sending, by the at least one processor, the encrypted container and the token to the application, wherein the encrypted container and token are transmittable by the application to a digital document provider software development kit (SDK) on the computing device, wherein the computing device is configured to display a user interface, and
wherein the application is configured to provide, to the digital document provider SDK, data specifying a location on the user interface for display of the digital document,
with the digital document provider SDK being configured to:
decrypt the encrypted version of the digital document using a second encryption key stored on the computing device, and
cause the decrypted digital document to be displayed in the specified location of the user interface.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the application comprises a digital wallet application.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, further comprising identifying a system capable of providing the requested digital document.

### Claim 4 (depends on 3)

The computer-implemented method of claim 3, wherein identifying the system capable of providing the requested digital document comprises determining that the digital document provider SDK is configured to authorize the computing device to access the system capable of providing the requested digital document.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, further comprising, prior to receiving the encrypted container and the token, authenticating, by the at least one processor, a user of the computing device.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the digital document comprises a digital driver's license.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein communications between the at least one processor and the system identified as being capable of providing the requested digital document are secured using encryption.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein the at least one processor is integral with a server.

### Claim 9

A non-transitory computer storage medium encoded with computer program instructions that when executed by at least one processor cause the at least one processor to perform operations comprising:
receiving, from an application on a computing device, a request for a digital document;
receiving, an encrypted container and a token, the encrypted container comprising an encrypted version of the digital document, wherein:
the token identifies a location at which an encryption key capable of decrypting the encrypted container is stored; and
sending the encrypted container and the token to the application, wherein the encrypted container and token are transmittable by the application to a digital document provider software development kit (SDK) on the computing device, wherein the computing device is configured to display a user interface, and
wherein the application is configured to provide, to the digital document provider SDK, data specifying a location on the user interface for display of the digital document,
with the digital document provider SDK being configured to:
decrypt the encrypted version of the digital document using a second encryption key stored on the computing device, and
cause the decrypted digital document to be displayed in the specified location of the user interface.

### Claim 10 (depends on 9)

The non-transitory computer storage medium of claim 9, wherein the application comprises a digital wallet application.

### Claim 11 (depends on 9)

The non-transitory computer storage medium of claim 9, the operations further comprising identifying a system capable of providing the requested digital document.

### Claim 12 (depends on 11)

The non-transitory computer storage medium of claim 11, wherein identifying the system capable of providing the requested digital document comprises determining that the digital document provider SDK is configured to authorize the computing device to access the system capable of providing the requested digital document.

### Claim 13 (depends on 9)

The non-transitory computer storage medium of claim 9, the operations further comprising, prior to receiving the encrypted container and the token, authenticating a user of the computing device.

### Claim 14 (depends on 9)

The non-transitory computer storage medium of claim 9, wherein the digital document comprises a digital driver's license.

### Claim 15 (depends on 9)

The non-transitory computer storage medium of claim 9, wherein communications between the at least one processor and the system identified as being capable of providing the requested digital document are secured using encryption.

### Claim 16

A system, comprising:
at least one processor; and
one or more storage devices storing instructions that are operable, when executed by the at least one processor, to cause the at least one processor to perform operations comprising:
receiving, from an application on a computing device, a request for a digital document;
receiving, from an application on a computing device, a request for a digital document;
receiving, an encrypted container and a token, the encrypted container comprising an encrypted version of the digital document, wherein:
the token identifies a location at which an encryption key capable of decrypting the encrypted container is stored; and
sending the encrypted container and the token to the application, wherein the encrypted container and token are transmittable by the application to a digital document provider software development kit (SDK) on the computing device, wherein the computing device is configured to display a user interface, and
wherein the application is configured to provide, to the digital document provider SDK, data specifying a location on the user interface for display of the digital document,
with the digital document provider SDK being configured to:
decrypt the encrypted version of the digital document using a second encryption key stored on the computing device, and
cause the decrypted digital document to be displayed in the specified location of the user interface.

### Claim 17 (depends on 16)

The system of claim 16, the operations further comprising identifying a system capable of providing the requested digital document.

### Claim 18 (depends on 17)

The system of claim 17, wherein identifying the system capable of providing the requested digital document comprises determining that the digital document provider SDK is configured to authorize the computing device to access the system capable of providing the requested digital document.

### Claim 19 (depends on 17)

The system of claim 17, wherein communications between the at least one processor and the system identified as being capable of providing the requested digital document are secured using encryption.

### Claim 20 (depends on 16)

The system of claim 16, the operations further comprising, prior to receiving the encrypted container and the token, authenticating a user of the computing device.
