IP Library Granted Patent US 10,790,987
Granted Patent B2
US 10,790,987 · App. 16/422,853 · Granted Sep 29, 2020

Blockchain data protection based on generic account model and homomorphic encryption

Inventors: Wenbin Zhang (Hangzhou, CN); Baoli Ma (Hangzhou, CN); Huanyu Ma (Hangzhou, CN)
Assignee: Alibaba Group Holding Limited
H04L9/3247G06F7/58G06N7/005H04L9/008H04L9/088H04L9/30H04L9/3218H04L9/3239H04L2209/38
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,790,987
App. No.
16/422,853
Granted
Sep 29, 2020
Kind
B2
Abstract

Implementations of the specification include receiving transaction data associated with the transaction, the transaction data comprising: data representative of a plurality of assets, a first commitment hiding a first random number and a transaction amount of the transaction, a second commitment that hides a second random number and a change, the transaction amount and a third random number both encrypted by a public key of the second node, the change and a fourth random number both encrypted by a public key of the first node, and a zero-knowledge proof (ZKP); determining, based on the ZKP, whether the transaction is valid based on determining if the first random number is equal to the third random number, the second random number is equal to the fourth random number, and the transaction amount hidden in the first commitment is equal to the transaction amount encrypted by the public key of the second node.

Claims (44)

1. A computer-implemented method performed by a consensus node for validating a transaction between a first node and a second node within a blockchain network, the method comprising:

receiving transaction data associated with the transaction, the transaction data comprising: data representative of a plurality of assets, a first commitment that hides a first random number and a transaction amount of the transaction, a second commitment that hides a second random number and a change calculated based on deducting the transaction amount from a total value of the plurality of assets, the transaction amount and a third random number both encrypted by a public key of the second node based on a linear deterministic homomorphic encryption (HE) scheme, the change and a fourth random number both encrypted by a public key of the first node based on the linear deterministic HE scheme, one or more range proofs, a zero-knowledge proof (ZKP), and a digital signature generated based on a private key corresponding to the public key of the first node;

verifying the digital signature based on the public key of the first node;

determining that the one or more range proofs prove that the transaction amount and the change are each greater than, or equal to, zero;

determining that the total value of the plurality of assets equals a sum of the transaction amount and the change; and

determining, based on the ZKP, that the transaction is valid by determining that the first random number is equal to the third random number, the second random number is equal to the fourth random number, and the transaction amount hidden in the first commitment is equal to the transaction amount encrypted by the public key of the second node.

2. The computer-implemented method of claim 1 , wherein the transaction is performed between an account associated with the first node and an account associated with the second node, and the method further comprises updating, after determining that the transaction is valid, the account associated with the first node and the account associated with the second node based on the transaction amount and the change.

3. The computer-implemented method of claim 1 , wherein each of the plurality of assets is associated with one or more of an asset type, an asset value hidden in a commitment, and a random number used for generating the commitment.

4. The computer-implemented method of claim 3 , further comprising determining that each of the plurality of assets is associated with a same asset type.

5. The computer-implemented method of claim 3 , wherein the first commitment, the second commitment, and the commitment that hides the asset value are generated based on a commitment scheme that is homomorphic, and wherein the determining that the total value of the plurality of assets equals the sum of the transaction amount and the change is performed based on homomorphism of the commitment scheme.

6. The computer-implemented method of claim 1 , wherein the linear deterministic HE scheme is derived from a probabilistic HE scheme based on changing a random number associated with the probabilistic HE scheme to a fixed number.

7. The computer-implemented method of claim 1 , wherein the ZKP comprises a commitment that hides a fifth random number and a sixth random number, a cyphertext of the fifth random number and the sixth random number encrypted by the public key of the second node based on the linear deterministic HE scheme, and a cyphertext of the fifth random number and the sixth random number encrypted by the public key of the first node based on the linear deterministic HE scheme.

8. The computer-implemented method of claim 1 , wherein the ZKP is generated and used for determining that the transaction is valid based on properties of the linear deterministic HE scheme.

9. The computer-implemented method of claim 1 , wherein the determining that the transaction is valid is performed based on the ZKP without interactions between the first node and the second node through outside of the blockchain network.

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

receiving transaction data associated with a transaction between a first node and a second node within a blockchain network, the transaction data comprising: data representative of a plurality of assets, a first commitment that hides a first random number and a transaction amount of the transaction, a second commitment that hides a second random number and a change calculated based on deducting the transaction amount from a total value of the plurality of assets, the transaction amount and a third random number both encrypted by a public key of the second node based on a linear deterministic homomorphic encryption (HE) scheme, the change and a fourth random number both encrypted by a public key of the first node based on the linear deterministic HE scheme, one or more range proofs, a zero-knowledge proof (ZKP), and a digital signature generated based on a private key corresponding to the public key of the first node;

verifying the digital signature based on the public key of the first node;

determining that the one or more range proofs prove that the transaction amount and the change are each greater than, or equal to, zero;

determining that the total value of the plurality of assets equals a sum of the transaction amount and the change; and

determining, based on the ZKP, that the transaction is valid by determining that the first random number is equal to the third random number, the second random number is equal to the fourth random number, and the transaction amount hidden in the first commitment is equal to the transaction amount encrypted by the public key of the second node.

