IP Library Granted Patent US 10,601,589
Granted Patent B1
US 10,601,589 · App. 16/506,819 · Granted Mar 24, 2020

Computer systems designed for instant message communications with computer-generated imagery communicated over decentralised distributed networks and methods of use thereof

Inventors: Viktor Prokopenya (London, GB); Yury Hushchyn (Gibraltar, GI); Nikolay Voronetskiy (Minsk, BY); Kanstantsin Zakharchanka (Minsk, BY)
Assignee: Banuba Limited
H04L9/0844H04L9/0869H04L9/0894H04L9/14H04L9/3073
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,601,589
App. No.
16/506,819
Granted
Mar 24, 2020
Kind
B1
Abstract

The exemplary inventive instant messaging system may include a sending client that accesses encryption data associated with a receiving client on a distributed mesh network where the encryption data is signed by a receiver public key of the receiving client, forms a non-interactive message exchange session on the distributed mesh network, generates a first session key based on the encryption data and a sender secret key, encrypts a message using the first session key, encrypts session information using the receiver public key, produces a session state including the encrypted message and the encrypted session information and stores the session state in the non-interactive message exchange session. The receiving client accesses the session state, decrypts the encrypted session information with a receiver secret key, generates a second session key using the session information and a sender public key, and decrypts the message using the second session key.

Claims (78)

1. A method for instant message communication in a distributed network environment, the method comprising:

accessing, with a sending client, encryption data associated with a receiving client on a distributed mesh network;

wherein the distributed mesh network includes a plurality of nodes coordinated to route message;

wherein the encryption data is signed by a receiver public key associated with the receiving client;

forming, by a processor of the sending client, a non-interactive message exchange session on the distributed mesh network, wherein at least one of the sending client and the receiving client is offline;

generating, by the processor, a first session key based on at least the encryption data and a sender secret key associated with the sending client;

encrypting, by the processor, a message using the first session key to produce an encrypted message;

encrypting, by the processor, session information of the non-interactive message exchange session using the receiver public key to produce encrypted session information;

producing, by the processor, a session state comprising:

the encrypted message; and

the encrypted session information;

storing the session state in the non-interactive message exchange session on the distributed mesh network;

wherein the receiving client is configured to

access the session state in the non-interactive message exchange session on the distributed mesh network;

decrypt the encrypted session information with a paired receiver secret key paired with the receiver public key to reproduce the session information;

generate a second session key using the session information and a sender public key paired with the sender secret key; and

decrypt the message using the second session key.

2. The method of claim 1 , wherein the encryption information comprises a set of ephemeral public keys.

3. The method of claim 2 , further comprising authenticating the set of ephemeral public keys using the receiver public key.

4. The method of claim 2 , further comprising randomly selecting a subset of ephemeral public keys from the set of ephemeral public keys.

5. The method of claim 2 , wherein the session information comprises:

a sender identification associated with the sender client;

a random seed; and

subset information that restores a subset of ephemeral public keys randomly selected from the set of ephemeral public keys.

6. The method of claim 1 , wherein the message comprises an entirety of a text-based message.

7. The method of claim 1 , wherein the message comprises a portion of a file in a torrent file exchange.

8. The method of claim 1 , wherein the distributed mesh network comprises a Slow Mesh Network.

9. A method for instant message communication in a distributed network environment, the method comprising:

storing, with a receiving client, on a distributed mesh network a receiver public key and encryption data associated with the receiving client;

wherein the distributed mesh network includes a plurality of nodes coordinated to route message;

wherein the encryption data is signed by a receiver public key associated with the receiving client;

wherein a sending client is configured to:

access the distributed mesh network to extract the receiver public key and the encryption data;

form a non-interactive message exchange session on the distributed mesh network, wherein at least one of the sending client and the receiving client is offline;

generate a first session key based on at least the encryption data and a sender secret key associated with the sending client;

encrypt a message using the first session key to produce an encrypted message;

encrypt session information of the non-interactive message exchange session using the receiver public key to produce encrypted session information;

produce a session state comprising:

the encrypted message; and

the encrypted session information;

store the session state in the non-interactive message exchange session on the distributed mesh network;

accessing, by a processor of the receiving client, the session state in the non-interactive message exchange session on the distributed mesh network;

decrypting, by a processor of the receiving client, the encrypted session information with a paired receiver secret key paired with the receiver public key to reproduce the session information;

generating, by the processor, a second session key using the session information and a sender public key paired with the sender secret key; and decrypting, by the processor, the message using the second session key.

10. The method of claim 9 , wherein the encryption information comprises a set of ephemeral public keys.

11. The method of claim 10 , further comprising signing the set of ephemeral public keys using the paired receiver private key.

12. The method of claim 10 , wherein the sending client is further configured to randomly select a subset of ephemeral public keys from the set of ephemeral public keys.

13. The method of claim 10 , further comprising restoring a subset of ephemeral public keys randomly selected from the set of ephemeral public keys using the session information, the session information comprising:

a sender identification associated with the sender client;

a random seed; and

subset information for restoring the subset of ephemeral public keys.

14. The method of claim 9 , wherein the message comprises an entirety of a text-based message.

15. The method of claim 9 , wherein the message comprises a portion of a file in a torrent file exchange.

16. The method of claim 9 , wherein the distributed mesh network comprises a Slow Mesh Network.

17. A system for instant message communication in a distributed network environment, the system comprising:

a distributed mesh network comprising a plurality of clients;

wherein the distributed mesh network includes a plurality of nodes comprising computing devices, wherein the plurality of nodes are coordinated to route message;

a first client of the plurality of clients, comprising at least a first processing device; and

a second client of the plurality of clients, comprising at least a second processing device;

wherein the first client is configured to:

access encryption data associated with a second client of the plurality of clients;

wherein the encryption data is signed by a second public key associated with the second client;

form a non-interactive message exchange session on the distributed mesh network, wherein at least one of the first client and the second client is offline;

generate a first session key based on at least the encryption data and a first secret key associated with the first client;

encrypt a message using the first session key to produce an encrypted message;

encrypt session information of the non-interactive message exchange session using the second public key to produce encrypted session information;

produce a session state comprising:

 the encrypted message; and

 the encrypted session information;

store the session state in the non-interactive message exchange session on the distributed mesh network; and

wherein the first client is configured to:

access the session state in the non-interactive message exchange session on the distributed mesh network;

decrypt the encrypted session information with a paired second secret key paired with the first public key to reproduce the session information;

generate a second session key using the session information and a first public key paired with the first secret key; and

decrypt the message using the second session key.

18. The system of claim 17 , wherein the non-interactive message exchange session is distributed across storage of one or more of the plurality of clients.

19. The system of claim 17 , wherein each of the plurality of clients comprises a node of the distributed mesh network.

20. The system of claim 17 , wherein the distributed mesh network comprises a Slow Mesh Network.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2025
From: BANUBA LIMITED
To: BANUBA FZCO
Reel/Frame 070195/0149 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2020
From: PROKOPENYA, VIKTOR; HUSHCHYN, YURY; VORONETSKIY, NIKOLAY; ZAKHARCHANKA, KANSTANTSIN
To: BANUBA LIMITED
Reel/Frame 051848/0790 →
Continuity (1)
Provisional Application 62698713 · Jul 16, 2018
Cited By (2)
US 12,225,111 US 12,670,266