IP Library › Granted Patent US 12,452,087
Granted Patent B2
US 12,452,087 · App. 18/072,621 · Granted Oct 21, 2025

Data communication method and apparatus, computer device, and storage medium

Inventors: Zongyou Wang (Shenzhen, CN); Hu Lan (Shenzhen, CN); Pan Liu (Shenzhen, CN); Yifang Shi (Shenzhen, CN); Kaiban Zhou (Shenzhen, CN); Jinsong Zhang (Shenzhen, CN); Qucheng Liu (Shenzhen, CN); Huankun Huang (Shenzhen, CN); Gengliang Zhu (Shenzhen, CN); Zhiyong Liao (Shenzhen, CN)
Assignee: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
H04L9/50G06F16/2365G06F16/27H04L9/3297H04L2209/56
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,452,087
App. No.
18/072,621
Granted
Oct 21, 2025
Kind
B2
Abstract

Embodiments of this application provide a data communication method performed by a computer device. The method includes: receiving a statistical proof transaction list in an associated block, and recognizing a target index of a lightweight node in the statistical proof transaction list, where the statistical proof transaction list includes a plurality of statistical proof transactions, and the statistical proof transactions are obtained by encrypting transaction visible addresses corresponding to the transactions included in the associated block, and the quantities of the transaction visible addresses in the associated block; receiving associated transactions associated with the lightweight node in the associated block, and an encrypted path set, where the encrypted path set includes encrypted paths of the associated transactions and an encrypted path of the statistical proof transaction list; and determining validity of the associated transactions according to the statistical proof transaction list, the target index, and the encrypted path set.

Claims (72)

1. A data communication method, performed by a computer device acting as a lightweight node of a blockchain data network, the method comprising:

receiving data from an associated block having an association with the lightweight node, the data comprising a plurality of transactions that are associated with the lightweight node and that are in the associated block, and a statistical proof transaction list, each of the plurality of transactions having their respective corresponding transaction visible addresses of lightweight nodes that can access the transaction, the statistical proof transaction list comprising a plurality of statistical proof transactions, each of the plurality of statistical proof transactions indicating a quantity of transactions that are visible to a lightweight node represented by a corresponding transaction visible address, and the plurality of statistical proof transactions being obtained by encrypting the transaction visible addresses corresponding to the transaction nodes, and the quantities of the transaction visible addresses in the associated block;

recognizing a target index of the lightweight node in the statistical proof transaction list;

obtaining an encrypted path set based on the associated transactions, the encrypted path set comprising encrypted paths of the associated transactions and an encrypted path of the statistical proof transaction list; and

determining validity of the associated transactions according to the statistical proof transaction list, the target index, and the encrypted path set, the validity being used for representing accuracy and completeness of the associated transactions, further including:

checking, based on the encrypted path set, whether the associated transactions are accurate, and obtaining the accuracy indicating that content related to the associated transactions is not tampered with; and

checking, based on the target index, the statistical proof transaction list, and the encrypted path of the statistical proof transaction list, whether the associated transactions are complete, and obtaining the completeness indicating that no content related to the associated transactions is missing.

2. The method according to claim 1 , wherein there are a plurality of associated transactions, the plurality of associated transactions comprise a first associated transaction and a second associated transaction, and the encrypted paths of the plurality of associated transactions comprises a first encrypted path corresponding to the first associated transaction and a second encrypted path corresponding to the second associated transaction; and

the checking, based on the encrypted path set, whether the associated transactions are accurate, and obtaining the accuracy comprises:

determining a first Merkle root according to the first associated transaction and the first encrypted path;

determining a second Merkle root according to the second associated transaction and the second encrypted path; and

checking, based on the first Merkle root and the second Merkle root, whether the associated transactions are accurate, and obtaining the accuracy.

3. The method according to claim 2 , wherein the checking, based on the first Merkle root and the second Merkle root, whether the associated transactions are accurate, and obtaining the accuracy comprises:

receiving a block Merkle root of the associated block;

determining, when the first Merkle root, the second Merkle root, and the block Merkle root are all the same as each other, that the associated transactions are accurate; and

determining, when at least two Merkle roots of the first Merkle root, the second Merkle root, and the block Merkle root are not the same as each other, that the associated transactions are inaccurate.

4. The method according to claim 1 , wherein the checking, based on the target index, the statistical proof transaction list, and the encrypted path of the statistical proof transaction list, whether the associated transactions are complete, and obtaining the completeness comprises:

checking, according to the encrypted path of the statistical proof transaction list, whether the statistical proof transaction list is valid;

receiving the transaction quantity of the associated transactions from the associated block in a case of checking and determining that the statistical proof transaction list is valid;

searching the statistical proof transaction list for a target statistical proof transaction corresponding to the target index; and

checking, according to the statistical proof transaction list, the target statistical proof transaction, the transaction quantity, and a node address of the lightweight node, whether the associated transactions are complete, and obtaining the completeness.

5. The method according to claim 4 , wherein the checking, according to the statistical proof transaction list, the target statistical proof transaction, the transaction quantity, and a node address of the lightweight node, whether the associated transactions are complete, and obtaining the completeness comprises:

performing a superposition operation on the transaction quantity and the node address of the lightweight node, to obtain a target superposition value, and performing an encryption operation on the target superposition value through an encryption algorithm, to obtain a target service transaction of the lightweight node; and

determining, when the target statistical proof transaction is the same as the target service transaction, that the associated transactions are complete.

6. A computer device acting as a lightweight node of a blockchain data network, comprising a memory and a processor, the memory storing a set of program code that, when executed by the processor, cause the computer device to perform a data communication method including:

receiving data from an associated block having an association with the lightweight node, the data comprising a plurality of transactions that are associated with the lightweight node and that are in the associated block, and a statistical proof transaction list, each of the plurality of transactions having their respective corresponding transaction visible addresses of lightweight nodes that can access the transaction, the statistical proof transaction list comprising a plurality of statistical proof transactions, each of the plurality of statistical proof transactions indicating a quantity of transactions that are visible to a lightweight node represented by a corresponding transaction visible address, and the plurality of statistical proof transactions being obtained by encrypting the transaction visible addresses corresponding to the transaction nodes, and the quantities of the transaction visible addresses in the associated block;

recognizing a target index of the lightweight node in the statistical proof transaction list;

obtaining an encrypted path set based on the associated transactions, the encrypted path set comprising encrypted paths of the associated transactions and an encrypted path of the statistical proof transaction list; and

determining validity of the associated transactions according to the statistical proof transaction list, the target index, and the encrypted path set, the validity being used for representing accuracy and completeness of the associated transactions, further including:

checking, based on the encrypted path set, whether the associated transactions are accurate, and obtaining the accuracy indicating that content related to the associated transactions is not tampered with; and

checking, based on the target index, the statistical proof transaction list, and the encrypted path of the statistical proof transaction list, whether the associated transactions are complete, and obtaining the completeness indicating that no content related to the associated transactions is missing.

7. The computer device according to claim 6 , wherein there are a plurality of associated transactions, the plurality of associated transactions comprise a first associated transaction and a second associated transaction, and the encrypted paths of the plurality of associated transactions comprises a first encrypted path corresponding to the first associated transaction and a second encrypted path corresponding to the second associated transaction; and

the checking, based on the encrypted path set, whether the associated transactions are accurate, and obtaining the accuracy comprises:

determining a first Merkle root according to the first associated transaction and the first encrypted path;

determining a second Merkle root according to the second associated transaction and the second encrypted path; and

checking, based on the first Merkle root and the second Merkle root, whether the associated transactions are accurate, and obtaining the accuracy.

8. The computer device according to claim 7 , wherein the checking, based on the first Merkle root and the second Merkle root, whether the associated transactions are accurate, and obtaining the accuracy comprises:

receiving a block Merkle root of the associated block;

determining, when the first Merkle root, the second Merkle root, and the block Merkle root are all the same as each other, that the associated transactions are accurate; and

determining, when at least two Merkle roots of the first Merkle root, the second Merkle root, and the block Merkle root are not the same as each other, that the associated transactions are inaccurate.

9. The computer device according to claim 6 , wherein the checking, based on the target index, the statistical proof transaction list, and the encrypted path of the statistical proof transaction list, whether the associated transactions are complete, and obtaining the completeness comprises:

checking, according to the encrypted path of the statistical proof transaction list, whether the statistical proof transaction list is valid;

receiving the transaction quantity of the associated transactions from the associated block in a case of checking and determining that the statistical proof transaction list is valid;

searching the statistical proof transaction list for a target statistical proof transaction corresponding to the target index; and

checking, according to the statistical proof transaction list, the target statistical proof transaction, the transaction quantity, and a node address of the lightweight node, whether the associated transactions are complete, and obtaining the completeness.

10. The computer device according to claim 9 , wherein the checking, according to the statistical proof transaction list, the target statistical proof transaction, the transaction quantity, and a node address of the lightweight node, whether the associated transactions are complete, and obtaining the completeness comprises:

performing a superposition operation on the transaction quantity and the node address of the lightweight node, to obtain a target superposition value, and performing an encryption operation on the target superposition value through an encryption algorithm, to obtain a target service transaction of the lightweight node; and

determining, when the target statistical proof transaction is the same as the target service transaction, that the associated transactions are complete.

11. A non-transitory computer-readable storage medium, storing a computer program, the computer program comprising program instructions that, when executed by a processor of a computer device acting as a lightweight node of a blockchain data network, cause the computer device to perform a data communication method including:

receiving data from an associated block having an association with the lightweight node, the data comprising a plurality of transactions that are associated with the lightweight node and that are in the associated block, and a statistical proof transaction list, each of the plurality of transactions having their respective corresponding transaction visible addresses of lightweight nodes that can access the transaction, the statistical proof transaction list comprising a plurality of statistical proof transactions, each of the plurality of statistical proof transactions indicating a quantity of transactions that are visible to a lightweight node represented by a corresponding transaction visible address, and the plurality of statistical proof transactions being obtained by encrypting the transaction visible addresses corresponding to the transaction nodes, and the quantities of the transaction visible addresses in the associated block;

recognizing a target index of the lightweight node in the statistical proof transaction list;

obtaining an encrypted path set based on the associated transactions, the encrypted path set comprising encrypted paths of the associated transactions and an encrypted path of the statistical proof transaction list; and

determining validity of the associated transactions according to the statistical proof transaction list, the target index, and the encrypted path set, the validity being used for representing accuracy and completeness of the associated transactions, further including:

checking, based on the encrypted path set, whether the associated transactions are accurate, and obtaining the accuracy indicating that content related to the associated transactions is not tampered with; and

checking, based on the target index, the statistical proof transaction list, and the encrypted path of the statistical proof transaction list, whether the associated transactions are complete, and obtaining the completeness indicating that no content related to the associated transactions is missing.

12. The non-transitory computer-readable storage medium according to claim 11 , wherein there are a plurality of associated transactions, the plurality of associated transactions comprise a first associated transaction and a second associated transaction, and the encrypted paths of the plurality of associated transactions comprises a first encrypted path corresponding to the first associated transaction and a second encrypted path corresponding to the second associated transaction; and

the checking, based on the encrypted path set, whether the associated transactions are accurate, and obtaining the accuracy comprises:

determining a first Merkle root according to the first associated transaction and the first encrypted path;

determining a second Merkle root according to the second associated transaction and the second encrypted path; and

checking, based on the first Merkle root and the second Merkle root, whether the associated transactions are accurate, and obtaining the accuracy.

13. The non-transitory computer-readable storage medium according to claim 12 , wherein the checking, based on the first Merkle root and the second Merkle root, whether the associated transactions are accurate, and obtaining the accuracy comprises:

receiving a block Merkle root of the associated block;

determining, when the first Merkle root, the second Merkle root, and the block Merkle root are all the same as each other, that the associated transactions are accurate; and

