IP Library Granted Patent US 10,892,888
Granted Patent B2
US 10,892,888 · App. 16/940,254 · Granted Jan 12, 2021

System and method for information protection

Inventors: Baoli Ma (Hangzhou, CN); Wenbin Zhang (Hangzhou, CN); Lichun Li (Hangzhou, CN); Zheng Liu (Hangzhou, CN); Shan Yin (Hangzhou, CN)
Assignee: ADVANCED NEW TECHNOLOGIES CO., LTD.
H04L9/0637G06F16/2365G06F16/2379G06F21/602H04L9/0643H04L2209/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,892,888
App. No.
16/940,254
Granted
Jan 12, 2021
Kind
B2
Abstract

A computer-implemented method for information protection comprises: determining one or more data inputs and one or more data outputs for a transaction, wherein the data inputs are associated with input data types respectively, and the data outputs are associated with output data types respectively; encrypting the input data types and the output data types; committing each of the encrypted input data types and the encrypted output data types with a commitment scheme to obtain corresponding commitment values; obtaining at least a parameter R based at least on the commitment values; and submitting the transaction to one or more nodes in a blockchain network with disclosure of the parameter R and without disclosure of the input data types and output data types for the nodes to verify consistency between the input data types and the output data types.

Claims (48)

1. A computer-implemented method, comprising:

obtaining, by one or more nodes, a plurality of commitment values corresponding to one or more data inputs and one or more data outputs of a transaction, a basepoint used to generate the plurality of commitment values, and a parameter, wherein the one or more data inputs respectively correspond to one or more input data types, the one or more data outputs respectively correspond to one or more output data types, and the plurality of commitment values are generated based at least on respectively committing, by a different node, hash values of the input data types and the output data types according to a commitment scheme based on the basepoint and a plurality of blinding factors;

generating, by the one or more nodes, a plurality of unverified differences based on the plurality of commitment values;

generating, by the one or more nodes, a hash value based on the plurality of unverified differences;

generating, by the one or more nodes, a plurality of polynomials based on the plurality of unverified differences and the hash value; and

determining, by the one or more nodes, that the one or more input data types are consistent with the one or more output data types by determining that a sum of the plurality of polynomials matches a product of the parameter and the basepoint, without receiving plaintexts of the one or more input data types and the one or more output data types; and

adding, by the one or more nodes, the transaction to a blockchain.

2. The method of claim 1 , wherein the commitment scheme comprises a Pedersen commitment.

3. The method of claim 1 , wherein:

the one or more nodes and the different node are nodes of a same blockchain computer network; and

the one or more nodes are configured to add transactions to the blockchain through consensus verification.

4. The method of claim 1 , wherein the parameter is generated, by the different node, based at least on (1) the plurality of blinding factors and (2) a hash value of a concatenation of a plurality of differences respectively between a plurality of pairs of the commitment values.

5. The method of claim 4 , wherein:

the one or more data inputs form an ordered input series starting from a first data input;

the one or more data outputs form an ordered output series starting from a first data output; and

the plurality of differences respectively between the plurality of pairs of the commitment values comprise one or more differences between commitment values corresponding to every two neighboring data inputs in the ordered input series, one or more differences between commitment values corresponding to every two neighboring data outputs in the ordered output series, and a difference between commitment values corresponding to the first data input and the first data output.

6. The method of claim 4 , wherein the parameter is generated, by the different node, based on the hash value of the concatenation of the plurality of differences respectively between the plurality of pairs of the commitment values, one or more differences between blinding factors corresponding to every two neighboring data inputs in the ordered input series, one or more differences between blinding factors corresponding to every two neighboring data outputs in the ordered output series, and a difference between blinding factors corresponding to the first data input and the first data output.

7. The method of claim 1 , wherein the plurality of unverified differences correspond to differences between a plurality of pairs of the commitment values.

8. The method of claim 1 , wherein generating, by the one or more nodes, the hash value based on the plurality of unverified differences comprises:

hashing, by the one or more nodes, a concatenation of the plurality of unverified differences.

9. A non-transitory computer-readable storage medium storing instructions executable by one or more processors, wherein execution of the instructions causes the one or more processors to perform operations comprising:

