IP Library Granted Patent US 11,924,330
Granted Patent B1
US 11,924,330 · App. 17/721,170 · Granted Mar 5, 2024

Cryptographic key exchange

Inventor: Andrew Garrod Bosworth (San Mateo, CA)
Assignee: Meta Platforms Technologies, LLC
H04L9/0822H04L9/16H04L63/04H04L63/061H04L63/065H04L67/1001G06F21/6209
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 11,924,330
App. No.
17/721,170
Granted
Mar 5, 2024
Kind
B1
Abstract

Various aspects of the subject technology relate to systems, methods, and machine-readable media for providing an encryption key exchange. Various aspects may include identifying a database of cryptographic keys configured for encryption. Aspects may also include sending a request for a private key for decryption of content. Aspects may also include receiving the private key from a client. Aspects may also include determining a visibility parameter for content posts of the content based on the private key and database. Aspect may include providing the content posts to the client at a visibility according to the visibility parameter.

Claims (52)

1. A computer-implemented method for providing an encryption key exchange, the method comprising:

identifying a database of cryptographic keys configured for encryption;

sending, via an application, a request for a private key for decryption of content;

receiving, from a client, the private key;

determining, based on data associated with the private key, a type of the private key;

determining, based on the type of the private key and on the database of cryptographic keys, a visibility parameter for content posts of the content; and

providing, to the client, the content posts at a visibility according to the visibility parameter.

2. The computer-implemented method of claim 1 , wherein identifying the database comprises providing, via the database and for the client, access to a content platform comprising the content.

3. The computer-implemented method of claim 1 , wherein sending the request comprises:

determining an attempt to access encrypted text of the content; and

decrypting, by the client, the content based on the private key.

4. The computer-implemented method of claim 1 , wherein receiving the private key comprises receiving the private key via the application based on a prompt provided to the client upon the client accessing a content feed comprising the content posts.

5. The computer-implemented method of claim 1 , wherein the data associated with the private key comprises at least one of metadata, ciphertext, and hash codes, and wherein determining the visibility parameter for the content posts of the content comprises determining a quantity of social network content posts that are visible according to an identity of the client.

6. The computer-implemented method of claim 1 , wherein providing the content posts at a visibility according to the visibility parameter comprises depicting a subset of the content posts as visible based on an extent of decryption corresponding to the private key.

7. The computer-implemented method of claim 1 , wherein the client is configured to generate the private key and to encrypt the content.

8. The computer-implemented method of claim 1 , further comprising determining at least one user to be granted access to the content posts based on the database of cryptographic keys.

9. The computer-implemented method of claim 1 , further comprising generating an encrypted version of the content posts for each holder of a cryptographic key of the cryptographic keys.

10. The computer-implemented method of claim 1 , further comprising:

determining a breach in an encryption associated with the private key;

determining, based on the breach and the client, a quantity of other clients to receive new cryptographic keys to access the content posts according to the visibility parameter; and

providing, via the application and from the database, a new private key based on the breach and retirement of the private key.

11. A system for providing an encryption key exchange, comprising:

one or more processors; and

a memory comprising instructions stored thereon, which when executed by the one or more processors, causes the one or more processors to perform:

identifying a database of cryptographic keys configured for encryption;

sending, via an application, a request for a private key for decryption of content;

receiving, from a client, the private key;

determining, based on data associated with the private key, a type of the private key;

determining, based on the type of the private key and on the database of cryptographic keys, a visibility parameter for content posts of the content;

providing, to the client, the content posts at a visibility according to the visibility parameter;

determining a breach in an encryption associated with the private key; and

providing, via the application and from the database, a new private key based on the breach and retirement of the private key.

12. The system of claim 11 , wherein the instructions that cause the one or more processors to perform identifying the database cause the one or more processors to perform providing, via the database and for the client, access to a content platform comprising the content.

13. The system of claim 11 , wherein the instructions that cause the one or more processors to perform sending the request cause the one or more processors to perform:

determining an attempt to access encrypted text of the content; and

decrypting, by the client, the content based on the private key.

14. The system of claim 11 , wherein the instructions that cause the one or more processors to perform receiving the private key cause the one or more processors to perform receiving the private key via the application based on a prompt provided to the client upon the client accessing a content feed comprising the content posts.

15. The system of claim 11 , wherein the data associated with the private key comprises at least one of metadata, ciphertext, and hash codes, and wherein the instructions that cause the one or more processors to perform determining the visibility parameter for the content posts of the content cause the one or more processors to perform determining a quantity of social network content posts that are visible according to an identity of the client.

16. The system of claim 11 , wherein the instructions that cause the one or more processors to perform providing the content posts at a visibility according to the visibility parameter cause the one or more processors to perform depicting a subset of the content posts as visible based on an extent of decryption corresponding to the private key.

17. The system of claim 11 , further comprising stored sequences of instructions, which when executed by the one or more processors, cause the one or more processors to perform determining at least one user to be granted access to the content posts based on the database of cryptographic keys.

18. The system of claim 11 , further comprising stored sequences of instructions, which when executed by the one or more processors, cause the one or more processors to perform generating an encrypted version of the content posts for each holder of a cryptographic key of the cryptographic keys.

19. The system of claim 11 , further comprising stored sequences of instructions, which when executed by the one or more processors, cause the one or more processors to perform determining, based on the breach and the client, a quantity of other clients to receive new cryptographic keys to access the content posts according to the visibility parameter.

20. A non-transitory computer-readable storage medium comprising instructions stored thereon, which when executed by one or more processors, cause the one or more processors to perform operations for providing an encryption key exchange, comprising:

identifying a database of cryptographic keys configured for encryption;

sending, via an application, a request for a private key for decryption of content;

receiving, from a client, the private key;

determining, based on data associated with the private key, a type of the private key;

determining, based on the type of the private key and on the database of cryptographic keys, a visibility parameter for content posts of the content;

providing, to the client, the content posts at a visibility according to the visibility parameter;

determining a breach in an encryption associated with the private key;

determining, based on the breach and the client, a quantity of other clients to receive new cryptographic keys to access the content posts according to the visibility parameter; and

providing, via the application and from the database, a new private key based on the breach and retirement of the private key.

Assignments (2)
CHANGE OF NAME Recorded May 31, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060244/0693 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 28, 2022
From: BOSWORTH, ANDREW GARROD
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 059761/0745 →
Cited By (1)
US 12,596,844