IP Library Granted Patent US 10,999,283
Granted Patent B2
US 10,999,283 · App. 16/779,189 · Granted May 4, 2021

Addressing transaction conflict in blockchain systems

Inventors: Zheng Liu (Hangzhou, CN); Lichun Li (Hangzhou, CN); Shan Yin (Hangzhou, CN)
Assignee: Advanced New Technologies Co., Ltd.
H04L63/10H04L9/0637H04L9/3234
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,999,283
App. No.
16/779,189
Granted
May 4, 2021
Kind
B2
Abstract

Implementations of the present specification provide a computer-implemented method, computer-implemented system, and non-transitory, computer-readable medium. The computer-implemented method includes sending a token acquisition request by a blockchain client to a blockchain node. A commit token fed back from the blockchain node is received by the blockchain client, where the commit token indicates that the blockchain client has permission to submit transaction data to a specific data block in a blockchain. Transaction data is sent by the blockchain client to the blockchain node.

Claims (74)

1. A computer-implemented method, comprising:

applying for permission to submit first transaction data to a blockchain maintained by a blockchain node by sending a first token acquisition request by a blockchain client to the blockchain node, wherein the blockchain node is configured to communicate with the blockchain client and a second blockchain client, the blockchain client and the second blockchain client shares an institution account in the blockchain, and the first token acquisition request indicates a first location of a first data block in the blockchain to submit the first transaction data;

receiving a commit token fed back from the blockchain node by the blockchain client, wherein the commit token is allocated by the blockchain node based on a smart contract deployed on the blockchain and the commit token indicates that the blockchain client has permission to submit the first transaction data to the first data block in the blockchain;

sending the first transaction data by the blockchain client to the blockchain node;

applying for permission to submit second transaction data to the blockchain by sending a second token acquisition request by the blockchain client to the blockchain node, wherein the second token acquisition request indicates a second location of a second data block in the blockchain to submit the second transaction data; and

receiving, by the blockchain client, failure information fed back from the blockchain node based on the smart contract, wherein the failure information indicates that the blockchain client has no permission to submit the second transaction data to the second data block in the blockchain, wherein the blockchain client refrains from sending the second transaction data to the blockchain node based on the failure information.

2. The computer-implemented method according to claim 1 , wherein the first token acquisition request comprises at least one of an institution identifier, a client identifier, or a block height, wherein the institution identifier identifies an institution that the blockchain client belongs to, the client identifier identifies the blockchain client, and the block height indicates the first location of the first data block in the blockchain.

3. The computer-implemented method according to claim 1 , wherein sending the first transaction data comprises sending the first transaction data with the commit token, and the commit token comprises a block height that indicates the first location of the first data block in the blockchain.

4. The computer-implemented method according to claim 1 , wherein the sending the first transaction data to the blockchain node comprises:

packaging at least one piece of transaction data in a specific order to obtain a data packet; and

sending the data packet to the blockchain node.

5. A computer-implemented system, comprising:

one or more processors; and

one or more computer-readable memories coupled to the one or more processors and having instructions stored thereon that are executable by the one or more processors to perform one or more operations comprising:

applying for permission to submit first transaction data to a blockchain maintained by a blockchain node by sending a first token acquisition request by a blockchain client to the blockchain node, wherein the blockchain node is configured to communicate with the blockchain client and a second blockchain client, the blockchain client and the second blockchain client share an institution account in the blockchain, and the first token acquisition request indicates a first location of a first data block in the blockchain to submit the first transaction data;

receiving a commit token fed back from the blockchain node by the blockchain client, wherein the commit token is allocated by the blockchain node based on a smart contract deployed on the blockchain and the commit token indicates that the blockchain client has permission to submit the first transaction data to the first data block in the blockchain; and

sending the first transaction data by the blockchain client to the blockchain node;

applying for permission to submit second transaction data to the blockchain by sending a second token acquisition request by the blockchain client to the blockchain node, wherein the second token acquisition request indicates a second location of a second data block in the blockchain to submit the second transaction data; and

receiving, by the blockchain client, failure information fed back from the blockchain node based on the smart contract, wherein the failure information indicates that the blockchain client has no permission to submit the second transaction data to the second data block in the blockchain, wherein the blockchain client refrains from sending the second transaction data to the blockchain node based on the failure information.

6. The computer-implemented system according to claim 5 , wherein the first token acquisition request comprises at least one of an institution identifier, a client identifier, or a block height, wherein the institution identifier identifies an institution that the blockchain client belongs to, the client identifier identifies the blockchain client, and the block height indicates the first location of the first data block in the blockchain.

7. The computer-implemented system according to claim 5 , wherein sending the first transaction data comprises sending the first transaction data with the commit token, and the commit token comprises a block height that indicates the first location of the first data block in the blockchain.

8. The computer-implemented system according to claim 5 , wherein the sending the first transaction data to the blockchain node comprises:

packaging at least one piece of transaction data in a specific order to obtain a data packet; and

sending the data packet to the blockchain node.

9. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

applying for permission to submit first transaction data to a blockchain maintained by a blockchain node by sending a first token acquisition request by a blockchain client to the blockchain node, wherein the blockchain node is configured to communicate with the blockchain client and a second blockchain client, the blockchain client and the second blockchain client share an institution account in the blockchain, and the first token acquisition request indicates a first location of a first data block in the blockchain to submit the first transaction data;

