IP Library › Granted Patent US 11,842,335
Granted Patent B2
US 11,842,335 · App. 16/768,097 · Granted Dec 12, 2023

Blockchain communications and ordering

Inventors: Gilbert Verdian (London, GB); Colin Paterson (London, GB); Gaetano Mondelli (London, GB); Paolo Tasca (London, GB)
Assignee: QUANT NETWORK LTD.
G06Q20/3674G06F8/70G06F16/2379G06Q20/389G06Q20/3827G06Q20/3829G06Q30/0185G06Q40/12G06Q2220/00
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,842,335
App. No.
16/768,097
Granted
Dec 12, 2023
Kind
B2
Abstract

The present disclosure provides a computer implemented method for maintaining a record of an order of messages appearing on one or more blockchains, the method comprising: identifying a plurality of messages, wherein each of the messages in the plurality of transactions is included on any of the one or more blockchains; and storing a record of the plurality of messages in a data store, wherein the record is indicative of the relative order of the plurality of transactions.

Claims (54)

1. A computer implemented method for effecting a communications layer that maintains a record of an order of messages appearing on two or more distributed ledgers, the method comprising:

identifying a plurality of messages, wherein each of the messages in the plurality of messages is recorded on at least one of the two or more distributed ledgers,

wherein the transaction confirmation timings for each of the two or more distributed ledgers are unsynchronized;

determining a message identifier for each identified message based at least in part on content of the corresponding identified message; and

storing the message identifiers in a data store that is separate from the two or more distributed ledgers as a record of the plurality of messages, wherein the record includes order data indicative of the relative order of the plurality of messages and includes a pointer to each of the messages on a corresponding distributed ledger of the two or more distributed ledgers, and wherein the record of the plurality of messages comprises a plurality of consecutive verification sets, and wherein at least some of the plurality of consecutive verification sets comprise one or more of the message identifiers corresponding to a respective one or more of the plurality of messages;

storing, on at least one of the two or more distributed ledgers, a record of the most recent verification set of the plurality of consecutive verification sets, whereby the record of the plurality of messages can be used to provide at least one of increased security of one or more of the two or more distributed ledgers and/or interoperability between applications and one or more of the two or more distributed ledgers;

checking that a record of the preceding verification set in the plurality of verification sets is present on the at least one of the two or more distributed ledgers, and if a record of the preceding verification set is not present on the at least one of the two or more distributed ledgers: replaying a record of the preceding verification set onto the at least one of the two or more distributed ledgers.

2. The method of claim 1 , wherein identifying the plurality of messages comprises:

reading the content of each new block added to each of the two or more distributed ledgers.

3. The method of claim 2 , wherein identifying the plurality of messages further comprises:

comparing the messages in each new block against a relevance criterion and selecting messages that meet the relevance criterion.

4. The method of claim 3 , wherein storing the record of the plurality of messages in the data store comprises, each time a message is identified in a new block, storing a record of that identified message in the data store, wherein the order data is based on the relative order in which each of the plurality of messages was identified.

5. The method of claim 1 , further comprising:

if a record of the preceding verification set is not present on the at least one of the two or more distributed ledgers:

checking that each of the messages identified in the preceding verification set is present on its corresponding distributed ledger of the two or more distributed ledgers, and

if one or more of the messages identified in the preceding verification block are not present on their corresponding distributed ledger of the two or more distributed ledgers:

replaying the one or more messages onto their corresponding distributed ledgers.

6. The method of claim 5 , further comprising:

checking that each of the messages identified in the most recent verification set is present on the at least one of the two or more distributed ledgers, and

if one or more of the messages identified in the preceding verification block are not present on their corresponding distributed ledger of the two or more distributed ledgers:

replaying the one or more messages onto their corresponding distributed ledgers.

7. The method of claim 6 , wherein the record of the most recent verification set comprises a verification set identifier that is determined based at least in part on the contents of the most recent verification set.

8. The method of claim 7 , wherein the verification set identifier of the most recent verification set comprises a hash of the contents of the most recent verification set.

9. The method of claim 1 , wherein the record of the plurality of messages comprises a plurality of the message identifiers.

10. A computer architecture for effecting a communications layer that maintains a record of an order of messages appearing on two or more distributed ledgers, the architecture comprising:

at least one computer processor; and

at least one memory device storing instructions which, when executed by the at least one computer processor, cause the at least one computer processor to:

