IP Library › Granted Patent US 12,273,437
Granted Patent B2
US 12,273,437 · App. 17/955,422 · Granted Apr 8, 2025

Data processing method and apparatus for blockchain system

Inventors: Maocai Li (Shenzhen, CN); Hu Lan (Shenzhen, CN); Zongyou Wang (Shenzhen, CN); Kaiban Zhou (Shenzhen, CN); Pan Liu (Shenzhen, CN); Gengliang Zhu (Shenzhen, CN); Yifang Shi (Shenzhen, CN)
Assignee: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
H04L9/0618H04L9/0822H04L9/0825H04L9/0869
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 12,273,437
App. No.
17/955,422
Granted
Apr 8, 2025
Kind
B2
Abstract

A data processing method includes: determining, in response to a request of an access terminal for writing target data to a blockchain, a target node role with a read permission for the target data, an access terminal connected with each node device having a permission of a node role corresponding to the node device; acquiring an encryption key corresponding to the target node role; performing encryption processing on the target data according to the encryption key to obtain a cipher text corresponding to the target data, the cipher text corresponding to the target data being decryptable for an access terminal corresponding to the target node role; and storing the cipher text corresponding to the target data to the blockchain.

Claims (67)

1. A data processing method for a blockchain system, the blockchain system including multiple node devices, each of the multiple node devices being connected with at least one access terminal and corresponding to a node role, the access terminal having a permission of the node role corresponding to the connected node device, the method being performed by a node device in the blockchain system, the method comprising:

determining, in response to a request of a target access terminal for writing target data to a blockchain, a target node role with a read permission for the target data, the target access terminal being one of access terminals connected with the node device;

acquiring an encryption key corresponding to the target node role;

performing encryption processing on the target data according to the encryption key to obtain a cipher text corresponding to the target data, the cipher text corresponding to the target data being decryptable for an access terminal corresponding to the target node role;

generating a role shared key corresponding to a same target node role by aggregation according to user secret information configured in each access terminal corresponding to the same target node role,

performing encryption processing on the encryption key according to a key sequence comprising a role shared key corresponding to each target node role to obtain a cipher text corresponding to the encryption key; and

storing the cipher text corresponding to the target data and the cipher text corresponding to the encryption key to the blockchain.

2. The method according to claim 1 , wherein the encryption key includes a shared public key; and acquiring the encryption key comprises:

acquiring a public key corresponding to each target node role, and

generating the shared public key by aggregation according to the public key corresponding to each target node role, the cipher text obtained by encrypting the target data based on the shared public key being decryptable for a private key corresponding to each target node role.

3. The method according to claim 2 , wherein acquiring the public key comprises:

generating, in the node device, a random number corresponding to each target node role, and

generating the public key corresponding to each target node role according to the random number corresponding to each target node role; and

the method further comprises:

transmitting the random number corresponding to each target node role to the access terminal corresponding to the target node role such that the access terminal generates the private key corresponding to the node role corresponding to the access terminal based on the received random number.

4. The method according to claim 1 , wherein the encryption key includes a symmetric key, and acquiring the encryption key comprises:

generating, in the node device, the symmetric key; and

the method further comprises:

transmitting the symmetric key to the access terminal corresponding to the target node role to enable the access terminal corresponding to the target node role to decrypt the cipher text corresponding to the target data according to the received symmetric key.

5. The method according to claim 1 , further comprising:

encrypting the encryption key according to a shared key corresponding to each target node role to obtain a cipher text corresponding to the encryption key, wherein

storing the cipher text comprises:

storing the cipher text corresponding to the encryption key and the cipher text corresponding to the target data to the blockchain together.

6. The method according to claim 1 , further comprising:

acquiring access terminal signature information in the target data;

verifying the access terminal signature information according to a public key corresponding to a node role corresponding to the target access terminal; and

performing, when or in response to determining that the verification of the access terminal signature information succeeds, the operation of determining a target node role with a read permission for the target data.

7. The method according to claim 6 , wherein verifying the access terminal signature information comprises:

determining the node role corresponding to the target access terminal according to a key field in the target data; and

searching a locally stored public key list for the public key corresponding to the node role corresponding to the target access terminal, and verifying the access terminal signature information according to the found public key.

8. A data processing method for a blockchain system, the blockchain system including multiple node devices, each of the multiple node devices being connected with at least one access terminal and corresponding to a node role, the access terminal having a permission of the node role corresponding to the connected node device, the method being performed by a node device in the blockchain system, the method comprising:

transmitting, in response to a request of a target access terminal for reading target data, a cipher text corresponding to the target data and a cipher text corresponding to an encryption key stored in a blockchain to the target access terminal, such that the target access terminal decrypts the cipher text corresponding to encryption key according to a private key corresponding to a node role corresponding to the target access terminal, and decrypts the cipher text corresponding to the target data according to the encryption key obtained by decryption to obtain the target data;

the target access terminal being one of access terminals connected with the node device, the cipher text corresponding to the target data being obtained by performing encryption processing on the target data according to the encryption key, and the encryption key being an encryption key corresponding to a target node role with a read permission for the target data; and

the cipher text corresponding to the encryption key being obtained by performing encryption processing on the encryption key according to a shared key corresponding to the target node role, and the shared key being generated by aggregation according to a public key corresponding to each target node role.

9. The method according to claim 8 , wherein transmitting the cipher text comprises:

broadcasting the cipher text corresponding to the target data and a cipher text corresponding to the encryption key, that are stored in the blockchain, such that the target access terminal decrypts the received cipher text corresponding to the encryption key according to the private key corresponding to the node role corresponding to the target access terminal, and decrypts the cipher text corresponding to the target data according to the encryption key obtained by decryption.

10. The method according to claim 9 , wherein the private key corresponding to the node role corresponding to the target access terminal includes user secret information configured in the target access terminal; the cipher text corresponding to the encryption key is obtained by performing encryption processing on the encryption key according to a key sequence including a role shared key corresponding to each target node role; and the role shared key is generated by aggregation according to user secret information configured in each access terminal corresponding to the same target node role.

11. A data processing apparatus for a blockchain system, the blockchain system including multiple node devices, each of the multiple node devices being connected with at least one access terminal and corresponding to a node role, the access terminal having a permission of the node role corresponding to the connected node device, the apparatus being configured on a node device in the blockchain system, the apparatus comprising: a memory storing computer program instructions; and a processor coupled to the memory and configured to execute the computer program instructions and perform:

determining, in response to a request of a target access terminal for writing target data to a blockchain, a target node role with a read permission for the target data, the target access terminal being one of access terminals connected with the node device;

acquiring an encryption key corresponding to the target node role;

performing encryption processing on the target data according to the encryption key to obtain a cipher text corresponding to the target data, the cipher text corresponding to the target data being decryptable for an access terminal corresponding to the target node role;

generating a role shared key corresponding to a same target node role by aggregation according to user secret information configured in each access terminal corresponding to the same target node role,

performing encryption processing on the encryption key according to a key sequence comprising a role shared key corresponding to each target node role to obtain a cipher text corresponding to the encryption key; and

storing the cipher text corresponding to the target data and the cipher text corresponding to the encryption key to the blockchain.

12. The data processing apparatus according to claim 11 , wherein the encryption key includes a shared public key; and acquiring the encryption key includes:

acquiring a public key corresponding to each target node role, and

generating the shared public key by aggregation according to the public key corresponding to each target node role, the cipher text obtained by encrypting the target data based on the shared public key being decryptable for a private key corresponding to each target node role.

13. The data processing apparatus according to claim 12 , wherein acquiring the public key includes:

generating, in the node device, a random number corresponding to each target node role, and

generating the public key corresponding to each target node role according to the random number corresponding to each target node role; and

the method further includes:

transmitting the random number corresponding to each target node role to the access terminal corresponding to the target node role such that the access terminal generates the private key corresponding to the node role corresponding to the access terminal based on the received random number.

14. The data processing apparatus according to claim 11 , wherein the encryption key includes a symmetric key, and acquiring the encryption key includes:

generating, in the node device, the symmetric key; and

the method further includes:

transmitting the symmetric key to the access terminal corresponding to the target node role to enable the access terminal corresponding to the target node role to decrypt the cipher text corresponding to the target data according to the received symmetric key.

15. The data processing apparatus according to claim 11 , wherein the processor is further configured to execute the computer program instructions and perform:

encrypting the encryption key according to a shared key corresponding to each target node role to obtain a cipher text corresponding to the encryption key, wherein

storing the cipher text includes:

storing the cipher text corresponding to the encryption key and the cipher text corresponding to the target data to the blockchain together.

16. The data processing apparatus according to claim 11 , wherein the processor is further configured to execute the computer program instructions and perform:

acquiring access terminal signature information in the target data;

verifying the access terminal signature information according to a public key corresponding to a node role corresponding to the target access terminal; and

performing, when or in response to determining that the verification of the access terminal signature information succeeds, the operation of determining a target node role with a read permission for the target data.

17. The data processing apparatus according to claim 16 , wherein verifying the access terminal signature information includes:

determining the node role corresponding to the target access terminal according to a key field in the target data; and

searching a locally stored public key list for the public key corresponding to the node role corresponding to the target access terminal, and verifying the access terminal signature information according to the found public key.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2022
From: LI, MAOCAI; LAN, HU; WANG, ZONGYOU; ZHOU, KAIBAN; LIU, PAN; ZHU, GENGLIANG; SHI, YIFANG
To: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
Reel/Frame 061570/0495 →
Priority Claims (1)
CN 202011306241.0 · Nov 20, 2020 · national
Continuity (2)
Continuation PCTCN2021124282 · Oct 18, 2021
Related Publication 20230014599A1 · Jan 19, 2023
References Cited (12)
US 10986080B1 · Huang · 2021 [cited by examiner]
US 20190356674A1 · Irazabal · 2019 [cited by examiner]
US 20200162238A1 · Yoon et al. · 2020 [cited by applicant]
US 20210314164A1 · Lin · 2021 [cited by examiner]
CN 111274599A · 2020 [cited by applicant]
CN 111371790A1 · 2020 [cited by applicant]
CN 111625869A · 2020 [cited by applicant]
CN 112131316A · 2020 [cited by applicant]
WO 2019143849A1 · 2019 [cited by applicant]
WO 2020176475A1 · 2020 [cited by applicant]
The European Patent Office (EPO) The Extended European Search Report for 21893654.0 Dec. 6, 2023 8 Pages. [cited by applicant]
The World Intellectual Property Organization (WIPO) International Search Report for PCT/CN2021/124282 Jan. 19, 2022 7 Pages (including translation). [cited by applicant]