# US 8,151,106 B2 · Dynamically resolving recipients to retrieve public keys during send/receive

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

- Number: US 8,151,106 B2
- Document ID: US8151106B2
- Status: Granted
- Kind: B2
- Application number: 12/775,852
- Filed: 2010-05-07
- Published: 2010-09-09
- Granted: 2012-04-03
- Earliest claimed: 2005-06-03
- Assignees: Microsoft Corporation
- Inventors: Garrett R. Vargas; Paul K. Kroman; Selvaraj Nalliah; Eian D. Counts; Gary W. Hall; Anoop Gupta
- Web page: https://patentgrep.com/patent/US8151106B2

## CPC

- H04L 9/30: Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L 9/12: Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
- H04L 63/0442: {wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption (cryptographic mechanisms or cryptographic arrangements for public-key encryption H04L9/30)}
- H04L 63/06: {for supporting key management in a packet data network (cryptographic mechanisms or cryptographic arrangements for key management H04L9/08)}
- H04L 63/0823: {using certificates (cryptographic mechanisms or cryptographic arrangements for entity authentication involving certificates H04L9/3263)}
- H04L 2209/80: Wireless
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Systems and methods are disclosed that facilitate identifying messages generated on a mobile device while the device is offline as requiring encryption, storing the messages in a message outbox with a flag indicating that encryption is required, and identifying recipients of the flagged messages to generate a recipient list. The recipient list can be piggybacked on a server synchronization request when the mobile device enters a period of online activity, and a server can return public keys associated with identified recipients to permit an encryption component, such as a secure/multipurpose Internet mail extension protocol (S/MIME) encryption component, in the mobile device to encrypt the messages.

## Claims

### Claim 1

A method for processing a message on a mobile device, comprising:
storing a message designated to be encrypted during wireless communication on the mobile device during a period that the mobile device is unable to communicate with a server; and
upon the mobile device becoming able to communicate with the server,
assessing messages stored on the mobile device, identifying the stored message designated to be encrypted during wireless communication, and identifying an intended recipient for the stored message designated to be encrypted during wireless communication, and
generating a synchronization request for synchronizing between the mobile device and the server, the synchronization request comprising a request for a public key associated with the identified recipient of the stored message.

### Claim 2 (depends on 1)

The method of claim 1, wherein storing a message comprises associating the message with an identifier that indicates the message requires a public key.

### Claim 3 (depends on 1)

The method of claim 1, wherein generating a synchronization request comprises identifying a recipient associated with the stored message.

### Claim 4 (depends on 3)

The method of claim 3, wherein identifying a recipient associated with the stored message comprises identifying an email alias.

### Claim 5 (depends on 1)

The method of claim 1, wherein the synchronization request comprising a request for a public key associated with an identified recipient comprises a synchronization request identifying at least one of an email alias or a device identifier.

### Claim 6 (depends on 5)

The method of claim 5, wherein the synchronization request comprises a request to resolve at least one of an email alias or a device identifier against the server.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
transmitting the synchronization request to the server; and
receiving a public key from the server.

### Claim 8 (depends on 7)

The method of claim 7, further comprising:
encrypting the stored message using the received public key; and
transmitting the encrypted message to the recipient.

### Claim 9 (depends on 8)

The method of claim 8, wherein encrypting the stored message comprises employing an S/MIME encryption technique.

### Claim 10 (depends on 1)

The method of claim 1, further comprising generating an error message upon receipt of an indication a public key cannot be determined for the identified recipient.

### Claim 11 (depends on 10)

The method of claim 10, further comprising storing the error message in an inbox data store for the mobile device and storing the stored message in a data store comprising drafts.

### Claim 12

A tangible computer readable medium having instructions stored thereon that, if executed by a computing device, cause the computing device to perform operations comprising:
storing messages designated to be encrypted during wireless communication on the mobile device during a period that the mobile device is unable to communicate with a server;
upon the mobile device becoming able to communicate with the server,
assessing messages stored on the mobile device, identifying stored messages designated to be encrypted during wireless communication, and identifying intended recipients for the stored messages designated to be encrypted during wireless communication, and
generating a synchronization request for synchronizing between the mobile device and the server, the synchronization request comprising a request for public keys associated with identified recipients of a plurality of the stored messages.

### Claim 13 (depends on 12)

The tangible computer readable medium of claim 12, wherein storing messages comprises associating an indicator with each stored message that is to be encrypted when transmitted.

### Claim 14 (depends on 13)

The tangible computer readable medium of claim 13, wherein generating a synchronization request comprises:
assessing the stored messages and compiling recipient information for messages having an associated indicator.

### Claim 15 (depends on 14)

The tangible computer readable medium of claim 14, wherein compiling recipient information for messages having an associated indicator comprises compiling a list of recipients.

### Claim 16 (depends on 15)

The tangible computer readable medium of claim 15, wherein the synchronization request comprising a request for public keys associated with identified recipients comprises the list of recipients.

### Claim 17 (depends on 16)

The tangible computer readable medium of claim 16, wherein the list of recipients comprises email aliases.

### Claim 18

A mobile device, comprising:
a computing processor; and
memory communicatively coupled with the computing processor, the memory comprising instructions executable on the computing processor to perform the following:
storing a message on the mobile device during a period that the mobile device is unable to communicate with a server;
associating the message with an identifier that indicates the message requires use of an encryption technique when transmitting;
upon the mobile device becoming able to communicate with the server:
assessing messages stored on the mobile device, identifying the stored message requiring use of an encryption technique when transmitting, and identifying an intended recipient for the stored message;
generating a synchronization request for synchronizing between the mobile device and the server, the synchronization request comprising a request for a certificate associated with the identified recipient;
transmitting the synchronization request; and
receiving the certificate.

### Claim 19 (depends on 18)

The mobile device of claim 18, the memory further comprising instructions to perform the following:
encrypting data using the received certificate; and
transmitting the encrypted data.

### Claim 20 (depends on 19)

The mobile device of claim 19, wherein encrypting data using the received certificate comprises employing an S/MIME encryption technique.
