A transaction verification method and related devices
By integrating transaction verification as a smart contract on a virtual machine, the block chain network maintains continuous operation during updates, addressing inefficiencies in existing transaction verification maintenance processes.
Patent Information
- Application Number
- CN201910909878.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-09-23
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2039-09-23
AI Technical Summary
The existing zone block chain networks require significant downtime and effort for updating transaction verification functions due to the integration of these functions into the underlying architecture, causing inefficiencies and disruptions during maintenance.
Implementing transaction verification as a smart contract on a virtual machine within the block chain network, allowing for independent updates to the transaction verification logic without requiring node restarts.
Enables flexible and efficient maintenance of transaction verification processes without disrupting the block chain network, reducing maintenance efforts and ensuring continuous operation.
Smart Images

Figure CN110599177B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of Internet technologies, specifically to the field of blockchain technologies, and more particularly to a transaction verification method, a blockchain node, a terminal device, and a computer storage medium. Background Art
[0002] Blockchain technology, also known as distributed ledger technology, is a new technology in which several computing devices jointly participate in "recording accounts" and jointly maintain a complete distributed database. Due to the characteristics of blockchain technology such as decentralization, openness and transparency, each computing device can participate in database recording, and data synchronization can be quickly performed between computing devices, blockchain technology has been widely applied in many fields.
[0003] In the prior art, since the program code of the transaction verification function is written into the underlying architecture code of the blockchain, when modifying the transaction verification function logic of the blockchain, after rewriting the program code of the transaction verification function, for each node in the blockchain, it is necessary to stop working to load the new program code and then restart the node to finally complete the modification, resulting in a cumbersome upgrade and maintenance process of the blockchain and a huge workload. Moreover, if a large number of nodes are down during the upgrade and maintenance process, it will have a huge impact on the normal operation of the blockchain. Summary of the Invention
[0004] Embodiments of the present invention provide a transaction verification method and related devices, which can not only implement transaction verification, but also flexibly change the transaction verification function, and the maintenance and update process of the transaction verification function is convenient and efficient.
[0005] On the one hand, embodiments of the present invention provide a transaction verification method, which is applied to a blockchain node in a blockchain network. A virtual machine for running a smart contract is deployed on the blockchain node, and the smart contract includes a transaction verification contract. The transaction verification method includes:
[0006] Receiving a transaction signed with the private key of a transaction initiator, where the transaction includes a transaction signature and transaction data;
[0007] Invoking the transaction verification contract through the virtual machine to perform a transaction size verification operation, a gas price verification operation, a transaction signature verification operation, and a transaction data verification operation on the transaction;
[0008] If the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are passed, then packing the transaction to generate a block to be chained;
[0009] Adding the block to be chained to the blockchain.
[0010] Among them, the transaction data includes the gas price. The transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction include:
[0011] Judge whether the size of the transaction exceeds the preset transaction size. If the judgment is that it does not exceed, the transaction passes the transaction size verification and enters the gas price verification operation for the transaction. Otherwise, the transaction fails the transaction size verification;
[0012] The gas price verification operation includes:
[0013] Judge whether the gas price of the transaction exceeds the preset gas price. If the judgment is that it exceeds, the transaction passes the gas price verification and enters the transaction signature verification operation for the transaction. Otherwise, the transaction fails the gas price verification;
[0014] The transaction signature verification operation includes:
[0015] Obtain the public key of the transaction initiator according to the transaction signature;
[0016] Use the public key to decrypt the transaction signature to obtain decryption data, and compare the decryption data with the transaction data. If they are the same, the transaction passes the transaction signature verification and enters the transaction data verification operation for the transaction. Otherwise, the transaction fails the transaction signature verification;
[0017] The transaction data verification operation includes:
[0018] Perform data verification on the transaction data according to the preset sensitive word database. If the transaction data contains sensitive word data, the transaction fails the transaction data verification, or filter the sensitive word data from the transaction data; otherwise, the transaction passes the transaction data verification.
[0019] Among them, the transaction is a transfer transaction, and the transaction data further includes the virtual asset address of the transferor, the recipient address, and the transfer amount;
[0020] Before invoking the transaction verification contract through the virtual machine to execute the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction, it further includes:
[0021] Judge whether the virtual asset balance of the virtual asset address of the transferor is greater than the transfer amount. If the judgment result is yes, enter the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction; otherwise, send a prompt message to the transaction initiator to prompt that the transaction has an error.
[0022] Among them, the code of the transaction verification contract includes a preset verification field and a verification operation field. The preset verification field is used to store preset data for comparison with the data to be verified, and the verification operation field indicates the verification logic between the data to be verified and the data in the preset verification field.
[0023] Among them, the transaction data includes the transaction initiation time, and the method further includes:
[0024] Determine the transaction verification operation order of the transaction according to the product of the assignment of the priority of the transaction initiator and the transaction initiation time of the transaction. Among them, the higher the priority of the transaction initiator, the smaller the value of the priority assignment; the smaller the value of the product corresponding to the transaction, the earlier the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are performed on the transaction.
[0025] Among them, the larger the number of transactions initiated by the transaction initiator within the preset time, the higher the priority of the transaction initiator.
[0026] On the other hand, an embodiment of the present invention provides a blockchain node, on which a virtual machine for running a smart contract is deployed, and the smart contract includes a transaction verification contract; the blockchain node includes:
[0027] A transaction receiving module, configured to receive a transaction signed with the private key of the transaction initiator, where the transaction includes a transaction signature and transaction data;
[0028] A transaction verification module, configured to call the transaction verification contract through the virtual machine to perform transaction size verification operations, gas price verification operations, transaction signature verification operations, and transaction data verification operations on the transaction;
[0029] A block generation module, configured to pack the transaction into a block to be uploaded to the chain if the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are passed;
[0030] An on-chain module, configured to add the block to be uploaded to the blockchain.
[0031] Among them, the transaction data includes the transaction initiation time, and the blockchain node further includes:
[0032] A verification order determination module, configured to determine the transaction verification operation order of the transaction according to the product of the assignment of the priority of the transaction initiator and the transaction initiation time of the transaction. Among them, the higher the priority of the transaction initiator, the smaller the value of the priority assignment; the smaller the value of the product corresponding to the transaction, the earlier the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are performed on the transaction.
[0033] On the other hand, an embodiment of the present invention provides a terminal device, including: a processor and a memory;
[0034] The processor is connected to the memory, wherein the memory is used to store program codes, and the processor is used to call the program codes to execute the transaction verification method described above.
[0035] On the other hand, an embodiment of the present invention provides a computer storage medium storing a computer program, the computer program including program instructions, and the program instructions, when executed by a processor, execute the transaction verification method described above.
[0036] In the embodiment of the present invention, by adding a transaction verification contract as a smart contract and running the transaction verification contract on a virtual machine to perform transaction size verification operations, gas price verification operations, transaction signature verification operations, and transaction data verification operations on transactions, not only can the transaction verification function of blockchain nodes be realized, but also when maintaining and updating the transaction verification function, only the transaction verification contract code needs to be modified and the code is uploaded to the chain, that is, the transaction verification function can be changed. It has strong flexibility, and the maintenance and update process of the transaction verification function is convenient and efficient. The blockchain nodes do not need to be shut down, ensuring the normal operation of the blockchain network. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can also be obtained based on these drawings.
[0038] Figure 1 It is a schematic diagram of data uploading in a transaction verification method provided by an embodiment of the present invention;
[0039] Figure 2 It is a schematic flowchart of a transaction verification method provided by an embodiment of the present invention;
[0040] Figure 3 It is a schematic flowchart of a transaction verification method provided by an embodiment of the present invention;
[0041] Figure 4 It is a schematic structural diagram of a blockchain node provided by an embodiment of the present invention;
[0042] Figure 5 It is a schematic structural diagram of an on-chain module in a blockchain node provided by an embodiment of the present invention;
[0043] Figure 6It is a schematic structural diagram of a terminal device provided by an embodiment of the present invention. Detailed implementation manners
[0044] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described with reference to the accompanying drawings in the embodiments of the present invention.
[0045] First of all, the blockchain network is a distributed database that maintains a continuously growing list of data records, and each node in the blockchain network stores this list of data records. In the blockchain, a batch composed of multiple data records is called a block, and each row of data record in the block is called a transaction. Specifically, the structure of the block includes the block size, the block header, the transaction counter, and the transactions.
[0046] There are differences between the narrow-sense transaction and the broad-sense transaction in the blockchain. The narrow-sense transaction refers to a value transfer issued by a user to the blockchain. For example, in a blockchain network regarding virtual assets (such as game coins in a game), the transaction can be a transfer initiated by a user in the blockchain. The broad-sense transaction refers to a piece of business data with business intentions issued by a user to the blockchain through a node device. For example, in the process of item circulation, the data information for certifying the item and its holder is such a transaction. Another example is that when deploying a contract in Ethereum, one deployment is a transaction, and the transaction data is the contract code; when voting for a candidate, one vote is another transaction.
[0047] The smart contract program is not just a computer program that can be automatically executed: it itself is a system participant. It responds to the received information, can receive and store value, and can also send information and value outward. This program is like a trustworthy person who can temporarily hold assets and always execute operations according to the pre-set rules. Ethereum is blockchain technology plus smart contracts. Ethereum is an implementation of blockchain that can be used for programming, decentralization, guarantee, and trading of anything, such as voting, domain names, financial exchanges, crowdfunding, company management, contracts, etc. Ethereum allows anyone to build and use decentralized applications running through blockchain technology on the platform. In the Ethereum network, numerous nodes are connected to each other to form the Ethereum network. The Ethereum blockchain not only stores data and code, but each node also contains a virtual machine (EVM: Ethereum Virtual Machine) to execute the contract code. In addition, the Ethereum node software provides two core functions: data storage and contract code execution. In each full Ethereum node, a complete blockchain data is stored. Ethereum not only stores transaction data on the chain, but also stores the compiled smart contract code on the chain.
[0048] To solve the technical problems raised in the background art, that is, in the existing blockchain network, the transaction verification module is set in the underlying architecture of the blockchain, and the code of the transaction verification module is set in the underlying architecture code. Each time a transaction verification is performed, it needs to be executed in the blockchain system; and each time the transaction verification module needs to be modified or maintained, each blockchain node in the blockchain needs to be modified; specifically, when modifying, the blockchain node needs to be shut down, then the modified transaction verification module code is loaded into the node, and then the blockchain node is restarted to complete the modification or maintenance, which not only has a huge workload but also low efficiency, and is very disadvantageous to the normal operation of the blockchain network. Therefore, the embodiments of the present invention provide a new solution, and the general idea is:
[0049] The transaction verification module is set as a smart contract running on a virtual machine, that is, a transaction verification contract. Then, when maintaining and updating the transaction verification function, only the transaction verification contract code needs to be modified and the code is uploaded to the chain, that is, the transaction verification function can be changed, with strong flexibility. The maintenance and update process of the transaction verification function is convenient and efficient, and the blockchain node does not need to be shut down, ensuring the normal operation of the blockchain network. In addition, by adding a transaction verification contract as a smart contract, when a new transaction is received, the transaction verification contract is run on the virtual machine to implement operations such as transaction size verification, gas price verification, transaction signature verification, and transaction data verification for the transaction, and the transaction verification function of the blockchain node can be realized.
[0050] Specifically, referring to Figure 1 , Figure 1 is a schematic diagram of data uploading in a transaction verification method provided by an embodiment of the present invention. When the client D submits a new transaction to the blockchain network, it will first be broadcast to all nodes in the blockchain network (such as nodes A, B, and C). Each node will collect several un-verified transactions into a block. Each block can contain hundreds or thousands of transactions. The node that can complete the transaction size verification, gas price verification, transaction signature verification, and transaction data verification fastest, such as node A, will upload its own block to the chain and spread the block to other nodes in the blockchain network to achieve uploading. Node A broadcasts its block to nodes B and C, and nodes B and C upload the received block to the chain.
[0051] Based on the above idea, the embodiments of the present invention provide a transaction verification method, which is applied to a blockchain node in a blockchain network. A virtual machine for running a smart contract is deployed on the blockchain node, and the smart contract includes a transaction verification contract. Taking a single blockchain node in the network as an example, the data uploading process is described. Referring to Figure 2 , Figure 2 is a schematic flowchart of a transaction verification method provided by an embodiment of the present invention. The transaction verification method includes:
[0052] Step S101: Receive a transaction signed with the private key of the transaction initiator. The transaction includes a transaction signature and transaction data.
[0053] Specifically, taking a single blockchain node, such as block node A, as an example, in an application scenario, a user can submit a transaction (the transaction can be specific transaction data or business data, etc.) to blockchain node A through a client. Before submitting the transaction data to the blockchain node, the client can first create a key pair using an asymmetric encryption algorithm. The asymmetric encryption algorithm here can include, but is not limited to: Elgamal algorithm (an asymmetric encryption algorithm), Rabin algorithm (an asymmetric encryption algorithm), Diffie-Hellman algorithm (an asymmetric encryption algorithm), ECC algorithm (elliptic curve encryption algorithm). Among them, the key pair includes a public key and a private key. The public key is used to identify the transaction address of the client. It should be noted that the transaction address in the blockchain network is unique, and one transaction address corresponds to one client (i.e., the user). That is to say, the public key can mark the user identity of the user indicated by the client. The private key is used by the client to sign the transaction data. After creating the key pair, the client can upload the public key in the key pair to the blockchain network so that the blockchain network uses the public key in the key pair as the transaction address of the client, while the private key is kept by the client. Before submitting the transaction data, the client uses the private key to sign the transaction data (equivalent to encrypting the transaction data with the key) to obtain a digital string (i.e., the transaction signature), and then submits the transaction data and the transaction signature to blockchain node A together. In fact, blockchain node A can receive several (more than one transaction) transactions and corresponding transaction signatures.
[0054] Step S102: Call the transaction verification contract through the virtual machine to perform transaction size verification, gas price verification, transaction signature verification, and transaction data verification operations on the transaction.
[0055] Specifically, use the virtual machine on blockchain node A to call the transaction verification contract to perform transaction size verification, gas price verification, transaction signature verification, and transaction data verification operations on all transactions received by blockchain node A, and conduct transaction verification on all transactions.
[0056] Step S103: If the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are passed, then pack the transaction to generate a block to be uploaded to the chain.
[0057] Specifically, blockchain node A packs several pieces of transaction data and corresponding transaction signatures that have passed the above verifications into a block to obtain a block to be uploaded to the chain.
[0058] Step S104: Add the block to be chained to the blockchain.
[0059] Specifically, blockchain node A can chain the block to be chained to the blockchain.
[0060] As can be seen from the above, by setting up a transaction verification contract, in the embodiments of the present invention, when a blockchain node receives a transaction, it can directly call the transaction verification contract through a virtual machine to complete the verification operations of the transaction size, gas price, transaction signature, and transaction data. This not only simplifies the operation but also makes it very convenient to modify and maintain the transaction verification logic. Only need to modify the code of the transaction verification contract and then complete the code chaining, and the update and maintenance of the transaction verification function can be completed at one time, effectively improving efficiency and reducing the maintenance workload; it has strong flexibility and can flexibly change the transaction verification logic.
[0061] Further, step S104 will be specifically described below. Step S104 includes steps S204 to S206. Refer to Figure 3 , Figure 3 which is a schematic flowchart of a transaction verification method provided by an embodiment of the present invention; taking blockchain node A as an example, the transaction verification method includes:
[0062] Step S201: Receive a transaction signed with the private key of the transaction initiator. The transaction includes a transaction signature and transaction data.
[0063] Step S202: Call the transaction verification contract through the virtual machine to perform the verification operations of the transaction size, gas price, transaction signature, and transaction data for the transaction.
[0064] Step S203: If the transaction size verification, gas price verification, transaction signature verification, and transaction data verification pass, then package the transaction to generate a block to be chained.
[0065] Among them, the specific processes of steps S201 to S203 can refer to the descriptions of steps S101 to S103 and will not be elaborated here.
[0066] Step S204: Perform an on-chain block verification operation on the block to be chained.
[0067] Specifically, blockchain node A performs an on-chain block verification on the block to be chained. Here, it can be to perform the verification operation on the block in the prior art, and no special limitation is made on the specific on-chain block verification operation. Preferably, the on-chain block verification operation includes a block size verification operation, and the block size verification operation includes:
[0068] Determine whether the block size of the block to be chained exceeds the preset block size. If it is determined that it does not exceed, the block to be chained passes the block size verification; otherwise, the block to be chained fails the block size verification.
[0069] Specifically, different blockchain networks have different restrictions on the size of the blocks that can be transmitted. Therefore, in order to avoid information transmission congestion in the blockchain network caused by overly large blocks, different blockchain networks can preset different preset block sizes, and the specific values can be set according to different blockchain networks and different requirements. When the block size of the block to be chained exceeds the preset block size, the block verification fails at this time, and the processing flow of the block to be chained stops; while when the block size of the block to be chained is smaller than the preset block size, it indicates that the block to be chained has passed the block size verification at this time and can enter the consensus voting session.
[0070] In addition, optionally, for the block to be chained, after passing the blockchain block verification and before conducting the consensus voting on the block to be chained, blockchain node A can also execute business logic through a virtual machine to complete specific functions, including ledger verification, game rewards and punishments, etc. Ledger verification is to compare the transactions of the block to be chained with the existing transactions on the ledger of blockchain node A to determine whether the transaction is a duplicate transaction. When the transaction is a duplicate, blockchain node A returns an error message to the client to remind the transaction initiator that a duplicate transaction has occurred and the transaction needs to be modified; if it is determined that none of the transactions of the block to be chained are duplicates of the existing transactions, the consensus voting on the block to be chained is entered.
[0071] Step S205, after the blockchain block verification passes, conduct a consensus voting on the block to be chained;
[0072] Specifically, when the block to be chained passes the blockchain block verification, blockchain node A initiates a consensus voting on the block to be chained; the block to be chained can be sent to the voting nodes in the blockchain network, and the voting nodes collect the voting results and return the voting results to blockchain node A.
[0073] Step S206, when the number of votes in the consensus voting meets the preset conditions, add the block to be chained to the blockchain;
[0074] Specifically, judge whether the number of votes meets the preset conditions according to the voting results. When the number of votes reaches the preset conditions, it indicates that the block to be chained has passed the voting and the block to be chained can be added to the blockchain. Among them, no special restrictions are imposed on the preset conditions. Further, the preset conditions include that the number of votes in the consensus voting is greater than or equal to a preset threshold, such as 3 / 4 of the total number of votes, to ensure that the block to be chained is supported by most nodes in the blockchain network and improve the credibility of the blockchain block.
[0075] Step S207: Broadcast the block to be chained to the remaining blockchain nodes in the blockchain network.
[0076] Specifically, when blockchain node A adds the block to be chained to the blockchain, it also needs to broadcast the block to be chained to the remaining blockchain nodes in the network, that is, the blockchain nodes adjacent to and connected to blockchain node A, such as Figure 1 blockchain nodes B and C in. After receiving the block to be chained, blockchain nodes B and C write the block to be chained into their own ledgers, that is, the chaining is completed; and continue to broadcast the block to be chained to the blockchain nodes connected to themselves, so that all nodes in the entire blockchain network chain the block to be chained, ensuring that the ledgers of each node in the network are exactly the same.
[0077] Furthermore, the transaction data includes the gas price. For the transactions received by the blockchain node, the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction include:
[0078] Judge whether the size of the transaction exceeds the preset transaction size. If the judgment is that it does not exceed, the transaction passes the transaction size verification and enters the gas price verification operation for the transaction; otherwise, the transaction fails the transaction size verification.
[0079] Specifically, in order to avoid the data size of a single transaction being too large and causing congestion in the blockchain network, it is necessary to verify the size of the transaction, that is, the blockchain network can set a preset transaction size, and the specific value of the preset transaction size can be set according to different blockchain networks and specific requirements. For example, the preset transaction size is 300 bytes, 400 bytes, etc. When a blockchain node receives a transaction, it first verifies the transaction size, compares the size of the transaction with the preset transaction size. When the size of the transaction is less than the preset transaction size, at this time the transaction passes the transaction size verification and can enter the gas price verification operation for the transaction; conversely, the size of the transaction is greater than the preset transaction size. At this time, the blockchain node returns a transaction size exception message to the client to remind the transaction initiator to modify the transaction so that the size of the transaction meets the requirements.
[0080] The gas price verification operation includes:
[0081] Judge whether the gas price of the transaction exceeds the preset gas price. If the judgment is that it exceeds, the transaction passes the gas price verification and enters the transaction signature verification operation for the transaction; otherwise, the transaction fails the gas price verification.
[0082] Specifically, first, gas corresponds to the actual number of computational steps of the Ethereum Virtual Machine (EVM) in a transaction. The simpler the transaction, the fewer computational steps are required, and the less gas is needed. Conversely, if some complex computations are to be performed, the gas consumption will be large. Therefore, the greater the computational amount that the transaction initiator submits for the EVM to perform, the higher the gas consumption required.
[0083] And the gas price (i.e., the price of gas) is how much Eth (Ether, a virtual resource) the transaction initiator is willing to pay for one unit of gas, usually measured in Gwei. So, the higher the gas price, the more Eth is paid for each computational step in the transaction. Gwei is 10^-9 Eth, that is, 1 Gwei = 0.000000001 Eth. Therefore, when the transaction initiator sets the gas price = 20 Gwei, it means the transaction initiator is willing to pay 0.00000002 Eth for a single-step computation.
[0084] The transaction initiator sets the gas price to reward miners for packing the transaction initiated by themselves. The higher the gas price, the faster the transaction will be processed by miners. In fact, the blockchain network can also process transactions without a set gas price, that is, the transaction initiator can also not set the gas price. However, generally to incentivize miners, the blockchain network will set a minimum gas price, that is, the preset gas price, and the specific value of this price can be set according to specific requirements and different blockchain networks. Therefore, after a blockchain node receives a transaction, it will determine whether the gas price set by the transaction initiator exceeds the preset gas price. If it is determined that it exceeds, that is, the set gas price is greater than the preset gas price, then the transaction passes the gas price verification and can enter the transaction signature verification operation for the said transaction; otherwise, the gas price of the transaction is less than or equal to the preset gas price, and the transaction fails the gas price verification.
[0085] And to ensure that the transaction is initiated by the transaction initiator himself and has not been tampered with, it is necessary to perform a transaction signature verification on the transaction. The transaction signature verification operation includes:
[0086] Obtain the public key of the transaction initiator according to the transaction signature;
[0087] Use the public key to decrypt the transaction signature to obtain decryption data, and compare the decryption data with the transaction data. If they are the same, the transaction passes the transaction signature verification and enters the transaction data verification operation for the said transaction; otherwise, the transaction fails the transaction signature verification.
[0088] Specifically, since a block contains multiple transactions, in the block, the transactions are stored according to the correspondence between transaction data and the corresponding transaction signatures. A transaction signature verification operation is performed on each transaction in the block. Taking a single transaction as an example, from the above description, it can be known that the transaction signature is a digital string obtained by encrypting the transaction data with a private key. After obtaining the transaction, since the public key is usually added to the transaction, the public key of the transaction initiator (i.e., the client) can be directly obtained from the transaction data, and then the public key is used to verify the transaction signature, that is, the transaction signature is decrypted with the public key to obtain the decrypted data, and then the decrypted data is compared with the transaction data. If they are the same, it indicates that the transaction data is sent by the transaction initiator itself and the transaction data has not been tampered with. In addition, since the ECDSA algorithm used by Ethereum has an interesting feature: the public key can be derived from the signature, and the transaction format of Ethereum only contains the signature. Before verifying the transaction signature, the public key is first derived from the transaction signature using the algorithm, and then the signature is verified.
[0089] In addition, to ensure that there is no sensitive vocabulary data in the transaction data, it is necessary to perform transaction data verification on the transaction. The transaction data verification operation includes:
[0090] Data verification is performed on the transaction data according to a preset sensitive vocabulary database. If the transaction data contains sensitive vocabulary data, the transaction fails the transaction data verification, or the sensitive vocabulary data in the transaction data is filtered; otherwise, the transaction passes the transaction data verification.
[0091] Specifically, it is necessary to pre - establish a sensitive vocabulary database (i.e., the preset sensitive vocabulary database) in the virtual machine. The preset sensitive vocabulary database includes various sensitive vocabularies, such as the borrowing information vocabulary of users, including borrowing time, borrowing amount, borrowing object, and for another example, the lending information vocabulary of users, including lending time, lending amount, lending object. For each transaction data, the virtual machine performs data verification through the preset sensitive vocabulary database. When it is determined that the transaction data includes sensitive vocabulary data in the preset sensitive vocabulary database, the data verification of the transaction fails and the processing of the transaction stops; or when the data verification of the transaction fails, the sensitive vocabulary in the transaction data is deleted and filtered to form new transaction data, and the next processing step is entered according to the new transaction data. Ensure that the transaction data in the blockchain network does not contain sensitive vocabulary data and guarantee the information security of the transaction initiator.
[0092] Furthermore, the transaction verification method of the embodiments of the present invention further includes a method for deploying a transaction verification contract. The deployment method includes:
[0093] Converting the transaction verification logic into transaction verification contract code;
[0094] Compiling the transaction verification contract code into binary code;
[0095] Package the binary code into a transaction and send it to the blockchain network. When the transaction is added to the blockchain, the deployment of the transaction verification contract is completed.
[0096] Specifically, convert the verification logic of the transaction into transaction verification contract code, compile the transaction verification contract code into binary code, and finally package the binary code into a transaction and send it to the blockchain network, so that the transaction is added to the blockchain, that is, recorded in the ledger of each blockchain node. Thus, the deployment of the transaction verification contract is completed. Similarly, when the virtual machine calls the transaction verification contract, it also creates a new transaction to call the transaction verification contract.
[0097] Among them, the code of the transaction verification contract includes a preset verification field and a verification operation field. The preset verification field is used to store preset data for comparison with the data to be verified, such as the above-mentioned preset transaction size, preset gas price, transaction data (before each transaction signature verification, obtain the current transaction data as the preset verification field), and a preset sensitive word database, as the basis for verification comparison; and the verification operation field indicates the verification logic between the data to be verified and the data in the preset verification field. For example, the step jump logic during the verification operation of the transaction can be set, such as verifying in the order of transaction size, gas price, transaction signature, and transaction data; taking the transaction size verification as an example, the verification logic indicated by its verification operation field is that if the size a of the current transaction is less than the preset transaction size b, then the current transaction passes the transaction size verification and enters the gas price verification; and if a is greater than b, then the current transaction fails the transaction size verification, and a transaction verification failure result is returned to the client to inform the transaction initiator.
[0098] Furthermore, when the transaction is a transfer transaction, the transaction data further includes the virtual asset address of the transferor, the recipient address, and the transfer amount;
[0099] Reference Figure 2 , after receiving the transaction, before calling the transaction verification contract through the virtual machine to perform the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the transaction, it further includes:
[0100] Judge whether the virtual asset balance of the virtual asset address of the transferor is greater than the transfer amount. If the judgment result is yes, then enter the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the transaction; otherwise, send a prompt message to the client to prompt the transaction initiator that the transaction is abnormal.
[0101] By adding a transfer amount verification step, invalid transactions are prevented from entering the verification operation, thereby consuming the resources of blockchain nodes and improving the operating efficiency of the blockchain.
[0102] Further, the transaction data includes the transaction initiation time. After receiving the transaction and before transaction verification, the method further includes:
[0103] Determine the transaction verification operation order of the transaction according to the product of the assignment of the priority of the transaction initiator and the transaction initiation time of the transaction. Among them, the higher the priority of the transaction initiator, the smaller the assigned value of the priority; the smaller the value of the corresponding product of the transaction, the earlier the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are performed on the transaction.
[0104] Specifically, set a priority order for all transaction initiators. When the blockchain network is started, the initial priority of the corresponding transaction initiator can be set according to the transaction initiation order. For example, if transaction initiators A, B, and C initiate transactions in sequence, then set the initial priorities according to the order of transaction initiators A, B, and C, and assign values of 1, 2, and 3 respectively. Determine the transaction verification operation order of the transaction according to the product of the assigned value of the initial priority and the transaction initiation time. Among them, the transaction initiation time is in 24-hour format, and the order of transaction execution verification operations is determined according to the size of the product. Moreover, clear the product data once every 24 hours and send a message to the client to prompt the transaction initiator that the transaction has failed and needs to resubmit the transaction. This can make transactions with higher priority levels be processed first. And during a day, transactions during the day are more urgent and important than those at night, so they can be processed more preferentially.
[0105] Furthermore, the initial priority of the transaction initiator can be adjusted through preset conditions. For example, the number of transactions initiated by each transaction initiator within a preset time can be obtained. According to the idea that the larger the number of transactions initiated by the transaction initiator within the preset time, the higher the priority of the transaction initiator, the initial priority is adjusted. For example, within a preset time of 48 hours, the number of transactions of transaction initiators A, B, and C are 20, 60, and 100 respectively. Then the initial priorities of transaction initiators A, B, and C will be adjusted to 3, 2, and 1. According to the adjusted initial priority and the transaction initiation time, determine the order in which the transaction is verified. The larger the number of transactions, the higher the importance and activity level of the corresponding transaction initiator, and the corresponding transaction needs to be processed preferentially, improving the user experience and stimulating transactions.
[0106] Based on the description of the above transaction verification method embodiments, an embodiment of the present invention also discloses a blockchain node. A virtual machine for running a smart contract is deployed on the blockchain node, and the smart contract includes a transaction verification contract; Refer toFigure 4 , Figure 4 is a schematic structural diagram of a blockchain node provided by an embodiment of the present invention. The blockchain node includes a transaction receiving module 11, a transaction verification module 12, a block generating module 13, a chain-adding module 14, and a broadcasting module 15, where:
[0107] The transaction receiving module 11 is used to receive a transaction signed with the private key of the transaction initiator. The transaction includes a transaction signature and transaction data.
[0108] The transaction verification module 12 is used to call the transaction verification contract through the virtual machine to perform transaction size verification operations, gas price verification operations, transaction signature verification operations, and transaction data verification operations on the transaction.
[0109] The block generating module 13 is used to package the transaction to generate a block to be added to the chain if the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are passed.
[0110] The chain-adding module 14 is used to add the block to be added to the chain to the blockchain.
[0111] The broadcasting module 15 broadcasts the block to be added to the chain to the remaining blockchain nodes in the blockchain network.
[0112] For the specific function implementations of the transaction receiving module 11, the transaction verification module 12, the block generating module 13, the chain-adding module 14, and the broadcasting module 15, reference can be made to the descriptions of steps S101 to step S106 and step S207, which will not be elaborated here.
[0113] By adding a transaction verification contract as a smart contract to the blockchain node in the embodiment of the present invention, after receiving a transaction, the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the transaction are realized by running the transaction verification contract on the virtual machine. It can not only realize the transaction verification function of the blockchain node, but also when maintaining and updating the transaction verification function, only need to modify the transaction verification contract code and complete the code upload to the chain, then the transaction verification function can be changed. It has strong flexibility, and the maintenance and update process of the transaction verification function is convenient and efficient. The blockchain node does not need to be shut down, ensuring the normal operation of the blockchain network.
[0114] Furthermore, referring to Figure 5 , Figure 5 is a schematic structural diagram of the chain-adding module in a blockchain node provided by an embodiment of the present invention; the chain-adding module 14 includes a block verification sub-module 21, a voting sub-module 22, and an adding sub-module 23, where:
[0115] The block verification sub-module 21 is used to perform an operation of verifying the block to be added to the chain on the block to be added to the chain.
[0116] A voting sub-module 22, which is used to conduct a consensus vote on the block to be uploaded to the chain after the verification of the uploaded block is passed;
[0117] An adding sub-module 23, which is used to add the block to be uploaded to the blockchain when the number of votes in the consensus vote meets the preset conditions;
[0118] For the specific function implementation of the block verification sub-module 21, the voting sub-module 22, and the adding sub-module 23, reference can be made to the descriptions in steps S204 to S206, and details will not be elaborated here.
[0119] Further, the transaction is a transfer transaction, and the transaction data further includes the virtual asset address of the transferor, the recipient address, and the transfer amount; at this time, between the transaction receiving module 11 and the transaction verification module 12, the blockchain node further includes:
[0120] A transfer amount verification module, which is used to determine whether the virtual asset balance of the virtual asset address of the transferor is greater than the transfer amount. If the judgment result is yes, it proceeds to the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction; otherwise, a prompt message is sent to the transaction initiator to prompt that the transaction has an error.
[0121] Furthermore, the transaction data includes the transaction initiation time. Between the transaction receiving module 11 and the transaction verification module 12, the blockchain node further includes:
[0122] A verification order determination module, which is used to determine the transaction verification operation order of the transaction according to the product of the assignment of the priority of the transaction initiator and the transaction initiation time of the transaction. Among them, the higher the priority of the transaction initiator, the smaller the value of the priority assignment; the smaller the value of the product corresponding to the transaction, the earlier the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are performed on the transaction.
[0123] Among them, the larger the number of transactions initiated by the transaction initiator within the preset time, the higher the priority of the transaction initiator.
[0124] For the specific function implementation of the transfer amount verification module and the verification order determination module, reference can be made to the descriptions in the embodiments of the above transaction verification method, and details will not be elaborated here.
[0125] Finally, the code of the transaction verification contract includes a preset verification field and a verification operation field. The preset verification field is used to store preset data for comparison with the data to be verified, and the verification operation field indicates the verification logic between the data to be verified and the data in the preset verification field. The descriptions of the preset verification field and the verification operation field, as well as the deployment process of the transaction verification contract, can refer to the descriptions in the above embodiments of the transaction verification method and will not be elaborated here.
[0126] Further, please refer to Figure 6 , which is a schematic structural diagram of a terminal device provided by an embodiment of the present invention. As Figure 6 shown, the above Figure 4 and Figure 5 blockchain nodes can be applied to the terminal device 1000. The terminal device 1000 may include: a processor 1001, a network interface 1004, and a memory 1005. In addition, the terminal device 1000 may further include: a user interface 1003 and at least one communication bus 1002. Among them, the communication bus 1002 is used to realize the connection communication between these components. Among them, the user interface 1003 may include a display screen (Display) and a keyboard (Keyboard). Optionally, the user interface 1003 may further include a standard wired interface and a wireless interface. The network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface). The memory 1005 may be a high-speed RAM memory or a non-volatile memory, such as at least one disk memory. Optionally, the memory 1005 may also be at least one storage device located far from the aforementioned processor 1001. As Figure 6 shown, the memory 1005, as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a device control application program.
[0127] In Figure 6 the terminal device 1000 shown, the network interface 1004 can provide network communication functions; while the user interface 1003 is mainly used to provide an input interface for users; and the processor 1001 can be used to call the device control application program stored in the memory 1005 to implement:
[0128] Receiving a transaction signed with the private key of the transaction initiator, where the transaction includes a transaction signature and transaction data;
[0129] Invoking the transaction verification contract through the virtual machine to perform transaction size verification operations, gas price verification operations, transaction signature verification operations, and transaction data verification operations on the transaction;
[0130] If the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are passed, then package the transaction to generate a block to be added to the blockchain;
[0131] Add the block to be added to the blockchain to the blockchain.
[0132] In one embodiment, the transaction data includes the gas price. The transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction include:
[0133] Judge whether the size of the transaction exceeds the preset transaction size. If it is judged not to exceed, the transaction passes the transaction size verification and enters the gas price verification operation for the transaction. Otherwise, the transaction fails the transaction size verification;
[0134] The gas price verification operation includes:
[0135] Judge whether the gas price of the transaction exceeds the preset gas price. If it is judged to exceed, the transaction passes the gas price verification and enters the transaction signature verification operation for the transaction. Otherwise, the transaction fails the gas price verification;
[0136] The transaction signature verification operation includes:
[0137] Obtain the public key of the transaction initiator according to the transaction signature;
[0138] Use the public key to decrypt the transaction signature to obtain decryption data, and compare the decryption data with the transaction data. If they are the same, the transaction passes the transaction signature verification and enters the transaction data verification operation for the transaction. Otherwise, the transaction fails the transaction signature verification;
[0139] The transaction data verification operation includes:
[0140] Perform data verification on the transaction data according to the preset sensitive word database. If the transaction data contains sensitive word data, the transaction fails the transaction data verification, or filter the sensitive word data from the transaction data; otherwise, the transaction passes the transaction data verification.
[0141] In one embodiment, the transaction is a transfer transaction, and the transaction data further includes the virtual asset address of the transferor, the recipient address, and the transfer amount;
[0142] Before calling the transaction verification contract through the virtual machine to execute the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction, it further includes:
[0143] Determine whether the virtual asset balance of the virtual asset address of the transferor is greater than the transfer amount. If the judgment result is yes, enter the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction; otherwise, send a prompt message to the transaction initiator to prompt that an error has occurred in the transaction.
[0144] In one embodiment, the code of the transaction verification contract includes a preset verification field and a verification operation field. The preset verification field is used to store preset data for comparison with the data to be verified, and the verification operation field indicates the verification logic between the data to be verified and the data in the preset verification field.
[0145] In one embodiment, the transaction data includes the transaction initiation time, and the method further includes:
[0146] Determine the transaction verification operation order of the transaction according to the product of the assignment of the priority of the transaction initiator and the transaction initiation time of the transaction. Among them, the higher the priority of the transaction initiator, the smaller the assigned value of the priority; the smaller the value of the product corresponding to the transaction, the earlier the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are performed on the transaction. The greater the number of transactions initiated by the transaction initiator within the preset time, the higher the priority of the transaction initiator.
[0147] The specific working process of the terminal device 1000 can refer to the description of the above blockchain node and will not be repeated here.
[0148] In addition, it should be pointed out here that: The embodiment of the present invention also provides a computer storage medium, and the computer storage medium stores the computer program executed by the aforementioned blockchain node, and the computer program includes program instructions. When the processor executes the program instructions, it can execute the description of the transaction verification method in the corresponding embodiment mentioned above. Therefore, it will not be repeated here. In addition, the description of the beneficial effects of using the same method will not be repeated. For the technical details not disclosed in the embodiment of the computer storage medium involved in the present invention, please refer to the description of the method embodiment of the present invention. Figures 2 to 3 Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above methods. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM), etc.
[0149] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the embodiments of the above methods. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM), etc.
[0150] The above-disclosed is only the preferred embodiment of the present invention. Of course, it cannot be used to limit the scope of the rights of the present invention. Therefore, equivalent changes made according to the claims of the present invention still fall within the scope covered by the present invention.
Claims
1. A transaction verification method, characterized in that, A blockchain node applied in a blockchain network, where a virtual machine for running a smart contract is deployed on the blockchain node, and the smart contract includes a transaction verification contract; the transaction verification contract is obtained by converting transaction verification logic into the code of the transaction verification contract, compiling the code of the transaction verification contract into corresponding binary code, and packaging the binary code into a transaction to be deployed to the blockchain. The code of the transaction verification contract includes a preset verification field and a verification operation field. The preset verification field is used to store preset data for comparison with data to be verified, and the verification operation field indicates the verification logic between the data to be verified and the data in the preset verification field. The transaction verification method includes: Receiving a transaction signed with the private key of the transaction initiator, where the transaction includes a transaction signature and transaction data. Creating a new transaction through the virtual machine to call the transaction verification contract to perform a transaction size verification operation, a gas price verification operation, a transaction signature verification operation, and a transaction data verification operation on the received transaction. If the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are passed, then package the transaction to generate a block to be uploaded to the blockchain, and the transaction data verification is sensitive word data verification. For the block to be uploaded to the blockchain, after passing the verification of the uploaded block, when it is determined through the virtual machine that the transactions in the block to be uploaded to the blockchain do not repeat any existing transactions, a consensus vote is performed on the block to be uploaded to the blockchain. When the number of votes in the consensus vote meets the preset conditions, add the block to be uploaded to the blockchain.
2. The method according to claim 1, wherein The transaction data includes a gas price, and the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the transaction include: Judging whether the size of the transaction exceeds a preset transaction size. If it is judged not to exceed, then the transaction passes the transaction size verification and enters the gas price verification operation for the transaction; otherwise, the transaction fails the transaction size verification. The gas price verification operation includes: Judging whether the gas price of the transaction exceeds a preset gas price. If it is judged to exceed, then the transaction passes the gas price verification and enters the transaction signature verification operation for the transaction; otherwise, the transaction fails the gas price verification. The transaction signature verification operation includes: Obtaining the public key of the transaction initiator according to the transaction signature. Decrypting the transaction signature using the public key to obtain decryption data, and comparing the decryption data with the transaction data. If they are the same, then the transaction passes the transaction signature verification and enters the transaction data verification operation for the transaction; otherwise, the transaction fails the transaction signature verification. The transaction data verification operation includes: Performing data verification on the transaction data according to a preset sensitive word database. If the transaction data contains sensitive word data, then the transaction fails the transaction data verification, or the sensitive word data in the transaction data is filtered; otherwise, the transaction passes the transaction data verification.
3. The method according to claim 1, characterized in that, The received transaction is a transfer transaction, and the transaction data further includes the virtual asset address of the transferor, the recipient address, and the transfer amount; Before creating a new transaction through the virtual machine to invoke the transaction verification contract to perform transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the received transaction, it further includes: Judging whether the virtual asset balance of the virtual asset address of the transferor is greater than the transfer amount. If the judgment result is yes, then enter the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the transaction; otherwise, send a prompt message to the transaction initiator to prompt that an error has occurred in the transaction.
4. The method according to any one of claims 1 to 3, characterized in that, The transaction data includes the transaction initiation time, and the method further includes: Determining the transaction verification operation order of the transaction according to the product of the assignment of the priority of the transaction initiator and the transaction initiation time of the transaction, where the higher the priority of the transaction initiator, the smaller the assigned value of the priority; the smaller the value of the product corresponding to the transaction, the earlier the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are performed on the transaction.
5. The method according to claim 4, wherein The greater the number of transactions initiated by the transaction initiator within a preset time, the higher the priority of the transaction initiator.
6. A blockchain node, characterized in that, A virtual machine for running smart contracts is deployed on the blockchain node, and the smart contract includes a transaction verification contract, which is obtained by converting transaction verification logic into the code of the transaction verification contract, compiling the code of the transaction verification contract into the corresponding binary code, and packaging the binary code into a transaction to be deployed into the blockchain; The code of the transaction verification contract includes a preset verification field and a verification operation field. The preset verification field is used to store preset data for comparison with the data to be verified, and the verification operation field indicates the verification logic between the data to be verified and the data in the preset verification field; The blockchain node includes: A transaction receiving module, configured to receive a transaction signed with the private key of the transaction initiator, where the transaction includes a transaction signature and transaction data; A transaction verification module, configured to create a new transaction through the virtual machine to invoke the transaction verification contract to perform transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the received transaction; A block generation module, configured to, if the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are passed, package the received transaction to generate a block to be uploaded to the chain, and the transaction data verification is sensitive vocabulary data verification; An on-chain module, configured to, for the block to be uploaded to the chain, after passing the on-chain block verification, when it is determined by executing the business logic through the virtual machine that the transactions in the block to be uploaded to the chain do not repeat any existing transactions, conduct a consensus vote on the block to be uploaded to the chain; when the number of votes in the consensus vote meets the preset conditions, add the block to be uploaded to the chain to the blockchain.
7. The blockchain node according to claim 6, wherein The transaction data includes the gas price, and the transaction verification module is further configured to: Determine whether the size of the transaction exceeds a preset transaction size. If it is determined that it does not exceed, the transaction passes the transaction size verification and enters the gas price verification operation for the transaction. Otherwise, the transaction fails the transaction size verification; Determine whether the gas price of the transaction exceeds a preset gas price. If it is determined that it exceeds, the transaction passes the gas price verification and enters the transaction signature verification operation for the transaction. Otherwise, the transaction fails the gas price verification; Obtain the public key of the transaction initiator according to the transaction signature; Use the public key to decrypt the transaction signature to obtain decryption data, and compare the decryption data with the transaction data. If they are the same, the transaction passes the transaction signature verification and enters the transaction data verification operation for the transaction. Otherwise, the transaction fails the transaction signature verification; Perform data verification on the transaction data according to a preset sensitive word database. If the transaction data contains sensitive word data, the transaction fails the transaction data verification, or the sensitive word data in the transaction data is filtered; otherwise, the transaction passes the transaction data verification.
8. The blockchain node according to claim 6, characterized in that The received transaction is a transfer transaction, and the transaction data further includes the virtual asset address of the transferor, the recipient address, and the transfer amount; the blockchain node further includes a transfer amount verification module, and the transfer amount verification module is used for: Before the transaction verification module creates a new transaction through the virtual machine to call the transaction verification contract to perform the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation on the received transaction, determine whether the virtual asset balance of the virtual asset address of the transferor is greater than the transfer amount. If the judgment result is yes, enter the transaction size verification operation, gas price verification operation, transaction signature verification operation, and transaction data verification operation for the transaction; otherwise, send a prompt message to the transaction initiator to prompt that the transaction has an error.
9. The blockchain node according to any one of claims 6 to 8, characterized in that, The transaction data includes the transaction initiation time, and the blockchain node further includes a verification order determination module, and the verification order determination module is used for: Determine the transaction verification operation order of the transaction according to the product of the assignment of the priority of the transaction initiator and the transaction initiation time of the transaction, where the higher the priority of the transaction initiator, the smaller the assigned value of the priority; the smaller the value of the product corresponding to the transaction, the earlier the transaction size verification, gas price verification, transaction signature verification, and transaction data verification are performed on the transaction.
10. The blockchain node according to claim 9, wherein The larger the number of transactions initiated by the transaction initiator within a preset time, the higher the priority of the transaction initiator.
11. A terminal device, characterized in that, Including: A processor and a memory; The processor is connected to the memory, where the memory is used to store program code, and the processor is used to call the program code to execute the transaction verification method according to any one of claims 1-5.
12. A computer storage medium, characterized in that, The computer storage medium stores a computer program, and the computer program includes program instructions which, when executed by a processor, execute the transaction verification method according to any one of claims 1-5.
13. A computer program product, comprising computer instructions, characterized in that, When the computer instructions are executed by a processor, the method according to any one of claims 1-5 is implemented.
Citation Information
Patent Citations
Verification method for information in block chain network and verification system thereof
CN106385319A
Consensus checking method and checking device
CN107196900A
Data synchronization method and device, computer device and readable storage medium
CN109933629A
Blockchain intelligent contract implementation method and device, computer equipment and storage medium
CN110111104A