CN110599169A - Data processing method, device, terminal and medium - Google Patents

Data processing method, device, terminal and medium Download PDF

Info

Publication number
CN110599169A
CN110599169A CN201910871541.4A CN201910871541A CN110599169A CN 110599169 A CN110599169 A CN 110599169A CN 201910871541 A CN201910871541 A CN 201910871541A CN 110599169 A CN110599169 A CN 110599169A
Authority
CN
China
Prior art keywords
account
data
hash
state
target block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910871541.4A
Other languages
Chinese (zh)
Other versions
CN110599169B (en
Inventor
李茂材
王宗友
刘区城
孔利
蓝虎
周开班
杨常青
张劲松
朱耿良
陈秋平
时一防
刘攀
黄焕坤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910871541.4A priority Critical patent/CN110599169B/en
Publication of CN110599169A publication Critical patent/CN110599169A/en
Application granted granted Critical
Publication of CN110599169B publication Critical patent/CN110599169B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3827Use of message hashing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Abstract

The embodiment of the invention provides a data processing method, a device, a terminal and a medium, wherein the method comprises the following steps: acquiring change data of the Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to the intelligent contract in a target block after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key-value pair form; updating account state data of the Etherhouse account according to the change data; performing hash calculation on the account state data to obtain a state root hash of the target block; adding a state root hash of the target chunk to a chunk header of the target chunk. Therefore, the embodiment of the invention can provide a computing scheme based on the state root hash of the change data, so that the computing amount can be reduced, the performance and efficiency of data computing can be improved, and the processing load of equipment can be reduced.

Description

Data processing method, device, terminal and medium
Technical Field
The present invention relates to the field of block chain technology, and in particular, to a data processing method, a data processing apparatus, a terminal, and a computer storage medium.
Background
The Etherum Virtual Machine (EVM) is used for executing a code defined by any user by the Etherum Virtual Machine platform to realize an intelligent contract; and deposit money transfers and some status, code under an Etherhouse account, forming an account model. Thus, the etherhouses are account-based distributed ledgers.
Account state data of all the ether house accounts in the ether house platform are stored in the global state tree, when a corresponding root hash in a block header of a certain block is calculated, calculation needs to be performed based on the global state tree, and the global state tree is continuously updated along with execution of an intelligent contract, so that the data volume of the global state tree is increased day by day. Therefore, the calculation amount of the root hash calculation of the block header of a single block is increased, the data calculation efficiency is reduced, and the processing load of the device is increased.
Disclosure of Invention
The embodiment of the invention provides a data processing method, related terminal equipment and a medium, which can improve the data processing efficiency and ensure the equipment performance.
In one aspect, an embodiment of the present invention provides a data processing method, where the data processing method includes:
acquiring change data of the Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to the intelligent contract in a target block after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key-value pair form;
updating account state data of the Etherhouse account according to the change data;
performing hash calculation on the account state data to obtain a state root hash of the target block;
adding a state root hash of the target chunk to a chunk header of the target chunk.
In another aspect, an embodiment of the present invention provides a data processing apparatus, where the data processing apparatus includes:
the system comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring change data of an Ethernet shop account, the change data is changed data stored under the Ethernet shop account related to an intelligent contract in a target block after the Ethernet shop platform adopts the intelligent contract transaction, and the change data is stored in a key value pair form;
the updating unit is used for updating the account state data of the Ether house account according to the change data;
the computing unit is used for carrying out hash computation on the account state data to obtain a state root hash of the target block;
an adding unit configured to add a state root hash of the target block to a block header of the target block.
In another aspect, an embodiment of the present invention provides a computer terminal device, where the computer terminal device includes:
a memory comprising computer readable instructions;
acquiring change data of the Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to the intelligent contract in a target block after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key-value pair form;
updating account state data of the Etherhouse account according to the change data;
performing hash calculation on the account state data to obtain a state root hash of the target block;
adding a state root hash of the target chunk to a chunk header of the target chunk.
In another aspect, an embodiment of the present invention provides a computer storage medium, where instructions are stored in the computer storage medium, and when the instructions are executed on a computer, the instructions cause the computer to perform the following steps:
acquiring change data of the Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to the intelligent contract in a target block after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key-value pair form;
updating account state data of the Etherhouse account according to the change data;
performing hash calculation on the account state data to obtain a state root hash of the target block;
adding a state root hash of the target chunk to a chunk header of the target chunk.
In the embodiment of the invention, the Etherhouse platform acquires the storage data of the Etherhouse account related to the intelligent contract from the target block, and the storage data is stored in a Key-Value pair (KV) mode, so that the storage space can be saved compared with the existing MPT storage structure. When the intelligent contract is executed, the storage data generating the change, namely the change data, is acquired. And updating account state data of the Ether house account according to the change data, and performing hash calculation on the account state data to obtain a state root hash of the target block. The resulting state root hash is added to the block header of the target block. Therefore, the embodiment of the invention provides a computing scheme based on the state root hash of the change data, which can reduce the computing amount, improve the performance and efficiency of data computing, and reduce the processing load of equipment.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without creative efforts.
Fig. 1 is a block chain data structure diagram according to an embodiment of the present invention;
FIG. 2 is a schematic diagram of an account status data structure according to an embodiment of the present invention;
FIG. 3 is a flow chart of a data processing method according to an embodiment of the present invention;
FIG. 4 is a flow chart illustrating another data processing method according to an embodiment of the present invention;
FIG. 5 is a schematic structural diagram of a data processing apparatus according to an embodiment of the present invention;
FIG. 6 is a block diagram of another data processing apparatus according to an embodiment of the present invention;
FIG. 7 is a block diagram of another data processing apparatus according to an embodiment of the present invention;
fig. 8 is a schematic structural diagram of an ethernet workshop platform according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention. In addition, the features in the embodiments and the examples described below may be combined with each other without conflict.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein and in the claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should be understood that the term "and/or" as used herein is meant to encompass any and all possible combinations of one or more of the associated listed items.
First, some technical terms or technical concepts related to the embodiments of the present invention are introduced.
1. Ether house platform
An etherhouse (Ethereum) is an open-source public block chain platform with an intelligent contract function, and is hereinafter referred to as an etherhouse platform. Smart contracts are, among other things, computer protocols that are intended to propagate, validate or execute contracts in an informational manner, allowing for trusted transactions without third parties. An intelligent contract is a set of commitments defined in digital form, including the protocol on which the contract participants can execute the commitments, and is a piece of code written on a blockchain. Each contract participant is registered with an Ethernet workshop account in the Ethernet workshop platform, and the intelligent contract specifies respective promised agreements of a plurality of Ethernet workshop accounts (contract participants). During specific implementation, the Ethernet workshop platform executes any user-defined contract code through the Ethernet workshop virtual machine to realize an intelligent contract.
2. Block chain
A Block chain (Block chain) is a distributed data management technology for realizing decentralization based on mechanisms such as data encryption, time stamping, distribution, consensus and the like, and has the characteristics of being not falsifiable, traceable, high in credibility and high in availability.
Referring to fig. 1, fig. 1 illustrates a block chain data structure. As shown in fig. 1, the block chain is a chain structure with blocks as units, the Parent Hash (Parent Hash) of N blocks is the block Hash of N-1 blocks (Parent blocks), and the block Hash of N blocks is the Parent Hash of N +1 blocks (child blocks), so as to realize the ring-and-loop locking between blocks. Since the chunk header of each chunk, the chunk hash of the previous chunk is preserved. Therefore, if the content of the nth block is changed, the parent hash of the N +1 block is inconsistent with the block hash of the N block, and the N block is not recognized on the block chain, thereby ensuring the non-tamper property of the block chain data.
3. Block
In practical applications, the Etherhouse platform generates a new block about every ten seconds, and records the Transaction (Transaction) data and the verification information during the period of time. Referring to fig. 1, each block is composed of a block head and a block body. The block body is used to store a sequence of transactions, which store a number of transactions that occurred on the Etherhouse platform after the N-1 block was uplinked and before the N block was generated. The block header is used to verify the block and establish associations with its parent and child blocks. In general, the block header stores therein a parent hash, a Time stamp (Time stamp), a random number (Nonce), a Difficulty target (diffeculty), a Transaction Root hash (Transaction Root), a Global State Root hash (Global State Root), a receipt Root hash (Receipts Root), and the like. Wherein:
the parent hash represents a pointer pointing to the parent block, and the parent hash can be obtained by performing hash operation based on values of the parent hash, the random number, the difficulty target and the like of the parent block. Each Block has one and only one parent Block, except for the Genesis Block.
The timestamp represents the time at which the tile was created, as determined by the consensus algorithm.
The random number is a 64bit hash that is applied during the mining phase of the block and is modified during use.
The difficulty target represents the mine excavation difficulty factor, and the difficulty target for the first block of the ether house platform is 131,072. The size of the coefficient can be adjusted according to the speed of generating a new block by the EtherFang platform, the difficulty target generated quickly by the new block is increased, and the difficulty target generated slowly by the new block is reduced. Namely, the difficulty target is calculated by a consensus algorithm based on the timestamp and the difficulty target of the parent block.
The transaction root hash represents the root hash of the MPT tree for the transaction record, which may be referred to as the transaction tree, that stores all transaction-related information within the chunk.
The receipt root hash represents the root hash of an MPT tree for receipt information, which may be referred to as a receipt tree, that stores receipt information including, but not limited to, a block hash of the block in which the transaction is located, a sequence number of the transaction in the block, a total gas value consumed within the block after execution of the transaction, and so forth.
The global state root hash represents a root hash of the MPT tree for the account state data. The MPT tree may be referred to as a global state tree. There is only one global state tree in the etherhouse platform that stores account state data for all etherhouse accounts in the etherhouse platform, which is continuously updated as transactions are executed.
The MPT tree is a tree-shaped data structure, and nodes of the MPT tree comprise empty nodes, leaf nodes, expansion nodes and branch nodes. Wherein, the empty node: simply indicates a null, which is an empty string in the code. Leaf node (leaf): for one Key Value pair representing transaction hash, a Key (Key) and a Value (Value) form a mapping relation, so that the storage position of the Value can be directly found through the Key. Extension node (extension): also a key value pair, whose value is the hash of the other node, which can be used to query the node in the database, i.e. to link to the other node by means of the hash. Branch node (branch): since the key in the MPT tree is encoded as a special 16-ary representation, plus the last value, the branch node is a length 17 list, the first 16 elements correspond to the 16 possible hexadecimal characters in the key, and if there is a key-value pair terminating at this branch node, the last element represents a value, i.e. the branch node can search for either the end of the path or the intermediate node of the path.
4. Account type
In practical application, the ethernet workshop platform is an account-based distributed account book, and the ethernet workshop accounts related to the ethernet workshop platform are generally divided into two account types, which are respectively: external accounts (EOAs) and Contract accounts (Contract accounts). For convenience of description, the external account and the contract account are collectively referred to as an etherhouse account. In other words, the etherhouse accounts referred to below in this application include external accounts and/or contract accounts. Wherein:
the external accounts are accounts which are created artificially and used for storing the Ethernet money, each external account is provided with a pair of a public key and a private key, and the account is controlled by the private key.
A Contract account (Contract account) is an account that is automatically generated when a smart Contract is deployed, and is controlled by Contract code, which is not controlled by a public key or a private key.
The user can create an external account by himself, the external account can create a transaction, and the transaction is signed by the private key of the user and then a message is sent to another external account or a contract account. The message transferred between the two external accounts is the transfer operation. A message from an external account to a contract account activates the code of the contract account to perform various operations, i.e., invoke an intelligent contract. A contract account may be created by initiating a transaction to the 0 address.
5. Account status data
In the embodiment of the present invention, the Account State data (Account State) of the etherhouse Account generally consists of four parts, which are respectively: number of transactions (Nonce), account Balance (Balance), Storage Root Hash (Storage Root), and contract Code Hash (Code Hash). Referring to fig. 2, a schematic diagram of a structure of account status data is shown. Wherein:
the transaction number is a random number that determines that each transaction can only be processed once, and is used for preventing replay attack of the blockchain. The difference is that the number of transactions of the external account represents the transaction number sent from the account address, and the number of transactions of the contract account represents the contract number created by the account, which is incremented either when a contract is created or when a contract is invoked.
The account balance represents the Ethernet balance of the account.
The contract code hash represents the hash of the account etherhouse virtual machine code, except that the contract code hash of the external account is the hash of an empty string, which is the hash of the intelligent contract code.
The storage root hash represents a root hash of a storage tree in which all data related to the intelligent contract are stored, and may also be referred to as storage data of the ethernet account, such as account authority, account address, and the like. The external account's storage root hash is default to null. Each contract account has a corresponding storage tree. The storage root hash is typically a default value, which may be null or a set value such as 0.
Starting at the first creation block, each etherhouse account has a certain account balance and a memory tree after a set of transactions have been performed. When a new set of transactions is received, both the account balance and the storage tree on the ether house accounts participating in the transaction change. Currently, after an ethernet workshop platform executes an intelligent contract, only global state root hashes of account state data of all ethernet workshop accounts are calculated. However, as the global state tree is continuously updated along with the execution of the smart contract, the data volume is increased, and therefore, the calculation amount of the root hash calculation of the block header of a single block is increased, the calculation efficiency is reduced, and the processing load of the device is increased.
To solve the above problem, an embodiment of the present invention provides a data processing method, please refer to fig. 3, which is a flowchart illustrating a data processing method according to an embodiment of the present invention, and the data processing method may include the following steps S300 to S304:
s300: the method comprises the steps of obtaining change data of an Ethernet shop account, wherein the change data is changed data stored under the Ethernet shop account related to an intelligent contract in a target block after the Ethernet shop platform adopts the intelligent contract transaction, and the change data is stored in a key value pair mode.
In one embodiment, all account state data in the Etherhouse platform is maintained by a global state tree. The ethernet shop platform needs to obtain the primary account status data of the ethernet shop account related to the intelligent contract before the target block executes the intelligent contract. And acquiring account state data of the related accounts by inquiring the global state tree, and further selecting the original storage data of the Etheng accounts. In order to save storage space, the embodiment of the invention adopts key value pairs to store account state data of the Ethengfang account, and specifically, the stored data is stored in a key value pair form.
After the execution of the transaction under the intelligent contract is completed, the account status data of the ether house account participating in the transaction changes, for example, the storage data under the ether house account related to the intelligent contract changes. For convenience of description, the changed data stored under the ether house account is collectively referred to as changed data. In practical applications, the number of ether house accounts generating data changes is not limited, and may be one or more. In the following, the ethernet account generating data change includes N accounts, which are taken as an example for relevant explanation.
For example, after the ethernet workshop platform completes the execution of the transaction under the intelligent contract, the account status data of the N ethernet workshop accounts are all temporarily stored in the corresponding memory in the form of key-value pairs. Correspondingly, the ethernet workshop platform traverses the cache Storage (also called account state data cache) corresponding to each ethernet workshop account, so that the corresponding account state data under each ethernet workshop account can be obtained. And then obtaining the storage data part of the state data of each account from the storage data part, comparing the storage data part with the obtained original storage data of the corresponding account, and obtaining the changed key value pair, namely obtaining the changed data of each ether house account.
In yet another embodiment, all account state data in the Etherhouse platform is maintained by a global state tree. Before executing the intelligent contract, the ether house platform needs to acquire the original account state data of the ether house account related to the intelligent contract from the global state tree, and then selects the original storage data of the ether house account from the original account state data. The etherhouse platform can create a corresponding contract cache for the intelligent contract for storing the change data. The changed data is data which changes relative to the original storage data after the Ethengfang platform executes the intelligent contract, such as transaction amount, transaction times, contract code hash and storage root hash. After the Ether shop platform executes the intelligent contract, the changed storage data, namely the changed data, can be directly obtained from the cache. The change data is stored in the form of key-value pairs.
In practical application, the ethernet platform is specifically deployed in a single terminal device, and may also be deployed in a device cluster including multiple terminal devices, where the terminal devices may include, but are not limited to, electronic devices with a network connection function, such as a mobile phone, a PC, a palm computer, a wearable device, and a server.
S302: and updating the account state data of the Etherhouse account according to the change data.
In practical applications, the number of the change data is not limited, and may be one or more. When the change data is multiple, that is, there are multiple changed key value pairs, the ether house platform may perform connection processing on the key value pair corresponding to each ether house account, and may obtain a key value pair list of the change data, which may also be referred to as storing the change data. The key-value pair list is a data structure that can be directly accessed.
The keyword represents a location where the change data is stored, and a specific implementation form in practical application is not limited, for example, the keyword may be a numerical value list, such as (1,2,3,4), a hash value corresponding to the value, or a custom character string. The value represents changed data acquired by the EtherFang platform, i.e., single changed data. The specific implementation of the connection processing is not limited, and for example, the connection may be performed in a sequence of the traversal results, a reverse sequence, an insertion sequence, or other user-defined connection manners.
Accordingly, the ether house platform can obtain N storage change data corresponding to the N accounts according to the above principle. Further, the Ether house platform can perform hash calculation on the storage change data of each Ether house account to obtain the storage root hash of the Ether house account.
Taking the ith ethernet house account as an example, the ethernet house platform may perform hash calculation on the change data (which may also be storage change data) of the ith ethernet house account to obtain the storage root hash of the ith ethernet house account. Illustratively, the storage root hash of the ith etherhouse account is calculated by the etherhouse platform according to the following formula (1):
storage Root i ═ SHA256(contact (k1, v1, k2, v2, k3, v3 …)) formula (1)
Wherein, (k1, v1) indicates a key-value pair corresponding to a change data of the ith etherhouse account, and the number of key-value pairs of different accounts may be different. contact represents a connection method. contact (k1, v1, k2, v2, k3, v3 …) represents storage change data of the ith ethernet account. SHA256 represents a hash function, which may also be referred to as a Secure Hash Algorithm (SHA). The function SHA256 mentioned in formula (1) is only an example and is not limited, and in practical applications, it may be specifically any function in the series SHA-0, SHA-1, SHA-2, SHA-3, etc.
Accordingly, the etherhouse platform can obtain N storage root hashes corresponding to the N accounts according to the above principle.
Further, the ether house platform can also update the obtained N storage root hashes to account status data of the N ether house accounts respectively. Specifically, if the original root hash is stored in the account status data of a certain ethernet bay account, the ethernet bay platform may update the original root hash to the calculated storage root hash of the ethernet bay account. If the original root hash is not stored in the account state data of the ether house account, that is, the root hash cache is empty, the ether house platform can directly store the calculated storage root hash of the ether house account into the account state data of the ether house account at this time.
S304: and carrying out hash calculation on the account state data to obtain the state root hash of the target block.
The Ethernet lane platform of the embodiment of the invention can traverse the account state data cache of any Ethernet lane account in the N Ethernet lane accounts to obtain the account state data of any Ethernet lane account. Taking Account status data of the ith ethernet house Account as an example, Account status data Account i State of the ith ethernet house Account can be represented as (Nonce i, Balance i, Storage Root i, Code Hash i). For account status data, reference may be made to the description in the foregoing embodiments, and details are not described here.
Further, after the ether house platform obtains the account state data of the N ether house accounts, hash calculation can be performed on the account state data of the N ether house accounts to obtain the state root hash of the target block.
In an embodiment, when the number N of the etherhouse accounts is 1, hash calculation may be directly performed on account status data without considering the calculation amount, so as to obtain a status root hash of the target block. The hash calculation method may include, but is not limited to, any function in the SHA-0, SHA-1, SHA-2, SHA-3 series, and the like.
In another embodiment, when the number N of the ether house accounts is 1 in the embodiment of the present invention, the state data of the account may be encoded and then subjected to hash calculation to obtain the state root hash of the target block. The coding scheme may include, but is not limited to, RLP (Recursive Length Prefix), huffman (huffman) coding, or other coding schemes. The hash calculation method may include, but is not limited to, any function in the SHA-0, SHA-1, SHA-2, SHA-3 series, and so forth.
In another embodiment, when N is not 1 in the embodiment of the present invention, the specific implementation may include the following implementation steps:
s11, the Ethernet bay platform encodes the account status data of each Ethernet bay account to obtain the encoding status sequence of the Ethernet bay account.
Taking the ith ether house account as an example, the ether house platform encodes the account state data of the ith ether house account to obtain an encoding state sequence of the ith ether house account. For example, the ethernet workshop platform may calculate the coded status sequence of the ith account using the following formula (2).
RLP (account i state) RLP (Nonce i, Balance i, Storage Root i, Code Hash i) formula (2)
Where RLP is a coding rule that can be used to encode arbitrarily nested binary array data, the result of RLP coding is also a binary sequence. RLP is used primarily to serialize or deserialize account state data, making the data regular, which can improve computational efficiency. The coding scheme PLP in equation (2) is merely an example and is not limited, and may be huffman coding or another coding scheme in practical applications.
And S12, connecting the coding state sequence of each Ether house account by the Ether house platform to obtain the coding state sequences of the N Ether house accounts. Specific embodiments of this connection may include, but are not limited to: and performing sequence, reverse sequence or user-defined connection sequence connection and the like according to the sequence of the traversal results.
S13, the Ether house platform carries out hash calculation on the coding state sequences of the N Ether house accounts to obtain the state root hash of the target block.
Illustratively, the etherhouse platform calculates the state root hash of the target chunk using equation (3) below.
State Root SHA256(RLP (Account 1State), RLP (Account 2State), …, RLP (Account i State), …, RLP (Account N State)) formula (3)
Wherein contact represents a connection mode. SHA256 represents a hash function, which may also be referred to as a secure hash algorithm. The function SHA256 mentioned in formula (3) is only an example and is not limited, and in practical applications, it may be specifically any function in the series SHA-0, SHA-1, SHA-2, SHA-3, etc.
S306: the state root hash of the target block is added to the block header of the target block.
Specifically, if the original state root hash is stored in the block header of the target block, the etherhouse platform may update the original state root hash to the calculated state root hash. If the original state root hash is not stored in the block head of the target block, that is, the state root hash is empty, the Etherhouse platform can directly add the calculated state root hash to the block head of the block.
To facilitate a better understanding of embodiments of the present invention, detailed descriptions are provided below with respect to an example in which an etherhouse account includes a contract account and an external account. It is assumed that agreement information related to contract participants (specifically presented in accounts corresponding to the contract participants) is specified in the intelligent contract. Specifically, the method comprises the following steps: there are 2 accounts involved in the smart contract, account 1 and account 2 respectively. Account 1 is a contract account and account 2 is an external account. The protocol specified for the account 1 in the intelligent contract is specifically as follows: when the account balance is greater than or equal to 1000, the authority of issuing the new commodity exists, and when the account balance is less than 1000, the authority of issuing the new commodity does not exist. In this example, all data for account 1, except for the remainder of the account, is stored in the storage tree. At this time, the stored data of account 1 is acquired, for example, the account balance of current account 1 is 1000, and account 1 has the right to issue a new product. Account 2 the account balance is 0. If account 2 sends a transaction to account 1, the transaction content is: account 1 transfers 100 to account 2. The transaction transfer 100 to account 2 is performed and the transaction is successful.
The account status data for account 1 at this time will be updated to: account balance 900, account 1 does not have the right to release new merchandise. When account 1 performs a transaction and transfers 100 to account 2 and the transaction is successful, the stored data that changes has an account balance and the account's permissions at that time. That is, account balance 900, the account 1 without the right to release new merchandise will be temporarily stored in the Storage cache in the form of key-value pair. At this time, the change data can be acquired by comparing the acquired storage data with the acquired storage data.
For example, taking the example that the change data includes 4 changed data, table 1 below shows a possible key-value pair list.
TABLE 1A list of possible key-value pairs
In an example, the key is a hash of the value correspondence. Further, the ethernet platform can connect the Data in table 1 in sequence in the form of (Hash1, Data1, Hash2, Data2, Hash3, Data3, Hash4, Data4) to obtain the storage change Data.
Substituting the storage change data into formula (1) to obtain the storage root hash of the account 1 by calculation, which is specifically shown in formula (4):
storage Root 1 ═ SHA256(Hash1, Data1, Hash2, Data2, Hash3, Data3, Hash4, Data4) formula (4)
Suppose that the Storage Root hash Storage Root is calculated from the fused Storage data to have a value of 8b581140da5a6d48520cd430195f8dae826e05fb53b7166c1b10cb6 fcfcvcc 37f 2. The storage root hash is then updated to the account status data for account 1. Assume that the contract code hash is 34ff5795f48b836a608a4f6ce5485d1162d77a783de2ec942c0ab8cd5c94e516 and the number of transactions is 1. The account status of the account 1 includes four parts of data of account balance, contract code hash, transaction times and storage root hash.
RLP coding is carried out on the account state data of the account 1 by adopting a formula (2) to obtain a coding state sequence of the account 1, and the account state data of the account 1 is substituted into the formula (2) to obtain a formula (5):
RLP (Account 1State) RLP (1, 900, 8b581140da5a6d48520cd430195f8dae826e05fb53b7166c1b10cb6 fcfcvcc 37f2, 34ff5795f48b836a608a4f6ce5485d1162d77a783de2ec942c0ab8cd5c94e516) (5)
Account 2 at this time the account status data is: the account balance is 100. The external account storage root hash is default to null. The contract code is hashed to a string of empty strings of hash values e3b0c44298fc1c149 afff 4c8996fb92427ae41e4649b934ca495991b7852b 855. Assume that the number of transactions is 1.
The coding state sequence of the account 2 is obtained by performing RLP coding on the account state data of the account 2 by using a formula (2), and the account state data of the account 2 can be specifically substituted into the formula (2) to obtain a formula (6):
RLP (Account 2State) ═ RLP (1,100, e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855) equation (6)
And finally, the Ethenhouse platform performs hash calculation on the coding state sequences of the 2 Ethenhouse accounts to obtain the state root hash of the block. The Account status data of Account 1 and Account 2 are sequentially linked to obtain the coding status sequence of the etherhouse Account, which can be expressed as (RLP (Account 1State), RLP (Account 2 State)). The State Root hash State Root of the block is calculated using equation (3). Specifically, the encoding state sequence may be substituted into the above equation (3) to obtain equation (7):
state Root is SHA256(RLP (Account 1State), RLP (Account 2State)) formula (7)
And directly storing the calculated state root hash of the target block into the block throw of the block, and participating in the calculation of the block hash of the block.
In the embodiment of the invention, the Ethernet bay platform acquires the storage data of the Ethernet bay account related to the intelligent contract from the target block, and the storage data is stored in a key-value pair mode, so that the storage space can be saved compared with the existing MPT storage structure. When the intelligent contract is executed, the storage data generating the change, namely the change data, is acquired. And updating account state data of the Ether house account according to the change data, and performing hash calculation on the account state data to obtain a state root hash of the target block. The resulting state root hash is added to the block header of the target block. Therefore, the embodiment of the invention provides a computing scheme based on the state root hash of the change data, which can reduce the computing amount, improve the performance and efficiency of data computing, and reduce the processing load of equipment.
Referring to fig. 4, a schematic flow chart of another data processing method according to an embodiment of the present invention is shown, where the data processing method includes the following steps S400 to S4010:
s400: the method comprises the steps of obtaining change data of an Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to an intelligent contract after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key value pair mode.
S402: and updating the account state data of the Etherhouse account according to the change data.
S404: and carrying out hash calculation on the account state data to obtain the state root hash of the target block.
S406: adding a state root hash of the target chunk to a chunk header of the target chunk.
Reference may be made specifically to the method described in fig. 3 with respect to S400-S406.
S408: and performing hash calculation on data in the block header of the target block to obtain the block hash of the target block, wherein the data in the block header of the target block comprises the state root hash of the target block.
And carrying out hash calculation on the numerical values of the parent hash, the random number, the timestamp, the difficulty target, the state root hash, the transaction root hash and the receipt root hash in the target block header to obtain the block hash. Illustratively, the etherhouse platform calculates the chunk hash using equation (8) as follows:
block Hash SHA256(Parent Hash, Time stamp, Nonce, Difficulty, TransactionRoot, State Root, Receipts Root) equation (8)
Wherein, the State Root is the calculated State Root hash of the target block. SHA256 represents a hash function, which may also be referred to as a secure hash algorithm. The function SHA256 mentioned in the formula (8) is only an example and is not limited, and in practical applications, it may be specifically any function in the series SHA-0, SHA-1, SHA-2, SHA-3, etc. The parent hash represents a pointer to the parent block. The random number is a 64bit hash. The timestamp represents the time the tile was created. The difficulty target represents an excavation difficulty coefficient.
S410: and adding the block hash of the target block into the block header of the next target block as the parent hash of the next target block.
By calculating the state root hash of the target block after the intelligent contract is executed and enabling the state root hash to participate in the block hash operation of the target block, the change data of the Ethernet account related to the intelligent contract can indirectly participate in the consensus mechanism.
In the embodiment of the invention, the Ethernet bay platform acquires the storage data of the Ethernet bay account related to the intelligent contract from the target block, and the storage data is stored in a key-value pair mode, so that the storage space can be saved compared with the existing MPT storage structure. When the intelligent contract is executed, the storage data generating the change, namely the change data, is acquired. And updating account state data of the Ether house account according to the change data, and performing hash calculation on the account state data to obtain a state root hash of the target block. The resulting state root hash is added to the block header of the target block. Therefore, the embodiment of the invention provides a computing scheme based on the state root hash of the change data, which can reduce the computing amount, improve the performance and efficiency of data computing, and reduce the processing load of equipment.
Based on the description of the above data processing method embodiment, the embodiment of the present invention also discloses a data processing apparatus, which may be a computer program (including a program code) running in a terminal. The data processing apparatus may perform the method shown in fig. 3 or fig. 4. Referring to fig. 5, the data processing apparatus 50 may operate as follows:
the acquisition unit 500: the system comprises a data processing module, a data storage module and a data processing module, wherein the data processing module is used for acquiring change data of an Ethernet shop account, the change data is changed data stored under the Ethernet shop account related to an intelligent contract in a target block after the Ethernet shop platform adopts the intelligent contract transaction, and the change data is stored in a key-value pair form;
the updating unit 502: the account state data is used for updating the account state data of the Etherhouse account according to the change data;
the calculation unit 504: the state root hash of the target block is obtained by carrying out hash calculation on the account state data;
the adding unit 506: means for adding a state root hash of the target chunk to a chunk header of the target chunk.
In an embodiment, when the updating unit 502 is configured to update the account status data of the ethernet house account according to the change data, specifically, to:
performing hash calculation on the change data to obtain a storage root hash of the Ether house account;
updating the storage root hash to the account state data.
In another embodiment, the account status data includes transaction times of the ethernet house account, account balance, contract code hash, and storage root hash, and the calculating unit 504 is specifically configured to:
and carrying out hash calculation on the transaction times, account balance, contract code hash and storage root hash of the Ether house account to obtain the state root hash of the target block.
In another embodiment, when the calculating unit 504 is configured to perform hash calculation on the transaction frequency, the account balance, the contract code hash, and the storage root hash of the ethernet account to obtain the state root hash of the target block, specifically:
encoding the transaction times, account balance, contract code hash and storage root hash of the Ether house account to obtain an encoding state sequence of the Ether house account;
and carrying out hash calculation on the coding state sequence of the Etherhouse account to obtain the state root hash of the target block.
In another embodiment, when the number of the etherhouse accounts is multiple, and the hash calculation is performed on the account status data to obtain the status root hash of the target block, the calculating unit 504 is specifically configured to:
respectively coding the account state data of the plurality of ether house accounts to correspondingly obtain coding state sequences of the plurality of ether house accounts;
connecting the coding state sequences of the ether house accounts to obtain a connection state sequence;
and carrying out Hash calculation on the connection state sequence to obtain the state root Hash of the target block.
In another embodiment, referring to fig. 6, the data processing apparatus 50 includes an obtaining unit 500, an updating unit 502, a calculating unit 504, and an adding unit 506, and may further include a second calculating unit 508, specifically configured to:
and performing hash calculation on data in the block header of the target block to obtain the block hash of the target block, wherein the data in the block header of the target block comprises the state root hash of the target block.
In another embodiment, referring to fig. 7, the data processing apparatus 50 includes an obtaining unit 500, an updating unit 502, a calculating unit 504, an adding unit 506, and a second calculating unit 508, and may further include a second adding unit 510, specifically configured to:
and adding the block hash of the target block into the block header of the next target block as the parent hash of the next target block.
According to another embodiment of the present invention, the units in the data processing apparatuses shown in fig. 5 to 7 may be respectively or entirely combined into one or several other units to form one or several other units, or some unit(s) may be further split into multiple units with smaller functions to form the same operation, without affecting the achievement of the technical effect of the embodiments of the present invention. The units are divided based on logic functions, and in practical application, the functions of one unit can be realized by a plurality of units, or the functions of a plurality of units can be realized by one unit. In other embodiments of the present invention, the data processing apparatus may also include other units, and in practical applications, these functions may also be implemented by being assisted by other units, and may be implemented by cooperation of a plurality of units.
According to another embodiment of the present invention, a data processing apparatus terminal device as shown in fig. 8 can be constructed by running a computer program (including program codes) capable of executing the steps involved in the above-described data processing method on a general-purpose computing terminal device such as a computer including a processing element such as a Central Processing Unit (CPU), a random access storage medium (RAM), a read only storage medium (ROM), and a storage element, and the data processing method of the embodiment of the present invention can be realized. The computer program may be recorded on a computer-readable recording medium, for example, and loaded and executed in the above-described computing terminal device via the computer-readable recording medium.
In the embodiment of the invention, the Ethernet bay platform acquires the storage data of the Ethernet bay account related to the intelligent contract from the target block, and the storage data is stored in a key-value pair mode, so that the storage space can be saved compared with the existing MPT storage structure. When the intelligent contract is executed, the storage data generating the change, namely the change data, is acquired. And updating account state data of the Ether house account according to the change data, and performing hash calculation on the account state data to obtain a state root hash of the target block. The resulting state root hash is added to the block header of the target block. Therefore, the embodiment of the invention provides a computing scheme based on the state root hash of the change data, which can reduce the computing amount, improve the performance and efficiency of data computing, and reduce the processing load of equipment.
Based on the description of the method embodiment and the device embodiment, the embodiment of the present invention further provides a schematic structural diagram of an ethernet workshop platform. Referring to fig. 8, the ethernet platform includes one or more end devices 80, each end device 80 including at least a processor 801, an input device 802, an output device 803, and a computer storage medium 804. The processor 801, the input device 802, the output device 803, and the computer storage medium 804 in the terminal device may be connected by a bus or other means.
A computer storage medium 804 may be stored in the memory of the terminal device, the computer storage medium 804 being adapted to store a computer program comprising program instructions, the processor 801 being adapted to execute the program instructions stored by the computer storage medium 804. The processor 801 (or CPU) is a computing core and a control core of the terminal, and is adapted to implement one or more instructions, and specifically, adapted to load and execute one or more instructions so as to implement a corresponding method flow or a corresponding function; in one embodiment, the processor 801 according to the embodiment of the present invention may be configured to perform a series of data processing on the change data, including: acquiring change data of the Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to the intelligent contract in a target block after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key-value pair form; updating account state data of the Etherhouse account according to the change data; performing hash calculation on the account state data to obtain a state root hash of the target block; adding a state root hash of the target chunk to a chunk header of the target chunk, and so on.
The embodiment of the invention also provides a computer storage medium (Memory), which is Memory terminal equipment in the terminal and is used for storing programs and data. It is understood that the computer storage medium herein may include a built-in storage medium in the terminal, and may also include an extended storage medium supported by the terminal. The computer storage medium provides a storage space that stores an operating system of the terminal. Also stored in this memory space are one or more instructions, which may be one or more computer programs (including program code), suitable for loading and execution by processor 801. The computer storage medium may be a high-speed RAM memory, or may be a non-volatile memory (non-volatile memory), such as at least one disk memory; and optionally at least one computer storage medium located remotely from the processor.
In one embodiment, one or more instructions stored in a computer storage medium may be loaded and executed by processor 801 to implement the corresponding steps of the methods described above in relation to the data processing method embodiments; in particular implementations, one or more instructions in the computer storage medium are loaded by the processor 801 and perform the following steps:
acquiring change data of the Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to the intelligent contract in a target block after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key-value pair form;
updating account state data of the Etherhouse account according to the change data;
performing hash calculation on the account state data to obtain a state root hash of the target block;
adding a state root hash of the target chunk to a chunk header of the target chunk.
In one embodiment, when updating the account status data of the etherhouse account according to the change data, the one or more instructions are loaded and specifically executed by processor 801:
performing hash calculation on the change data to obtain a storage root hash of the Ether house account;
updating the storage root hash to the account state data.
In another embodiment, the account status data includes transaction times, account balance, contract code hash, and storage root hash of the etherhouse account, and the one or more instructions are loaded and executed by the processor 801:
and carrying out hash calculation on the transaction times, account balance, contract code hash and storage root hash of the Ether house account to obtain the state root hash of the target block.
In another embodiment, when performing hash calculation on the transaction frequency of the ethernet house account, the account balance, the contract code hash, and the storage root hash to obtain the state root hash of the target block, the one or more instructions are loaded and specifically executed by the processor 801:
encoding the transaction times, account balance, contract code hash and storage root hash of the Ether house account to obtain an encoding state sequence of the Ether house account;
and carrying out hash calculation on the coding state sequence of the Etherhouse account to obtain the state root hash of the target block.
In another embodiment, when the number of the etherhouse accounts is multiple, and the hash calculation is performed on the account status data to obtain the status root hash of the target block, the one or more instructions are loaded and specifically executed by the processor 801:
respectively coding the account state data of the plurality of ether house accounts to correspondingly obtain coding state sequences of the plurality of ether house accounts;
connecting the coding state sequences of the ether house accounts to obtain a connection state sequence;
and carrying out Hash calculation on the connection state sequence to obtain the state root Hash of the target block.
In yet another embodiment, the one or more instructions are loaded and executed by the processor 801 to perform:
and performing hash calculation on data in the block header of the target block to obtain the block hash of the target block, wherein the data in the block header of the target block comprises the state root hash of the target block.
In yet another embodiment, the one or more instructions are loaded and executed by the processor 801 to perform:
and adding the block hash of the target block into the block header of the next target block as the parent hash of the next target block.
In the embodiment of the invention, the Ethernet bay platform acquires the storage data of the Ethernet bay account related to the intelligent contract from the target block, and the storage data is stored in a key-value pair mode, so that the storage space can be saved compared with the existing MPT storage structure. When the intelligent contract is executed, the storage data generating the change, namely the change data, is acquired. And updating account state data of the Ether house account according to the change data, and performing hash calculation on the account state data to obtain a state root hash of the target block. The resulting state root hash is added to the block header of the target block. Therefore, the embodiment of the invention provides a computing scheme based on the state root hash of the change data, which can reduce the computing amount, improve the performance and efficiency of data computing, and reduce the processing load of equipment.
The above disclosure is only for the purpose of illustrating the preferred embodiments of the present invention, and it is therefore to be understood that the invention is not limited by the scope of the appended claims.

Claims (10)

1. A method of data processing, the method comprising:
acquiring change data of the Ethernet workshop account, wherein the change data is changed data stored under the Ethernet workshop account related to the intelligent contract in a target block after the Ethernet workshop platform adopts intelligent contract transaction, and the change data is stored in a key-value pair form;
updating account state data of the Etherhouse account according to the change data;
performing hash calculation on the account state data to obtain a state root hash of the target block;
adding a state root hash of the target chunk to a chunk header of the target chunk.
2. The method of claim 1, wherein the updating the account status data for the etherhouse account based on the change data comprises:
performing hash calculation on the change data to obtain a storage root hash of the Ether house account;
updating the storage root hash to the account state data.
3. The method of claim 2, wherein the account status data includes a number of transactions for the etherhouse account, an account balance, a contract code hash, and a storage root hash;
and carrying out hash calculation on the transaction times, account balance, contract code hash and storage root hash of the Ether house account to obtain the state root hash of the target block.
4. The method of claim 3, wherein the hashing the number of transactions, the account balance, the contract code hash, and the storage root hash of the etherhouse account to obtain the state root hash of the target block comprises:
encoding the transaction times, account balance, contract code hash and storage root hash of the Ether house account to obtain an encoding state sequence of the Ether house account;
and carrying out hash calculation on the coding state sequence of the Etherhouse account to obtain the state root hash of the target block.
5. The method of claim 1, wherein the number of etherhouse accounts is multiple, and the performing the hash calculation on the account status data to obtain the root hash of the status of the target block comprises:
respectively coding the account state data of the plurality of ether house accounts to correspondingly obtain coding state sequences of the plurality of ether house accounts;
connecting the coding state sequences of the ether house accounts to obtain a connection state sequence;
and carrying out Hash calculation on the connection state sequence to obtain the state root Hash of the target block.
6. The method of any of claims 1 to 4, further comprising:
and performing hash calculation on data in the block header of the target block to obtain the block hash of the target block, wherein the data in the block header of the target block comprises the state root hash of the target block.
7. The method of claims 1 to 5, wherein the method further comprises:
and adding the block hash of the target block into the block header of the next target block as the parent hash of the next target block.
8. A data processing apparatus, characterized in that the apparatus comprises:
the system comprises an acquisition unit, a processing unit and a processing unit, wherein the acquisition unit is used for acquiring change data of an Ethernet shop account, the change data is changed data stored under the Ethernet shop account related to an intelligent contract in a target block after the Ethernet shop platform adopts the intelligent contract transaction, and the change data is stored in a key value pair form;
the updating unit is used for updating the account state data of the Ether house account according to the change data;
the computing unit is used for carrying out hash computation on the account state data to obtain a state root hash of the target block;
an adding unit configured to add a state root hash of the target block to a block header of the target block.
9. A computer terminal device, characterized in that the computer terminal device comprises:
a memory comprising computer readable instructions;
a processor coupled to the memory, the processor configured to execute the computer-readable instructions to cause the terminal device to perform the data processing method of any of claims 1-7.
10. A computer storage medium having stored thereon instructions which, when run on a computer, cause the computer to execute the data processing method of any one of claims 1 to 7.
CN201910871541.4A 2019-09-16 2019-09-16 Data processing method, device, terminal and medium Active CN110599169B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910871541.4A CN110599169B (en) 2019-09-16 2019-09-16 Data processing method, device, terminal and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910871541.4A CN110599169B (en) 2019-09-16 2019-09-16 Data processing method, device, terminal and medium

Publications (2)

Publication Number Publication Date
CN110599169A true CN110599169A (en) 2019-12-20
CN110599169B CN110599169B (en) 2021-03-26

Family

ID=68859778

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910871541.4A Active CN110599169B (en) 2019-09-16 2019-09-16 Data processing method, device, terminal and medium

Country Status (1)

Country Link
CN (1) CN110599169B (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111080298A (en) * 2019-12-26 2020-04-28 电子科技大学 Block generation and transaction verification method suitable for energy source block chain
CN111986029A (en) * 2020-08-28 2020-11-24 数网金融有限公司 Data processing method and device and electronic equipment
CN112269839A (en) * 2020-11-18 2021-01-26 网易(杭州)网络有限公司 Data storage method and device in block chain, electronic equipment and storage medium
CN112559635A (en) * 2020-12-23 2021-03-26 网易(杭州)网络有限公司 Service processing method, device, equipment and medium for Ether house alliance link node
CN112800132A (en) * 2021-01-12 2021-05-14 东北大学 Block chain storage method of electronic file
CN113222596A (en) * 2021-04-23 2021-08-06 上海和数软件有限公司 Electric power data storage method and system based on block chain intelligent contract
CN113239001A (en) * 2021-05-21 2021-08-10 珠海金山网络游戏科技有限公司 Data storage method and device
CN113254450A (en) * 2021-05-28 2021-08-13 山大地纬软件股份有限公司 Method and system for storing account state of incremental MPT (message passing through) tree based on block chain
WO2022174734A1 (en) * 2021-02-18 2022-08-25 北京沃东天骏信息技术有限公司 Method and apparatus for storing data

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138635A (en) * 2015-08-21 2015-12-09 中国人民解放军装备学院 Method for performing data increment copying through hash value comparison
CN105162855A (en) * 2015-08-18 2015-12-16 浪潮(北京)电子信息产业有限公司 Incremental data synchronization method and device
US20170236102A1 (en) * 2016-02-12 2017-08-17 D+H Usa Corporation Peer-to-Peer Financial Transactions Using A Private Distributed Ledger
US20180183774A1 (en) * 2016-12-23 2018-06-28 Amazon Technologies, Inc. Key distribution in a distributed computing environment
US10055715B1 (en) * 2017-07-26 2018-08-21 Square, Inc. Cryptocurrency payment network
US20180316503A1 (en) * 2016-01-26 2018-11-01 Stampery Inc. Systems and methods for certification of data units and/or certification verification
CN108734453A (en) * 2018-05-21 2018-11-02 腾讯科技(深圳)有限公司 Block chain data processing method, device, computer equipment and storage medium
CN108737498A (en) * 2018-04-18 2018-11-02 中国地质大学(武汉) A kind of P2P safety download detection method and system based on block chain
CN108846659A (en) * 2018-06-13 2018-11-20 深圳前海微众银行股份有限公司 Transfer account method, device and storage medium based on block chain
CN109063109A (en) * 2018-07-27 2018-12-21 电子科技大学 A kind of data query system based on ether mill
US20190102163A1 (en) * 2017-10-04 2019-04-04 Dispatch Labs, LLC System and Method for a Blockchain-Supported Programmable Information Management and Data Distribution System
CN110008738A (en) * 2019-02-21 2019-07-12 网易(杭州)网络有限公司 For the caching method of block chain contract data, device, medium and calculate equipment
CN110869967A (en) * 2019-03-28 2020-03-06 阿里巴巴集团控股有限公司 System and method for parallel processing of blockchain transactions

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105162855A (en) * 2015-08-18 2015-12-16 浪潮(北京)电子信息产业有限公司 Incremental data synchronization method and device
CN105138635A (en) * 2015-08-21 2015-12-09 中国人民解放军装备学院 Method for performing data increment copying through hash value comparison
US20180316503A1 (en) * 2016-01-26 2018-11-01 Stampery Inc. Systems and methods for certification of data units and/or certification verification
US20170236102A1 (en) * 2016-02-12 2017-08-17 D+H Usa Corporation Peer-to-Peer Financial Transactions Using A Private Distributed Ledger
US20180183774A1 (en) * 2016-12-23 2018-06-28 Amazon Technologies, Inc. Key distribution in a distributed computing environment
US10055715B1 (en) * 2017-07-26 2018-08-21 Square, Inc. Cryptocurrency payment network
US20190102163A1 (en) * 2017-10-04 2019-04-04 Dispatch Labs, LLC System and Method for a Blockchain-Supported Programmable Information Management and Data Distribution System
CN108737498A (en) * 2018-04-18 2018-11-02 中国地质大学(武汉) A kind of P2P safety download detection method and system based on block chain
CN108734453A (en) * 2018-05-21 2018-11-02 腾讯科技(深圳)有限公司 Block chain data processing method, device, computer equipment and storage medium
CN108846659A (en) * 2018-06-13 2018-11-20 深圳前海微众银行股份有限公司 Transfer account method, device and storage medium based on block chain
CN109063109A (en) * 2018-07-27 2018-12-21 电子科技大学 A kind of data query system based on ether mill
CN110008738A (en) * 2019-02-21 2019-07-12 网易(杭州)网络有限公司 For the caching method of block chain contract data, device, medium and calculate equipment
CN110869967A (en) * 2019-03-28 2020-03-06 阿里巴巴集团控股有限公司 System and method for parallel processing of blockchain transactions

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
YONG ZHANG: "A blockchain-based process provenance for cloud forensics", 《2017 3RD IEEE INTERNATIONAL CONFERENCE ON COMPUTER AND COMMUNICATIONS (ICCC)》 *
曹迪迪 等: "基于智能合约的以太坊可信存证机制", 《计算机应用》 *
薛矛 等: "一种云存储环境下的安全存储系统", 《计算机学报》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111080298A (en) * 2019-12-26 2020-04-28 电子科技大学 Block generation and transaction verification method suitable for energy source block chain
CN111080298B (en) * 2019-12-26 2023-12-29 电子科技大学 Block generation and transaction verification method suitable for energy block chain
CN111986029A (en) * 2020-08-28 2020-11-24 数网金融有限公司 Data processing method and device and electronic equipment
CN112269839A (en) * 2020-11-18 2021-01-26 网易(杭州)网络有限公司 Data storage method and device in block chain, electronic equipment and storage medium
CN112269839B (en) * 2020-11-18 2024-02-23 网易(杭州)网络有限公司 Data storage method and device in blockchain, electronic equipment and storage medium
CN112559635A (en) * 2020-12-23 2021-03-26 网易(杭州)网络有限公司 Service processing method, device, equipment and medium for Ether house alliance link node
CN112559635B (en) * 2020-12-23 2023-06-16 网易(杭州)网络有限公司 Service processing method, device, equipment and medium for Ethernet alliance chain node
CN112800132A (en) * 2021-01-12 2021-05-14 东北大学 Block chain storage method of electronic file
CN112800132B (en) * 2021-01-12 2023-08-08 东北大学 Block chain storage method of electronic file
WO2022174734A1 (en) * 2021-02-18 2022-08-25 北京沃东天骏信息技术有限公司 Method and apparatus for storing data
CN113222596A (en) * 2021-04-23 2021-08-06 上海和数软件有限公司 Electric power data storage method and system based on block chain intelligent contract
CN113239001A (en) * 2021-05-21 2021-08-10 珠海金山网络游戏科技有限公司 Data storage method and device
CN113254450B (en) * 2021-05-28 2022-07-22 山大地纬软件股份有限公司 Method and system for storing account state of incremental MPT (message passing test) tree based on block chain
CN113254450A (en) * 2021-05-28 2021-08-13 山大地纬软件股份有限公司 Method and system for storing account state of incremental MPT (message passing through) tree based on block chain

Also Published As

Publication number Publication date
CN110599169B (en) 2021-03-26

Similar Documents

Publication Publication Date Title
CN110599169B (en) Data processing method, device, terminal and medium
CN110869967B (en) System and method for parallel processing of blockchain transactions
EP3837652B1 (en) Distributed blockchain data storage under account model
WO2020143853A2 (en) Distributed blockchain data storage under account model
CN101009516B (en) A method, system and device for data synchronization
CN108769111A (en) A kind of server connection method, computer readable storage medium and terminal device
CN112395300B (en) Data processing method, device and equipment based on block chain and readable storage medium
CN111444196B (en) Method, device and equipment for generating Hash of global state in block chain type account book
WO2021103403A1 (en) Blockchain transaction information management method and device, computer device and storage medium
EP4310689A1 (en) Data archiving method and apparatus, device, storage medium, and computer program product
CN111226206B (en) Taking a snapshot of blockchain data
CN111639080B (en) Data processing method and device, node equipment and storage medium
CN112286963A (en) Trusted inquiry system for block chain terminal data and implementation method thereof
EP3769219B1 (en) Taking snapshots of blockchain data
CN112785408A (en) Account checking method and device based on Hash
US20240106669A1 (en) Methods and systems for streaming block templates with cross-references
CN115021945B (en) Block chain transaction processing method and system
KR20170138934A (en) Management Device for Log Data and Management System for Log Data
CN117056342B (en) Data processing method based on block chain and related equipment
US20240031128A1 (en) Methods and systems for synchronizing a streamed template to a solved block
US20230353393A1 (en) Blockchain-based methods and apparatuses for processing data, devices and readable storage mediums
US20230421402A1 (en) Methods and systems for compressing transaction identifiers
Mittal Optimized Resource Matching for uploading bits in a PaaS Cloud
CN111488612A (en) State data query method and device based on service data block chain
CN112862574A (en) Distributed order number generation method and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant