IP Library Granted Patent US 11,074,661
Granted Patent B2
US 11,074,661 · App. 16/807,871 · Granted Jul 27, 2021

Transaction processing method, apparatus, and electronic device using a blockchain having nonce records

Inventors: Jiyuan Wang (Hangzhou, CN); Xuebing Yan (Hangzhou, CN)
Assignee: ADVANCED NEW TECHNOLOGIES CO., LTD.
G06Q40/12G06F16/2379G06F16/28G06Q2220/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,074,661
App. No.
16/807,871
Granted
Jul 27, 2021
Kind
B2
Abstract

A method for processing blockchain-based transactions, comprising: acquiring a Nonce record from a Nonce list for a transaction initiated by a user account, wherein the Nonce list is maintained in a blockchain and is associated with the user account, the Nonce list comprises a plurality of Nonce records, and a Nonce record comprises a Nonce value; adding the acquired Nonce record to the transaction; and submitting the transaction to the blockchain, for a node in the blockchain to compare the Nonce record in the transaction with the plurality of Nonce records in the Nonce list, and to accept the transaction in response to the Nonce record matching any Nonce record in the Nonce list, wherein the Nonce value in the matching Nonce record in the Nonce list is monotonically increased based on a preset increment in response to that the transaction is accepted.

Claims (42)

1. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause a node in a blockchain network to perform operations comprising:

maintaining a Nonce list on the blockchain network, the Nonce list comprising a plurality of first Nonce records associated with a user account, each of the first Nonce records comprising (1) a same Nonce value and (2) a unique auxiliary parameter, wherein the unique auxiliary parameter comprises an index identifier of a respective first Nonce record and a version identifier of the Nonce list, and wherein a total number of the plurality of first Nonce records indicates a maximum number of concurrently-executable transactions with respect to the user account;

receiving, over the blockchain network, a plurality of transactions initiated by the user account, wherein each of the plurality of transactions comprises a corresponding second Nonce record;

comparing each of the corresponding second Nonce records with the plurality of first Nonce records; and

in response to determining that each of the corresponding second Nonce records matches a different first Nonce record of the plurality of first Nonce records:

determining that the plurality of transactions pass replay attack detection; accepting the plurality of transactions for concurrent execution; and

increasing the Nonce value of each of the different first Nonce records by a preset increment.

2. The non-transitory computer-readable storage medium of claim 1 , wherein the operations further comprise: establishing a connection with a client for the client to acquire the Nonce list maintained in the blockchain network.

3. The non-transitory computer-readable storage medium of claim 1 , wherein the operations further comprise: after receiving the plurality of transactions, initiating consensus processing of the plurality of transactions in the blockchain network.

4. The non-transitory computer-readable storage medium of claim 1 , wherein each of the plurality of transactions is digitally signed, wherein the operations further comprise: verifying a digital signature of each of the plurality of transactions based on a public key associated with a private key corresponding to the user account.

5. The non-transitory computer-readable storage medium of claim 1 , wherein the Nonce list is a Nonce list of a set of Nonce list sets maintained in the blockchain network, each of the Nonce lists associated with a respective user account.

6. The non-transitory computer-readable storage medium of claim 2 , wherein the client is a multi-threaded client, wherein each of the plurality of transactions is submitted to the blockchain network by a corresponding thread of the client.

7. The non-transitory computer-readable storage medium of claim 2 , wherein the operations further comprise: returning a notification message to the client that the transactions are accepted.

8. A method, comprising

maintaining a Nonce list on a blockchain network, the Nonce list comprising a plurality of first Nonce records associated with a user account, each of the first Nonce records comprising (1) a same Nonce value and (2) a unique auxiliary parameter, wherein the unique auxiliary parameter comprises an index identifier of a respective first Nonce record and a version identifier of the Nonce list, and wherein a total number of the plurality of first Nonce records indicates a maximum number of concurrently-executable transactions with respect to the user account;

receiving, over the blockchain network, a plurality of transactions initiated by the user account, wherein each of the plurality of transactions comprises a corresponding second Nonce record;

comparing each of the corresponding second Nonce records with the plurality of first Nonce records; and

in response to determining that each of the corresponding second Nonce records matches a different first Nonce record of the plurality of first Nonce records:

determining that the plurality of transactions pass replay attack detection;

accepting the plurality of transactions for concurrent execution; and

increasing the Nonce value of each of the different first Nonce records by a preset increment.

9. The method of claim 8 , further comprising: establishing a connection with a client for the client to acquire the Nonce list maintained in the blockchain network.

10. The method of claim 8 , further comprising: after receiving the plurality of transactions, initiating consensus processing of the plurality of transactions in the blockchain network.

11. The method of claim 8 , wherein each of the plurality of transactions is digitally signed, wherein the method further comprises: verifying a digital signature of each of the plurality of transactions based on a public key associated with a private key corresponding to the user account.

12. The method of claim 8 , wherein the Nonce list is a Nonce list of a set of Nonce list sets maintained in the blockchain network, each of the Nonce lists associated with a respective user account.

13. The method of claim 9 , wherein the client is a multi-threaded client, wherein each of the plurality of transactions is submitted to the blockchain network by a corresponding thread of the client.

14. The method of claim 9 , further comprising: returning a notification message to the client that the transactions are accepted.

15. A system, comprising:

a processor; and

a non-transitory computer-readable storage medium storing instructions that, when executed by the processor, cause a node in a blockchain network to perform operations comprising:

maintaining a Nonce list on the blockchain network, the Nonce list comprising a plurality of first Nonce records associated with a user account, each of the first Nonce records comprising (1) a same Nonce value and (2) a unique auxiliary parameter, wherein the unique auxiliary parameter comprises an index identifier of a respective first Nonce record and a version identifier of the Nonce list, and wherein a total number of the plurality of first Nonce records indicates a maximum number of concurrently-executable transactions with respect to the user account;

receiving, over the blockchain network, a plurality of transactions initiated by the user account, wherein each of the plurality of transactions comprises a corresponding second Nonce record;

comparing each of the corresponding second Nonce records with the plurality of first Nonce records; and

in response to determining that each of the corresponding second Nonce records matches a different first Nonce record of the plurality of first Nonce records:

determining that the plurality of transactions pass replay attack detection;

accepting the plurality of transactions for concurrent execution; and

increasing the Nonce value of each of the different first Nonce records by a preset increment.

16. The system of claim 15 , wherein the operations further comprise: establishing a connection with a client for the client to acquire the Nonce list maintained in the blockchain network.

17. The system of claim 15 , wherein the operations further comprise: after receiving the plurality of transactions, initiating consensus processing of the plurality of transactions in the blockchain network.

18. The system of claim 15 , wherein each of the plurality of transactions is digitally signed, wherein the operations further comprise: verifying a digital signature of each of the plurality of transactions based on a public key associated with a private key corresponding to the user account.

19. The system of claim 15 , wherein the Nonce list is a Nonce list of a set of Nonce list sets maintained in the blockchain network, each of the Nonce lists associated with a respective user account.

20. The system of claim 16 , wherein the client is a multi-threaded client, wherein each of the plurality of transactions is submitted to the blockchain network by a corresponding thread of the client.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2020
From: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
To: ADVANCED NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053796/0281 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 3, 2020
From: ALIBABA GROUP HOLDING LIMITED
To: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD.
Reel/Frame 053702/0392 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2020
From: WANG, JIYUAN; YAN, XUEBING
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 051997/0529 →