IP Library Granted Patent US 11,403,281
Granted Patent B2
US 11,403,281 · App. 16/739,083 · Granted Aug 2, 2022

Parallel blockchain processing

Inventor: Ian Yuan Yuan Huang (Hong Kong, CN)
Assignee: Eternal Paradise Limited
G06F16/2365G06F16/2379
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,403,281
App. No.
16/739,083
Granted
Aug 2, 2022
Kind
B2
Abstract

Methods and systems are described for validating a block in a blockchain. The methods may include identifying a subset of nodes in a blockchain network as trusted nodes. The trusted nodes perform a voting process to validate a block for the blockchain, whereas those nodes that are not identified as trusted nodes may not engage in the validation process. The trusted nodes may be identified based on past participation in the blockchain, stake in the blockchain, based on an organization operating the node, or other factors. In some cases the trusted nodes may be grouped into one or more voting quorums, and quorum management software may direct the validation process.

Claims (63)

1. A method of validating a block in a blockchain network, comprising the steps of:

receiving at least one validation request, by the blockchain network, the at least one validation request instructing the blockchain network to validate a block;

identifying a subset of nodes in the blockchain network as trusted nodes;

establishing a quorum formed from a first plurality of trusted nodes of the trusted nodes, the first plurality of trusted nodes participating in the quorum as quorum members, wherein the quorum comprises a quorum manager;

distributing, by the quorum manager, the validation request to each quorum member;

receiving, by the quorum manager, a vote on the validity of the block from each quorum member; and

determining, by the quorum manager, the validity of the block by tallying up the votes received;

identifying a second plurality of trusted nodes;

transmitting the block to each of the second plurality of trusted nodes based on a determination, by the quorum, that the block is not valid;

receiving a second validity vote from each of the second plurality of trusted nodes in response to transmitting the block to each of the second plurality of trusted nodes; and

determining the validity of the block based at least in part on the second validity vote from each of the second plurality trusted nodes, wherein a threshold for the second validity vote is higher than a threshold used by the quorum in the determination that the block is not valid,

wherein a trusted node must meet certain pre-determined criteria, and

wherein a node is a computing device that comprises a processor and a memory that stores an entire blockchain of the blockchain network.

2. The method of claim 1 , further comprising the steps of:

receiving validation requests to verify a plurality of blocks; and

forming multiple quorums, each quorum handling a unique validation request of the received validation requests.

3. The method of claim 2 , wherein a coordinator node coordinates activities of said multiple quorums, further comprising the steps of:

receiving, by the coordinator node, validation results as and when a particular quorum of said multiple quorums completes the validation request;

declaring, by the coordinator node, all blocks are valid when all quorum managers verify that all the blocks are valid; and

declaring, by the coordinator node, that an (n−1) th block to a last block of the plurality of blocks to be invalid if an n th block is found to be invalid by one of said multiple quorums, and sending a stop-validation instruction to all the said multiple quorums to stop validating from the (n−1) th block to the last block.

4. The method of claim 2 , wherein the quorum will dissolve after it determines the validity of the block.

5. The method of claim 2 , wherein the trusted nodes forms a pool and the quorum is formed by performing randomized lottery on the trusted nodes in the pool.

6. The method of claim 2 , wherein the trusted nodes forms a pool and the quorum is formed by performing voting process by the trusted nodes in the pool.

7. The method of claim 1 , further comprising:

determining that the node is operated by a trusted organization, wherein determining that the node is a trusted node is based at least part on the determination that the node is operated by the trusted organization.

8. The method of claim 7 , further comprising:

determining that the node is a permanent trusted node based at least part on the determination that the node is operated by the trusted organization.

9. A method for interacting with a blockchain, the method comprising:

identifying a block to be validated to a blockchain;

identifying a plurality of nodes participating in the blockchain;

identifying a first plurality of trusted nodes from the plurality of nodes;

establishing a quorum based on the first plurality of trusted nodes, the first plurality of trusted nodes participating in the quorum as quorum members, wherein the quorum comprises a quorum manager;

transmitting the block to each of the first plurality of trusted nodes;

receiving a validity vote from each of the first plurality of trusted nodes in response to transmitting the block;

determining a validity of the block based at least in part on the validity vote from each of the first plurality of trusted nodes;

identifying a second plurality of trusted nodes from the plurality of nodes;

transmitting the block to each of the second plurality of trusted nodes based on a determination, by the quorum, that the block is not valid;

receiving a second validity vote from each of the second plurality of trusted nodes in response to transmitting the block to each of the second plurality of trusted nodes; and

determining the validity of the block based at least in part on the second validity vote from each of the second plurality trusted nodes, wherein a threshold for the second validity vote is higher than a threshold used by the quorum in the determination that the block is not valid.

10. The method of claim 9 , further comprising:

determining that a node from the plurality of nodes that is not among the plurality of trusted nodes; and

refraining from transmitting the block to the node based on the determination that the node is not among the plurality of trusted nodes.

11. The method of claim 9 , further comprising:

determining that a voting score based on the validity votes received from the plurality of trusted nodes is above a threshold; and

determining that the block is valid based on the determination that the voting score is above the threshold.

12. The method of claim 9 , further comprising:

determining that the block is not valid based at least in part on the validity votes received from each of the plurality of trusted nodes.

13. The method of claim 9 , further comprising:

transmitting a message to a block creator indicating that the block is invalid, wherein the block is created by the block creator.

14. A system for interacting with at least one blockchain, comprising:

at least one processor and at least one memory storing instructions and in electronic communication with the processor, the at least one processor being configured to execute the instructions to:

identify a block to be validated to a blockchain;

identify a plurality of nodes participating in the blockchain;

identify a first plurality of trusted nodes from the plurality of nodes;

establish a quorum based on the first plurality of trusted nodes, the first plurality of trusted nodes participating in the quorum as quorum members, wherein the quorum comprises a quorum manager;

transmit the block to each of the first plurality of trusted nodes;

receive a validity vote from each of the first plurality of trusted nodes in response to transmitting the block;

determine a validity of the block based at least in part on the validity vote from each of the first plurality of trusted nodes;

identify a second plurality of trusted nodes from the plurality of nodes;

transmit the block to each of the second plurality of trusted nodes based on a determination, by the quorum, that the block is not valid;

receive a second validity vote from each of the second plurality of trusted nodes in response to transmitting the block to each of the second plurality of trusted nodes; and

determine the validity of the block based at least in part on the second validity vote from each of the second plurality trusted nodes, wherein a threshold for the second validity vote is higher than a threshold used by the quorum in the determination that the block is not valid;

wherein the at least one processor processes the at least one blockchain concurrently and independently.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2023
From: ETERNAL PARADISE LIMITED
To: PARALLELCHAIN LAB PRIVATE LIMITED
Reel/Frame 064506/0425 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2020
From: HUANG, IAN YUAN YUAN
To: DIGITAL TRANSACTION LIMITED
Reel/Frame 052898/0816 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2020
From: DIGITAL TRANSACTION LIMITED
To: ETERNAL PARADISE LIMITED
Reel/Frame 052899/0922 →
Continuity (1)
Related Publication 20210216527A1 · Jul 15, 2021
Cited By (1)
US 12,335,739