obtaining a plurality of commitment values corresponding to one or more data inputs and one or more data outputs of a transaction, a basepoint used to generate the plurality of commitment values, and a parameter, wherein the one or more data inputs respectively correspond to one or more input data types, the one or more data outputs respectively correspond to one or more output data types, and the plurality of commitment values are generated based at least on respectively committing, by a different node, hash values of the input data types and the output data types according to a commitment scheme based on the basepoint and a plurality of blinding factors;

generating a plurality of unverified differences based on the plurality of commitment values;

generating a hash value based on the plurality of unverified differences;

generating a plurality of polynomials based on the plurality of unverified differences and the hash value; and

determining that the one or more input data types are consistent with the one or more output data types by determining that a sum of the plurality of polynomials matches a product of the parameter and the basepoint, without receiving plaintexts of the one or more input data types and the one or more output data types; and

adding the transaction to a blockchain.

10. The non-transitory computer-readable storage medium of claim 9 , wherein the commitment scheme comprises a Pedersen commitment.

11. The non-transitory computer-readable storage medium of claim 9 , wherein adding the transaction to the blockchain comprises:

adding the transaction to the blockchain through consensus verification.

12. The non-transitory computer-readable storage medium of claim 9 , wherein the parameter is generated, by the node, based at least on (1) the plurality of blinding factors and (2) a hash value of a concatenation of a plurality of differences respectively between a plurality of pairs of the commitment values.

13. The non-transitory computer-readable storage medium of claim 12 , wherein:

the one or more data inputs form an ordered input series starting from a first data input;

the one or more data outputs form an ordered output series starting from a first data output; and

the plurality of differences respectively between the plurality of pairs of the commitment values comprise one or more differences between commitment values corresponding to every two neighboring data inputs in the ordered input series, one or more differences between commitment values corresponding to every two neighboring data outputs in the ordered output series, and a difference between commitment values corresponding to the first data input and the first data output.

14. The non-transitory computer-readable storage medium of claim 12 , wherein the parameter is generated, by the node, based on the hash value of the concatenation of the plurality of differences respectively between the plurality of pairs of the commitment values, one or more differences between blinding factors corresponding to every two neighboring data inputs in the ordered input series, one or more differences between blinding factors corresponding to every two neighboring data outputs in the ordered output series, and a difference between blinding factors corresponding to the first data input and the first data output.

15. The non-transitory computer-readable storage medium of claim 9 , wherein the plurality of unverified differences correspond to differences between a plurality of pairs of the commitment values.

16. The non-transitory computer-readable storage medium of claim 9 , wherein generating the hash value based on the plurality of unverified differences comprises:

hashing a concatenation of the plurality of unverified differences.

17. A system comprising one or more processors and one or more non-transitory computer-readable memories coupled to the one or more processors and configured with instructions executable by the one or more processors to cause the system to perform operations comprising:

obtaining a plurality of commitment values corresponding to one or more data inputs and one or more data outputs of a transaction, a basepoint used to generate the plurality of commitment values, and a parameter, wherein the one or more data inputs respectively correspond to one or more input data types, the one or more data outputs respectively correspond to one or more output data types, and the plurality of commitment values are generated based at least on respectively committing, by a different node, hash values of the input data types and the output data types according to a commitment scheme based on the basepoint and a plurality of blinding factors;

generating a plurality of unverified differences based on the plurality of commitment values;

generating a hash value based on the plurality of unverified differences;

generating a plurality of polynomials based on the plurality of unverified differences and the hash value; and

determining that the one or more input data types are consistent with the one or more output data types by determining that a sum of the plurality of polynomials matches a product of the parameter and the basepoint, without receiving plaintexts of the one or more input data types and the one or more output data types; and

adding the transaction to a blockchain.

18. The system of claim 17 , wherein generating the hash value based on the plurality of unverified differences comprises:

hashing a concatenation of the plurality of unverified differences.

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 Jul 27, 2020
From: MA, BAOLI; ZHANG, WENBIN; LI, LICHUN; LIU, ZHENG; YIN, SHAN
To: ALIBABA GROUP HOLDING LIMITED
Reel/Frame 053322/0568 →