WO2018076762A1 - Block chain-based transaction verification method and system, electronic device, and medium - Google Patents

Block chain-based transaction verification method and system, electronic device, and medium Download PDF

Info

Publication number
WO2018076762A1
WO2018076762A1 PCT/CN2017/091252 CN2017091252W WO2018076762A1 WO 2018076762 A1 WO2018076762 A1 WO 2018076762A1 CN 2017091252 W CN2017091252 W CN 2017091252W WO 2018076762 A1 WO2018076762 A1 WO 2018076762A1
Authority
WO
WIPO (PCT)
Prior art keywords
transaction
node
blockchain
balance
verification
Prior art date
Application number
PCT/CN2017/091252
Other languages
French (fr)
Chinese (zh)
Inventor
陆陈一帆
黄宇翔
姚晓星
Original Assignee
上海亿账通区块链科技有限公司
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 上海亿账通区块链科技有限公司 filed Critical 上海亿账通区块链科技有限公司
Publication of WO2018076762A1 publication Critical patent/WO2018076762A1/en

Links

Images

Classifications

    • 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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights

Definitions

  • the present invention relates to the field of blockchain technology, and in particular, to a blockchain-based transaction verification method, system, electronic device and medium.
  • blockchain technology Due to its decentralization and unchangeable information, blockchain technology is increasingly favored by companies in the fields of finance and insurance, especially the use of blockchain technology to achieve multi-party trading events (for example, transfer Events such as transactions, payment transactions, etc. are increasingly becoming the focus of attention. For example, when Bank A wants to buy 100 tickets to Bank B, if the transaction is on the blockchain, then all other nodes in the blockchain will The advantage of seeing this transaction is that other participants can participate in confirming the accuracy of the transaction and preventing the tampering of the information.
  • transfer Events such as transactions, payment transactions, etc.
  • the main object of the present invention is to provide a blockchain-based transaction verification method, system, electronic device and medium, which are intended to effectively ensure the security of transaction information and ensure the speed of transaction processing.
  • the first aspect of the present application provides a blockchain-based transaction verification method, the method comprising the following steps:
  • a node on the blockchain processes a transaction with a transaction type and a transaction amount
  • the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on
  • the transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance
  • the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance.
  • the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the counterparties.
  • the encrypted new balance updates its own data
  • each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
  • a second aspect of the present application provides a blockchain-based transaction verification system, the transaction verification system comprising:
  • a broadcast module configured to: when a node on the blockchain processes a transaction with a transaction type and a transaction amount, the first decryption parameter sent by the node through the transaction party of the transaction decrypts each of the transaction parties The original balance, and calculating the original balance of each of the transaction parties based on the transaction type and the transaction amount to obtain a corresponding new balance, and performing the new balance corresponding to each of the transaction parties through the encryption parameter sent by the transaction party Encrypting to obtain a new encrypted balance, and broadcasting the encrypted new balance corresponding to each of the correspondent parties to each node of the blockchain through a smart contract;
  • a combination verification module configured to: when the node of the blockchain receives the encrypted new balance corresponding to each of the broadcast parties, the corresponding smart contract is started to perform the combined verification;
  • an update module configured to: if the smart contract corresponding to each node on the blockchain validates the combined number of the encrypted new balance corresponding to each of the correspondent parties, the smart contract corresponding to each node on the blockchain is based on each The encrypted new balance corresponding to the transaction party updates its own data;
  • a balance checking module configured to call a negative balance verification system preset by the blockchain to start a plurality of threads, and each thread is also responsible for performing a negative balance check on the balance of a single account of each node on the blockchain, if the area is If the negative balance of the individual account balance of each node on the blockchain is passed, it is determined that the transaction is verified.
  • a third aspect of the present application provides an electronic device, including a processing device, a storage device, and a transaction verification system, the transaction verification system being stored in the storage device, including at least one computer readable instruction, the at least one computer readable instruction
  • the processing device executes to:
  • a node on the blockchain processes a transaction with a transaction type and a transaction amount
  • the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on
  • the transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance
  • the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance.
  • the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, the smart contract corresponding to each node on the blockchain is based on each The encrypted new balance corresponding to the transaction party updates its own data;
  • each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
  • a fourth aspect of the present application provides a computer readable storage medium having stored thereon at least one computer readable instruction executable by a processing device to:
  • a node on the blockchain processes a transaction with a transaction type and a transaction amount
  • the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on
  • the transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance
  • the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance.
  • the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the counterparties.
  • the encrypted new balance updates its own data
  • each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
  • the blockchain-based transaction verification method, system, electronic device and medium proposed by the invention when a node on a blockchain processes a transaction with a transaction type and a transaction amount, based on the transaction type and transaction amount
  • the original balance of the transaction party is calculated to obtain a corresponding new balance
  • the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and broadcasted to each of the blockchains.
  • the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification; when the composite verification is passed, the blockchain is passed.
  • the smart contract corresponding to the node updates its own data based on the transaction parameters.
  • the other nodes of the blockchain cannot know the new balance, and the data update is performed only after the verification of the number is passed, thereby preventing multi-party transactions.
  • the balance of each account is leaked, which effectively ensures the security of the transaction information.
  • the balance of the individual accounts of the respective nodes is also sent to the negative balance verification system preset outside the blockchain to perform a negative balance check.
  • the external negative balance verification system to perform the negative balance check, it is possible to further verify whether the multi-party transaction is normal, and to ensure the transaction processing speed on the blockchain without occupying the system overhead.
  • FIG. 1 is a schematic diagram of an application environment of a preferred embodiment of a blockchain-based transaction verification method according to the present invention
  • FIG. 2 is a schematic flow chart of a method for verifying a transaction based on a blockchain according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of functional modules of an embodiment of a transaction verification system according to the present invention.
  • FIG. 1 it is a schematic diagram of an application environment of a preferred embodiment of a blockchain-based transaction verification method according to the present invention.
  • the application environment diagram includes an electronic device 1 and a terminal device 2.
  • the electronic device 1 can perform data interaction with the terminal device 2 through a suitable technology such as a network or a near field communication technology.
  • the terminal device 2 includes, but is not limited to, any electronic product that can interact with a user through a keyboard, a mouse, a remote controller, a touch pad, or a voice control device, for example, a personal computer, a tablet computer, a smart phone, or an individual.
  • Digital Assistant (PDA) game console, Internet Protocol Television (IPTV), smart wearable device, etc.
  • the electronic device 1 is an apparatus capable of automatically performing numerical calculation and/or information processing in accordance with an instruction set or stored in advance.
  • the electronic device 1 may be a computer, a single network server, a server group composed of multiple network servers, or a cloud-based cloud composed of a large number of hosts or network servers, where cloud computing is a type of distributed computing, A super virtual computer consisting of a loosely coupled set of computers.
  • the electronic device 1 includes, but is not limited to, a storage device 11, a processing device 12, and a network interface 13 that are communicably connected to each other through a system bus. It should be noted that FIG. 1 only shows the electronic device 1 having the components 11-13, but it should be understood that not all illustrated components are required to be implemented, and more or fewer components may be implemented instead.
  • the storage device 11 includes a memory and at least one type of readable storage medium.
  • the memory provides a cache for the operation of the electronic device 1;
  • the readable storage medium may be a non-volatile storage medium such as a flash memory, a hard disk, a multimedia card, a card type memory, or the like.
  • the readable storage medium may be an internal storage unit of the electronic device 1, such as a hard disk of the electronic device 1; in other embodiments, the non-volatile storage medium may also be external to the electronic device 1.
  • a storage device such as a plug-in hard disk equipped with an electronic device 1, a smart memory card (SMC), a Secure Digital (SD) card, a flash card, or the like.
  • SMC smart memory card
  • SD Secure Digital
  • the readable storage medium of the storage device 11 is generally used to store an operating system installed in the electronic device 1 and various types of application software, such as program codes of the transaction verification system in an embodiment of the present application. Further, the storage device 11 can also be used to temporarily store various types of data that have been output or are to be output.
  • Processing device 12 may, in some embodiments, include one or more microprocessors, microcontrollers, digital processors, and the like.
  • the processing device 12 is generally used to control the operation of the electronic device 1, for example, to perform control and processing related to data interaction or communication with the terminal device 2.
  • the processing device 12 is configured to run program code or process data stored in the storage device 11, such as running a transaction verification system or the like.
  • the network interface 13 may comprise a wireless network interface or a wired network interface, which is typically used to establish a communication connection between the electronic device 1 and other electronic devices.
  • the network interface 13 is mainly used to connect the electronic device 1 with one or more terminal devices 2, and establish a data transmission channel and a communication connection between the electronic device 1 and one or more terminal devices 2.
  • the transaction verification system includes at least one computer readable instruction stored in the storage device 11, the at least one computer readable instruction being executable by the processing device 12 to implement the blockchain based transaction verification method of various embodiments of the present application.
  • the at least one computer readable instruction can be classified into different logic modules depending on the functions implemented by its various parts.
  • the transaction verification system when executed by the processing device 12, the following operations are performed: first, when a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node passes the transaction party of the transaction. Transmitting the first decryption parameter to decrypt the original balance of each of the transaction parties, and calculating the original balance of each of the transaction parties based on the transaction type and the transaction amount to obtain a corresponding new balance, corresponding to each of the counterparties
  • the new balance is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and the encrypted new balance corresponding to each of the transaction parties is broadcasted to each node of the blockchain through the smart contract; when the blockchain After receiving the encrypted new balance corresponding to each of the parties to the broadcast, the node starts the corresponding smart contract to perform the combined verification; if the smart contract corresponding to each node on the block chain encrypts the corresponding corresponding party If the composite of the new balance is verified, the smart contract corresponding to each node on the blockchain is
  • Encrypt the new balance to update its own data call the negative balance verification system preset by the blockchain to start multiple threads, and each thread is responsible for performing negative balance check on the balance of each account of each node on the blockchain. If the negative balance of the individual account balance of each node on the blockchain passes, it is determined that the transaction is verified, and the related information of the transaction and the transaction result are sent to the terminal device 2 for display to the terminal user.
  • the transaction verification system is stored in the storage device 11 and includes at least one computer readable instruction stored in the storage device 11, the at least one computer readable instruction being executable by the processing device 12 to implement the present application.
  • the at least one computer readable instruction can be classified into different logic modules depending on the functions implemented by its various parts.
  • the invention provides a blockchain based transaction verification method.
  • FIG. 2 is a schematic flowchart of a method for verifying a transaction based on a blockchain according to an embodiment of the present invention.
  • the blockchain based transaction verification method comprises:
  • Step S10 a node on the blockchain is processing a transaction with a transaction type and a transaction amount.
  • the node decrypts the original balance of each of the transaction parties by using the first decryption parameter sent by the transaction party of the transaction, and calculates the original balance of each of the transaction parties based on the transaction type and the transaction amount.
  • the new balance, the new balance corresponding to each of the parties is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and the encrypted new balance corresponding to each of the parties is broadcasted to the block through the smart contract.
  • the node of the chain On each node of the chain.
  • the transaction parameter may include a transaction type and/or a transaction amount. For example, if the A node on the blockchain transfers the amount X to the B node, the A node broadcasts the transaction parameter corresponding to the transaction event to the area.
  • the transaction parameters of the external broadcast include "transaction type: A node roll-out", and the transaction parameters of the external broadcast of the node A also include "transaction amount: X"; meanwhile, the node B also deals the transaction event.
  • the corresponding transaction parameters are broadcast to other nodes on the blockchain.
  • the transaction parameters of the external broadcast include “transaction type: B node transfer”, and the transaction parameters broadcasted by the B node include “transaction amount: X”.
  • the first decryption parameter sent by the node when a node on the blockchain is processing a transaction with a transaction type (for example, A transfer to B) and a transaction amount, the first decryption parameter sent by the node through the transaction party of the transaction. Decrypting the original balance of each of the parties, and calculating the original balance of each of the parties based on the transaction type and the transaction amount to calculate a corresponding new balance, and passing the new balance corresponding to each of the parties Encryption parameters sent by the transaction party (the encryption parameters may be the same as the decryption parameters, or may be different) are encrypted, and the encrypted new balance corresponding to each transaction party is broadcasted to the blockchain through the smart contract. On each node.
  • a transaction type for example, A transfer to B
  • a transaction amount for example, A transfer to B
  • the first decryption parameter sent by the node when a node on the blockchain is processing a transaction with a transaction with a transaction type (for example, A transfer to B) and
  • Step S20 After the node of the blockchain receives the encrypted new balance corresponding to each of the broadcast parties, the corresponding smart contract is started to perform the combined verification.
  • the data on the blockchain is usually stored in two places on the participating nodes: the smart contract (each smart contract has its own current state) and the transaction log on the node (transaction log, used to roll out each In the current state of the data on the smart contract, each blockchain node corresponds to one transaction record and one or more smart contracts.
  • the transaction parameter is transmitted to the node of the blockchain, the transaction parameter is recorded on the transaction record corresponding to the node and simultaneously transmitted to the smart contract corresponding to the transaction parameter to run, and corresponding to the transaction parameter.
  • the code on the smart contract updates the smart contract's own data.
  • the blockchain node if the blockchain node receives the encrypted new balance corresponding to each of the transaction parties broadcasted by other nodes on the blockchain, the blockchain node sends the encrypted new balance to the
  • the smart contract corresponding to the blockchain node performs the composite verification, that is, whether the sum of the balances of all the nodes before the transaction is equal to the sum of the balances of all the nodes after the transaction, to verify whether the transaction is normal.
  • the smart contract corresponding to the blockchain node may perform the composite verification based on the preset homomorphic encryption verification algorithm.
  • homomorphic encryption is a cryptographic technique based on the computational complexity theory of mathematical problems.
  • the homomorphic encrypted data is processed to obtain an output, and the output is decrypted, and the result is the same as the output obtained by processing the unencrypted original data by the same method.
  • it can be verified whether the sum of the balances of all nodes before the transaction is equal to The sum of the balances of all nodes after the transaction to verify that the transaction is normal.
  • the smart contract corresponding to the blockchain node may be combined and verified by an additive homomorphic encryption verification algorithm, assuming that R and S are domains, and the encryption function E:R ⁇ S is an additive homomorphism.
  • the homomorphic encryption verification algorithm is used to perform the composite verification, which can effectively verify whether the transaction using the blockchain technology for multi-party participation is normal, and prevent the balance of the multi-party account from being leaked, thereby effectively ensuring the transaction information. Safety.
  • Step S30 if the smart contract corresponding to each node on the blockchain passes the combined verification of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the parties.
  • the corresponding encrypted new balance updates its own data
  • the smart contract corresponding to the blockchain node passes the verification of the transaction parameter, the transaction is normal, and the smart contract corresponding to each node on the blockchain is based on the encrypted new balance corresponding to each of the transaction parties. Update. For example, if the transaction parameter includes a transaction type of “A node rollout” and the transaction parameter includes a transaction amount of X, the smart contract corresponding to the blockchain node reduces the balance of the A node in the own data by X. .
  • the balance check can effectively prevent the user from changing the balance of a certain sub-account in the form of a sub-account balance by a certain account, thereby avoiding the verification of the combined verification.
  • the bank A can pass 100 bills on the account 001 through the following The form of the sub-account balance is changed to 400: first create a 002 account and put 400 balance, and then save -300 on a new 003 account.
  • the negative balance verification system outside the blockchain that is, using a negative balance verification system that is not running on the blockchain, initiates multiple threads for each account of each node participating in the transaction event.
  • the negative balance check of the balance can prevent the user from defrauding the case of the number verification by creating a negative account number, and can further verify the transaction more accurately.
  • the negative balance verification system is not in the area. Running on the blockchain, but running separately on the outside, will not affect the transaction processing speed on the blockchain, effectively ensuring faster transaction processing speed on the blockchain.
  • the blockchain node receives the transaction parameters broadcast by other nodes on the blockchain. Number, the node on the blockchain calculates the original balance of each of the counterparties based on the transaction type and the transaction amount when processing the transaction with the transaction type and the transaction amount, and obtains the corresponding new balance, and The new balance corresponding to the transaction party is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, which is broadcasted to each node of the blockchain; when the node of the blockchain receives each of the broadcasted After the new balance is encrypted by the counterparty, the corresponding smart contract is started to perform the composite verification; after the composite verification is passed, the smart contract corresponding to the blockchain node updates the self data based on the transaction parameter.
  • the other nodes of the blockchain cannot know the new balance, and the data update is performed only after the verification of the number is passed, thereby preventing multi-party transactions.
  • the balance of each account is leaked, which effectively ensures the security of the transaction information.
  • the balance of the individual accounts of the respective nodes is also sent to the negative balance verification system preset outside the blockchain to perform a negative balance check.
  • the external negative balance verification system to perform the negative balance check, it is possible to further verify whether the multi-party transaction is normal, and to ensure the transaction processing speed on the blockchain without occupying the system overhead.
  • the method may further include:
  • the second decryption parameter Encrypting the second decryption parameter by a node corresponding to the node of the blockchain and the node of the block on the blockchain, and broadcasting the encrypted second decryption parameter to the blockchain through the smart contract On the square node, the second decryption parameter is used to decrypt the encrypted new balance corresponding to each of the transaction parties;
  • the supervisor node on the blockchain reads the updated encrypted new balance corresponding to each of the transaction parties, and decrypts the encrypted second decryption parameter through the secret key, and passes the decrypted second decryption parameter. Decrypting the encrypted new balance corresponding to each of the counterparties, and performing negative balance verification on each of the decrypted new balances.
  • the node when the node broadcasts the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain through the smart contract, it also uses the encrypted corresponding to each of the transaction parties.
  • the second decryption parameter for decrypting the new balance is encrypted by the key corresponding to the node of the supervisor, and the encrypted decryption parameter is broadcasted to the supervisor node on the blockchain through the smart contract.
  • the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, and the smart contract corresponding to each node on the blockchain is based on the encryption corresponding to each of the correspondent parties.
  • the supervised node on the blockchain reads the encrypted new balance corresponding to each of the updated parties, and decrypts the encrypted decryption parameter by using the secret key. Decrypting the encrypted new balance corresponding to each of the transaction parties by the decrypted decryption parameter, and performing negative balance verification on each of the decrypted new balances, further from the blockchain itself to the respective blocks on the blockchain The balance of the account is checked for negative balance to further verify that the transaction is normal.
  • the method may further include:
  • the supervisor node determines the abnormal block chain node corresponding to the account, and the abnormal condition of the account is directed to other sections except the abnormal blockchain node. Click to notify.
  • an account fails to pass the negative balance check, it may be that the user has deceived the number verification by creating a negative account number, and the supervisor node on the blockchain determines the abnormality corresponding to the account.
  • a blockchain node and notifying the abnormality of the account to other nodes in the blockchain except the abnormal blockchain node, to remind other nodes that the account is in an abnormal state, and the account corresponds to an abnormality Trading events involving blockchain nodes may present risks.
  • the method may further include:
  • the supervisor node cancels the transaction right of the abnormal block chain node on the blockchain through the preset blockchain rights management system.
  • the negative balance verification system performs a negative balance check on the balance of a single account, and the account fails to pass the negative balance check, it may be that the user has deceived the combined verification by creating a negative account number. If the transaction event involved in the abnormal blockchain node corresponding to the account may be at risk, the transaction rights of the abnormal blockchain node on the blockchain may be cancelled by a preset blockchain rights management system. In order to prevent the abnormal blockchain node from continuing to participate in the transaction on the blockchain, the transaction security of the nodes other than the abnormal blockchain node in the blockchain is ensured.
  • the method may further include:
  • the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, send a notification that the transaction event combination verification fails to all participating nodes of the transaction event, or to the block All nodes on the chain send a notification that the transaction event failed to verify.
  • the transaction event in which the blockchain node participates may be at risk.
  • the invention further provides a blockchain based transaction verification system.
  • FIG. 3 is a schematic diagram of functional modules of an embodiment of a transaction verification system according to the present invention.
  • the transaction verification system comprises:
  • a broadcast module 01 configured to: when a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts each of the parties by using a first decryption parameter sent by the transaction party of the transaction The original balance, and calculating the original balance of each of the counterparties based on the transaction type and the transaction amount to obtain a corresponding new balance, and encrypting the new balance corresponding to each of the counterparties through the transaction party Encryption is performed to obtain a new encrypted balance, and the encrypted new balance corresponding to each of the counterparties is broadcasted to each node of the blockchain through the smart contract.
  • the transaction parameter may include a transaction type and/or a transaction amount. For example, if the A node on the blockchain transfers the amount X to the B node, the A node broadcasts the transaction parameter corresponding to the transaction event to the area.
  • the transaction parameters of the external broadcast include "transaction type: A node rollout", and the transaction parameters of the A node external broadcast.
  • the number also includes “transaction amount: X”; at the same time, the node B also broadcasts the transaction parameters corresponding to the transaction event to other nodes on the blockchain, and the transaction parameters of the external broadcast include “transaction type: B node transfer The transaction parameters of the B-node external broadcast also include "transaction amount: X”.
  • the first decryption parameter sent by the node when a node on the blockchain is processing a transaction with a transaction type (for example, A transfer to B) and a transaction amount, the first decryption parameter sent by the node through the transaction party of the transaction. Decrypting the original balance of each of the parties, and calculating the original balance of each of the parties based on the transaction type and the transaction amount to calculate a corresponding new balance, and passing the new balance corresponding to each of the parties Encryption parameters sent by the transaction party (the encryption parameters may be the same as the decryption parameters, or may be different) are encrypted, and the encrypted new balance corresponding to each transaction party is broadcasted to the blockchain through the smart contract. On each node.
  • a transaction type for example, A transfer to B
  • a transaction amount for example, A transfer to B
  • the first decryption parameter sent by the node when a node on the blockchain is processing a transaction with a transaction with a transaction type (for example, A transfer to B) and
  • the combination verification module 02 is configured to start a corresponding smart contract for the composite verification when the node of the blockchain receives the encrypted new balance corresponding to each of the broadcast parties.
  • the data on the blockchain is usually stored in two places on the participating nodes: the smart contract (each smart contract has its own current state) and the transaction log on the node (transaction log, used to roll out each In the current state of the data on the smart contract, each blockchain node corresponds to one transaction record and one or more smart contracts.
  • the transaction parameter is transmitted to the node of the blockchain, the transaction parameter is recorded on the transaction record corresponding to the node and simultaneously transmitted to the smart contract corresponding to the transaction parameter to run, and corresponding to the transaction parameter.
  • the code on the smart contract updates the smart contract's own data.
  • the blockchain node if the blockchain node receives the encrypted new balance corresponding to each of the transaction parties broadcasted by other nodes on the blockchain, the blockchain node sends the encrypted new balance to the
  • the smart contract corresponding to the blockchain node performs the composite verification, that is, whether the sum of the balances of all the nodes before the transaction is equal to the sum of the balances of all the nodes after the transaction, to verify whether the transaction is normal.
  • the smart contract corresponding to the blockchain node may perform the composite verification based on the preset homomorphic encryption verification algorithm.
  • homomorphic encryption is a cryptographic technique based on the computational complexity theory of mathematical problems.
  • the homomorphic encrypted data is processed to obtain an output, and the output is decrypted, and the result is the same as the output obtained by processing the unencrypted original data by the same method.
  • it based on the preset homomorphic encryption verification algorithm, it can be verified whether the sum of the balances of all the nodes before the transaction is equal to the sum of the balances of all the nodes after the transaction, thereby verifying whether the transaction is normal.
  • the homomorphic encryption verification algorithm which not only verifies the account number, but also ensures that the balance x and y of the account are not leaked.
  • the homomorphic encryption verification algorithm is used to perform the composite verification, which can effectively verify whether the transaction using the blockchain technology for multi-party participation is normal. It can also prevent the leakage of the balance of multiple accounts, and effectively ensure the security of transaction information.
  • the update module 03 is configured to: if the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, the smart contract corresponding to each node on the blockchain is based on each The encrypted new balance corresponding to the transaction party updates its own data.
  • the smart contract corresponding to the blockchain node passes the verification of the transaction parameter, the transaction is normal, and the smart contract corresponding to each node on the blockchain is based on the encrypted new balance corresponding to each of the transaction parties. Update. For example, if the transaction parameter includes a transaction type of “A node rollout” and the transaction parameter includes a transaction amount of X, the smart contract corresponding to the blockchain node reduces the balance of the A node in the own data by X. .
  • the balance check module 04 is configured to invoke a preset negative balance verification system external to the blockchain to start multiple threads, and each thread is also responsible for performing a negative balance check on the balance of a single account of each node on the blockchain, if If the negative balance of the individual account balance of each node on the blockchain is passed, it is determined that the transaction is verified.
  • the balance check can effectively prevent the user from changing the balance of a certain sub-account in the form of a sub-account balance by a certain account, thereby avoiding the verification of the combined verification.
  • the bank A can pass 100 bills on the account 001 through the following The form of the sub-account balance is changed to 400: first create a 002 account and put 400 balance, and then save -300 on a new 003 account.
  • the negative balance verification system outside the blockchain that is, using a negative balance verification system that is not running on the blockchain, initiates multiple threads for each account of each node participating in the transaction event.
  • the negative balance check of the balance can prevent the user from defrauding the case of the number verification by creating a negative account number, and can further verify the transaction more accurately.
  • the negative balance verification system is not in the area. Running on the blockchain, but running separately on the outside, will not affect the transaction processing speed on the blockchain, effectively ensuring faster transaction processing speed on the blockchain.
  • the node on the blockchain processes the transaction with the transaction type and the transaction amount, based on the transaction type and Transaction amount is calculated for each original party's original balance to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and broadcasted to the On each node of the blockchain; when the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification; The smart contract corresponding to the blockchain node updates its own data based on the transaction parameters.
  • the other nodes of the blockchain cannot know the new balance, and the data update is performed only after the verification of the number is passed, thereby preventing multi-party transactions.
  • the balance of each account is leaked, which effectively ensures the security of the transaction information.
  • the balance of the individual accounts of each node is also sent to the office.
  • a negative balance verification system preset outside the blockchain is used to perform a negative balance check. By using the external negative balance verification system to perform the negative balance check, it is possible to further verify whether the multi-party transaction is normal, and to ensure the transaction processing speed on the blockchain without occupying the system overhead.
  • the foregoing broadcast module 01 can also be used to:
  • the second decryption parameter Encrypting the second decryption parameter by a node corresponding to the node of the blockchain and the node of the block on the blockchain, and broadcasting the encrypted second decryption parameter to the blockchain through the smart contract On the square node, the second decryption parameter is used to decrypt the encrypted new balance corresponding to each of the transaction parties;
  • the above balance check module 04 can also be used to:
  • the node when the node broadcasts the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain through the smart contract, it also uses the encrypted corresponding to each of the transaction parties.
  • the second decryption parameter for decrypting the new balance is encrypted by the key corresponding to the node of the supervisor, and the encrypted decryption parameter is broadcasted to the supervisor node on the blockchain through the smart contract.
  • the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, and the smart contract corresponding to each node on the blockchain is based on the encryption corresponding to each of the correspondent parties.
  • the supervised node on the blockchain reads the encrypted new balance corresponding to each of the updated parties, and decrypts the encrypted decryption parameter by using the secret key. Decrypting the encrypted new balance corresponding to each of the transaction parties by the decrypted decryption parameter, and performing negative balance verification on each of the decrypted new balances, further from the blockchain itself to the respective blocks on the blockchain The balance of the account is checked for negative balance to further verify that the transaction is normal.
  • the above balance checking module 04 can also be used to:
  • the supervisor node determines the abnormal block chain node corresponding to the account, and notifies the abnormal status of the account to other nodes except the abnormal block chain node.
  • an account fails to pass the negative balance check, it may be that the user has deceived the number verification by creating a negative account number, and the supervisor node on the blockchain determines the abnormality corresponding to the account.
  • a blockchain node and notifying the abnormality of the account to other nodes in the blockchain except the abnormal blockchain node, to remind other nodes that the account is in an abnormal state, and the account corresponds to an abnormality Trading events involving blockchain nodes may present risks.
  • the above balance checking module 04 can also be used to:
  • the supervisor node passes the preset blockchain.
  • the rights management system cancels the transaction rights of the abnormal blockchain node on the blockchain.
  • the negative balance verification system performs a negative balance check on the balance of a single account, and the account fails to pass the negative balance check, it may be that the user has deceived the combined verification by creating a negative account number. If the transaction event involved in the abnormal blockchain node corresponding to the account may be at risk, the transaction rights of the abnormal blockchain node on the blockchain may be cancelled by a preset blockchain rights management system. In order to prevent the abnormal blockchain node from continuing to participate in the transaction on the blockchain, the transaction security of the nodes other than the abnormal blockchain node in the blockchain is ensured.
  • the above-mentioned composite verification module 02 can also be used to:
  • the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, send a notification that the transaction event combination verification fails to all participating nodes of the transaction event, or to the block All nodes on the chain send a notification that the transaction event failed to verify.
  • the transaction event in which the blockchain node participates may be at risk.
  • the present invention also provides a computer readable storage medium storing a transaction verification system, the transaction verification system being executable by at least one processing device to cause the at least one processing device to perform, for example
  • a transaction verification system being executable by at least one processing device to cause the at least one processing device to perform, for example
  • the steps of the block chain-based transaction verification method in the above embodiment, the specific implementation processes of the steps S10, S20, and S30 of the block chain-based transaction verification method are as described above, and are not described herein again.
  • the foregoing embodiment method can be implemented by means of software plus a necessary general hardware platform, and can also be implemented by hardware, but in many cases, the former is A better implementation.
  • the technical solution of the present invention which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk,
  • the optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, an air conditioner, or a network device, etc.) to perform the methods described in various embodiments of the present invention.

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

A block chain-based transaction verification method and system, an electronic device, and a medium. The method comprises: when a node on a block chain processes a transaction, decrypt an original balance of each transaction party, calculate the original balance of each transaction party to obtain a new balance, encrypt the new balance of each transaction party to obtain encrypted new balances, and broadcast each encrypted new balance to each node of the block chain by means of an intelligent contract (S10); when the node of the block chain receives the broadcasted encrypted new balance corresponding to each transaction party, start corresponding intelligent contract to perform composite number verification (S20); if the composite number verification succeeds, the intelligent contract corresponding to each node on the block chain updates own data according to the encrypted new balance corresponding to each transaction party (S30); invoke a preset external negative balance verification system of the block chain to start a plurality of threads, each thread being responsible for performing negative balance verification on the balance of a single account of each node on the block chain (S40). According to the method, whether transaction is normal or not can be verified, and the transaction processing speed on the block chain can also be guaranteed in the case that a system overhead is not occupied.

Description

基于区块链的交易验证方法、系统、电子装置及介质Block chain based transaction verification method, system, electronic device and medium
优先权申明Priority claim
本申请基于巴黎公约申明享有2016年10月27日递交的申请号为CN201610959872.X、名称为“基于区块链的交易验证方法及系统”中国专利申请的优先权,该中国专利申请的整体内容以参考的方式结合在本申请中。This application is based on the Paris Convention on the priority of the Chinese patent application entitled "Blockchain-Based Transaction Verification Method and System", filed on October 27, 2016, with the application number CN201610959872.X, the overall content of the Chinese patent application. It is incorporated herein by reference.
技术领域Technical field
本发明涉及区块链技术领域,尤其涉及一种基于区块链的交易验证方法、系统、电子装置及介质。The present invention relates to the field of blockchain technology, and in particular, to a blockchain-based transaction verification method, system, electronic device and medium.
背景技术Background technique
区块链技术因其具备的去中心化、信息不可篡改性等特点,越来越受到金融、保险等领域的公司的青睐,尤其是运用区块链技术实现多方参与的交易事件(例如,转账交易、支付交易等事件)越来越成为人们关注的焦点,例如,当银行A要买100票据给银行B,如果这笔交易在区块链上进行,那么所有其他在区块链上的节点都会看到这笔交易,好处是其他参与方可以一起参与确认交易准确性,防止信息的篡改。然而,由于在去中心化的区块链系统当中没有绝对权威机构节点,因此对每笔交易进行集体验证是必要的一步,这使得交易参与方的交易毫无秘密可言,一个机构的账户也有可能被其他节点上的机构跟踪,从而带来信息泄露的风险。Due to its decentralization and unchangeable information, blockchain technology is increasingly favored by companies in the fields of finance and insurance, especially the use of blockchain technology to achieve multi-party trading events (for example, transfer Events such as transactions, payment transactions, etc. are increasingly becoming the focus of attention. For example, when Bank A wants to buy 100 tickets to Bank B, if the transaction is on the blockchain, then all other nodes in the blockchain will The advantage of seeing this transaction is that other participants can participate in confirming the accuracy of the transaction and preventing the tampering of the information. However, since there is no absolute authority node in the decentralized blockchain system, collective verification of each transaction is a necessary step, which makes the transaction of the transaction participant without secret, and the account of an institution also has It may be tracked by an organization on another node, posing a risk of information disclosure.
虽然,目前业界采用了一些解决信息泄露的区块链交易解决方案,然而现有的解决方案要么是信息泄露解决的不够彻底,要么是计算效率低下,且系统运行开销巨大,限制区块链技术在交易场景中的运用。Although the industry has adopted some blockchain transaction solutions to solve information leakage, the existing solutions are either inadequately solved by information leakage, or computationally inefficient, and the system runs overhead, limiting blockchain technology. Use in trading scenarios.
综上所述,如何在既能有效保证交易信息的安全,又能有效保证交易处理的速度且降低系统开销的情况下,将区块链技术有效运用在交易场景下,已经成为一种亟待解决的技术问题。In summary, how to effectively use the blockchain technology in trading scenarios has become an urgent solution in the case of not only ensuring the security of transaction information, but also ensuring the speed of transaction processing and reducing system overhead. Technical problem.
发明内容Summary of the invention
本发明的主要目的在于提供一种基于区块链的交易验证方法、系统、电子装置及介质,旨在有效保证交易信息的安全,且能保证交易处理的速度。The main object of the present invention is to provide a blockchain-based transaction verification method, system, electronic device and medium, which are intended to effectively ensure the security of transaction information and ensure the speed of transaction processing.
本申请第一方面提供一种基于区块链的交易验证方法,所述方法包括以下步骤:The first aspect of the present application provides a blockchain-based transaction verification method, the method comprising the following steps:
a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上; A1. When a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on The transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance. And broadcasting, by the smart contract, the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain;
a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;A2. After the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification;
a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;A3. If the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the counterparties. The encrypted new balance updates its own data;
a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。A4, calling the negative balance verification system preset by the blockchain to start multiple threads, each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
本申请第二方面提供一种基于区块链的交易验证系统,所述交易验证系统包括:A second aspect of the present application provides a blockchain-based transaction verification system, the transaction verification system comprising:
广播模块,用于当区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,由该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;a broadcast module, configured to: when a node on the blockchain processes a transaction with a transaction type and a transaction amount, the first decryption parameter sent by the node through the transaction party of the transaction decrypts each of the transaction parties The original balance, and calculating the original balance of each of the transaction parties based on the transaction type and the transaction amount to obtain a corresponding new balance, and performing the new balance corresponding to each of the transaction parties through the encryption parameter sent by the transaction party Encrypting to obtain a new encrypted balance, and broadcasting the encrypted new balance corresponding to each of the correspondent parties to each node of the blockchain through a smart contract;
合数验证模块,用于当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;a combination verification module, configured to: when the node of the blockchain receives the encrypted new balance corresponding to each of the broadcast parties, the corresponding smart contract is started to perform the combined verification;
更新模块,用于若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则由该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;And an update module, configured to: if the smart contract corresponding to each node on the blockchain validates the combined number of the encrypted new balance corresponding to each of the correspondent parties, the smart contract corresponding to each node on the blockchain is based on each The encrypted new balance corresponding to the transaction party updates its own data;
余额检验模块,用于调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。a balance checking module, configured to call a negative balance verification system preset by the blockchain to start a plurality of threads, and each thread is also responsible for performing a negative balance check on the balance of a single account of each node on the blockchain, if the area is If the negative balance of the individual account balance of each node on the blockchain is passed, it is determined that the transaction is verified.
本申请第三方面提供一种电子装置,包括处理设备、存储设备及交易验证系统,该交易验证系统存储于该存储设备中,包括至少一个计算机可读指令,该至少一个计算机可读指令可被所述处理设备执行,以实现以下操作:A third aspect of the present application provides an electronic device, including a processing device, a storage device, and a transaction verification system, the transaction verification system being stored in the storage device, including at least one computer readable instruction, the at least one computer readable instruction The processing device executes to:
a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;A1. When a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on The transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance. And broadcasting, by the smart contract, the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain;
a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;A2. After the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification;
a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个 所述交易方对应的加密新余额对自身数据进行更新;A3. If the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, the smart contract corresponding to each node on the blockchain is based on each The encrypted new balance corresponding to the transaction party updates its own data;
a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。A4, calling the negative balance verification system preset by the blockchain to start multiple threads, each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
本申请第四方面提供一种计算机可读存储介质,其上存储有至少一个可被处理设备执行以实现以下操作的计算机可读指令:A fourth aspect of the present application provides a computer readable storage medium having stored thereon at least one computer readable instruction executable by a processing device to:
a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;A1. When a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on The transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance. And broadcasting, by the smart contract, the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain;
a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;A2. After the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification;
a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;A3. If the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the counterparties. The encrypted new balance updates its own data;
a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。A4, calling the negative balance verification system preset by the blockchain to start multiple threads, each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
本发明提出的基于区块链的交易验证方法、系统、电子装置及介质,区块链上的节点在处理带有交易类型和交易金额的交易时,基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,并将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;在合数验证通过,才由所述区块链节点对应的智能合约基于所述交易参数对自身数据进行更新。由于广播的各个所述交易方对应的新余额均进行了加密处理,该区块链的其他节点无法获知该新余额,且只有在合数验证通过后,才进行数据更新,能防止多方交易中各账户的余额泄露,有效地保证了交易信息的安全。此外,还将各个节点的单个账户的余额发给所述区块链外部预设的负数余额验证系统来进行负数余额检验。由于利用外部的负数余额验证系统来进行负数余额检验,既能进一步验证多方交易是否正常,又能在不占用系统开销的情况下保证区块链上的交易处理速度。The blockchain-based transaction verification method, system, electronic device and medium proposed by the invention, when a node on a blockchain processes a transaction with a transaction type and a transaction amount, based on the transaction type and transaction amount The original balance of the transaction party is calculated to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and broadcasted to each of the blockchains. On the node; when the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification; when the composite verification is passed, the blockchain is passed. The smart contract corresponding to the node updates its own data based on the transaction parameters. Since the new balance corresponding to each of the parties to the broadcast is encrypted, the other nodes of the blockchain cannot know the new balance, and the data update is performed only after the verification of the number is passed, thereby preventing multi-party transactions. The balance of each account is leaked, which effectively ensures the security of the transaction information. In addition, the balance of the individual accounts of the respective nodes is also sent to the negative balance verification system preset outside the blockchain to perform a negative balance check. By using the external negative balance verification system to perform the negative balance check, it is possible to further verify whether the multi-party transaction is normal, and to ensure the transaction processing speed on the blockchain without occupying the system overhead.
附图说明 DRAWINGS
图1为本发明基于区块链的交易验证方法的较佳实施例的应用环境示意图;1 is a schematic diagram of an application environment of a preferred embodiment of a blockchain-based transaction verification method according to the present invention;
图2为本发明基于区块链的交易验证方法一实施例的流程示意图;2 is a schematic flow chart of a method for verifying a transaction based on a blockchain according to an embodiment of the present invention;
图3为本发明交易验证系统一实施例的功能模块示意图。FIG. 3 is a schematic diagram of functional modules of an embodiment of a transaction verification system according to the present invention.
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。The implementation, functional features, and advantages of the present invention will be further described in conjunction with the embodiments.
具体实施方式detailed description
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。The present invention will be further described in detail below with reference to the accompanying drawings and embodiments, in order to make the present invention. It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
参阅图1所示,是本发明实现基于区块链的交易验证方法的较佳实施例的应用环境示意图。应用环境示意图包括电子装置1及终端设备2。电子装置1可以通过网络、近场通信技术等适合的技术与终端设备2进行数据交互。Referring to FIG. 1 , it is a schematic diagram of an application environment of a preferred embodiment of a blockchain-based transaction verification method according to the present invention. The application environment diagram includes an electronic device 1 and a terminal device 2. The electronic device 1 can perform data interaction with the terminal device 2 through a suitable technology such as a network or a near field communication technology.
终端设备2包括,但不限于,任何一种可与用户通过键盘、鼠标、遥控器、触摸板或者声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA),游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。The terminal device 2 includes, but is not limited to, any electronic product that can interact with a user through a keyboard, a mouse, a remote controller, a touch pad, or a voice control device, for example, a personal computer, a tablet computer, a smart phone, or an individual. Digital Assistant (PDA), game console, Internet Protocol Television (IPTV), smart wearable device, etc.
电子装置1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。电子装置1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。The electronic device 1 is an apparatus capable of automatically performing numerical calculation and/or information processing in accordance with an instruction set or stored in advance. The electronic device 1 may be a computer, a single network server, a server group composed of multiple network servers, or a cloud-based cloud composed of a large number of hosts or network servers, where cloud computing is a type of distributed computing, A super virtual computer consisting of a loosely coupled set of computers.
在本实施例中,电子装置1包括,但不仅限于,可通过系统总线相互通信连接的存储设备11、处理设备12、及网络接口13。需要指出的是,图1仅示出了具有组件11-13的电子装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。In the present embodiment, the electronic device 1 includes, but is not limited to, a storage device 11, a processing device 12, and a network interface 13 that are communicably connected to each other through a system bus. It should be noted that FIG. 1 only shows the electronic device 1 having the components 11-13, but it should be understood that not all illustrated components are required to be implemented, and more or fewer components may be implemented instead.
其中,存储设备11包括内存及至少一种类型的可读存储介质。内存为电子装置1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子装置1的内部存储单元,例如该电子装置1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子装置1的外部存储设备,例如电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储设备11的可读存储介质通常用于存储安装于电子装置1的操作系统和各类应用软件,例如本申请一实施例中的交易验证系统的程序代码等。此外,存储设备11还可以用于暂时地存储已经输出或者将要输出的各类数据。 The storage device 11 includes a memory and at least one type of readable storage medium. The memory provides a cache for the operation of the electronic device 1; the readable storage medium may be a non-volatile storage medium such as a flash memory, a hard disk, a multimedia card, a card type memory, or the like. In some embodiments, the readable storage medium may be an internal storage unit of the electronic device 1, such as a hard disk of the electronic device 1; in other embodiments, the non-volatile storage medium may also be external to the electronic device 1. A storage device, such as a plug-in hard disk equipped with an electronic device 1, a smart memory card (SMC), a Secure Digital (SD) card, a flash card, or the like. In this embodiment, the readable storage medium of the storage device 11 is generally used to store an operating system installed in the electronic device 1 and various types of application software, such as program codes of the transaction verification system in an embodiment of the present application. Further, the storage device 11 can also be used to temporarily store various types of data that have been output or are to be output.
处理设备12在一些实施例中可以包括一个或者多个微处理器、微控制器、数字处理器等。该处理设备12通常用于控制电子装置1的运行,例如执行与终端设备2进行数据交互或者通信相关的控制和处理等。在本实施例中,处理设备12用于运行存储设备11中存储的程序代码或者处理数据,例如运行交易验证系统等。Processing device 12 may, in some embodiments, include one or more microprocessors, microcontrollers, digital processors, and the like. The processing device 12 is generally used to control the operation of the electronic device 1, for example, to perform control and processing related to data interaction or communication with the terminal device 2. In the present embodiment, the processing device 12 is configured to run program code or process data stored in the storage device 11, such as running a transaction verification system or the like.
网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在电子装置1与其他电子设备之间建立通信连接。本实施例中,网络接口13主要用于将电子装置1与一个或多个终端设备2相连,在电子装置1与一个或多个终端设备2之间建立数据传输通道和通信连接。The network interface 13 may comprise a wireless network interface or a wired network interface, which is typically used to establish a communication connection between the electronic device 1 and other electronic devices. In this embodiment, the network interface 13 is mainly used to connect the electronic device 1 with one or more terminal devices 2, and establish a data transmission channel and a communication connection between the electronic device 1 and one or more terminal devices 2.
交易验证系统包括至少一个存储在存储设备11中的计算机可读指令,该至少一个计算机可读指令可被处理设备12执行,以实现本申请各实施例的基于区块链的交易验证方法。如后续所述,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。The transaction verification system includes at least one computer readable instruction stored in the storage device 11, the at least one computer readable instruction being executable by the processing device 12 to implement the blockchain based transaction verification method of various embodiments of the present application. As described later, the at least one computer readable instruction can be classified into different logic modules depending on the functions implemented by its various parts.
在一实施例中,交易验证系统被处理设备12执行时,实现以下操作:首先区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过,并将交易的相关信息及交易结果发送至终端设备2以显示给终端用户。In an embodiment, when the transaction verification system is executed by the processing device 12, the following operations are performed: first, when a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node passes the transaction party of the transaction. Transmitting the first decryption parameter to decrypt the original balance of each of the transaction parties, and calculating the original balance of each of the transaction parties based on the transaction type and the transaction amount to obtain a corresponding new balance, corresponding to each of the counterparties The new balance is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and the encrypted new balance corresponding to each of the transaction parties is broadcasted to each node of the blockchain through the smart contract; when the blockchain After receiving the encrypted new balance corresponding to each of the parties to the broadcast, the node starts the corresponding smart contract to perform the combined verification; if the smart contract corresponding to each node on the block chain encrypts the corresponding corresponding party If the composite of the new balance is verified, the smart contract corresponding to each node on the blockchain is based on each of the counterparties. Encrypt the new balance to update its own data; call the negative balance verification system preset by the blockchain to start multiple threads, and each thread is responsible for performing negative balance check on the balance of each account of each node on the blockchain. If the negative balance of the individual account balance of each node on the blockchain passes, it is determined that the transaction is verified, and the related information of the transaction and the transaction result are sent to the terminal device 2 for display to the terminal user.
在一实施例中,交易验证系统存储在存储设备11中,包括至少一个存储在存储设备11中的计算机可读指令,该至少一个计算机可读指令可被处理设备12执行,以实现本申请各实施例的基于区块链的交易验证方法。如后续所述,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。In an embodiment, the transaction verification system is stored in the storage device 11 and includes at least one computer readable instruction stored in the storage device 11, the at least one computer readable instruction being executable by the processing device 12 to implement the present application. A blockchain based transaction verification method of an embodiment. As described later, the at least one computer readable instruction can be classified into different logic modules depending on the functions implemented by its various parts.
本发明提供一种基于区块链的交易验证方法。The invention provides a blockchain based transaction verification method.
参照图2,图2为本发明基于区块链的交易验证方法一实施例的流程示意图。Referring to FIG. 2, FIG. 2 is a schematic flowchart of a method for verifying a transaction based on a blockchain according to an embodiment of the present invention.
在一实施例中,该基于区块链的交易验证方法包括:In an embodiment, the blockchain based transaction verification method comprises:
步骤S10,区块链上的一个节点在处理一个带有交易类型和交易金额的交 易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上。Step S10, a node on the blockchain is processing a transaction with a transaction type and a transaction amount. In an easy time, the node decrypts the original balance of each of the transaction parties by using the first decryption parameter sent by the transaction party of the transaction, and calculates the original balance of each of the transaction parties based on the transaction type and the transaction amount. The new balance, the new balance corresponding to each of the parties is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and the encrypted new balance corresponding to each of the parties is broadcasted to the block through the smart contract. On each node of the chain.
当区块链上的一个节点在完成一个交易事件后,会将该交易事件对应的交易参数广播给该区块链上的其他节点。其中,所述交易参数可包括交易类型和/或交易金额,例如,若区块链上的A节点向B节点转账支付了金额X,则A节点将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:A节点转出”,A节点对外广播的交易参数中还包括“交易金额:X”;同时,B节点也将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:B节点转入”,B节点对外广播的交易参数中还包括“交易金额:X”。When a node on the blockchain completes a transaction event, it broadcasts the transaction parameters corresponding to the transaction event to other nodes on the blockchain. The transaction parameter may include a transaction type and/or a transaction amount. For example, if the A node on the blockchain transfers the amount X to the B node, the A node broadcasts the transaction parameter corresponding to the transaction event to the area. For other nodes on the blockchain, the transaction parameters of the external broadcast include "transaction type: A node roll-out", and the transaction parameters of the external broadcast of the node A also include "transaction amount: X"; meanwhile, the node B also deals the transaction event. The corresponding transaction parameters are broadcast to other nodes on the blockchain. The transaction parameters of the external broadcast include “transaction type: B node transfer”, and the transaction parameters broadcasted by the B node include “transaction amount: X”.
本实施例中,当区块链上的一个节点在处理一个带有交易类型(例如,A转账给B)和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算以算出对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数(所述加密参数与所述解密参数可以相同,也可以不同)进行加密,通过智能合约将各个所述交易方对应的加密后的新余额广播到该区块链的各个节点上。In this embodiment, when a node on the blockchain is processing a transaction with a transaction type (for example, A transfer to B) and a transaction amount, the first decryption parameter sent by the node through the transaction party of the transaction. Decrypting the original balance of each of the parties, and calculating the original balance of each of the parties based on the transaction type and the transaction amount to calculate a corresponding new balance, and passing the new balance corresponding to each of the parties Encryption parameters sent by the transaction party (the encryption parameters may be the same as the decryption parameters, or may be different) are encrypted, and the encrypted new balance corresponding to each transaction party is broadcasted to the blockchain through the smart contract. On each node.
步骤S20,当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证。Step S20: After the node of the blockchain receives the encrypted new balance corresponding to each of the broadcast parties, the corresponding smart contract is started to perform the combined verification.
区块链上的数据通常会被存放在参与节点上的两个地方:智能合约(每个智能合约存有自己的当前状况)中和节点上的事务记录(transaction log,用来滚出每个智能合约上数据当前的状况)中,每个区块链节点对应一个事务记录和一个或多个智能合约。当一个交易参数传到区块链的节点上时,这个交易参数会被记录到该节点对应的事务记录上并同时传给与该交易参数对应的智能合约去运行,并由该交易参数对应的智能合约上的代码对智能合约的自身数据进行更新。The data on the blockchain is usually stored in two places on the participating nodes: the smart contract (each smart contract has its own current state) and the transaction log on the node (transaction log, used to roll out each In the current state of the data on the smart contract, each blockchain node corresponds to one transaction record and one or more smart contracts. When a transaction parameter is transmitted to the node of the blockchain, the transaction parameter is recorded on the transaction record corresponding to the node and simultaneously transmitted to the smart contract corresponding to the transaction parameter to run, and corresponding to the transaction parameter. The code on the smart contract updates the smart contract's own data.
本实施例中,若有区块链节点接收到该区块链上的其他节点广播来的各个所述交易方对应的加密新余额,则该区块链节点将所述加密新余额发给该区块链节点对应的智能合约进行合数验证,即验证交易前的所有节点的余额之和是否等于交易之后的所有节点的余额之和,以验证该交易是否正常。本实施例中,该区块链节点对应的智能合约可基于预设的同态加密验证算法来进行合数验证。In this embodiment, if the blockchain node receives the encrypted new balance corresponding to each of the transaction parties broadcasted by other nodes on the blockchain, the blockchain node sends the encrypted new balance to the The smart contract corresponding to the blockchain node performs the composite verification, that is, whether the sum of the balances of all the nodes before the transaction is equal to the sum of the balances of all the nodes after the transaction, to verify whether the transaction is normal. In this embodiment, the smart contract corresponding to the blockchain node may perform the composite verification based on the preset homomorphic encryption verification algorithm.
其中,同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。本实施例中,基于预设的同态加密验证算法可验证交易前的所有节点的余额之和是否等于 交易之后的所有节点的余额之和,从而验证该交易是否正常。例如,在一种实施方式中,该区块链节点对应的智能合约可以采用加法同态加密验证算法进行合数验证,假设R和S是域,称加密函数E:R→S为加法同态,如果存在有效算法⊕,使得E(x+y)=E(x)⊕E(y)或者x+y=D(E(x)⊕E(y))成立,该有效算法⊕即为加法同态加密验证算法,这个算法不仅能验证账户合数,同时,还能确保不泄漏账户的余额x和y。Among them, homomorphic encryption is a cryptographic technique based on the computational complexity theory of mathematical problems. The homomorphic encrypted data is processed to obtain an output, and the output is decrypted, and the result is the same as the output obtained by processing the unencrypted original data by the same method. In this embodiment, based on the preset homomorphic encryption verification algorithm, it can be verified whether the sum of the balances of all nodes before the transaction is equal to The sum of the balances of all nodes after the transaction to verify that the transaction is normal. For example, in an implementation manner, the smart contract corresponding to the blockchain node may be combined and verified by an additive homomorphic encryption verification algorithm, assuming that R and S are domains, and the encryption function E:R→S is an additive homomorphism. If there is a valid algorithm ⊕ such that E(x+y)=E(x)⊕E(y) or x+y=D(E(x)⊕E(y)) holds, the effective algorithm is additive The homomorphic encryption verification algorithm, which not only verifies the account number, but also ensures that the balance x and y of the account are not leaked.
当运用区块链技术进行多方参与的交易事件例如转账交易、支付交易等事件时,在去中心化的区块链系统当中,由于没有绝对权威机构节点,因此对每笔交易都必须进行集体验证。本实施例中采用同态加密验证算法来进行合数验证,既能有效地验证运用区块链技术进行多方参与的交易是否正常,又能防止多方账户的余额泄露,有效地保证了交易信息的安全。When using blockchain technology for multi-participating trading events such as transfer transactions, payment transactions, etc., in the decentralized blockchain system, since there is no absolute authority node, collective verification must be performed for each transaction. . In this embodiment, the homomorphic encryption verification algorithm is used to perform the composite verification, which can effectively verify whether the transaction using the blockchain technology for multi-party participation is normal, and prevent the balance of the multi-party account from being leaked, thereby effectively ensuring the transaction information. Safety.
步骤S30,若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;Step S30, if the smart contract corresponding to each node on the blockchain passes the combined verification of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the parties. The corresponding encrypted new balance updates its own data;
若该区块链节点对应的智能合约对所述交易参数的合数验证通过,则说明该交易正常,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新。例如,若所述交易参数包括的交易类型是“A节点转出”,所述交易参数包括的交易金额是X,则该区块链节点对应的智能合约将自身数据中的A节点余额减少X。If the smart contract corresponding to the blockchain node passes the verification of the transaction parameter, the transaction is normal, and the smart contract corresponding to each node on the blockchain is based on the encrypted new balance corresponding to each of the transaction parties. Update. For example, if the transaction parameter includes a transaction type of “A node rollout” and the transaction parameter includes a transaction amount of X, the smart contract corresponding to the blockchain node reduces the balance of the A node in the own data by X. .
S40、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。S40. Calling the negative balance verification system preset by the blockchain to start multiple threads, and each thread is also responsible for performing a negative balance check on the balance of each account of each node on the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
因为每个节点的余额都是独立数组,所以可以对多个节点余额进行多线程检验,同时,因为同一个节点参与每次交易的账户、交易类型和金额是被记载在案的,所以通过虚假余额检验可以有效防止用户在某个节点通过分账户分摊余额的形式改变某个分账户的余额从而规避所述合数验证的校验,例如,银行A可把账号001上的100张票据通过以下分账户分摊余额的形式变成400张:先创建一个002账号并放上400余额,然后再在一个新的003账号上存-300。Because the balance of each node is a separate array, multi-thread check can be performed on multiple node balances. At the same time, because the account, transaction type and amount of the same node participating in each transaction are recorded, it is false. The balance check can effectively prevent the user from changing the balance of a certain sub-account in the form of a sub-account balance by a certain account, thereby avoiding the verification of the combined verification. For example, the bank A can pass 100 bills on the account 001 through the following The form of the sub-account balance is changed to 400: first create a 002 account and put 400 balance, and then save -300 on a new 003 account.
本实施例中通过在所述区块链外部的负数余额验证系统,即利用不在所述区块链上运行的负数余额验证系统来启动多个线程对参与该交易事件的各个节点的各个账户的余额进行负数余额检验,能避免用户通过制造存有负数的账号的方式来骗过合数验证的情况发生,能进一步地更加准确的验证交易是否正常,而且,负数余额验证系统并不在所述区块链上运行,而是在外部单独运行,不会对区块链上的交易处理速度造成影响,有效地保证了区块链上较快的交易处理速度。In this embodiment, the negative balance verification system outside the blockchain, that is, using a negative balance verification system that is not running on the blockchain, initiates multiple threads for each account of each node participating in the transaction event. The negative balance check of the balance can prevent the user from defrauding the case of the number verification by creating a negative account number, and can further verify the transaction more accurately. Moreover, the negative balance verification system is not in the area. Running on the blockchain, but running separately on the outside, will not affect the transaction processing speed on the blockchain, effectively ensuring faster transaction processing speed on the blockchain.
本实施例中若有区块链节点接收到区块链上的其他节点广播来的交易参 数,区块链上的节点在处理带有交易类型和交易金额的交易时,基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,并将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;在合数验证通过,才由所述区块链节点对应的智能合约基于所述交易参数对自身数据进行更新。由于广播的各个所述交易方对应的新余额均进行了加密处理,该区块链的其他节点无法获知该新余额,且只有在合数验证通过后,才进行数据更新,能防止多方交易中各账户的余额泄露,有效地保证了交易信息的安全。此外,还将各个节点的单个账户的余额发给所述区块链外部预设的负数余额验证系统来进行负数余额检验。由于利用外部的负数余额验证系统来进行负数余额检验,既能进一步验证多方交易是否正常,又能在不占用系统开销的情况下保证区块链上的交易处理速度。In this embodiment, if the blockchain node receives the transaction parameters broadcast by other nodes on the blockchain. Number, the node on the blockchain calculates the original balance of each of the counterparties based on the transaction type and the transaction amount when processing the transaction with the transaction type and the transaction amount, and obtains the corresponding new balance, and The new balance corresponding to the transaction party is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, which is broadcasted to each node of the blockchain; when the node of the blockchain receives each of the broadcasted After the new balance is encrypted by the counterparty, the corresponding smart contract is started to perform the composite verification; after the composite verification is passed, the smart contract corresponding to the blockchain node updates the self data based on the transaction parameter. Since the new balance corresponding to each of the parties to the broadcast is encrypted, the other nodes of the blockchain cannot know the new balance, and the data update is performed only after the verification of the number is passed, thereby preventing multi-party transactions. The balance of each account is leaked, which effectively ensures the security of the transaction information. In addition, the balance of the individual accounts of the respective nodes is also sent to the negative balance verification system preset outside the blockchain to perform a negative balance check. By using the external negative balance verification system to perform the negative balance check, it is possible to further verify whether the multi-party transaction is normal, and to ensure the transaction processing speed on the blockchain without occupying the system overhead.
进一步地,在其他实施例中,该方法还可以包括:Further, in other embodiments, the method may further include:
将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;Encrypting the second decryption parameter by a node corresponding to the node of the blockchain and the node of the block on the blockchain, and broadcasting the encrypted second decryption parameter to the blockchain through the smart contract On the square node, the second decryption parameter is used to decrypt the encrypted new balance corresponding to each of the transaction parties;
该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。The supervisor node on the blockchain reads the updated encrypted new balance corresponding to each of the transaction parties, and decrypts the encrypted second decryption parameter through the secret key, and passes the decrypted second decryption parameter. Decrypting the encrypted new balance corresponding to each of the counterparties, and performing negative balance verification on each of the decrypted new balances.
本实施例中,在该节点通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上的同时,还将用于对各个所述交易方对应的加密后的新余额进行解密的第二解密参数通过该节点与监管方节点对应的秘钥进行加密,并将加密后的解密参数通过智能合约广播到该区块链上的监管方节点上。在该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,且该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新后,由该区块链上的监管方节点在读取更新过的各个所述交易方对应的加密新余额后,通过所述秘钥对所述加密后的解密参数进行解密,通过解密后的解密参数对各个所述交易方对应的加密后的新余额进行解密,并对解密后的各个新余额进行负数余额验证,进一步地从区块链本身对该区块链上的各个账户的余额进行负数余额检验,以进一步验证该交易是否正常。In this embodiment, when the node broadcasts the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain through the smart contract, it also uses the encrypted corresponding to each of the transaction parties. The second decryption parameter for decrypting the new balance is encrypted by the key corresponding to the node of the supervisor, and the encrypted decryption parameter is broadcasted to the supervisor node on the blockchain through the smart contract. The smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, and the smart contract corresponding to each node on the blockchain is based on the encryption corresponding to each of the correspondent parties. After the new balance is updated, the supervised node on the blockchain reads the encrypted new balance corresponding to each of the updated parties, and decrypts the encrypted decryption parameter by using the secret key. Decrypting the encrypted new balance corresponding to each of the transaction parties by the decrypted decryption parameter, and performing negative balance verification on each of the decrypted new balances, further from the blockchain itself to the respective blocks on the blockchain The balance of the account is checked for negative balance to further verify that the transaction is normal.
进一步地,在其他实施例中,该方法还可以包括:Further, in other embodiments, the method may further include:
若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节 点进行通知。If the account fails the negative balance check, the supervisor node determines the abnormal block chain node corresponding to the account, and the abnormal condition of the account is directed to other sections except the abnormal blockchain node. Click to notify.
若有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,则由区块链上的监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向所述区块链中除所述异常区块链节点之外的其他节点进行通知,以提醒其他节点该账户处于异常状况,该账户对应的异常区块链节点参与的交易事件可能存在风险。If an account fails to pass the negative balance check, it may be that the user has deceived the number verification by creating a negative account number, and the supervisor node on the blockchain determines the abnormality corresponding to the account. a blockchain node, and notifying the abnormality of the account to other nodes in the blockchain except the abnormal blockchain node, to remind other nodes that the account is in an abnormal state, and the account corresponds to an abnormality Trading events involving blockchain nodes may present risks.
进一步地,在其他实施例中,该方法还可以包括:Further, in other embodiments, the method may further include:
若有账户未通过负数余额检验,则由所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在所述区块链上的交易权限。If the account does not pass the negative balance check, the supervisor node cancels the transaction right of the abnormal block chain node on the blockchain through the preset blockchain rights management system.
若由所述负数余额验证系统对单个账户的余额进行负数余额检验时,有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,说明该账户对应的异常区块链节点参与的交易事件可能存在风险,则通过预设的区块链权限管理系统取消所述异常区块链节点在所述区块链上的交易权限,以阻止所述异常区块链节点在所述区块链上继续参与交易,保证所述区块链中除所述异常区块链节点之外的其他节点的交易安全。If the negative balance verification system performs a negative balance check on the balance of a single account, and the account fails to pass the negative balance check, it may be that the user has deceived the combined verification by creating a negative account number. If the transaction event involved in the abnormal blockchain node corresponding to the account may be at risk, the transaction rights of the abnormal blockchain node on the blockchain may be cancelled by a preset blockchain rights management system. In order to prevent the abnormal blockchain node from continuing to participate in the transaction on the blockchain, the transaction security of the nodes other than the abnormal blockchain node in the blockchain is ensured.
进一步地,在其他实施例中,该方法还可以包括:Further, in other embodiments, the method may further include:
若所述区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件的所有参与节点发送该交易事件合数验证失败的通知,或者,向所述区块链上的所有节点发送该交易事件合数验证失败的通知。以提醒该交易事件的所有参与节点或所述区块链上的所有节点该交易事件出现异常,所述区块链节点参与的交易事件可能存在风险。If the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, send a notification that the transaction event combination verification fails to all participating nodes of the transaction event, or to the block All nodes on the chain send a notification that the transaction event failed to verify. In the event that all of the participating nodes of the transaction event or all nodes on the blockchain are alerted to the transaction event, the transaction event in which the blockchain node participates may be at risk.
本发明进一步提供一种基于区块链的交易验证系统。The invention further provides a blockchain based transaction verification system.
参照图3,图3为本发明交易验证系统一实施例的功能模块示意图。Referring to FIG. 3, FIG. 3 is a schematic diagram of functional modules of an embodiment of a transaction verification system according to the present invention.
在一实施例中,该交易验证系统包括:In an embodiment, the transaction verification system comprises:
广播模块01,用于当区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,由该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上。a broadcast module 01, configured to: when a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts each of the parties by using a first decryption parameter sent by the transaction party of the transaction The original balance, and calculating the original balance of each of the counterparties based on the transaction type and the transaction amount to obtain a corresponding new balance, and encrypting the new balance corresponding to each of the counterparties through the transaction party Encryption is performed to obtain a new encrypted balance, and the encrypted new balance corresponding to each of the counterparties is broadcasted to each node of the blockchain through the smart contract.
当区块链上的一个节点在完成一个交易事件后,会将该交易事件对应的交易参数广播给该区块链上的其他节点。其中,所述交易参数可包括交易类型和/或交易金额,例如,若区块链上的A节点向B节点转账支付了金额X,则A节点将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:A节点转出”,A节点对外广播的交易参 数中还包括“交易金额:X”;同时,B节点也将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:B节点转入”,B节点对外广播的交易参数中还包括“交易金额:X”。When a node on the blockchain completes a transaction event, it broadcasts the transaction parameters corresponding to the transaction event to other nodes on the blockchain. The transaction parameter may include a transaction type and/or a transaction amount. For example, if the A node on the blockchain transfers the amount X to the B node, the A node broadcasts the transaction parameter corresponding to the transaction event to the area. For other nodes on the blockchain, the transaction parameters of the external broadcast include "transaction type: A node rollout", and the transaction parameters of the A node external broadcast. The number also includes “transaction amount: X”; at the same time, the node B also broadcasts the transaction parameters corresponding to the transaction event to other nodes on the blockchain, and the transaction parameters of the external broadcast include “transaction type: B node transfer The transaction parameters of the B-node external broadcast also include "transaction amount: X".
本实施例中,当区块链上的一个节点在处理一个带有交易类型(例如,A转账给B)和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算以算出对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数(所述加密参数与所述解密参数可以相同,也可以不同)进行加密,通过智能合约将各个所述交易方对应的加密后的新余额广播到该区块链的各个节点上。In this embodiment, when a node on the blockchain is processing a transaction with a transaction type (for example, A transfer to B) and a transaction amount, the first decryption parameter sent by the node through the transaction party of the transaction. Decrypting the original balance of each of the parties, and calculating the original balance of each of the parties based on the transaction type and the transaction amount to calculate a corresponding new balance, and passing the new balance corresponding to each of the parties Encryption parameters sent by the transaction party (the encryption parameters may be the same as the decryption parameters, or may be different) are encrypted, and the encrypted new balance corresponding to each transaction party is broadcasted to the blockchain through the smart contract. On each node.
合数验证模块02,用于当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证。The combination verification module 02 is configured to start a corresponding smart contract for the composite verification when the node of the blockchain receives the encrypted new balance corresponding to each of the broadcast parties.
区块链上的数据通常会被存放在参与节点上的两个地方:智能合约(每个智能合约存有自己的当前状况)中和节点上的事务记录(transaction log,用来滚出每个智能合约上数据当前的状况)中,每个区块链节点对应一个事务记录和一个或多个智能合约。当一个交易参数传到区块链的节点上时,这个交易参数会被记录到该节点对应的事务记录上并同时传给与该交易参数对应的智能合约去运行,并由该交易参数对应的智能合约上的代码对智能合约的自身数据进行更新。The data on the blockchain is usually stored in two places on the participating nodes: the smart contract (each smart contract has its own current state) and the transaction log on the node (transaction log, used to roll out each In the current state of the data on the smart contract, each blockchain node corresponds to one transaction record and one or more smart contracts. When a transaction parameter is transmitted to the node of the blockchain, the transaction parameter is recorded on the transaction record corresponding to the node and simultaneously transmitted to the smart contract corresponding to the transaction parameter to run, and corresponding to the transaction parameter. The code on the smart contract updates the smart contract's own data.
本实施例中,若有区块链节点接收到该区块链上的其他节点广播来的各个所述交易方对应的加密新余额,则该区块链节点将所述加密新余额发给该区块链节点对应的智能合约进行合数验证,即验证交易前的所有节点的余额之和是否等于交易之后的所有节点的余额之和,以验证该交易是否正常。本实施例中,该区块链节点对应的智能合约可基于预设的同态加密验证算法来进行合数验证。In this embodiment, if the blockchain node receives the encrypted new balance corresponding to each of the transaction parties broadcasted by other nodes on the blockchain, the blockchain node sends the encrypted new balance to the The smart contract corresponding to the blockchain node performs the composite verification, that is, whether the sum of the balances of all the nodes before the transaction is equal to the sum of the balances of all the nodes after the transaction, to verify whether the transaction is normal. In this embodiment, the smart contract corresponding to the blockchain node may perform the composite verification based on the preset homomorphic encryption verification algorithm.
其中,同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。本实施例中,基于预设的同态加密验证算法可验证交易前的所有节点的余额之和是否等于交易之后的所有节点的余额之和,从而验证该交易是否正常。例如,在一种实施方式中,该区块链节点对应的智能合约可以采用加法同态加密验证算法进行合数验证,假设R和S是域,称加密函数E:R→S为加法同态,如果存在有效算法⊕,使得E(x+y)=E(x)⊕E(y)或者x+y=D(E(x)⊕E(y))成立,该有效算法⊕即为加法同态加密验证算法,这个算法不仅能验证账户合数,同时,还能确保不泄漏账户的余额x和y。Among them, homomorphic encryption is a cryptographic technique based on the computational complexity theory of mathematical problems. The homomorphic encrypted data is processed to obtain an output, and the output is decrypted, and the result is the same as the output obtained by processing the unencrypted original data by the same method. In this embodiment, based on the preset homomorphic encryption verification algorithm, it can be verified whether the sum of the balances of all the nodes before the transaction is equal to the sum of the balances of all the nodes after the transaction, thereby verifying whether the transaction is normal. For example, in an implementation manner, the smart contract corresponding to the blockchain node may be combined and verified by an additive homomorphic encryption verification algorithm, assuming that R and S are domains, and the encryption function E:R→S is an additive homomorphism. If there is a valid algorithm ⊕ such that E(x+y)=E(x)⊕E(y) or x+y=D(E(x)⊕E(y)) holds, the effective algorithm is additive The homomorphic encryption verification algorithm, which not only verifies the account number, but also ensures that the balance x and y of the account are not leaked.
当运用区块链技术进行多方参与的交易事件例如转账交易、支付交易等事件时,在去中心化的区块链系统当中,由于没有绝对权威机构节点,因此对每笔交易都必须进行集体验证。本实施例中采用同态加密验证算法来进行合数验证,既能有效地验证运用区块链技术进行多方参与的交易是否正常, 又能防止多方账户的余额泄露,有效地保证了交易信息的安全。When using blockchain technology for multi-participating trading events such as transfer transactions, payment transactions, etc., in the decentralized blockchain system, since there is no absolute authority node, collective verification must be performed for each transaction. . In this embodiment, the homomorphic encryption verification algorithm is used to perform the composite verification, which can effectively verify whether the transaction using the blockchain technology for multi-party participation is normal. It can also prevent the leakage of the balance of multiple accounts, and effectively ensure the security of transaction information.
更新模块03,用于若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则由该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新。The update module 03 is configured to: if the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, the smart contract corresponding to each node on the blockchain is based on each The encrypted new balance corresponding to the transaction party updates its own data.
若该区块链节点对应的智能合约对所述交易参数的合数验证通过,则说明该交易正常,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新。例如,若所述交易参数包括的交易类型是“A节点转出”,所述交易参数包括的交易金额是X,则该区块链节点对应的智能合约将自身数据中的A节点余额减少X。If the smart contract corresponding to the blockchain node passes the verification of the transaction parameter, the transaction is normal, and the smart contract corresponding to each node on the blockchain is based on the encrypted new balance corresponding to each of the transaction parties. Update. For example, if the transaction parameter includes a transaction type of “A node rollout” and the transaction parameter includes a transaction amount of X, the smart contract corresponding to the blockchain node reduces the balance of the A node in the own data by X. .
余额检验模块04,用于调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。The balance check module 04 is configured to invoke a preset negative balance verification system external to the blockchain to start multiple threads, and each thread is also responsible for performing a negative balance check on the balance of a single account of each node on the blockchain, if If the negative balance of the individual account balance of each node on the blockchain is passed, it is determined that the transaction is verified.
因为每个节点的余额都是独立数组,所以可以对多个节点余额进行多线程检验,同时,因为同一个节点参与每次交易的账户、交易类型和金额是被记载在案的,所以通过虚假余额检验可以有效防止用户在某个节点通过分账户分摊余额的形式改变某个分账户的余额从而规避所述合数验证的校验,例如,银行A可把账号001上的100张票据通过以下分账户分摊余额的形式变成400张:先创建一个002账号并放上400余额,然后再在一个新的003账号上存-300。Because the balance of each node is a separate array, multi-thread check can be performed on multiple node balances. At the same time, because the account, transaction type and amount of the same node participating in each transaction are recorded, it is false. The balance check can effectively prevent the user from changing the balance of a certain sub-account in the form of a sub-account balance by a certain account, thereby avoiding the verification of the combined verification. For example, the bank A can pass 100 bills on the account 001 through the following The form of the sub-account balance is changed to 400: first create a 002 account and put 400 balance, and then save -300 on a new 003 account.
本实施例中通过在所述区块链外部的负数余额验证系统,即利用不在所述区块链上运行的负数余额验证系统来启动多个线程对参与该交易事件的各个节点的各个账户的余额进行负数余额检验,能避免用户通过制造存有负数的账号的方式来骗过合数验证的情况发生,能进一步地更加准确的验证交易是否正常,而且,负数余额验证系统并不在所述区块链上运行,而是在外部单独运行,不会对区块链上的交易处理速度造成影响,有效地保证了区块链上较快的交易处理速度。In this embodiment, the negative balance verification system outside the blockchain, that is, using a negative balance verification system that is not running on the blockchain, initiates multiple threads for each account of each node participating in the transaction event. The negative balance check of the balance can prevent the user from defrauding the case of the number verification by creating a negative account number, and can further verify the transaction more accurately. Moreover, the negative balance verification system is not in the area. Running on the blockchain, but running separately on the outside, will not affect the transaction processing speed on the blockchain, effectively ensuring faster transaction processing speed on the blockchain.
本实施例中若有区块链节点接收到区块链上的其他节点广播来的交易参数,区块链上的节点在处理带有交易类型和交易金额的交易时,基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,并将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;在合数验证通过,才由所述区块链节点对应的智能合约基于所述交易参数对自身数据进行更新。由于广播的各个所述交易方对应的新余额均进行了加密处理,该区块链的其他节点无法获知该新余额,且只有在合数验证通过后,才进行数据更新,能防止多方交易中各账户的余额泄露,有效地保证了交易信息的安全。此外,还将各个节点的单个账户的余额发给所 述区块链外部预设的负数余额验证系统来进行负数余额检验。由于利用外部的负数余额验证系统来进行负数余额检验,既能进一步验证多方交易是否正常,又能在不占用系统开销的情况下保证区块链上的交易处理速度。In this embodiment, if the blockchain node receives the transaction parameters broadcast by other nodes on the blockchain, the node on the blockchain processes the transaction with the transaction type and the transaction amount, based on the transaction type and Transaction amount is calculated for each original party's original balance to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain a new encrypted balance, and broadcasted to the On each node of the blockchain; when the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification; The smart contract corresponding to the blockchain node updates its own data based on the transaction parameters. Since the new balance corresponding to each of the parties to the broadcast is encrypted, the other nodes of the blockchain cannot know the new balance, and the data update is performed only after the verification of the number is passed, thereby preventing multi-party transactions. The balance of each account is leaked, which effectively ensures the security of the transaction information. In addition, the balance of the individual accounts of each node is also sent to the office. A negative balance verification system preset outside the blockchain is used to perform a negative balance check. By using the external negative balance verification system to perform the negative balance check, it is possible to further verify whether the multi-party transaction is normal, and to ensure the transaction processing speed on the blockchain without occupying the system overhead.
进一步地,在其他实施例中,上述广播模块01还可以用于:Further, in other embodiments, the foregoing broadcast module 01 can also be used to:
将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;Encrypting the second decryption parameter by a node corresponding to the node of the blockchain and the node of the block on the blockchain, and broadcasting the encrypted second decryption parameter to the blockchain through the smart contract On the square node, the second decryption parameter is used to decrypt the encrypted new balance corresponding to each of the transaction parties;
上述余额检验模块04还可以用于:The above balance check module 04 can also be used to:
由该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。And reading, by the supervisor node on the blockchain, the updated new balance corresponding to each of the transaction parties, and decrypting the encrypted second decryption parameter by using the secret key, and decrypting the second decryption The parameter decrypts the encrypted new balance corresponding to each of the counterparties, and performs negative balance verification on each of the decrypted new balances.
本实施例中,在该节点通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上的同时,还将用于对各个所述交易方对应的加密后的新余额进行解密的第二解密参数通过该节点与监管方节点对应的秘钥进行加密,并将加密后的解密参数通过智能合约广播到该区块链上的监管方节点上。在该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,且该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新后,由该区块链上的监管方节点在读取更新过的各个所述交易方对应的加密新余额后,通过所述秘钥对所述加密后的解密参数进行解密,通过解密后的解密参数对各个所述交易方对应的加密后的新余额进行解密,并对解密后的各个新余额进行负数余额验证,进一步地从区块链本身对该区块链上的各个账户的余额进行负数余额检验,以进一步验证该交易是否正常。In this embodiment, when the node broadcasts the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain through the smart contract, it also uses the encrypted corresponding to each of the transaction parties. The second decryption parameter for decrypting the new balance is encrypted by the key corresponding to the node of the supervisor, and the encrypted decryption parameter is broadcasted to the supervisor node on the blockchain through the smart contract. The smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the correspondent parties, and the smart contract corresponding to each node on the blockchain is based on the encryption corresponding to each of the correspondent parties. After the new balance is updated, the supervised node on the blockchain reads the encrypted new balance corresponding to each of the updated parties, and decrypts the encrypted decryption parameter by using the secret key. Decrypting the encrypted new balance corresponding to each of the transaction parties by the decrypted decryption parameter, and performing negative balance verification on each of the decrypted new balances, further from the blockchain itself to the respective blocks on the blockchain The balance of the account is checked for negative balance to further verify that the transaction is normal.
进一步地,在其他实施例中,上述余额检验模块04还可以用于:Further, in other embodiments, the above balance checking module 04 can also be used to:
若有账户未通过负数余额检验,则由所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。If the account fails the negative balance check, the supervisor node determines the abnormal block chain node corresponding to the account, and notifies the abnormal status of the account to other nodes except the abnormal block chain node.
若有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,则由区块链上的监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向所述区块链中除所述异常区块链节点之外的其他节点进行通知,以提醒其他节点该账户处于异常状况,该账户对应的异常区块链节点参与的交易事件可能存在风险。If an account fails to pass the negative balance check, it may be that the user has deceived the number verification by creating a negative account number, and the supervisor node on the blockchain determines the abnormality corresponding to the account. a blockchain node, and notifying the abnormality of the account to other nodes in the blockchain except the abnormal blockchain node, to remind other nodes that the account is in an abnormal state, and the account corresponds to an abnormality Trading events involving blockchain nodes may present risks.
进一步地,在其他实施例中,上述余额检验模块04还可以用于:Further, in other embodiments, the above balance checking module 04 can also be used to:
若有账户未通过负数余额检验,则由所述监管方节点通过预设的区块链 权限管理系统取消所述异常区块链节点在所述区块链上的交易权限。If the account fails the negative balance check, the supervisor node passes the preset blockchain. The rights management system cancels the transaction rights of the abnormal blockchain node on the blockchain.
若由所述负数余额验证系统对单个账户的余额进行负数余额检验时,有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,说明该账户对应的异常区块链节点参与的交易事件可能存在风险,则通过预设的区块链权限管理系统取消所述异常区块链节点在所述区块链上的交易权限,以阻止所述异常区块链节点在所述区块链上继续参与交易,保证所述区块链中除所述异常区块链节点之外的其他节点的交易安全。If the negative balance verification system performs a negative balance check on the balance of a single account, and the account fails to pass the negative balance check, it may be that the user has deceived the combined verification by creating a negative account number. If the transaction event involved in the abnormal blockchain node corresponding to the account may be at risk, the transaction rights of the abnormal blockchain node on the blockchain may be cancelled by a preset blockchain rights management system. In order to prevent the abnormal blockchain node from continuing to participate in the transaction on the blockchain, the transaction security of the nodes other than the abnormal blockchain node in the blockchain is ensured.
进一步地,在其他实施例中,上述合数验证模块02还可以用于:Further, in other embodiments, the above-mentioned composite verification module 02 can also be used to:
若所述区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件的所有参与节点发送该交易事件合数验证失败的通知,或者,向所述区块链上的所有节点发送该交易事件合数验证失败的通知。以提醒该交易事件的所有参与节点或所述区块链上的所有节点该交易事件出现异常,所述区块链节点参与的交易事件可能存在风险。If the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, send a notification that the transaction event combination verification fails to all participating nodes of the transaction event, or to the block All nodes on the chain send a notification that the transaction event failed to verify. In the event that all of the participating nodes of the transaction event or all nodes on the blockchain are alerted to the transaction event, the transaction event in which the blockchain node participates may be at risk.
此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有交易验证系统,所述交易验证系统可被至少一个处理设备执行,以使所述至少一个处理设备执行如上述实施例中的基于区块链的交易验证方法的步骤,该基于区块链的交易验证方法的步骤S10、S20、S30等具体实施过程如上文所述,在此不再赘述。Moreover, the present invention also provides a computer readable storage medium storing a transaction verification system, the transaction verification system being executable by at least one processing device to cause the at least one processing device to perform, for example The steps of the block chain-based transaction verification method in the above embodiment, the specific implementation processes of the steps S10, S20, and S30 of the block chain-based transaction verification method are as described above, and are not described herein again.
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。It is to be understood that the term "comprises", "comprising", or any other variants thereof, is intended to encompass a non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes those elements. It also includes other elements that are not explicitly listed, or elements that are inherent to such a process, method, article, or device. An element that is defined by the phrase "comprising a ..." does not exclude the presence of additional equivalent elements in the process, method, item, or device that comprises the element.
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。Through the description of the above embodiments, those skilled in the art can clearly understand that the foregoing embodiment method can be implemented by means of software plus a necessary general hardware platform, and can also be implemented by hardware, but in many cases, the former is A better implementation. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, may be embodied in the form of a software product stored in a storage medium (such as ROM/RAM, disk, The optical disc includes a number of instructions for causing a terminal device (which may be a cell phone, a computer, a server, an air conditioner, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。 The preferred embodiments of the present invention have been described above with reference to the drawings, and are not intended to limit the scope of the invention. The serial numbers of the embodiments of the present invention are merely for the description, and do not represent the advantages and disadvantages of the embodiments. Additionally, although logical sequences are shown in the flowcharts, in some cases the steps shown or described may be performed in a different order than the ones described herein.
本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。 A person skilled in the art can implement the invention in various variants without departing from the scope and spirit of the invention. For example, the features of one embodiment can be used in another embodiment to obtain a further embodiment. Any modifications, equivalent substitutions and improvements made within the technical concept of the invention are intended to be included within the scope of the invention.

Claims (20)

  1. 一种基于区块链的交易验证方法,其特征在于,所述方法包括以下步骤:A blockchain-based transaction verification method, characterized in that the method comprises the following steps:
    a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;A1. When a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on The transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance. And broadcasting, by the smart contract, the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain;
    a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;A2. After the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification;
    a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;A3. If the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the counterparties. The encrypted new balance updates its own data;
    a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。A4, calling the negative balance verification system preset by the blockchain to start multiple threads, each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
  2. 如权利要求1所述的基于区块链的交易验证方法,其特征在于,该方法还包括:The blockchain-based transaction verification method according to claim 1, wherein the method further comprises:
    将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;Encrypting the second decryption parameter by a node corresponding to the node of the blockchain and the node of the block on the blockchain, and broadcasting the encrypted second decryption parameter to the blockchain through the smart contract On the square node, the second decryption parameter is used to decrypt the encrypted new balance corresponding to each of the transaction parties;
    该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。The supervisor node on the blockchain reads the updated encrypted new balance corresponding to each of the transaction parties, and decrypts the encrypted second decryption parameter through the secret key, and passes the decrypted second decryption parameter. Decrypting the encrypted new balance corresponding to each of the counterparties, and performing negative balance verification on each of the decrypted new balances.
  3. 如权利要求1或2所述的基于区块链的交易验证方法,其特征在于,该方法还包括:The blockchain-based transaction verification method according to claim 1 or 2, wherein the method further comprises:
    若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。If the account fails to pass the negative balance check, the supervisor node determines the abnormal block chain node corresponding to the account, and notifies the abnormal status of the account to other nodes except the abnormal blockchain node.
  4. 如权利要求1或2所述的基于区块链的交易验证方法,其特征在于,该方法还包括: The blockchain-based transaction verification method according to claim 1 or 2, wherein the method further comprises:
    若有账户未通过负数余额检验,则所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。If the account fails to pass the negative balance check, the supervisor node cancels the transaction right of the abnormal block chain node on the blockchain through a preset blockchain rights management system.
  5. 如权利要求1或2所述的基于区块链的交易验证方法,其特征在于,该方法还包括:The blockchain-based transaction verification method according to claim 1 or 2, wherein the method further comprises:
    若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。If the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, the notification of the failure of the transaction event combination verification is sent to all participating nodes of the transaction event, or to the blockchain All nodes send a notification that the transaction event combination verification failed.
  6. 一种基于区块链的交易验证系统,其特征在于,所述交易验证系统包括:A blockchain based transaction verification system, characterized in that the transaction verification system comprises:
    广播模块,用于当区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,由该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;a broadcast module, configured to: when a node on the blockchain processes a transaction with a transaction type and a transaction amount, the first decryption parameter sent by the node through the transaction party of the transaction decrypts each of the transaction parties The original balance, and calculating the original balance of each of the transaction parties based on the transaction type and the transaction amount to obtain a corresponding new balance, and performing the new balance corresponding to each of the transaction parties through the encryption parameter sent by the transaction party Encrypting to obtain a new encrypted balance, and broadcasting the encrypted new balance corresponding to each of the correspondent parties to each node of the blockchain through a smart contract;
    合数验证模块,用于当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;a combination verification module, configured to: when the node of the blockchain receives the encrypted new balance corresponding to each of the broadcast parties, the corresponding smart contract is started to perform the combined verification;
    更新模块,用于若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则由该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;And an update module, configured to: if the smart contract corresponding to each node on the blockchain validates the combined number of the encrypted new balance corresponding to each of the correspondent parties, the smart contract corresponding to each node on the blockchain is based on each The encrypted new balance corresponding to the transaction party updates its own data;
    余额检验模块,用于调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。a balance checking module, configured to call a negative balance verification system preset by the blockchain to start a plurality of threads, and each thread is also responsible for performing a negative balance check on the balance of a single account of each node on the blockchain, if the area is If the negative balance of the individual account balance of each node on the blockchain is passed, it is determined that the transaction is verified.
  7. 如权利要求6所述的交易验证系统,其特征在于,所述广播模块还用于:The transaction verification system according to claim 6, wherein the broadcast module is further configured to:
    将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;Encrypting the second decryption parameter by a node corresponding to the node of the blockchain and the node of the block on the blockchain, and broadcasting the encrypted second decryption parameter to the blockchain through the smart contract On the square node, the second decryption parameter is used to decrypt the encrypted new balance corresponding to each of the transaction parties;
    所述余额检验模块还用于:The balance verification module is further configured to:
    由该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。 And reading, by the supervisor node on the blockchain, the updated new balance corresponding to each of the transaction parties, and decrypting the encrypted second decryption parameter by using the secret key, and decrypting the second decryption The parameter decrypts the encrypted new balance corresponding to each of the counterparties, and performs negative balance verification on each of the decrypted new balances.
  8. 如权利要求6或7所述的交易验证系统,其特征在于,所述余额检验模块还用于:The transaction verification system according to claim 6 or 7, wherein the balance verification module is further configured to:
    若有账户未通过负数余额检验,则由所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。If the account fails the negative balance check, the supervisor node determines the abnormal block chain node corresponding to the account, and notifies the abnormal status of the account to other nodes except the abnormal block chain node.
  9. 如权利要求6或7所述的交易验证系统,其特征在于,所述余额检验模块还用于:The transaction verification system according to claim 6 or 7, wherein the balance verification module is further configured to:
    若有账户未通过负数余额检验,则由所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。If the account fails to pass the negative balance check, the supervisor node cancels the transaction right of the abnormal block chain node on the blockchain through the preset blockchain rights management system.
  10. 如权利要求6或7所述的交易验证系统,其特征在于,所述合数验证模块还用于:The transaction verification system according to claim 6 or 7, wherein the combination verification module is further configured to:
    若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。If the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, the notification of the failure of the transaction event combination verification is sent to all participating nodes of the transaction event, or to the blockchain All nodes send a notification that the transaction event combination verification failed.
  11. 一种电子装置,包括处理设备、存储设备及交易验证系统,该交易验证系统存储于该存储设备中,包括至少一个计算机可读指令,该至少一个计算机可读指令可被所述处理设备执行,以实现以下操作:An electronic device comprising a processing device, a storage device, and a transaction verification system, the transaction verification system being stored in the storage device, comprising at least one computer readable instruction executable by the processing device, To achieve the following:
    a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;A1. When a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on The transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance. And broadcasting, by the smart contract, the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain;
    a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;A2. After the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification;
    a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;A3. If the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the counterparties. The encrypted new balance updates its own data;
    a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。A4, calling the negative balance verification system preset by the blockchain to start multiple threads, each thread is also responsible for performing negative balance check on the balance of each account of each node in the blockchain, if each block of the block is If the negative balance of the single account balance of the node is passed, it is determined that the transaction is verified.
  12. 如权利要求11所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The electronic device of claim 11 wherein said at least one computer readable instruction is further executable by said processing device to:
    将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的 秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;Passing the second decryption parameter through the node of the blockchain corresponding to the supervisor node on the blockchain The secret key is encrypted, and the encrypted second decryption parameter is broadcasted to the supervisor node on the blockchain through the smart contract, and the second decryption parameter is used to perform the encrypted new balance corresponding to each of the counterparties. Decrypt
    该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。The supervisor node on the blockchain reads the updated encrypted new balance corresponding to each of the transaction parties, and decrypts the encrypted second decryption parameter through the secret key, and passes the decrypted second decryption parameter. Decrypting the encrypted new balance corresponding to each of the counterparties, and performing negative balance verification on each of the decrypted new balances.
  13. 如权利要求11或12所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The electronic device of claim 11 or 12, wherein the at least one computer readable instruction is further executable by the processing device to:
    若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。If the account fails to pass the negative balance check, the supervisor node determines the abnormal block chain node corresponding to the account, and notifies the abnormal status of the account to other nodes except the abnormal blockchain node.
  14. 如权利要求11或12所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The electronic device of claim 11 or 12, wherein the at least one computer readable instruction is further executable by the processing device to:
    若有账户未通过负数余额检验,则所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。If the account fails to pass the negative balance check, the supervisor node cancels the transaction right of the abnormal block chain node on the blockchain through a preset blockchain rights management system.
  15. 如权利要求11或12所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The electronic device of claim 11 or 12, wherein the at least one computer readable instruction is further executable by the processing device to:
    若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。If the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, the notification of the failure of the transaction event combination verification is sent to all participating nodes of the transaction event, or to the blockchain All nodes send a notification that the transaction event combination verification failed.
  16. 一种计算机可读存储介质,其上存储有至少一个可被处理设备执行以实现以下操作的计算机可读指令:A computer readable storage medium having stored thereon at least one computer readable instruction executable by a processing device to:
    a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;A1. When a node on the blockchain processes a transaction with a transaction type and a transaction amount, the node decrypts the original balance of each of the parties through the first decryption parameter sent by the transaction party of the transaction, and is based on The transaction type and the transaction amount are calculated for the original balance of each of the transaction parties to obtain a corresponding new balance, and the new balance corresponding to each of the counterparties is encrypted by the encryption parameter sent by the transaction party to obtain an encrypted new balance. And broadcasting, by the smart contract, the encrypted new balance corresponding to each of the transaction parties to each node of the blockchain;
    a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;A2. After the node of the blockchain receives the encrypted new balance corresponding to each of the parties to the broadcast, the corresponding smart contract is started to perform the combined verification;
    a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;A3. If the smart contract corresponding to each node on the blockchain verifies the combined number of the encrypted new balance corresponding to each of the counterparties, the smart contract corresponding to each node on the blockchain is based on each of the counterparties. The encrypted new balance updates its own data;
    a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线 程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。A4, call the block balance external preset negative balance verification system to start multiple threads, each line The process is also responsible for performing a negative balance check on the balance of a single account of each node on the blockchain. If the negative balance of the individual account balance of each node on the blockchain passes the test, it is determined that the transaction is verified.
  17. 如权利要求16所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The computer readable storage medium of claim 16 wherein said at least one computer readable instruction is further executable by said processing device to:
    将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;Encrypting the second decryption parameter by a node corresponding to the node of the blockchain and the node of the block on the blockchain, and broadcasting the encrypted second decryption parameter to the blockchain through the smart contract On the square node, the second decryption parameter is used to decrypt the encrypted new balance corresponding to each of the transaction parties;
    该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。The supervisor node on the blockchain reads the updated encrypted new balance corresponding to each of the transaction parties, and decrypts the encrypted second decryption parameter through the secret key, and passes the decrypted second decryption parameter. Decrypting the encrypted new balance corresponding to each of the counterparties, and performing negative balance verification on each of the decrypted new balances.
  18. 如权利要求16或17所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The computer readable storage medium of claim 16 or 17, wherein the at least one computer readable instruction is further executable by the processing device to:
    若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。If the account fails to pass the negative balance check, the supervisor node determines the abnormal block chain node corresponding to the account, and notifies the abnormal status of the account to other nodes except the abnormal blockchain node.
  19. 如权利要求16或17所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The computer readable storage medium of claim 16 or 17, wherein the at least one computer readable instruction is further executable by the processing device to:
    若有账户未通过负数余额检验,则所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。If the account fails to pass the negative balance check, the supervisor node cancels the transaction right of the abnormal block chain node on the blockchain through a preset blockchain rights management system.
  20. 如权利要求16或17所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:The computer readable storage medium of claim 16 or 17, wherein the at least one computer readable instruction is further executable by the processing device to:
    若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。 If the smart contract corresponding to the blockchain node fails to pass the verification of the transaction parameter, the notification of the failure of the transaction event combination verification is sent to all participating nodes of the transaction event, or to the blockchain All nodes send a notification that the transaction event combination verification failed.
PCT/CN2017/091252 2016-10-27 2017-06-30 Block chain-based transaction verification method and system, electronic device, and medium WO2018076762A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610959872.XA CN106548330B (en) 2016-10-27 2016-10-27 Transaction verification method and system based on block chain
CN201610959872.X 2016-10-27

Publications (1)

Publication Number Publication Date
WO2018076762A1 true WO2018076762A1 (en) 2018-05-03

Family

ID=58393982

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/091252 WO2018076762A1 (en) 2016-10-27 2017-06-30 Block chain-based transaction verification method and system, electronic device, and medium

Country Status (2)

Country Link
CN (1) CN106548330B (en)
WO (1) WO2018076762A1 (en)

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109359992A (en) * 2018-10-09 2019-02-19 北京彩球世纪科技有限公司 A kind of novel block chain subregion sliced fashion and device
CN109493060A (en) * 2018-12-20 2019-03-19 莆田市烛火信息技术有限公司 A kind of account book accounting system based on block chain
CN109636622A (en) * 2019-01-03 2019-04-16 平安科技(深圳)有限公司 A kind of fund data sharing method, system and electronic equipment based on block chain
CN109711176A (en) * 2018-12-12 2019-05-03 曲阜师范大学 One kind being based on Q-Learning intelligence contract validation checking method
CN109753288A (en) * 2019-01-14 2019-05-14 杭州云象网络技术有限公司 A kind of intelligent contract Compilation Method suitable for Formal Verification
CN109784918A (en) * 2018-12-15 2019-05-21 深圳壹账通智能科技有限公司 Information measure of supervision, device, equipment and storage medium based on block chain
CN109858262A (en) * 2019-01-17 2019-06-07 平安科技(深圳)有限公司 Workflow examination and approval method, apparatus, system and storage medium based on block catenary system
CN109859041A (en) * 2019-01-09 2019-06-07 平安科技(深圳)有限公司 Fund transaction real time updating method and system, electronic equipment based on block chain
CN109858914A (en) * 2019-01-18 2019-06-07 深圳壹账通智能科技有限公司 Block chain data verification method, device, computer equipment and readable storage medium storing program for executing
CN109886661A (en) * 2019-01-16 2019-06-14 深圳壹账通智能科技有限公司 Across chain digital cash exchanging method, device, computer system and storage medium
CN110210977A (en) * 2019-06-11 2019-09-06 北京艾摩瑞策科技有限公司 A kind of data trade method and its equipment
CN110210859A (en) * 2019-06-11 2019-09-06 北京艾摩瑞策科技有限公司 Method of investigation and study and its equipment on a kind of block chain
CN110223117A (en) * 2019-06-11 2019-09-10 北京艾摩瑞策科技有限公司 A kind of method of investigation and study and its equipment of combination block chain
CN110232594A (en) * 2019-06-11 2019-09-13 北京艾摩瑞策科技有限公司 A kind of method of investigation and study realized by block chain and its equipment
CN110288480A (en) * 2019-06-28 2019-09-27 深圳前海微众银行股份有限公司 A kind of Private transaction method and device of block chain
CN110546667A (en) * 2018-11-07 2019-12-06 阿里巴巴集团控股有限公司 block chain data protection using homomorphic encryption
CN110647439A (en) * 2019-08-15 2020-01-03 深圳壹账通智能科技有限公司 Method and device for confirming block chain system deployment, computer equipment and storage medium
CN110706107A (en) * 2019-09-27 2020-01-17 北京科东电力控制系统有限责任公司 Global energy transnational transaction method and system
CN110766400A (en) * 2019-10-22 2020-02-07 全链通有限公司 Transaction record processing method based on block chain, accounting node and medium
CN110853216A (en) * 2019-10-18 2020-02-28 深圳壹账通智能科技有限公司 Information storage method, information storage device, information storage medium and computer equipment
CN110958123A (en) * 2019-12-09 2020-04-03 国网新疆电力有限公司信息通信公司 Block chain-based data secure transmission method
CN111767556A (en) * 2019-01-31 2020-10-13 阿里巴巴集团控股有限公司 Method for realizing privacy protection in block chain, node and storage medium
CN111784341A (en) * 2019-02-01 2020-10-16 阿里巴巴集团控股有限公司 Block chain transaction method and device, electronic equipment and storage medium
CN111899020A (en) * 2018-08-13 2020-11-06 创新先进技术有限公司 Block chain transaction method and device and electronic equipment
CN111949623A (en) * 2020-08-13 2020-11-17 广东省林业科学研究院 Inspection data analysis and verification system
CN112116400A (en) * 2020-09-28 2020-12-22 平安壹钱包电子商务有限公司 Virtual resource intercommunication method and device based on block chain and related equipment
CN112346820A (en) * 2020-11-16 2021-02-09 杭州复杂美科技有限公司 Block chain JVM application method, device and storage medium
US20210042740A1 (en) * 2018-10-25 2021-02-11 Tencent Technology (Shenzhen) Company Limited Value transfer method, apparatus, and system
CN112767153A (en) * 2019-02-01 2021-05-07 创新先进技术有限公司 Block chain transaction method and device, electronic equipment and storage medium
CN112862493A (en) * 2021-01-27 2021-05-28 中山大学 Intelligent Pompe deception detection method, device, terminal and storage medium
US11032077B2 (en) 2018-09-20 2021-06-08 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device
US11050549B2 (en) 2018-09-30 2021-06-29 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device
CN113269644A (en) * 2021-05-28 2021-08-17 长沙链奇科技有限公司 Transaction processing method and device based on block chain
CN113612758A (en) * 2021-07-29 2021-11-05 石家庄学院 Block chain-based Internet of things data security management system and method
CN113760651A (en) * 2021-08-12 2021-12-07 熵链科技(福建)有限公司 Method, system and storage medium for collecting running state of main sub-chain of block chain
US11244306B2 (en) 2018-08-06 2022-02-08 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
CN114363336A (en) * 2021-12-31 2022-04-15 支付宝(杭州)信息技术有限公司 Method and device for starting/closing block link point service
US20220129884A1 (en) * 2017-11-30 2022-04-28 Visa International Service Association Blockchain system for confidential and anonymous smart contracts
US11341492B2 (en) 2018-08-30 2022-05-24 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
CN114707981A (en) * 2020-12-16 2022-07-05 福州数据技术研究院有限公司 Hospital alliance pre-fund exchange management method and system based on block chain distributed accounting
US11416854B2 (en) 2018-12-29 2022-08-16 Advanced New Technologies Co., Ltd. System and method for information protection
CN115239339A (en) * 2022-08-03 2022-10-25 浙江省金融综合服务平台管理有限公司 Account transaction information verification method based on block chain
WO2022267316A1 (en) * 2021-06-24 2022-12-29 北京中电普华信息技术有限公司 Blockchain-based power demand response processing method and apparatus
US12021993B2 (en) 2018-09-20 2024-06-25 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106548330B (en) * 2016-10-27 2018-03-16 上海亿账通区块链科技有限公司 Transaction verification method and system based on block chain
CN107194798B (en) * 2017-04-28 2021-07-20 广东网金控股股份有限公司 Bank clearing method based on block chain alliance chain
CN107273759B (en) * 2017-05-08 2020-07-14 上海点融信息科技有限责任公司 Method, apparatus, and computer-readable storage medium for protecting blockchain data
CN107239940A (en) * 2017-05-11 2017-10-10 北京博晨技术有限公司 Network trading method and device based on block catenary system
CN110709872B (en) * 2017-05-22 2024-06-07 区块链控股有限公司 Constraint injection for unlocking transaction bytecodes
US10740733B2 (en) * 2017-05-25 2020-08-11 Oracle International Corporaton Sharded permissioned distributed ledgers
CN107358424B (en) * 2017-06-26 2020-09-29 中国人民银行数字货币研究所 Transaction method and device based on digital currency
CN109118214B (en) * 2017-06-26 2020-11-17 华为技术有限公司 Method and device for operating intelligent contract
CN107392603B (en) * 2017-06-26 2021-03-16 中国人民银行数字货币研究所 Transaction method and apparatus using digital money
CN107392528A (en) * 2017-06-30 2017-11-24 海航创新科技研究有限公司 Container operation data treating method and apparatus
CN107464106B (en) * 2017-07-25 2021-01-26 北京果仁宝科技有限公司 Method and system for transaction between main chain and side chain of block chain
CN107688999B (en) * 2017-08-11 2020-11-13 杭州溪塔科技有限公司 Block chain-based parallel transaction execution method
US11190525B2 (en) 2017-08-18 2021-11-30 Cloudminds (Shanghai) Robotics Co., Ltd. Blockchain system and permission management method thereof
CN107729137B (en) * 2017-09-04 2021-06-22 深圳壹账通智能科技有限公司 Server, block chain signature verification decryption method and storage medium
CN110866752B (en) * 2017-09-18 2023-04-14 腾讯科技(深圳)有限公司 Resource transaction method, node, device and storage medium
CN107679863B (en) * 2017-09-19 2020-12-08 中国银行股份有限公司 Block chain system and method for quickly verifying block
CN107678865A (en) * 2017-09-20 2018-02-09 中国银行股份有限公司 The verification method and system of block chain based on transaction packet
CN107682331B (en) * 2017-09-28 2020-05-12 复旦大学 Block chain-based Internet of things identity authentication method
CN107862215B (en) 2017-09-29 2020-10-16 创新先进技术有限公司 Data storage method, data query method and device
CN107481146A (en) * 2017-10-13 2017-12-15 深圳市招股科技有限公司 One kind is based on the safe and efficient financial trade method of block chain
CN107833060B (en) * 2017-11-13 2020-12-25 中国银行股份有限公司 Verification method and system for intelligent contract transaction in block chain
GB201720767D0 (en) 2017-12-13 2018-01-24 Barker Trevor Computer-implemented system and method
CN108256859B (en) * 2018-01-02 2021-02-23 中国工商银行股份有限公司 Financial product transaction consensus method, node and system based on block chain
CN111612446A (en) * 2018-01-19 2020-09-01 阿里巴巴集团控股有限公司 Block chain balance adjusting method and device and electronic equipment
CN108509810A (en) * 2018-03-19 2018-09-07 宋钰 Data processing method and system
CN108510251A (en) * 2018-03-30 2018-09-07 上海分赋信息科技有限公司 A variety of trigger mechanisms are built based on external data to execute the method and system of intelligent contract in block chain network
CN108830632A (en) * 2018-04-24 2018-11-16 深圳市轱辘车联数据技术有限公司 A kind of integration managing method, block chain node device and client
CN108711105A (en) * 2018-05-16 2018-10-26 四川吉鼎科技有限公司 A kind of Secure Transaction verification method and system based on block chain
CN108664650B (en) * 2018-05-17 2020-05-22 百度在线网络技术(北京)有限公司 Transaction processing method, device, equipment and storage medium of block chain network
WO2019231408A1 (en) * 2018-06-01 2019-12-05 Mettkaruchit Monai Balance block chain transaction system and recording method
CN109102286B (en) * 2018-08-02 2023-04-07 平安科技(深圳)有限公司 Cross-account book transaction method and device
CN109345382A (en) * 2018-08-09 2019-02-15 上海常仁信息科技有限公司 Trade type robot system based on block chain
CN110611701B (en) * 2018-08-21 2022-10-11 汇链丰(北京)科技有限公司 Parameter configuration and transaction processing method based on block chain
CN109447799B (en) * 2018-10-08 2021-10-08 全链通有限公司 Intelligent contract trading method and system based on block chain network
CN109447639A (en) * 2018-10-23 2019-03-08 杭州复杂美科技有限公司 Privacy transactions balances scan method, equipment and storage medium
CN109584066B (en) * 2018-10-31 2020-09-01 阿里巴巴集团控股有限公司 Privacy transaction based on block chain and application method and device thereof
CN109636543A (en) * 2018-12-25 2019-04-16 北京云测网络科技有限公司 A kind of block chain test method and device
CN109815722B (en) * 2019-01-31 2021-04-27 上海易点时空网络有限公司 Private data transaction method and device
CN109978696A (en) * 2019-04-08 2019-07-05 创易(广州)区块链技术有限公司 A kind of affaris safety trade system and its application method based on block chain
CN110020951A (en) * 2019-04-10 2019-07-16 北京筑龙信息技术有限责任公司 A kind of transaction data authentication method, apparatus and storage medium based on block chain
CN110263547B (en) * 2019-05-31 2021-07-20 创新先进技术有限公司 Method and device for realizing dynamic encryption based on contract state modification sequence
US20200175509A1 (en) 2019-06-28 2020-06-04 Alibaba Group Holding Limited Transferring method and system based on blockchain smart contract
CN110443609A (en) * 2019-07-04 2019-11-12 杭州复杂美科技有限公司 Multi-signature method of commerce, equipment and storage medium
CN110517029B (en) * 2019-08-29 2024-02-23 深圳市迅雷网络技术有限公司 Method, device, equipment and blockchain system for verifying blockchain cross-chain transaction
CN110717124B (en) * 2019-10-09 2021-03-23 支付宝(杭州)信息技术有限公司 Method and device for realizing pixel occupation of pixel page
CN110765147B (en) * 2019-10-22 2022-09-06 全链通有限公司 Content updating method based on block chain encrypted storage, user node and medium
CN110796448A (en) * 2019-10-22 2020-02-14 全链通有限公司 Intelligent contract verification method based on block chain, participating node and medium
CN112749964B (en) * 2019-10-30 2024-01-16 深圳市迅雷网络技术有限公司 Information monitoring method, system, equipment and storage medium
CN111340493B (en) * 2020-03-04 2023-05-05 江苏大学 Multi-dimensional distributed abnormal transaction behavior detection method
CN111415152A (en) * 2020-03-16 2020-07-14 深圳市望岳安全技术有限公司 Safe transaction system based on block chain
CN111709744B (en) * 2020-06-04 2022-07-22 江苏荣泽信息科技股份有限公司 Private transaction processing method based on block chain
CN111724159B (en) * 2020-06-04 2022-07-15 江苏荣泽信息科技股份有限公司 Authority management system based on blockchain transaction
CN111835929B (en) * 2020-07-14 2022-02-25 中国联合网络通信集团有限公司 Telephone charge transaction method and system based on block chain
CN113300850B (en) * 2021-04-30 2022-10-21 深圳市东恒尚科信息技术有限公司 Electronic transaction system based on block chain
CN115511486A (en) * 2021-06-07 2022-12-23 腾讯科技(深圳)有限公司 Transaction processing method, device, medium and electronic equipment
CN113538139A (en) * 2021-06-29 2021-10-22 深圳市高德信通信股份有限公司 Block chain-based secure transaction method
CN117132280B (en) * 2023-10-26 2024-02-02 环球数科集团有限公司 Distributed transaction verification system based on Web3 technology

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160125403A1 (en) * 2014-04-28 2016-05-05 Chin-hao Hu Offline virtual currency transaction
CN105761146A (en) * 2016-01-24 2016-07-13 杭州复杂美科技有限公司 Block link matching exchange
CN105871923A (en) * 2016-06-15 2016-08-17 腾讯科技(深圳)有限公司 Information processing method, information recording nodes and participation nodes
CN105976231A (en) * 2016-06-24 2016-09-28 深圳前海微众银行股份有限公司 Asset management method based on intelligent block chain contracts and nodes
CN106055597A (en) * 2016-05-24 2016-10-26 布比(北京)网络技术有限公司 Digital transaction system, and account information query method therefor
CN106548330A (en) * 2016-10-27 2017-03-29 上海亿账通区块链科技有限公司 Transaction verification method and system based on block chain

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9397985B1 (en) * 2015-04-14 2016-07-19 Manifold Technology, Inc. System and method for providing a cryptographic platform for exchanging information
CN105488665A (en) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 Decentralized transaction method
CN105956923B (en) * 2016-04-20 2022-04-29 上海如鸽投资有限公司 Asset transaction system and digital authentication and transaction method of assets
CN105931052A (en) * 2016-04-21 2016-09-07 四川大学 Virtual currency transaction validation method based on block chain multi-factor cross-validation
CN106055993A (en) * 2016-08-13 2016-10-26 深圳市樊溪电子有限公司 Encryption storage system for block chains and method for applying encryption storage system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160125403A1 (en) * 2014-04-28 2016-05-05 Chin-hao Hu Offline virtual currency transaction
CN105761146A (en) * 2016-01-24 2016-07-13 杭州复杂美科技有限公司 Block link matching exchange
CN106055597A (en) * 2016-05-24 2016-10-26 布比(北京)网络技术有限公司 Digital transaction system, and account information query method therefor
CN105871923A (en) * 2016-06-15 2016-08-17 腾讯科技(深圳)有限公司 Information processing method, information recording nodes and participation nodes
CN105976231A (en) * 2016-06-24 2016-09-28 深圳前海微众银行股份有限公司 Asset management method based on intelligent block chain contracts and nodes
CN106548330A (en) * 2016-10-27 2017-03-29 上海亿账通区块链科技有限公司 Transaction verification method and system based on block chain

Cited By (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11861606B2 (en) * 2017-11-30 2024-01-02 Visa International Service Association Blockchain system for confidential and anonymous smart contracts
US20220129884A1 (en) * 2017-11-30 2022-04-28 Visa International Service Association Blockchain system for confidential and anonymous smart contracts
US11379826B2 (en) 2018-08-06 2022-07-05 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
US11244306B2 (en) 2018-08-06 2022-02-08 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
CN111899020A (en) * 2018-08-13 2020-11-06 创新先进技术有限公司 Block chain transaction method and device and electronic equipment
US11392942B2 (en) 2018-08-30 2022-07-19 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
US11341492B2 (en) 2018-08-30 2022-05-24 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
US12021993B2 (en) 2018-09-20 2024-06-25 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device
US11032077B2 (en) 2018-09-20 2021-06-08 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device
US11050549B2 (en) 2018-09-30 2021-06-29 Advanced New Technologies Co., Ltd. Blockchain-based transaction method and apparatus, and remitter device
CN109359992A (en) * 2018-10-09 2019-02-19 北京彩球世纪科技有限公司 A kind of novel block chain subregion sliced fashion and device
EP3872737A4 (en) * 2018-10-25 2021-12-15 Tencent Technology (Shenzhen) Company Limited Numerical value transfer method, device, and system
US20210042740A1 (en) * 2018-10-25 2021-02-11 Tencent Technology (Shenzhen) Company Limited Value transfer method, apparatus, and system
US11797985B2 (en) 2018-10-25 2023-10-24 Tencent Technology (Shenzhen) Company Limited Value transfer method, apparatus, and system
CN110546667B (en) * 2018-11-07 2023-08-18 创新先进技术有限公司 Blockchain data protection using homomorphic encryption
CN110546667A (en) * 2018-11-07 2019-12-06 阿里巴巴集团控股有限公司 block chain data protection using homomorphic encryption
CN109711176A (en) * 2018-12-12 2019-05-03 曲阜师范大学 One kind being based on Q-Learning intelligence contract validation checking method
CN109711176B (en) * 2018-12-12 2023-08-25 曲阜师范大学 Q-Learning intelligent contract effectiveness detection method
CN109784918A (en) * 2018-12-15 2019-05-21 深圳壹账通智能科技有限公司 Information measure of supervision, device, equipment and storage medium based on block chain
CN109493060A (en) * 2018-12-20 2019-03-19 莆田市烛火信息技术有限公司 A kind of account book accounting system based on block chain
CN109493060B (en) * 2018-12-20 2020-08-18 莆田市烛火信息技术有限公司 Account book accounting system based on block chain
US11416854B2 (en) 2018-12-29 2022-08-16 Advanced New Technologies Co., Ltd. System and method for information protection
CN109636622B (en) * 2019-01-03 2024-03-29 平安科技(深圳)有限公司 Block chain-based fund data sharing method and system and electronic equipment
CN109636622A (en) * 2019-01-03 2019-04-16 平安科技(深圳)有限公司 A kind of fund data sharing method, system and electronic equipment based on block chain
CN109859041B (en) * 2019-01-09 2023-06-27 平安科技(深圳)有限公司 Block chain-based fund transaction real-time updating method and system and electronic equipment
CN109859041A (en) * 2019-01-09 2019-06-07 平安科技(深圳)有限公司 Fund transaction real time updating method and system, electronic equipment based on block chain
CN109753288B (en) * 2019-01-14 2022-02-15 杭州云象网络技术有限公司 Intelligent contract compiling method suitable for formalized verification
CN109753288A (en) * 2019-01-14 2019-05-14 杭州云象网络技术有限公司 A kind of intelligent contract Compilation Method suitable for Formal Verification
CN109886661A (en) * 2019-01-16 2019-06-14 深圳壹账通智能科技有限公司 Across chain digital cash exchanging method, device, computer system and storage medium
CN109858262A (en) * 2019-01-17 2019-06-07 平安科技(深圳)有限公司 Workflow examination and approval method, apparatus, system and storage medium based on block catenary system
CN109858914A (en) * 2019-01-18 2019-06-07 深圳壹账通智能科技有限公司 Block chain data verification method, device, computer equipment and readable storage medium storing program for executing
CN111767556A (en) * 2019-01-31 2020-10-13 阿里巴巴集团控股有限公司 Method for realizing privacy protection in block chain, node and storage medium
CN111784341A (en) * 2019-02-01 2020-10-16 阿里巴巴集团控股有限公司 Block chain transaction method and device, electronic equipment and storage medium
CN111784341B (en) * 2019-02-01 2024-05-28 创新先进技术有限公司 Block chain transaction method and device, electronic equipment and storage medium
CN112767153A (en) * 2019-02-01 2021-05-07 创新先进技术有限公司 Block chain transaction method and device, electronic equipment and storage medium
CN110210859A (en) * 2019-06-11 2019-09-06 北京艾摩瑞策科技有限公司 Method of investigation and study and its equipment on a kind of block chain
CN110223117A (en) * 2019-06-11 2019-09-10 北京艾摩瑞策科技有限公司 A kind of method of investigation and study and its equipment of combination block chain
CN110232594A (en) * 2019-06-11 2019-09-13 北京艾摩瑞策科技有限公司 A kind of method of investigation and study realized by block chain and its equipment
CN110210977A (en) * 2019-06-11 2019-09-06 北京艾摩瑞策科技有限公司 A kind of data trade method and its equipment
CN110232594B (en) * 2019-06-11 2022-06-28 北京瑞策科技有限公司 Investigation method realized through block chain and equipment thereof
CN110210859B (en) * 2019-06-11 2022-02-22 北京瑞策科技有限公司 Investigation method and device on block chain
CN110288480A (en) * 2019-06-28 2019-09-27 深圳前海微众银行股份有限公司 A kind of Private transaction method and device of block chain
CN110647439B (en) * 2019-08-15 2023-02-03 深圳壹账通智能科技有限公司 Method and device for confirming block chain system deployment, computer equipment and storage medium
CN110647439A (en) * 2019-08-15 2020-01-03 深圳壹账通智能科技有限公司 Method and device for confirming block chain system deployment, computer equipment and storage medium
CN110706107A (en) * 2019-09-27 2020-01-17 北京科东电力控制系统有限责任公司 Global energy transnational transaction method and system
CN110853216A (en) * 2019-10-18 2020-02-28 深圳壹账通智能科技有限公司 Information storage method, information storage device, information storage medium and computer equipment
CN110766400A (en) * 2019-10-22 2020-02-07 全链通有限公司 Transaction record processing method based on block chain, accounting node and medium
CN110958123A (en) * 2019-12-09 2020-04-03 国网新疆电力有限公司信息通信公司 Block chain-based data secure transmission method
CN110958123B (en) * 2019-12-09 2022-06-03 国网新疆电力有限公司信息通信公司 Block chain-based data secure transmission method
CN111949623B (en) * 2020-08-13 2022-02-01 广东省林业科学研究院 Inspection data analysis and verification system
CN111949623A (en) * 2020-08-13 2020-11-17 广东省林业科学研究院 Inspection data analysis and verification system
CN112116400A (en) * 2020-09-28 2020-12-22 平安壹钱包电子商务有限公司 Virtual resource intercommunication method and device based on block chain and related equipment
CN112346820A (en) * 2020-11-16 2021-02-09 杭州复杂美科技有限公司 Block chain JVM application method, device and storage medium
CN114707981A (en) * 2020-12-16 2022-07-05 福州数据技术研究院有限公司 Hospital alliance pre-fund exchange management method and system based on block chain distributed accounting
CN112862493A (en) * 2021-01-27 2021-05-28 中山大学 Intelligent Pompe deception detection method, device, terminal and storage medium
CN113269644B (en) * 2021-05-28 2023-06-02 长沙链奇科技有限公司 Transaction processing method and device based on blockchain
CN113269644A (en) * 2021-05-28 2021-08-17 长沙链奇科技有限公司 Transaction processing method and device based on block chain
WO2022267316A1 (en) * 2021-06-24 2022-12-29 北京中电普华信息技术有限公司 Blockchain-based power demand response processing method and apparatus
CN113612758B (en) * 2021-07-29 2022-12-13 石家庄学院 Block chain-based Internet of things data security management system and method
CN113612758A (en) * 2021-07-29 2021-11-05 石家庄学院 Block chain-based Internet of things data security management system and method
CN113760651A (en) * 2021-08-12 2021-12-07 熵链科技(福建)有限公司 Method, system and storage medium for collecting running state of main sub-chain of block chain
CN113760651B (en) * 2021-08-12 2024-04-02 熵链科技(福建)有限公司 Main sub-chain running state collection method, system and storage medium of block chain
CN114363336A (en) * 2021-12-31 2022-04-15 支付宝(杭州)信息技术有限公司 Method and device for starting/closing block link point service
CN115239339B (en) * 2022-08-03 2023-02-14 浙江省金融综合服务平台管理有限公司 Account transaction information verification method based on block chain
CN115239339A (en) * 2022-08-03 2022-10-25 浙江省金融综合服务平台管理有限公司 Account transaction information verification method based on block chain

Also Published As

Publication number Publication date
CN106548330A (en) 2017-03-29
CN106548330B (en) 2018-03-16

Similar Documents

Publication Publication Date Title
WO2018076762A1 (en) Block chain-based transaction verification method and system, electronic device, and medium
US11005665B2 (en) Blockchain-based secure transaction method, electronic device, system and storage medium
CN107453865B (en) Multi-party data sharing method and system for protecting privacy of data sending source
KR102145701B1 (en) Prevent false display of input data by participants in secure multi-party calculations
CN109067528B (en) Password operation method, work key creation method, password service platform and equipment
CN110268691A (en) Alliance's block chain network with verified block chain and common recognition agreement
CN111046352A (en) Identity information security authorization system and method based on block chain
CN108616539A (en) A kind of method and system that block chain transaction record accesses
CN109347625B (en) Password operation method, work key creation method, password service platform and equipment
CN110784320A (en) Distributed key implementation method and system and user identity management method and system
CZ197896A3 (en) Encryption method with safekeeping of a key in a third person and a cryptographic system for making the same
CN117544296A (en) Controlled release of encrypted private keys
CN109598506B (en) Method, system, computing device and computer readable storage medium for precisely delaying encryption of blockchain
CN111047314A (en) Financial data processing method and system based on block chain
CN112532656B (en) Block chain-based data encryption and decryption method and device and related equipment
JP2023535040A (en) Master key escrow process
CN110309160A (en) Data enter chain transaction methods, device, computer equipment and storage medium
CN110866261A (en) Data processing method and device based on block chain and storage medium
CN115664659A (en) Method, device, equipment and medium for supervising blockchain transaction data
Alexander et al. Cybersecurity, information assurance, and big data based on blockchain
CN111814193B (en) Information sharing method, device and equipment
CN112217636A (en) Data processing method and device based on block chain, computer equipment and medium
CN116596094A (en) Data auditing system, method, computer equipment and medium based on federal learning
CN111131218A (en) Blacklist management method, device, computer system and readable storage medium
CN114641788B (en) Method and apparatus for preventing denial of service attacks on blockchain systems

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17863348

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 13/08/2019)

122 Ep: pct application non-entry in european phase

Ref document number: 17863348

Country of ref document: EP

Kind code of ref document: A1