determining, when at least two Merkle roots of the first Merkle root, the second Merkle root, and the block Merkle root are not the same as each other, that the associated transactions are inaccurate.

14. The non-transitory computer-readable storage medium according to claim 11 , wherein the checking, based on the target index, the statistical proof transaction list, and the encrypted path of the statistical proof transaction list, whether the associated transactions are complete, and obtaining the completeness comprises:

checking, according to the encrypted path of the statistical proof transaction list, whether the statistical proof transaction list is valid;

receiving the transaction quantity of the associated transactions from the associated block in a case of checking and determining that the statistical proof transaction list is valid;

searching the statistical proof transaction list for a target statistical proof transaction corresponding to the target index; and

checking, according to the statistical proof transaction list, the target statistical proof transaction, the transaction quantity, and a node address of the lightweight node, whether the associated transactions are complete, and obtaining the completeness.

15. The non-transitory computer-readable storage medium according to claim 14 , wherein the checking, according to the statistical proof transaction list, the target statistical proof transaction, the transaction quantity, and a node address of the lightweight node, whether the associated transactions are complete, and obtaining the completeness comprises:

performing a superposition operation on the transaction quantity and the node address of the lightweight node, to obtain a target superposition value, and performing an encryption operation on the target superposition value through an encryption algorithm, to obtain a target service transaction of the lightweight node; and

determining, when the target statistical proof transaction is the same as the target service transaction, that the associated transactions are complete.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2022
From: WANG, ZONGYOU; LAN, HU; LIU, PAN; SHI, YIFANG; ZHOU, KAIBAN; LIU, QUCHENG; HUANG, HUANKUN; ZHU, GENGLIANG; LIAO, ZHIYONG
To: TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
Reel/Frame 062140/0307 →
Priority Claims (1)
CN 202011279516.6 · Nov 16, 2020 · national
Continuity (2)
Continuation PCTCN2021130209 · Nov 12, 2021
Related Publication 20230089134A1 · Mar 23, 2023
References Cited (26)
US 20190182029A1 · Yim et al. · 2019 [cited by applicant]
US 20190207762A1 · Xie · 2019 [cited by examiner]
US 20190213333A1 · Williams et al. · 2019 [cited by applicant]
US 20200328889A1 · Matetic et al. · 2020 [cited by applicant]
CN 108200203A · 2018 [cited by applicant]
CN 109214818A · 2019 [cited by applicant]
CN 109242500A · 2019 [cited by applicant]
CN 109885615A · 2019 [cited by applicant]
CN 110287262A · 2019 [cited by applicant]
CN 110708170A · 2020 [cited by applicant]
CN 110889729A · 2020 [cited by applicant]
CN 111159293A · 2020 [cited by applicant]
CN 111209343A · 2020 [cited by applicant]
CN 111242617A · 2020 [cited by applicant]
CN 111475575A · 2020 [cited by applicant]
CN 111597567A · 2020 [cited by applicant]
CN 111680031A · 2020 [cited by applicant]
CN 111680049A · 2020 [cited by applicant]
CN 111832079A · 2020 [cited by applicant]
CN 112085504A · 2020 [cited by applicant]
WO WO2020165680A1 · 2020 [cited by applicant]
Tencent Technology, ISR, PCT/CN2021/130209, Feb. 10, 2022, 3 pgs. [cited by applicant]
Tencent Technology, WO, PCT/CN2021/130209, Feb. 10, 2022, 5 pgs. [cited by applicant]
Tencent Technology, IPRP, PCT/CN2021/130209, May 16, 2023, 6 pgs. [cited by applicant]
Sinisa Matetic et al., “Bite: Bitcoin Lightweight Client Privacyn using Trusted Execution”, IACR (International Association for Cryptologic Research), vol., Sep. 6, 2018, XP061026394, 34 pgs., Retrieved from the Interne… [cited by applicant]
Tencent Technology, Extended European Search Report, EP21891199.8, Dec. 14, 2023, 8 pgs. [cited by applicant]