11. The non-transitory, computer-readable medium of claim 10 , wherein the transaction is performed between an account associated with the first node and an account associated with the second node, and wherein the operations further comprise updating, after determining that the transaction is valid, the account associated with the first node and the account associated with the second node based on the transaction amount and the change.

12. The non-transitory, computer-readable medium of claim 10 , wherein each of the plurality of assets is associated with one or more of an asset type, an asset value hidden in a commitment, and a random number used for generating the commitment.

13. The non-transitory, computer-readable medium of claim 12 , wherein the operations further comprise determining that each of the plurality of assets is associated with a same asset type.

14. The non-transitory, computer-readable medium of claim 12 , wherein the first commitment, the second commitment, and the commitment that hides the asset value are generated based on a commitment scheme that is homomorphic, and wherein the determining that the total value of the plurality of assets equals the sum of the transaction amount and the change is performed based on homomorphism of the commitment scheme.

15. The non-transitory, computer-readable medium of claim 10 , wherein the linear deterministic HE scheme is derived from a probabilistic HE scheme based on changing a random number associated with the probabilistic HE scheme to a fixed number.

16. The non-transitory, computer-readable medium of claim 10 , wherein the ZKP comprises a commitment that hides a fifth random number and a sixth random number, a cyphertext of the fifth random number and the sixth random number encrypted by the public key of the second node based on the linear deterministic HE scheme, and a cyphertext of the fifth random number and the sixth random number encrypted by the public key of the first node based on the linear deterministic HE scheme.

17. The non-transitory, computer-readable medium of claim 10 , wherein the ZKP is generated and used for determining that the transaction is valid based on properties of the linear deterministic HE scheme.

18. The non-transitory, computer-readable medium of claim 10 , wherein the determining that the transaction is valid is performed based on the ZKP without interactions between the first node and the second node through outside of the blockchain network.

19. A computer-implemented system, comprising:

one or more computers; and

one or more computer memory devices interoperably coupled with the one or more computers and having tangible, non-transitory, machine-readable media storing one or more instructions that, when executed by the one or more computers, perform one or more operations comprising:

receiving transaction data associated with a transaction between a first node and a second node within a blockchain network, the transaction data comprising: data representative of a plurality of assets, a first commitment that hides a first random number and a transaction amount of the transaction, a second commitment that hides a second random number and a change calculated based on deducting the transaction amount from a total value of the plurality of assets, the transaction amount and a third random number both encrypted by a public key of the second node based on a linear deterministic homomorphic encryption (HE) scheme, the change and a fourth random number both encrypted by a public key of the first node based on the linear deterministic HE scheme, one or more range proofs, a zero-knowledge proof (ZKP), and a digital signature generated based on a private key corresponding to the public key of the first node;

verifying the digital signature based on the public key of the first node;

determining that the one or more range proofs prove that the transaction amount and the change are each greater than, or equal to, zero;

determining that the total value of the plurality of assets equals a sum of the transaction amount and the change; and

determining, based on the ZKP, that the transaction is valid by determining that the first random number is equal to the third random number, the second random number is equal to the fourth random number, and the transaction amount hidden in the first commitment is equal to the transaction amount encrypted by the public key of the second node.

20. The system of claim 19 , wherein the transaction is performed between an account associated with the first node and an account associated with the second node, and wherein the operations further comprise updating, after determining that the transaction is valid, the account associated with the first node and the account associated with the second node based on the transaction amount and the change.

21. The system of claim 19 , wherein each of the plurality of assets is associated with one or more of an asset type, an asset value hidden in a commitment, and a random number used for generating the commitment.

22. The system of claim 21 , wherein the operations further comprise determining that each of the plurality of assets is associated with a same asset type.

23. The system of claim 21 , wherein the first commitment, the second commitment, and the commitment that hides the asset value are generated based on a commitment scheme that is homomorphic, and wherein the determining that the total value of the plurality of assets equals the sum of the transaction amount and the change is performed based on homomorphism of the commitment scheme.

24. The system of claim 19 , wherein the linear deterministic HE scheme is derived from a probabilistic HE scheme based on changing a random number associated with the probabilistic HE scheme to a fixed number.

25. The system of claim 19 , wherein the ZKP comprises a commitment that hides a fifth random number and a sixth random number, a cyphertext of the fifth random number and the sixth random number encrypted by the public key of the second node based on the linear deterministic HE scheme, and a cyphertext of the fifth random number and the sixth random number encrypted by the public key of the first node based on the linear deterministic HE scheme.

26. The system of claim 19 , wherein the ZKP is generated and used for determining that the transaction is valid based on properties of the linear deterministic HE scheme.

27. The system of claim 19 , wherein the determining that the transaction is valid is performed based on the ZKP without interactions between the first node and the second node through outside of the blockchain network.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 18, 2025
From: ADVANCED NEW TECHNOLOGIES CO., LTD.
To: ANTCHAIN TECHNOLOGY PTE. LTD.
Reel/Frame 070253/0064 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2019
From: ZHANG, WENBIN; MA, BAOLI; MA, HUANYU
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 050990/0778 →
Cited By (1)
US 12,641,063