identify a plurality of messages, wherein each of the messages in the plurality of messages is recorded on at least one of the two or more distributed ledgers, wherein the transaction confirmation timings for each of the two or more distributed ledgers are unsynchronized;

determine a message identifier for each identified message based at least in part on content of the corresponding identified message; and

cause the message identifiers to be stored in a data store that is separate from the two or more distributed ledgers as a record of the plurality of messages, wherein the record includes order data indicative of the relative order of the plurality of messages and includes a pointer to each of the messages on a corresponding distributed ledger of the two or more distributed ledgers, wherein the record of the plurality of messages comprises a plurality of consecutive verification sets, and wherein at least some of the plurality of consecutive verification sets comprise one or more of the message identifiers corresponding to a respective one or more of the plurality of messages;

cause a record of the most recent verification set of the plurality of consecutive verification sets to be stored on at least one of the two or more distributed ledgers, whereby the record of the plurality of messages can be used to provide at least one of increased security of one or more of the two or more distributed ledgers and/or interoperability between applications and one or more of the two or more distributed ledgers;

check that a record of the preceding verification set in the plurality of verification sets is present on the at least one of the two or more distributed ledgers, and if a record of the preceding verification set is not present on the at least one of the two or more distributed ledgers:

cause a record of the preceding verification set to be replayed onto the at least one of the two or more distributed ledgers.

11. The architecture of claim 10 , wherein identifying the plurality of messages comprises:

reading the content of each new block added to each of the two or more distributed ledgers.

12. The architecture of claim 11 , wherein identifying the plurality of messages further comprises:

comparing the messages in each new block against a relevance criterion and selecting messages that meet the relevance criterion.

13. The architecture of claim 12 , wherein storing the record of the plurality of messages in the data store comprises, each time a message is identified in a new block, storing a record of that identified message in the data store, wherein the order data is based on the relative order in which each of the plurality of messages was identified.

14. The architecture of claim 10 , wherein:

the record of the plurality of messages comprises a plurality of consecutive verification sets, and wherein

at least some of the plurality of consecutive verification sets comprise one or more of the message identifiers corresponding to a respective one or more of the plurality of messages.

15. The architecture of claim 14 , wherein the instructions further cause the at least one processor to:

cause a record of the most recent verification set of the plurality of consecutive verification sets to be stored on at least one of the two or more distributed ledgers.

16. Non-transient computer readable media having instructions stored thereon which, when executed by at least one computer processor, cause the at least one computer processor to:

identify a plurality of messages, wherein each of the messages in the plurality of messages is recorded on at least one of two or more distributed ledgers, wherein the transaction confirmation timings for each of the two or more distributed ledgers are unsynchronized;

determine a message identifier for each identified message based at least in part on content of the corresponding identified message; and

cause the message identifiers to be stored in a data store that is separate from the two or more distributed ledgers as a record of the plurality of messages,

wherein the record includes order data indicative of the relative order of the plurality of messages and includes a pointer to each of the messages on a corresponding distributed ledger of the two or more distributed ledgers, and

wherein the record of the plurality of messages comprises a plurality of consecutive verification sets, and

wherein at least some of the plurality of consecutive verification sets comprise one or more of the message identifiers corresponding to a respective one or more of the plurality of messages;

cause a record of the most recent verification set of the plurality of consecutive verification sets to be stored on at least one of the two or more distributed ledgers, whereby the record of the plurality of messages can be used to provide at least one of increased security of the one or more distributed ledgers and/or interoperability between applications and the one or more distributed ledger;

check that a record of the preceding verification set in the plurality of verification sets is present on the at least one of the two or more distributed ledgers, and

if a record of the preceding verification set is not present on the at least one of the two or more distributed ledgers:

cause a record of the preceding verification set to be replayed onto the at least one of the two or more distributed ledgers.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2021
From: TASCA, PAOLO
To: QUANT NETWORK LTD.
Reel/Frame 057751/0092 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2021
From: VERDIAN, GILBERT; PATERSON, COLIN
To: QUANT NETWORK LTD.
Reel/Frame 056819/0181 →
Priority Claims (2)
EP 17425121 · Dec 1, 2017 · regional
IT 102017000145294 · Dec 15, 2017 · national
Continuity (1)
Related Publication 20200311718A1 · Oct 1, 2020