Block chain state data synchronization method, apparatus, and electronic device
US-2020167367-A1 · May 28, 2020 · US
US11113272B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11113272-B2 |
| Application number | US-202016775155-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 28, 2020 |
| Priority date | Jul 31, 2019 |
| Publication date | Sep 7, 2021 |
| Grant date | Sep 7, 2021 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method of storing blockchain state data, including: after execution of a transaction in a target block is completed, based on a latest account state of a target account related to the transaction in the target block after update, generating updated data nodes corresponding to the current Merkle state tree of the target block and, based on generated historical data nodes and data nodes other than the reused data nodes corresponding to the target account on the historical Merkle state tree of the previous block of the target block, creating the historical Merkle state tree for the target block.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method of storing blockchain state data, comprising: after execution of a transaction in a target block in a blockchain is completed, based on a latest account state of a target account related to the transaction after execution of the transaction, modifying and updating, by a blockchain node device, data nodes corresponding to the target account on a current Merkle state tree of a previous block adjacent to the target block, to obtain a current Merkle state tree of the target block, wherein the current Merkle state tree of the target block is formed by latest account states of blockchain accounts of the blockchain; based on a historical account state of the target account before execution of the transaction, generating, by the blockchain node device, historical data nodes corresponding to a historical Merkle state tree of the target block, wherein the historical Merkle state tree of the target block is formed by historical account states of blockchain accounts of the blockchain; and based on (i) the generated historical data nodes and (ii) data nodes other than data nodes corresponding to the target account on a historical Merkle state tree of the previous block adjacent to the target block, creating, by the blockchain node device, the historical Merkle state tree of the target block, wherein the current Merkle state tree of the target block and the historical Merkle state tree of the target block are distinct Merkle state trees and are stored in a database, wherein at least some data stored in the historical Merkle state tree of the target block is blockchain account data not stored in the current Merkle state tree of the target block, wherein the current Merkle state tree of the previous block adjacent to the target block and the historical Merkle state tree of the previous block adjacent to the target block are distinct Merkle state trees and are stored in the database, and wherein at least some data stored in the historical Merkle state tree of the previous block adjacent to the target block is blockchain account data not stored in the current Merkle state tree of the previous block to the target block. 2. The computer-implemented method of claim 1 , wherein data nodes on the current Merkle state tree of the target block are organized into a data structure of a B+ tree and stored in the database; and wherein data nodes on the historical Merkle state tree of the target block are organized into a data structure of a Log-Structured Merge tree and stored in the database. 3. The computer-implemented method of claim 1 , wherein the database is a Key-Value database; wherein data nodes on the current Merkle state tree of the target block and data nodes on the historical Merkle state tree of the target block are stored in the database in the form of Key-Value pairs; wherein a key of each data node on the current Merkle state tree of the target block is a node ID of the data node; and wherein a key of each data node on the historical Merkle state tree of the target block is a hash value of data content contained in the data node. 4. The computer-implemented method of claim 1 , wherein the database is a LevelDB database or a database based on a LevelDB architecture. 5. The computer-implemented method of claim 4 , wherein the database is a Rocksdb database based on the LevelDB architecture. 6. The computer-implemented method of claim 1 , wherein the current Merkle state tree of the target block and the historical Merkle state tree of the target block each have a structure of a Merkle state tree variant having a tree structure incorporating a Trie dictionary tree. 7. The computer-implemented method of claim 1 , wherein the current Merkle state tree of the target block and the historical Merkle state tree of the target block are each a Merkle Patricia Tree state tree. 8. The computer-implemented method of claim 1 , wherein data of data nodes on the current Merkle state tree of the target block is stored separately from data of data nodes on the historical Merkle state tree of the target block. 9. The computer-implemented method of claim 1 , wherein data of data nodes on the current Merkle state tree of the target block is stored separately from data of data nodes on the historical Merkle state tree of the previous block adjacent to the target block. 10. A non-transitory, computer-readable medium storing one or more instructions that, when executed by a computer system of a blockchain node device, cause the blockchain node device to perform operations for storing blockchain data, the operations comprising: after execution of a transaction in a target block in a blockchain is completed, based on a latest account state of a target account related to the transaction after execution of the transaction, modifying and updating data nodes corresponding to the target account on a current Merkle state tree of a previous block adjacent to the target block, to obtain a current Merkle state tree of the target block, wherein the current Merkle state tree of the target block is formed by latest account states of blockchain accounts of the blockchain; based on a historical account state of the target account before execution of the transaction, generating historical data nodes corresponding to a historical Merkle state tree of the target block, wherein the historical Merkle state tree of the target block is formed by historical account states of blockchain accounts of the blockchain; and based on (i) the generated historical data nodes and (ii) data nodes other than data nodes corresponding to the target account on a historical Merkle state tree of the previous block adjacent to the target block, creating the historical Merkle state tree of the target block, wherein the current Merkle state tree of the target block and the historical Merkle state tree of the target block are distinct Merkle state trees and are stored in a database, wherein at least some data stored in the historical Merkle state tree of the target block is blockchain account data not stored in the current Merkle state tree of the target block, wherein the current Merkle state tree of the previous block adjacent to the target block and the historical Merkle state tree of the previous block adjacent to the target block are distinct Merkle state trees and are stored in the database, and wherein at least some data stored in the historical Merkle state tree of the previous block adjacent to the target block is blockchain account data not stored in the current Merkle state tree of the previous block to the target block. 11. The non-transitory, computer-readable medium of claim 10 , wherein data nodes on the current Merkle state tree of the target block are organized into a data structure of a B+ tree and stored in the database; and wherein data nodes on the historical Merkle state tree of the target block are organized into a data structure of a Log-Structured Merge tree and stored in the database. 12. The non-transitory, computer-readable medium of claim 10 , wherein the database is a Key-Value database; wherein data nodes on the current Merkle state tree of the target block and data nodes on the historical Merkle state tree of the target block are stored in the database in the form of Key-Value pairs; wherein a key of each data node on the current Merkle state tree of the target block is a node ID of the data node; and wherein a key of each data node on the historical Merkle state tree of the target block is a hash value of data content contained in the data node. 13. The non-transitory, computer-readable medium of claim 10 , wherein the database is a LevelDB dat
Hierarchy of users of accounts · CPC title
Trees, e.g. B+trees · CPC title
using mutual authentication without cards, e.g. challenge-response · CPC title
using e-cash · CPC title
insuring higher security of transaction · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.