receiving a commit token fed back from the blockchain node by the blockchain client, wherein the commit token is allocated by the blockchain node based on a smart contract deployed on the blockchain and the commit token indicates that the blockchain client has permission to submit the first transaction data to the first data block in the blockchain; and

sending the first transaction data by the blockchain client to the blockchain node;

applying for permission to submit second transaction data to the blockchain by sending a second token acquisition request by the blockchain client to the blockchain node, wherein the second token acquisition request indicates a second location of a second data block in the blockchain to submit the second transaction data; and

receiving, by the blockchain client, failure information fed back from the blockchain node based on the smart contract, wherein the failure information indicates that the blockchain client has no permission to submit the second transaction data to the second data block in the blockchain, wherein the blockchain client refrains from sending the second transaction data to the blockchain node based on the failure information.

10. The non-transitory, computer-readable medium according to claim 9 , wherein the first token acquisition request comprises at least one of an institution identifier, a client identifier, or a block height, wherein the institution identifier identifies an institution that the blockchain client belongs to, the client identifier identifies the blockchain client, and the block height indicates the first location of the first data block in the blockchain that indicates the first location of the first data block in the blockchain.

11. The non-transitory, computer-readable medium according to claim 9 , wherein sending the first transaction data comprises sending the first transaction data with the commit token, and the commit token comprises a block height that indicates the first location of the first data block in the blockchain.

12. The non-transitory, computer-readable medium according to claim 9 , wherein the sending the first transaction data to the blockchain node comprises:

packaging at least one piece of transaction data in a specific order to obtain a data packet; and

sending the data packet to the blockchain node.

13. The computer-implemented method according to claim 1 , wherein the first token acquisition request comprises a first block height indicating the first location of the first data block in the blockchain, and the computer-implemented method further comprises, prior to sending the first token acquisition request to the blockchain node:

obtaining a current block height of the blockchain from the blockchain node; and

determining the first block height to be a number larger than the current block height of the blockchain.

14. The computer-implemented method according to claim 1 , wherein:

the first token acquisition request comprises an institution identifier identifying an institution that the blockchain client belongs to, the institution having the institutional account in the blockchain,

the first transaction data further comprises a unique Nonce value of the institutional account associated with the first transaction data; and

the computer-implemented method further comprises, prior to sending the first token acquisition request to the blockchain node:

obtaining a current Nonce value of the institutional account from the blockchain node; and

constructing the first transaction data based on the current Nonce value of the institutional account.

15. The computer-implemented method according to claim 14 , wherein:

the second token acquisition request comprises the institution identifier identifying the institution that the blockchain client belongs to,

the second transaction data further comprises a second unique Nonce value of the institutional account associated with the second transaction data; and

the computer-implemented method further comprises, prior to sending the second token acquisition request to the blockchain node:

obtaining a second current Nonce value of the institutional account from the blockchain node; and

constructing the second transaction data based on the second current Nonce value of the institutional account.

16. The computer-implemented system according to claim 5 , wherein the first token acquisition request comprises a first block height indicating the first location of the first data block in the blockchain, and the one or more operations further comprise, prior to sending the first token acquisition request to the blockchain node:

obtaining a current block height of the blockchain from the blockchain node; and

determining the first block height to be a number larger than the current block height of the blockchain.

17. The computer-implemented system according to claim 5 , wherein:

the first token acquisition request comprises an institution identifier identifying an institution that the blockchain client belongs to, the institution having the institutional account in the blockchain,

the first transaction data further comprises a unique Nonce value of the institutional account associated with the first transaction data; and

the one or more operations further comprise, prior to sending the first token acquisition request to the blockchain node:

obtaining a current Nonce value of the institutional account from the blockchain node; and

constructing the first transaction data based on the current Nonce value of the institutional account.

18. The computer-implemented system according to claim 17 , wherein:

the second token acquisition request comprises the institution identifier identifying the institution that the blockchain client belongs to,

the second transaction data further comprises a second unique Nonce value of the institutional account associated with the second transaction data; and

the one or more operations further comprise, prior to sending the second token acquisition request to the blockchain node:

obtaining a second current Nonce value of the institutional account from the blockchain node; and

constructing the second transaction data based on the second current Nonce value of the institutional account.

19. The non-transitory, computer-readable medium according to claim 9 , wherein the first token acquisition request comprises a first block height indicating the first location of the first data block in the blockchain, and the operations further comprise, prior to sending the first token acquisition request to the blockchain node:

obtaining a current block height of the blockchain from the blockchain node; and

determining the first block height to be a number larger than the current block height of the blockchain.

20. The non-transitory, computer-readable medium according to claim 9 , wherein:

the first token acquisition request comprises an institution identifier identifying an institution that the blockchain client belongs to, the institution having the institutional account in the blockchain,

the first transaction data further comprises a unique Nonce value of the institutional account associated with the first transaction data; and

the operations further comprise, prior to sending the first token acquisition request to the blockchain node:

obtaining a current Nonce value of the institutional account from the blockchain node; and

constructing the first transaction data based on the current Nonce value of the institutional account.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 9, 2021
From: LIU, ZHENG; LI, LICHUN; YIN, SHAN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 055193/0682 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 10, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053754/0625 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053743/0464 →