IP Library Granted Patent US 10,396,982
Granted Patent B1
US 10,396,982 · App. 15/240,989 · Granted Aug 27, 2019

Key management and dynamic perfect forward secrecy

Inventors: Robert Statica (Long Valley, NJ); Christopher A. Howell (Freehold, NJ)
Assignee: Wickr Inc.
H04L9/083H04L9/30H04L2209/24
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,396,982
App. No.
15/240,989
Granted
Aug 27, 2019
Kind
B1
Abstract

An indication is received from a server that a first pool of public keys should be transmitted to a server. At least one public-private keypair is generated in response to the received indication. The public key portion of the generated keypair is transmitted to the server. A subsequent indication is received from the server that an additional public key should be transmitted to the server.

Claims (45)

1. A system, comprising:

an interface configured to:

receive an indication from a server that a plurality of public keys should be transmitted to a server;

receive an encrypted communication from a sender device, wherein the encrypted communication includes a first reference value;

a processor configured to:

generate a plurality of asymmetric key pairs in response to the received indication;

assign each of the plurality of asymmetric key pairs a reference value;

transmit the plurality of public keys and the reference value assigned to each of the plurality of public keys to the server;

retrieve, using the first reference value included with the encrypted communication, the first private key corresponding to a first public key used by the sender device;

decrypt a symmetric key using, in part, the retrieved first private key;

decrypt the encrypted communication using the decrypted symmetric key; and

delete at least one of a first private key from a first memory after decrypting the encrypted communication; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system of claim 1 wherein the indication includes a number of public keys that should be transmitted.

3. The system of claim 2 wherein the number of public keys that should be transmitted maintains a first pool size.

4. The system of claim 2 wherein the number of public keys that should be transmitted increases a first pool size to a larger second pool size.

5. The system of claim 4 wherein the number of public keys that should be transmitted is determined based at least in part on an expansion factor.

6. A method, comprising:

receiving an indication from a server that a plurality of public keys should be transmitted to the server;

generating a plurality of asymmetric key pairs in response to the received indication;

assigning each of the plurality of asymmetric key pairs a reference value;

transmitting the plurality of public keys and the reference value assigned to each of the plurality of public keys to the server;

receiving an encrypted communication from a sender device, wherein the encrypted communication includes a first reference value;

retrieving, using the first reference value, the first private key corresponding to a first public key used by the sender device;

decrypting a symmetric key using, in part, the retrieved first private key;

decrypting the encrypted communication received from the sender device using the decrypted symmetric key; and

deleting at least one of a first private key from a first memory after decrypting the encrypted communication.

7. The method of claim 6 wherein the indication includes a number of public keys that should be transmitted.

8. The method of claim 7 wherein the number of public keys that should be transmitted maintains a first pool size.

9. The method of claim 7 wherein the number of public keys that should be transmitted increases a first pool size to a larger second pool size.

10. The method of claim 9 wherein the number of public keys that should be transmitted is determined based at least in part on an expansion factor.

11. A computer program product, the computer program product being embodied in a tangible non-transitory computer readable storage medium and comprising computer instructions for:

receiving an indication from a server that a plurality of public keys should be transmitted to the server;

generating a plurality of asymmetric key pairs in response to the received indication;

assigning each of the plurality of asymmetric key pairs a reference value;

transmitting the plurality of public keys and the reference value assigned to each of the plurality of public keys to the server;

receiving an encrypted communication from a sender device, wherein the encrypted communication includes a first reference value;

retrieving, using the first reference value, the first private key corresponding to a first public key used by the sender device;

decrypting a symmetric key using, in part, the retrieved first private key;

decrypting the encrypted communication received from the sender device using the decrypted symmetric key; and

deleting at least one of a first private key from a first memory after decrypting the encrypted communication.

12. The computer program product of claim 11 wherein the indication includes a number of public keys that should be transmitted.

13. The computer program product of claim 12 wherein the number of public keys that should be transmitted maintains a first pool size.

14. The computer program product of claim 12 wherein the number of public keys that should be transmitted increases a first pool size to a larger second pool size.

15. The computer program product of claim 14 wherein the number of public keys that should be transmitted is determined based at least in part on an expansion factor.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2021
From: WICKR LLC
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 057366/0573 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 25, 2021
From: SILICON VALLEY BANK
To: WICKR INC.
Reel/Frame 056684/0366 →
SECURITY AGREEMENT Recorded Dec 12, 2017
From: WICKR INC.
To: SILICON VALLEY BANK
Reel/Frame 044872/0729 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2017
From: STATICA, ROBERT; HOWELL, CHRISTOPHER A
To: WICKR INC.
Reel/Frame 043055/0528 →
Continuity (2)
Continuation 14213736 · Mar 14, 2014
Provisional Application 61943826 · Feb 24, 2014