# US 2018/0324155 A1 · Decentralized Authoritative Messaging

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

- Number: US 2018/0324155 A1
- Document ID: US20180324155A1
- Status: Published application
- Kind: A1
- Application number: 16/020,152
- Filed: 2018-06-27
- Published: 2018-11-08
- Earliest claimed: 2015-12-18
- Assignees: Wickr Inc.
- Applicants: Wickr Inc.
- Inventors: Thomas Michael Leavy; Gerard Ryan
- Web page: https://patentgrep.com/patent/US20180324155A1

## CPC

- H04L 63/0428: {wherein the data content is protected, e.g. by encrypting or encapsulating the payload}
- G06F 16/22: Indexing; Data structures therefor; Storage structures
- G06F 21/602: {Providing cryptographic facilities or services}
- H04L 9/0637: {Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]}
- H04L 9/0643: {Hash functions, e.g. MD5, SHA, HMAC or f9 MAC}
- H04L 9/0822: {using key encryption key}
- H04L 9/0861: {Generation of secret information including derivation or calculation of cryptographic keys or passwords}
- H04L 9/0894: {Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage}
- H04L 51/04: Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L 51/10: Multimedia information
- H04L 51/224: providing notification on incoming messages, e.g. pushed notifications of received messages
- H04L 51/58: Message adaptation for wireless communication
- H04L 63/0471: {applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding}
- H04L 63/06: {for supporting key management in a packet data network (cryptographic mechanisms or cryptographic arrangements for key management H04L9/08)}
- H04L 63/061: {for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838)}
- H04L 63/065: {for group communications (cryptographic mechanisms or cryptographic arrangements for key management involving conference or group key H04L9/0833)}
- H04L 63/104: {Grouping of entities}
- H04L 65/403: Arrangements for multi-party communication, e.g. for conferences (data switching systems for conference H04L12/18; arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities H04M3/56; television conferencing systems H04N7/15)
- H04L 67/146: Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
- H04W 12/041: Key generation or derivation
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

A secure chat client is described that allows users to exchange encrypted communications via secure chat rooms, as well as one-to-one communications. In particular, the secure chat client allows users to create, configure, and manage secure chat rooms. Furthermore, the secure chat client provides users with the ability to recover secure messages when they obtain a new device or otherwise lose communications.

## Claims

### Claim 1

(canceled)

### Claim 2

A method for accessing an encrypted communication, the method comprising:
receiving, at a first device, a first encrypted communication from a second device, wherein the first encrypted communication includes a first ephemeral component;
deriving, by the first device, a first key using the first ephemeral component and a second ephemeral component;
decrypting, by the first device, the first encrypted communication received from the second device using, in part, the first key;
providing, by the first device, the first decrypted communication to a user of the first device.

### Claim 3 (depends on 2)

The method of claim 2, wherein the first ephemeral component is a first public component associated with the second device.

### Claim 4 (depends on 3)

The method of claim 3, wherein the second ephemeral component is a second private component associated with the first device.

### Claim 5 (depends on 2)

The method of claim 2, comprising:
transmitting, from the first device, a second encrypted communication to the second device, wherein the second encrypted communication includes a third ephemeral component associated with the first device.

### Claim 6 (depends on 2)

The method of claim 2, comprising:
encrypting, by the first device, the first decrypted communication with a local storage key and storing the local-storage-key-encrypted first communication in a storage of the first device.

### Claim 7 (depends on 2)

The method of claim 2, wherein the first key is a key-encrypting key.

### Claim 8 (depends on 7)

The method of claim 7, wherein decrypting the first encrypted communication further comprises:
decrypting, by the first device, a second key using the key-encrypting key.

### Claim 9 (depends on 8)

The method of claim 8, wherein the second key is an encrypted symmetric key included in the first encrypted communication received from the second device.

### Claim 10 (depends on 8)

The method of claim 8, further comprising:
decrypting, by the first device, the first encrypted communication using the decrypted second key.

### Claim 11

A system for accessing an encrypted communication, the system comprising:
an interface configured to receive a first encrypted communication from a second device, wherein the first encrypted communication includes a first ephemeral component;
a processor configured to derive a first key using the first ephemeral component and a second ephemeral component and decrypt the first encrypted communication received from the second device using, in part, the first key; and
an output configured to provide the first decrypted communication to a user of a first device.

### Claim 12 (depends on 11)

The system of claim 11, wherein the first ephemeral component is a first public component associated with the second device.

### Claim 13 (depends on 12)

The system of claim 12, wherein the second ephemeral component is a second private component associated with the first device.

### Claim 14

A non-transitory computer-readable medium comprising instructions that when, executed by at least one processor, perform the steps of:
receiving a first encrypted communication from a second device, wherein the first encrypted communication includes a first ephemeral component;
deriving a first key using the first ephemeral component and a second ephemeral component;
decrypting the first encrypted communication received from the second device using, in part, the first key;
providing the first decrypted communication to a user of a first device.

### Claim 15 (depends on 14)

The non-transitory computer-readable medium of claim 14, wherein the first ephemeral component is a first public component associated with the second device.

### Claim 16 (depends on 15)

The non-transitory computer-readable medium of claim 15, wherein the second ephemeral component is a second private component associated with the first device.

### Claim 17 (depends on 14)

The non-transitory computer-readable medium of claim 14, wherein receiving a first encrypted communication from a second device comprises instructions for:
receiving a notification, from a first server, indicating that the first encrypted communication has been received from the second device.

### Claim 18 (depends on 17)

The non-transitory computer-readable medium of claim 17, comprising instructions for:
retrieving the first encrypted communication from the first server in response to the notification received from the first server.

### Claim 19 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the notification is a push notification.
