WO2018076762A1 - 基于区块链的交易验证方法、系统、电子装置及介质 - Google Patents
基于区块链的交易验证方法、系统、电子装置及介质 Download PDFInfo
- 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
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
- G06Q20/38215—Use 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
一种基于区块链的交易验证方法、系统、电子装置及介质,该方法包括:区块链上的节点在处理交易时,解密各个交易方的原始余额,并对各个交易方的原始余额进行计算得到新余额,将各个交易方的新余额进行加密得到加密新余额,通过智能合约将各个加密新余额广播到该区块链的各个节点上(S10);当该区块链的节点接收到广播来的各个交易方对应的加密新余额后,启动对应的智能合约进行合数验证(S20);若合数验证均通过,则该区块链上各个节点对应的智能合约基于各个交易方对应的加密新余额对自身数据进行更新(S30);调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验(S40)。该方法能验证交易是否正常,在不占用系统开销的情况下保证区块链上的交易处理速度。
Description
优先权申明
本申请基于巴黎公约申明享有2016年10月27日递交的申请号为CN201610959872.X、名称为“基于区块链的交易验证方法及系统”中国专利申请的优先权,该中国专利申请的整体内容以参考的方式结合在本申请中。
本发明涉及区块链技术领域,尤其涉及一种基于区块链的交易验证方法、系统、电子装置及介质。
区块链技术因其具备的去中心化、信息不可篡改性等特点,越来越受到金融、保险等领域的公司的青睐,尤其是运用区块链技术实现多方参与的交易事件(例如,转账交易、支付交易等事件)越来越成为人们关注的焦点,例如,当银行A要买100票据给银行B,如果这笔交易在区块链上进行,那么所有其他在区块链上的节点都会看到这笔交易,好处是其他参与方可以一起参与确认交易准确性,防止信息的篡改。然而,由于在去中心化的区块链系统当中没有绝对权威机构节点,因此对每笔交易进行集体验证是必要的一步,这使得交易参与方的交易毫无秘密可言,一个机构的账户也有可能被其他节点上的机构跟踪,从而带来信息泄露的风险。
虽然,目前业界采用了一些解决信息泄露的区块链交易解决方案,然而现有的解决方案要么是信息泄露解决的不够彻底,要么是计算效率低下,且系统运行开销巨大,限制区块链技术在交易场景中的运用。
综上所述,如何在既能有效保证交易信息的安全,又能有效保证交易处理的速度且降低系统开销的情况下,将区块链技术有效运用在交易场景下,已经成为一种亟待解决的技术问题。
发明内容
本发明的主要目的在于提供一种基于区块链的交易验证方法、系统、电子装置及介质,旨在有效保证交易信息的安全,且能保证交易处理的速度。
本申请第一方面提供一种基于区块链的交易验证方法,所述方法包括以下步骤:
a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;
a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;
a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;
a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
本申请第二方面提供一种基于区块链的交易验证系统,所述交易验证系统包括:
广播模块,用于当区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,由该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;
合数验证模块,用于当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;
更新模块,用于若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则由该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;
余额检验模块,用于调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
本申请第三方面提供一种电子装置,包括处理设备、存储设备及交易验证系统,该交易验证系统存储于该存储设备中,包括至少一个计算机可读指令,该至少一个计算机可读指令可被所述处理设备执行,以实现以下操作:
a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;
a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;
a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个
所述交易方对应的加密新余额对自身数据进行更新;
a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
本申请第四方面提供一种计算机可读存储介质,其上存储有至少一个可被处理设备执行以实现以下操作的计算机可读指令:
a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;
a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;
a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;
a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
本发明提出的基于区块链的交易验证方法、系统、电子装置及介质,区块链上的节点在处理带有交易类型和交易金额的交易时,基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,并将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;在合数验证通过,才由所述区块链节点对应的智能合约基于所述交易参数对自身数据进行更新。由于广播的各个所述交易方对应的新余额均进行了加密处理,该区块链的其他节点无法获知该新余额,且只有在合数验证通过后,才进行数据更新,能防止多方交易中各账户的余额泄露,有效地保证了交易信息的安全。此外,还将各个节点的单个账户的余额发给所述区块链外部预设的负数余额验证系统来进行负数余额检验。由于利用外部的负数余额验证系统来进行负数余额检验,既能进一步验证多方交易是否正常,又能在不占用系统开销的情况下保证区块链上的交易处理速度。
图1为本发明基于区块链的交易验证方法的较佳实施例的应用环境示意图;
图2为本发明基于区块链的交易验证方法一实施例的流程示意图;
图3为本发明交易验证系统一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参阅图1所示,是本发明实现基于区块链的交易验证方法的较佳实施例的应用环境示意图。应用环境示意图包括电子装置1及终端设备2。电子装置1可以通过网络、近场通信技术等适合的技术与终端设备2进行数据交互。
终端设备2包括,但不限于,任何一种可与用户通过键盘、鼠标、遥控器、触摸板或者声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA),游戏机、交互式网络电视(Internet Protocol Television,IPTV)、智能式穿戴式设备等。
电子装置1是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。电子装置1可以是计算机、也可以是单个网络服务器、多个网络服务器组成的服务器组或者基于云计算的由大量主机或者网络服务器构成的云,其中云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。
在本实施例中,电子装置1包括,但不仅限于,可通过系统总线相互通信连接的存储设备11、处理设备12、及网络接口13。需要指出的是,图1仅示出了具有组件11-13的电子装置1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,存储设备11包括内存及至少一种类型的可读存储介质。内存为电子装置1的运行提供缓存;可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,可读存储介质可以是电子装置1的内部存储单元,例如该电子装置1的硬盘;在另一些实施例中,该非易失性存储介质也可以是电子装置1的外部存储设备,例如电子装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。本实施例中,存储设备11的可读存储介质通常用于存储安装于电子装置1的操作系统和各类应用软件,例如本申请一实施例中的交易验证系统的程序代码等。此外,存储设备11还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理设备12在一些实施例中可以包括一个或者多个微处理器、微控制器、数字处理器等。该处理设备12通常用于控制电子装置1的运行,例如执行与终端设备2进行数据交互或者通信相关的控制和处理等。在本实施例中,处理设备12用于运行存储设备11中存储的程序代码或者处理数据,例如运行交易验证系统等。
网络接口13可包括无线网络接口或有线网络接口,该网络接口13通常用于在电子装置1与其他电子设备之间建立通信连接。本实施例中,网络接口13主要用于将电子装置1与一个或多个终端设备2相连,在电子装置1与一个或多个终端设备2之间建立数据传输通道和通信连接。
交易验证系统包括至少一个存储在存储设备11中的计算机可读指令,该至少一个计算机可读指令可被处理设备12执行,以实现本申请各实施例的基于区块链的交易验证方法。如后续所述,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。
在一实施例中,交易验证系统被处理设备12执行时,实现以下操作:首先区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过,并将交易的相关信息及交易结果发送至终端设备2以显示给终端用户。
在一实施例中,交易验证系统存储在存储设备11中,包括至少一个存储在存储设备11中的计算机可读指令,该至少一个计算机可读指令可被处理设备12执行,以实现本申请各实施例的基于区块链的交易验证方法。如后续所述,该至少一个计算机可读指令依据其各部分所实现的功能不同,可被划为不同的逻辑模块。
本发明提供一种基于区块链的交易验证方法。
参照图2,图2为本发明基于区块链的交易验证方法一实施例的流程示意图。
在一实施例中,该基于区块链的交易验证方法包括:
步骤S10,区块链上的一个节点在处理一个带有交易类型和交易金额的交
易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上。
当区块链上的一个节点在完成一个交易事件后,会将该交易事件对应的交易参数广播给该区块链上的其他节点。其中,所述交易参数可包括交易类型和/或交易金额,例如,若区块链上的A节点向B节点转账支付了金额X,则A节点将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:A节点转出”,A节点对外广播的交易参数中还包括“交易金额:X”;同时,B节点也将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:B节点转入”,B节点对外广播的交易参数中还包括“交易金额:X”。
本实施例中,当区块链上的一个节点在处理一个带有交易类型(例如,A转账给B)和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算以算出对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数(所述加密参数与所述解密参数可以相同,也可以不同)进行加密,通过智能合约将各个所述交易方对应的加密后的新余额广播到该区块链的各个节点上。
步骤S20,当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证。
区块链上的数据通常会被存放在参与节点上的两个地方:智能合约(每个智能合约存有自己的当前状况)中和节点上的事务记录(transaction log,用来滚出每个智能合约上数据当前的状况)中,每个区块链节点对应一个事务记录和一个或多个智能合约。当一个交易参数传到区块链的节点上时,这个交易参数会被记录到该节点对应的事务记录上并同时传给与该交易参数对应的智能合约去运行,并由该交易参数对应的智能合约上的代码对智能合约的自身数据进行更新。
本实施例中,若有区块链节点接收到该区块链上的其他节点广播来的各个所述交易方对应的加密新余额,则该区块链节点将所述加密新余额发给该区块链节点对应的智能合约进行合数验证,即验证交易前的所有节点的余额之和是否等于交易之后的所有节点的余额之和,以验证该交易是否正常。本实施例中,该区块链节点对应的智能合约可基于预设的同态加密验证算法来进行合数验证。
其中,同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。本实施例中,基于预设的同态加密验证算法可验证交易前的所有节点的余额之和是否等于
交易之后的所有节点的余额之和,从而验证该交易是否正常。例如,在一种实施方式中,该区块链节点对应的智能合约可以采用加法同态加密验证算法进行合数验证,假设R和S是域,称加密函数E:R→S为加法同态,如果存在有效算法⊕,使得E(x+y)=E(x)⊕E(y)或者x+y=D(E(x)⊕E(y))成立,该有效算法⊕即为加法同态加密验证算法,这个算法不仅能验证账户合数,同时,还能确保不泄漏账户的余额x和y。
当运用区块链技术进行多方参与的交易事件例如转账交易、支付交易等事件时,在去中心化的区块链系统当中,由于没有绝对权威机构节点,因此对每笔交易都必须进行集体验证。本实施例中采用同态加密验证算法来进行合数验证,既能有效地验证运用区块链技术进行多方参与的交易是否正常,又能防止多方账户的余额泄露,有效地保证了交易信息的安全。
步骤S30,若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;
若该区块链节点对应的智能合约对所述交易参数的合数验证通过,则说明该交易正常,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新。例如,若所述交易参数包括的交易类型是“A节点转出”,所述交易参数包括的交易金额是X,则该区块链节点对应的智能合约将自身数据中的A节点余额减少X。
S40、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
因为每个节点的余额都是独立数组,所以可以对多个节点余额进行多线程检验,同时,因为同一个节点参与每次交易的账户、交易类型和金额是被记载在案的,所以通过虚假余额检验可以有效防止用户在某个节点通过分账户分摊余额的形式改变某个分账户的余额从而规避所述合数验证的校验,例如,银行A可把账号001上的100张票据通过以下分账户分摊余额的形式变成400张:先创建一个002账号并放上400余额,然后再在一个新的003账号上存-300。
本实施例中通过在所述区块链外部的负数余额验证系统,即利用不在所述区块链上运行的负数余额验证系统来启动多个线程对参与该交易事件的各个节点的各个账户的余额进行负数余额检验,能避免用户通过制造存有负数的账号的方式来骗过合数验证的情况发生,能进一步地更加准确的验证交易是否正常,而且,负数余额验证系统并不在所述区块链上运行,而是在外部单独运行,不会对区块链上的交易处理速度造成影响,有效地保证了区块链上较快的交易处理速度。
本实施例中若有区块链节点接收到区块链上的其他节点广播来的交易参
数,区块链上的节点在处理带有交易类型和交易金额的交易时,基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,并将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;在合数验证通过,才由所述区块链节点对应的智能合约基于所述交易参数对自身数据进行更新。由于广播的各个所述交易方对应的新余额均进行了加密处理,该区块链的其他节点无法获知该新余额,且只有在合数验证通过后,才进行数据更新,能防止多方交易中各账户的余额泄露,有效地保证了交易信息的安全。此外,还将各个节点的单个账户的余额发给所述区块链外部预设的负数余额验证系统来进行负数余额检验。由于利用外部的负数余额验证系统来进行负数余额检验,既能进一步验证多方交易是否正常,又能在不占用系统开销的情况下保证区块链上的交易处理速度。
进一步地,在其他实施例中,该方法还可以包括:
将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;
该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。
本实施例中,在该节点通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上的同时,还将用于对各个所述交易方对应的加密后的新余额进行解密的第二解密参数通过该节点与监管方节点对应的秘钥进行加密,并将加密后的解密参数通过智能合约广播到该区块链上的监管方节点上。在该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,且该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新后,由该区块链上的监管方节点在读取更新过的各个所述交易方对应的加密新余额后,通过所述秘钥对所述加密后的解密参数进行解密,通过解密后的解密参数对各个所述交易方对应的加密后的新余额进行解密,并对解密后的各个新余额进行负数余额验证,进一步地从区块链本身对该区块链上的各个账户的余额进行负数余额检验,以进一步验证该交易是否正常。
进一步地,在其他实施例中,该方法还可以包括:
若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节
点进行通知。
若有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,则由区块链上的监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向所述区块链中除所述异常区块链节点之外的其他节点进行通知,以提醒其他节点该账户处于异常状况,该账户对应的异常区块链节点参与的交易事件可能存在风险。
进一步地,在其他实施例中,该方法还可以包括:
若有账户未通过负数余额检验,则由所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在所述区块链上的交易权限。
若由所述负数余额验证系统对单个账户的余额进行负数余额检验时,有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,说明该账户对应的异常区块链节点参与的交易事件可能存在风险,则通过预设的区块链权限管理系统取消所述异常区块链节点在所述区块链上的交易权限,以阻止所述异常区块链节点在所述区块链上继续参与交易,保证所述区块链中除所述异常区块链节点之外的其他节点的交易安全。
进一步地,在其他实施例中,该方法还可以包括:
若所述区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件的所有参与节点发送该交易事件合数验证失败的通知,或者,向所述区块链上的所有节点发送该交易事件合数验证失败的通知。以提醒该交易事件的所有参与节点或所述区块链上的所有节点该交易事件出现异常,所述区块链节点参与的交易事件可能存在风险。
本发明进一步提供一种基于区块链的交易验证系统。
参照图3,图3为本发明交易验证系统一实施例的功能模块示意图。
在一实施例中,该交易验证系统包括:
广播模块01,用于当区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,由该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上。
当区块链上的一个节点在完成一个交易事件后,会将该交易事件对应的交易参数广播给该区块链上的其他节点。其中,所述交易参数可包括交易类型和/或交易金额,例如,若区块链上的A节点向B节点转账支付了金额X,则A节点将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:A节点转出”,A节点对外广播的交易参
数中还包括“交易金额:X”;同时,B节点也将该交易事件对应的交易参数广播给该区块链上的其他节点,对外广播的交易参数中包括“交易类型:B节点转入”,B节点对外广播的交易参数中还包括“交易金额:X”。
本实施例中,当区块链上的一个节点在处理一个带有交易类型(例如,A转账给B)和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算以算出对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数(所述加密参数与所述解密参数可以相同,也可以不同)进行加密,通过智能合约将各个所述交易方对应的加密后的新余额广播到该区块链的各个节点上。
合数验证模块02,用于当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证。
区块链上的数据通常会被存放在参与节点上的两个地方:智能合约(每个智能合约存有自己的当前状况)中和节点上的事务记录(transaction log,用来滚出每个智能合约上数据当前的状况)中,每个区块链节点对应一个事务记录和一个或多个智能合约。当一个交易参数传到区块链的节点上时,这个交易参数会被记录到该节点对应的事务记录上并同时传给与该交易参数对应的智能合约去运行,并由该交易参数对应的智能合约上的代码对智能合约的自身数据进行更新。
本实施例中,若有区块链节点接收到该区块链上的其他节点广播来的各个所述交易方对应的加密新余额,则该区块链节点将所述加密新余额发给该区块链节点对应的智能合约进行合数验证,即验证交易前的所有节点的余额之和是否等于交易之后的所有节点的余额之和,以验证该交易是否正常。本实施例中,该区块链节点对应的智能合约可基于预设的同态加密验证算法来进行合数验证。
其中,同态加密是基于数学难题的计算复杂性理论的密码学技术。对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。本实施例中,基于预设的同态加密验证算法可验证交易前的所有节点的余额之和是否等于交易之后的所有节点的余额之和,从而验证该交易是否正常。例如,在一种实施方式中,该区块链节点对应的智能合约可以采用加法同态加密验证算法进行合数验证,假设R和S是域,称加密函数E:R→S为加法同态,如果存在有效算法⊕,使得E(x+y)=E(x)⊕E(y)或者x+y=D(E(x)⊕E(y))成立,该有效算法⊕即为加法同态加密验证算法,这个算法不仅能验证账户合数,同时,还能确保不泄漏账户的余额x和y。
当运用区块链技术进行多方参与的交易事件例如转账交易、支付交易等事件时,在去中心化的区块链系统当中,由于没有绝对权威机构节点,因此对每笔交易都必须进行集体验证。本实施例中采用同态加密验证算法来进行合数验证,既能有效地验证运用区块链技术进行多方参与的交易是否正常,
又能防止多方账户的余额泄露,有效地保证了交易信息的安全。
更新模块03,用于若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则由该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新。
若该区块链节点对应的智能合约对所述交易参数的合数验证通过,则说明该交易正常,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新。例如,若所述交易参数包括的交易类型是“A节点转出”,所述交易参数包括的交易金额是X,则该区块链节点对应的智能合约将自身数据中的A节点余额减少X。
余额检验模块04,用于调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
因为每个节点的余额都是独立数组,所以可以对多个节点余额进行多线程检验,同时,因为同一个节点参与每次交易的账户、交易类型和金额是被记载在案的,所以通过虚假余额检验可以有效防止用户在某个节点通过分账户分摊余额的形式改变某个分账户的余额从而规避所述合数验证的校验,例如,银行A可把账号001上的100张票据通过以下分账户分摊余额的形式变成400张:先创建一个002账号并放上400余额,然后再在一个新的003账号上存-300。
本实施例中通过在所述区块链外部的负数余额验证系统,即利用不在所述区块链上运行的负数余额验证系统来启动多个线程对参与该交易事件的各个节点的各个账户的余额进行负数余额检验,能避免用户通过制造存有负数的账号的方式来骗过合数验证的情况发生,能进一步地更加准确的验证交易是否正常,而且,负数余额验证系统并不在所述区块链上运行,而是在外部单独运行,不会对区块链上的交易处理速度造成影响,有效地保证了区块链上较快的交易处理速度。
本实施例中若有区块链节点接收到区块链上的其他节点广播来的交易参数,区块链上的节点在处理带有交易类型和交易金额的交易时,基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,并将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,广播到该区块链的各个节点上;当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;在合数验证通过,才由所述区块链节点对应的智能合约基于所述交易参数对自身数据进行更新。由于广播的各个所述交易方对应的新余额均进行了加密处理,该区块链的其他节点无法获知该新余额,且只有在合数验证通过后,才进行数据更新,能防止多方交易中各账户的余额泄露,有效地保证了交易信息的安全。此外,还将各个节点的单个账户的余额发给所
述区块链外部预设的负数余额验证系统来进行负数余额检验。由于利用外部的负数余额验证系统来进行负数余额检验,既能进一步验证多方交易是否正常,又能在不占用系统开销的情况下保证区块链上的交易处理速度。
进一步地,在其他实施例中,上述广播模块01还可以用于:
将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;
上述余额检验模块04还可以用于:
由该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。
本实施例中,在该节点通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上的同时,还将用于对各个所述交易方对应的加密后的新余额进行解密的第二解密参数通过该节点与监管方节点对应的秘钥进行加密,并将加密后的解密参数通过智能合约广播到该区块链上的监管方节点上。在该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,且该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额进行更新后,由该区块链上的监管方节点在读取更新过的各个所述交易方对应的加密新余额后,通过所述秘钥对所述加密后的解密参数进行解密,通过解密后的解密参数对各个所述交易方对应的加密后的新余额进行解密,并对解密后的各个新余额进行负数余额验证,进一步地从区块链本身对该区块链上的各个账户的余额进行负数余额检验,以进一步验证该交易是否正常。
进一步地,在其他实施例中,上述余额检验模块04还可以用于:
若有账户未通过负数余额检验,则由所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。
若有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,则由区块链上的监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向所述区块链中除所述异常区块链节点之外的其他节点进行通知,以提醒其他节点该账户处于异常状况,该账户对应的异常区块链节点参与的交易事件可能存在风险。
进一步地,在其他实施例中,上述余额检验模块04还可以用于:
若有账户未通过负数余额检验,则由所述监管方节点通过预设的区块链
权限管理系统取消所述异常区块链节点在所述区块链上的交易权限。
若由所述负数余额验证系统对单个账户的余额进行负数余额检验时,有账户未通过负数余额检验,则有可能是出现了用户通过制造存有负数的账号的方式来骗过合数验证的情况,说明该账户对应的异常区块链节点参与的交易事件可能存在风险,则通过预设的区块链权限管理系统取消所述异常区块链节点在所述区块链上的交易权限,以阻止所述异常区块链节点在所述区块链上继续参与交易,保证所述区块链中除所述异常区块链节点之外的其他节点的交易安全。
进一步地,在其他实施例中,上述合数验证模块02还可以用于:
若所述区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件的所有参与节点发送该交易事件合数验证失败的通知,或者,向所述区块链上的所有节点发送该交易事件合数验证失败的通知。以提醒该交易事件的所有参与节点或所述区块链上的所有节点该交易事件出现异常,所述区块链节点参与的交易事件可能存在风险。
此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有交易验证系统,所述交易验证系统可被至少一个处理设备执行,以使所述至少一个处理设备执行如上述实施例中的基于区块链的交易验证方法的步骤,该基于区块链的交易验证方法的步骤S10、S20、S30等具体实施过程如上文所述,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。
Claims (20)
- 一种基于区块链的交易验证方法,其特征在于,所述方法包括以下步骤:a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
- 如权利要求1所述的基于区块链的交易验证方法,其特征在于,该方法还包括:将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。
- 如权利要求1或2所述的基于区块链的交易验证方法,其特征在于,该方法还包括:若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。
- 如权利要求1或2所述的基于区块链的交易验证方法,其特征在于,该方法还包括:若有账户未通过负数余额检验,则所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。
- 如权利要求1或2所述的基于区块链的交易验证方法,其特征在于,该方法还包括:若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。
- 一种基于区块链的交易验证系统,其特征在于,所述交易验证系统包括:广播模块,用于当区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,由该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;合数验证模块,用于当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;更新模块,用于若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则由该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;余额检验模块,用于调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
- 如权利要求6所述的交易验证系统,其特征在于,所述广播模块还用于:将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;所述余额检验模块还用于:由该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。
- 如权利要求6或7所述的交易验证系统,其特征在于,所述余额检验模块还用于:若有账户未通过负数余额检验,则由所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。
- 如权利要求6或7所述的交易验证系统,其特征在于,所述余额检验模块还用于:若有账户未通过负数余额检验,则由所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。
- 如权利要求6或7所述的交易验证系统,其特征在于,所述合数验证模块还用于:若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。
- 一种电子装置,包括处理设备、存储设备及交易验证系统,该交易验证系统存储于该存储设备中,包括至少一个计算机可读指令,该至少一个计算机可读指令可被所述处理设备执行,以实现以下操作:a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
- 如权利要求11所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的 秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。
- 如权利要求11或12所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。
- 如权利要求11或12所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:若有账户未通过负数余额检验,则所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。
- 如权利要求11或12所述的电子装置,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。
- 一种计算机可读存储介质,其上存储有至少一个可被处理设备执行以实现以下操作的计算机可读指令:a1、区块链上的一个节点在处理一个带有交易类型和交易金额的交易时,该节点通过该交易的交易方发送来的第一解密参数解密各个所述交易方的原始余额,并基于所述交易类型和交易金额对各个所述交易方的原始余额进行计算得到对应的新余额,将各个所述交易方对应的新余额通过所述交易方发送来的加密参数进行加密得到加密新余额,通过智能合约将各个所述交易方对应的加密新余额广播到该区块链的各个节点上;a2、当该区块链的节点接收到广播来的各个所述交易方对应的加密新余额后,启动对应的智能合约进行合数验证;a3、若该区块链上各个节点对应的智能合约对各个所述交易方对应的加密新余额的合数验证通过,则该区块链上各个节点对应的智能合约基于各个所述交易方对应的加密新余额对自身数据进行更新;a4、调用该区块链外部预设的负数余额验证系统启动多个线程,每个线 程同时负责对该区块链上各个节点的单个账户的余额进行负数余额检验,若该区块链上各个节点的单个账户余额的负数余额检验通过,则判定该交易验证通过。
- 如权利要求16所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:将第二解密参数通过该区块链的节点与该区块链上的监管方节点对应的秘钥进行加密,并将加密后的第二解密参数通过智能合约广播到该区块链上的监管方节点上,所述第二解密参数用于对各个所述交易方对应的加密新余额进行解密;该区块链上的监管方节点读取更新过的各个所述交易方对应的加密新余额,并通过所述秘钥对加密后的第二解密参数进行解密,通过解密后的第二解密参数对各个所述交易方对应的加密新余额进行解密,并对解密后的各个新余额进行负数余额验证。
- 如权利要求16或17所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:若有账户未通过负数余额检验,则所述监管方节点确定该账户对应的异常区块链节点,并将该账户的异常状况向除所述异常区块链节点外的其他节点进行通知。
- 如权利要求16或17所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:若有账户未通过负数余额检验,则所述监管方节点通过预设的区块链权限管理系统取消所述异常区块链节点在该区块链上的交易权限。
- 如权利要求16或17所述的计算机可读存储介质,其特征在于,所述至少一个计算机可读指令还可被所述处理设备执行,以实现以下操作:若该区块链节点对应的智能合约对所述交易参数的合数验证不通过,则向该交易事件所有参与节点发送该交易事件合数验证失败的通知,或者,向该区块链上的所有节点发送该交易事件合数验证失败的通知。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201610959872.X | 2016-10-27 | ||
| CN201610959872.XA CN106548330B (zh) | 2016-10-27 | 2016-10-27 | 基于区块链的交易验证方法及系统 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018076762A1 true WO2018076762A1 (zh) | 2018-05-03 |
Family
ID=58393982
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2017/091252 Ceased WO2018076762A1 (zh) | 2016-10-27 | 2017-06-30 | 基于区块链的交易验证方法、系统、电子装置及介质 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN106548330B (zh) |
| WO (1) | WO2018076762A1 (zh) |
Cited By (45)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109359992A (zh) * | 2018-10-09 | 2019-02-19 | 北京彩球世纪科技有限公司 | 一种新型的区块链分区分片方式和装置 |
| CN109493060A (zh) * | 2018-12-20 | 2019-03-19 | 莆田市烛火信息技术有限公司 | 一种基于区块链的账本记账系统 |
| CN109636622A (zh) * | 2019-01-03 | 2019-04-16 | 平安科技(深圳)有限公司 | 一种基于区块链的基金数据共享方法、系统及电子设备 |
| CN109711176A (zh) * | 2018-12-12 | 2019-05-03 | 曲阜师范大学 | 一种基于Q-Learning智能合约有效性检测方法 |
| CN109753288A (zh) * | 2019-01-14 | 2019-05-14 | 杭州云象网络技术有限公司 | 一种适用于形式化验证的智能合约编译方法 |
| CN109784918A (zh) * | 2018-12-15 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 基于区块链的信息监督方法、装置、设备和存储介质 |
| CN109858262A (zh) * | 2019-01-17 | 2019-06-07 | 平安科技(深圳)有限公司 | 基于区块链系统的流程审批方法、装置、系统及存储介质 |
| CN109858914A (zh) * | 2019-01-18 | 2019-06-07 | 深圳壹账通智能科技有限公司 | 区块链数据验证方法、装置、计算机设备及可读存储介质 |
| CN109859041A (zh) * | 2019-01-09 | 2019-06-07 | 平安科技(深圳)有限公司 | 基于区块链的基金交易实时更新方法及系统、电子设备 |
| CN109886661A (zh) * | 2019-01-16 | 2019-06-14 | 深圳壹账通智能科技有限公司 | 跨链数字货币兑换方法、装置、计算机系统及存储介质 |
| CN110210859A (zh) * | 2019-06-11 | 2019-09-06 | 北京艾摩瑞策科技有限公司 | 一种区块链上的调研方法及其设备 |
| CN110210977A (zh) * | 2019-06-11 | 2019-09-06 | 北京艾摩瑞策科技有限公司 | 一种数据交易方法及其设备 |
| CN110223117A (zh) * | 2019-06-11 | 2019-09-10 | 北京艾摩瑞策科技有限公司 | 一种结合区块链的调研方法及其设备 |
| CN110232594A (zh) * | 2019-06-11 | 2019-09-13 | 北京艾摩瑞策科技有限公司 | 一种通过区块链实现的调研方法及其设备 |
| CN110288480A (zh) * | 2019-06-28 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种区块链的私密交易方法及装置 |
| CN110546667A (zh) * | 2018-11-07 | 2019-12-06 | 阿里巴巴集团控股有限公司 | 使用同态加密的区块链数据保护 |
| CN110647439A (zh) * | 2019-08-15 | 2020-01-03 | 深圳壹账通智能科技有限公司 | 确认区块链系统部署方法、装置、计算机设备及存储介质 |
| CN110706107A (zh) * | 2019-09-27 | 2020-01-17 | 北京科东电力控制系统有限责任公司 | 一种全球能源跨国交易方法及系统 |
| CN110766400A (zh) * | 2019-10-22 | 2020-02-07 | 全链通有限公司 | 基于区块链的交易记录处理方法、记账节点及介质 |
| CN110853216A (zh) * | 2019-10-18 | 2020-02-28 | 深圳壹账通智能科技有限公司 | 信息存储方法、装置、存储介质和计算机设备 |
| CN110958123A (zh) * | 2019-12-09 | 2020-04-03 | 国网新疆电力有限公司信息通信公司 | 基于区块链的数据安全传输方法 |
| CN111767556A (zh) * | 2019-01-31 | 2020-10-13 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法及节点、存储介质 |
| CN111784341A (zh) * | 2019-02-01 | 2020-10-16 | 阿里巴巴集团控股有限公司 | 区块链交易方法及装置、电子设备、存储介质 |
| CN111899020A (zh) * | 2018-08-13 | 2020-11-06 | 创新先进技术有限公司 | 区块链交易方法及装置、电子设备 |
| CN111949623A (zh) * | 2020-08-13 | 2020-11-17 | 广东省林业科学研究院 | 一种检验数据分析验证系统 |
| CN112116400A (zh) * | 2020-09-28 | 2020-12-22 | 平安壹钱包电子商务有限公司 | 基于区块链的虚拟资源的互通方法、装置及相关设备 |
| CN112346820A (zh) * | 2020-11-16 | 2021-02-09 | 杭州复杂美科技有限公司 | 区块链jvm应用方法、设备和存储介质 |
| US20210042740A1 (en) * | 2018-10-25 | 2021-02-11 | Tencent Technology (Shenzhen) Company Limited | Value transfer method, apparatus, and system |
| CN112749967A (zh) * | 2021-01-19 | 2021-05-04 | 矩阵元技术(深圳)有限公司 | 交易数据的处理方法、装置、用户终端和服务器 |
| CN112767153A (zh) * | 2019-02-01 | 2021-05-07 | 创新先进技术有限公司 | 区块链交易方法及装置、电子设备、存储介质 |
| CN112862493A (zh) * | 2021-01-27 | 2021-05-28 | 中山大学 | 一种智能庞氏骗局检测方法、装置、终端及存储介质 |
| 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 (zh) * | 2021-05-28 | 2021-08-17 | 长沙链奇科技有限公司 | 基于区块链的交易处理方法及装置 |
| CN113612758A (zh) * | 2021-07-29 | 2021-11-05 | 石家庄学院 | 一种基于区块链的物联网数据安全管理系统及方法 |
| CN113760651A (zh) * | 2021-08-12 | 2021-12-07 | 熵链科技(福建)有限公司 | 区块链的主子链运行状态收集方法、系统及存储介质 |
| US11244306B2 (en) | 2018-08-06 | 2022-02-08 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain transactions |
| CN114363336A (zh) * | 2021-12-31 | 2022-04-15 | 支付宝(杭州)信息技术有限公司 | 一种启动/关闭区块链节点服务的方法和装置 |
| 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 (zh) * | 2020-12-16 | 2022-07-05 | 福州数据技术研究院有限公司 | 一种基于区块链分布式记账的医院联盟间预交金管理方法和系统 |
| US11416854B2 (en) | 2018-12-29 | 2022-08-16 | Advanced New Technologies Co., Ltd. | System and method for information protection |
| CN114936862A (zh) * | 2022-04-27 | 2022-08-23 | 建信金融科技有限责任公司 | 一种检测账户异常的方法及装置 |
| CN115239339A (zh) * | 2022-08-03 | 2022-10-25 | 浙江省金融综合服务平台管理有限公司 | 一种基于区块链的账户交易信息核验方法 |
| WO2022267316A1 (zh) * | 2021-06-24 | 2022-12-29 | 北京中电普华信息技术有限公司 | 基于区块链的电力需求响应处理方法和装置 |
Families Citing this family (58)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106548330B (zh) * | 2016-10-27 | 2018-03-16 | 上海亿账通区块链科技有限公司 | 基于区块链的交易验证方法及系统 |
| CN107194798B (zh) * | 2017-04-28 | 2021-07-20 | 广东网金控股股份有限公司 | 一种基于区块链联盟链的银行清算方法 |
| CN107273759B (zh) * | 2017-05-08 | 2020-07-14 | 上海点融信息科技有限责任公司 | 用于保护区块链数据的方法、设备以及计算机可读存储介质 |
| CN107239940A (zh) * | 2017-05-11 | 2017-10-10 | 北京博晨技术有限公司 | 基于区块链系统的网络交易方法及装置 |
| US11411740B2 (en) * | 2017-05-22 | 2022-08-09 | Nchain Licensing Ag | Duplicating smart contracts with termination condition |
| US10740733B2 (en) * | 2017-05-25 | 2020-08-11 | Oracle International Corporaton | Sharded permissioned distributed ledgers |
| CN107392603B (zh) * | 2017-06-26 | 2021-03-16 | 中国人民银行数字货币研究所 | 使用数字货币的交易方法和装置 |
| CN109118214B (zh) * | 2017-06-26 | 2020-11-17 | 华为技术有限公司 | 运行智能合约的方法和装置 |
| CN107358424B (zh) * | 2017-06-26 | 2020-09-29 | 中国人民银行数字货币研究所 | 一种基于数字货币的交易方法和装置 |
| CN107392528A (zh) * | 2017-06-30 | 2017-11-24 | 海航创新科技研究有限公司 | 集装箱运营数据处理方法和装置 |
| CN107464106B (zh) * | 2017-07-25 | 2021-01-26 | 北京果仁宝科技有限公司 | 区块链主链与侧链间交易的方法及系统 |
| CN107688999B (zh) * | 2017-08-11 | 2020-11-13 | 杭州溪塔科技有限公司 | 一种基于区块链的并行交易执行方法 |
| CN108012582B (zh) * | 2017-08-18 | 2019-08-23 | 达闼科技成都有限公司 | 区块链系统及其权限管理方法 |
| CN107729137B (zh) * | 2017-09-04 | 2021-06-22 | 深圳壹账通智能科技有限公司 | 服务器、区块链验签解密的方法及存储介质 |
| WO2019051822A1 (zh) * | 2017-09-18 | 2019-03-21 | 腾讯科技(深圳)有限公司 | 资源交易的方法、节点、装置及存储介质 |
| CN107679863B (zh) * | 2017-09-19 | 2020-12-08 | 中国银行股份有限公司 | 一种区块链系统及快速验证区块的方法 |
| CN107678865A (zh) * | 2017-09-20 | 2018-02-09 | 中国银行股份有限公司 | 基于交易分组的区块链的验证方法以及系统 |
| CN107682331B (zh) * | 2017-09-28 | 2020-05-12 | 复旦大学 | 基于区块链的物联网身份认证方法 |
| CN107862215B (zh) | 2017-09-29 | 2020-10-16 | 创新先进技术有限公司 | 一种数据存储方法、数据查询方法及装置 |
| CN107481146A (zh) * | 2017-10-13 | 2017-12-15 | 深圳市招股科技有限公司 | 一种基于区块链安全高效的金融交易方法 |
| CN107833060B (zh) * | 2017-11-13 | 2020-12-25 | 中国银行股份有限公司 | 一种区块链中智能合约交易的验证方法以及系统 |
| GB201720767D0 (en) | 2017-12-13 | 2018-01-24 | Barker Trevor | Computer-implemented system and method |
| CN108256859B (zh) * | 2018-01-02 | 2021-02-23 | 中国工商银行股份有限公司 | 基于区块链的金融产品交易共识方法、节点及系统 |
| CN108229943B (zh) * | 2018-01-19 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 区块链余额的调整方法及装置、电子设备 |
| CN108509810A (zh) * | 2018-03-19 | 2018-09-07 | 宋钰 | 数据处理方法及系统 |
| CN108510251A (zh) * | 2018-03-30 | 2018-09-07 | 上海分赋信息科技有限公司 | 基于外部数据构建多种触发机制以执行区块链网络中智能合约的方法及系统 |
| CN108830632A (zh) * | 2018-04-24 | 2018-11-16 | 深圳市轱辘车联数据技术有限公司 | 一种积分管理方法、区块链节点设备及客户端 |
| CN108711105A (zh) * | 2018-05-16 | 2018-10-26 | 四川吉鼎科技有限公司 | 一种基于区块链的安全交易验证方法及系统 |
| CN108664650B (zh) | 2018-05-17 | 2020-05-22 | 百度在线网络技术(北京)有限公司 | 一种区块链网络的事务处理方法、装置、设备及存储介质 |
| WO2019231408A1 (en) * | 2018-06-01 | 2019-12-05 | Mettkaruchit Monai | Balance block chain transaction system and recording method |
| CN109102286B (zh) * | 2018-08-02 | 2023-04-07 | 平安科技(深圳)有限公司 | 跨账本交易方法及装置 |
| CN109345382A (zh) * | 2018-08-09 | 2019-02-15 | 上海常仁信息科技有限公司 | 基于区块链的交易型机器人系统 |
| CN110611701B (zh) * | 2018-08-21 | 2022-10-11 | 汇链丰(北京)科技有限公司 | 一种基于区块链的参数配置和交易处理方法 |
| CN109447799B (zh) * | 2018-10-08 | 2021-10-08 | 全链通有限公司 | 基于区块链网络的智能合约交易方法和系统 |
| CN109447639A (zh) * | 2018-10-23 | 2019-03-08 | 杭州复杂美科技有限公司 | 隐私交易余额扫描方法、设备和存储介质 |
| CN109584066B (zh) * | 2018-10-31 | 2020-09-01 | 阿里巴巴集团控股有限公司 | 基于区块链的隐私交易及其应用方法和装置 |
| CN109636543A (zh) * | 2018-12-25 | 2019-04-16 | 北京云测网络科技有限公司 | 一种区块链测试方法和装置 |
| CN109815722B (zh) * | 2019-01-31 | 2021-04-27 | 上海易点时空网络有限公司 | 隐私数据交易方法及装置 |
| CN109978696A (zh) * | 2019-04-08 | 2019-07-05 | 创易(广州)区块链技术有限公司 | 一种基于区块链的安全交易系统及其使用方法 |
| CN110020951A (zh) * | 2019-04-10 | 2019-07-16 | 北京筑龙信息技术有限责任公司 | 一种基于区块链的交易数据验证方法、装置及存储介质 |
| CN110263547B (zh) * | 2019-05-31 | 2021-07-20 | 创新先进技术有限公司 | 基于合约状态的修改次序实现动态加密的方法及装置 |
| US20200175509A1 (en) | 2019-06-28 | 2020-06-04 | Alibaba Group Holding Limited | Transferring method and system based on blockchain smart contract |
| CN110443609A (zh) * | 2019-07-04 | 2019-11-12 | 杭州复杂美科技有限公司 | 多重签名交易方法、设备和存储介质 |
| CN110517029B (zh) * | 2019-08-29 | 2024-02-23 | 深圳市迅雷网络技术有限公司 | 区块链跨链交易验证的方法、装置、设备及区块链系统 |
| CN113158104A (zh) * | 2019-10-09 | 2021-07-23 | 支付宝(杭州)信息技术有限公司 | 用于实现像素页面的像素占领的方法及装置 |
| CN110765147B (zh) * | 2019-10-22 | 2022-09-06 | 全链通有限公司 | 基于区块链加密存储的内容更新方法、用户节点及介质 |
| CN110796448A (zh) * | 2019-10-22 | 2020-02-14 | 全链通有限公司 | 基于区块链的智能合约验证方法、参与节点及介质 |
| CN112749964B (zh) * | 2019-10-30 | 2024-01-16 | 深圳市迅雷网络技术有限公司 | 一种信息监控方法、系统、设备及存储介质 |
| CN111340493B (zh) * | 2020-03-04 | 2023-05-05 | 江苏大学 | 一种多维度分布式异常交易行为检测方法 |
| CN111415152A (zh) * | 2020-03-16 | 2020-07-14 | 深圳市望岳安全技术有限公司 | 一种基于区块链的安全交易系统 |
| CN111709744B (zh) * | 2020-06-04 | 2022-07-22 | 江苏荣泽信息科技股份有限公司 | 一种基于区块链的私密交易处理方法 |
| CN111724159B (zh) * | 2020-06-04 | 2022-07-15 | 江苏荣泽信息科技股份有限公司 | 一种基于区块链交易的权限管理系统 |
| CN111835929B (zh) * | 2020-07-14 | 2022-02-25 | 中国联合网络通信集团有限公司 | 基于区块链的话费交易方法及系统 |
| CN113300850B (zh) * | 2021-04-30 | 2022-10-21 | 深圳市东恒尚科信息技术有限公司 | 一种基于区块链的电子交易系统 |
| CN115511486B (zh) * | 2021-06-07 | 2025-08-05 | 腾讯科技(深圳)有限公司 | 交易处理方法、装置、介质及电子设备 |
| CN113538139A (zh) * | 2021-06-29 | 2021-10-22 | 深圳市高德信通信股份有限公司 | 一种基于区块链的安全交易方法 |
| CN117132280B (zh) * | 2023-10-26 | 2024-02-02 | 环球数科集团有限公司 | 一种基于Web3技术的分布式交易验证系统 |
| CN119273354B (zh) * | 2024-12-09 | 2025-02-21 | 广州合利宝支付科技有限公司 | 数字货币交易的流通管理方法、系统及存储介质 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160125403A1 (en) * | 2014-04-28 | 2016-05-05 | Chin-hao Hu | Offline virtual currency transaction |
| CN105761146A (zh) * | 2016-01-24 | 2016-07-13 | 杭州复杂美科技有限公司 | 区块链撮合交易所 |
| CN105871923A (zh) * | 2016-06-15 | 2016-08-17 | 腾讯科技(深圳)有限公司 | 信息处理方法、信息记录节点及参与节点 |
| CN105976231A (zh) * | 2016-06-24 | 2016-09-28 | 深圳前海微众银行股份有限公司 | 基于区块链智能合约的资产管理方法及节点 |
| CN106055597A (zh) * | 2016-05-24 | 2016-10-26 | 布比(北京)网络技术有限公司 | 数字交易系统、及用于其的账户信息查询方法 |
| CN106548330A (zh) * | 2016-10-27 | 2017-03-29 | 上海亿账通区块链科技有限公司 | 基于区块链的交易验证方法及系统 |
Family Cites Families (5)
| 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 (zh) * | 2015-11-25 | 2016-04-13 | 布比(北京)网络技术有限公司 | 一种去中心化的交易方法 |
| CN105956923B (zh) * | 2016-04-20 | 2022-04-29 | 上海如鸽投资有限公司 | 资产交易系统以及资产的数字化认证和交易方法 |
| CN105931052A (zh) * | 2016-04-21 | 2016-09-07 | 四川大学 | 一种基于区块链多因子交叉验证的虚拟货币交易验证方法 |
| CN106055993A (zh) * | 2016-08-13 | 2016-10-26 | 深圳市樊溪电子有限公司 | 一种用于区块链的加密存储系统及其使用方法 |
-
2016
- 2016-10-27 CN CN201610959872.XA patent/CN106548330B/zh active Active
-
2017
- 2017-06-30 WO PCT/CN2017/091252 patent/WO2018076762A1/zh not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160125403A1 (en) * | 2014-04-28 | 2016-05-05 | Chin-hao Hu | Offline virtual currency transaction |
| CN105761146A (zh) * | 2016-01-24 | 2016-07-13 | 杭州复杂美科技有限公司 | 区块链撮合交易所 |
| CN106055597A (zh) * | 2016-05-24 | 2016-10-26 | 布比(北京)网络技术有限公司 | 数字交易系统、及用于其的账户信息查询方法 |
| CN105871923A (zh) * | 2016-06-15 | 2016-08-17 | 腾讯科技(深圳)有限公司 | 信息处理方法、信息记录节点及参与节点 |
| CN105976231A (zh) * | 2016-06-24 | 2016-09-28 | 深圳前海微众银行股份有限公司 | 基于区块链智能合约的资产管理方法及节点 |
| CN106548330A (zh) * | 2016-10-27 | 2017-03-29 | 上海亿账通区块链科技有限公司 | 基于区块链的交易验证方法及系统 |
Cited By (67)
| 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 (zh) * | 2018-08-13 | 2020-11-06 | 创新先进技术有限公司 | 区块链交易方法及装置、电子设备 |
| 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 (zh) * | 2018-10-09 | 2019-02-19 | 北京彩球世纪科技有限公司 | 一种新型的区块链分区分片方式和装置 |
| EP3872737A4 (en) * | 2018-10-25 | 2021-12-15 | Tencent Technology (Shenzhen) Company Limited | METHOD, DEVICE AND SYSTEM FOR TRANSFERRING NUMERICAL VALUES |
| 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 (zh) * | 2018-11-07 | 2023-08-18 | 创新先进技术有限公司 | 使用同态加密的区块链数据保护 |
| CN110546667A (zh) * | 2018-11-07 | 2019-12-06 | 阿里巴巴集团控股有限公司 | 使用同态加密的区块链数据保护 |
| CN109711176A (zh) * | 2018-12-12 | 2019-05-03 | 曲阜师范大学 | 一种基于Q-Learning智能合约有效性检测方法 |
| CN109711176B (zh) * | 2018-12-12 | 2023-08-25 | 曲阜师范大学 | 一种基于Q-Learning智能合约有效性检测方法 |
| CN109784918A (zh) * | 2018-12-15 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 基于区块链的信息监督方法、装置、设备和存储介质 |
| CN109493060B (zh) * | 2018-12-20 | 2020-08-18 | 莆田市烛火信息技术有限公司 | 一种基于区块链的账本记账系统 |
| CN109493060A (zh) * | 2018-12-20 | 2019-03-19 | 莆田市烛火信息技术有限公司 | 一种基于区块链的账本记账系统 |
| US11416854B2 (en) | 2018-12-29 | 2022-08-16 | Advanced New Technologies Co., Ltd. | System and method for information protection |
| CN109636622A (zh) * | 2019-01-03 | 2019-04-16 | 平安科技(深圳)有限公司 | 一种基于区块链的基金数据共享方法、系统及电子设备 |
| CN109636622B (zh) * | 2019-01-03 | 2024-03-29 | 平安科技(深圳)有限公司 | 一种基于区块链的基金数据共享方法、系统及电子设备 |
| CN109859041B (zh) * | 2019-01-09 | 2023-06-27 | 平安科技(深圳)有限公司 | 基于区块链的基金交易实时更新方法及系统、电子设备 |
| CN109859041A (zh) * | 2019-01-09 | 2019-06-07 | 平安科技(深圳)有限公司 | 基于区块链的基金交易实时更新方法及系统、电子设备 |
| CN109753288A (zh) * | 2019-01-14 | 2019-05-14 | 杭州云象网络技术有限公司 | 一种适用于形式化验证的智能合约编译方法 |
| CN109753288B (zh) * | 2019-01-14 | 2022-02-15 | 杭州云象网络技术有限公司 | 一种适用于形式化验证的智能合约编译方法 |
| CN109886661A (zh) * | 2019-01-16 | 2019-06-14 | 深圳壹账通智能科技有限公司 | 跨链数字货币兑换方法、装置、计算机系统及存储介质 |
| CN109858262A (zh) * | 2019-01-17 | 2019-06-07 | 平安科技(深圳)有限公司 | 基于区块链系统的流程审批方法、装置、系统及存储介质 |
| CN109858914A (zh) * | 2019-01-18 | 2019-06-07 | 深圳壹账通智能科技有限公司 | 区块链数据验证方法、装置、计算机设备及可读存储介质 |
| CN111767556A (zh) * | 2019-01-31 | 2020-10-13 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法及节点、存储介质 |
| CN111784341A (zh) * | 2019-02-01 | 2020-10-16 | 阿里巴巴集团控股有限公司 | 区块链交易方法及装置、电子设备、存储介质 |
| CN111784341B (zh) * | 2019-02-01 | 2024-05-28 | 创新先进技术有限公司 | 区块链交易方法及装置、电子设备、存储介质 |
| CN112767153A (zh) * | 2019-02-01 | 2021-05-07 | 创新先进技术有限公司 | 区块链交易方法及装置、电子设备、存储介质 |
| CN110210859B (zh) * | 2019-06-11 | 2022-02-22 | 北京瑞策科技有限公司 | 一种区块链上的调研方法及其设备 |
| CN110210977A (zh) * | 2019-06-11 | 2019-09-06 | 北京艾摩瑞策科技有限公司 | 一种数据交易方法及其设备 |
| CN110223117A (zh) * | 2019-06-11 | 2019-09-10 | 北京艾摩瑞策科技有限公司 | 一种结合区块链的调研方法及其设备 |
| CN110232594A (zh) * | 2019-06-11 | 2019-09-13 | 北京艾摩瑞策科技有限公司 | 一种通过区块链实现的调研方法及其设备 |
| CN110210859A (zh) * | 2019-06-11 | 2019-09-06 | 北京艾摩瑞策科技有限公司 | 一种区块链上的调研方法及其设备 |
| CN110232594B (zh) * | 2019-06-11 | 2022-06-28 | 北京瑞策科技有限公司 | 一种通过区块链实现的调研方法及其设备 |
| CN110288480A (zh) * | 2019-06-28 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种区块链的私密交易方法及装置 |
| CN110647439B (zh) * | 2019-08-15 | 2023-02-03 | 深圳壹账通智能科技有限公司 | 确认区块链系统部署方法、装置、计算机设备及存储介质 |
| CN110647439A (zh) * | 2019-08-15 | 2020-01-03 | 深圳壹账通智能科技有限公司 | 确认区块链系统部署方法、装置、计算机设备及存储介质 |
| CN110706107A (zh) * | 2019-09-27 | 2020-01-17 | 北京科东电力控制系统有限责任公司 | 一种全球能源跨国交易方法及系统 |
| CN110853216A (zh) * | 2019-10-18 | 2020-02-28 | 深圳壹账通智能科技有限公司 | 信息存储方法、装置、存储介质和计算机设备 |
| CN110766400A (zh) * | 2019-10-22 | 2020-02-07 | 全链通有限公司 | 基于区块链的交易记录处理方法、记账节点及介质 |
| CN110958123A (zh) * | 2019-12-09 | 2020-04-03 | 国网新疆电力有限公司信息通信公司 | 基于区块链的数据安全传输方法 |
| CN110958123B (zh) * | 2019-12-09 | 2022-06-03 | 国网新疆电力有限公司信息通信公司 | 基于区块链的数据安全传输方法 |
| CN111949623A (zh) * | 2020-08-13 | 2020-11-17 | 广东省林业科学研究院 | 一种检验数据分析验证系统 |
| CN111949623B (zh) * | 2020-08-13 | 2022-02-01 | 广东省林业科学研究院 | 一种检验数据分析验证系统 |
| CN112116400A (zh) * | 2020-09-28 | 2020-12-22 | 平安壹钱包电子商务有限公司 | 基于区块链的虚拟资源的互通方法、装置及相关设备 |
| CN112346820A (zh) * | 2020-11-16 | 2021-02-09 | 杭州复杂美科技有限公司 | 区块链jvm应用方法、设备和存储介质 |
| CN114707981A (zh) * | 2020-12-16 | 2022-07-05 | 福州数据技术研究院有限公司 | 一种基于区块链分布式记账的医院联盟间预交金管理方法和系统 |
| CN112749967A (zh) * | 2021-01-19 | 2021-05-04 | 矩阵元技术(深圳)有限公司 | 交易数据的处理方法、装置、用户终端和服务器 |
| CN112862493A (zh) * | 2021-01-27 | 2021-05-28 | 中山大学 | 一种智能庞氏骗局检测方法、装置、终端及存储介质 |
| CN113269644A (zh) * | 2021-05-28 | 2021-08-17 | 长沙链奇科技有限公司 | 基于区块链的交易处理方法及装置 |
| CN113269644B (zh) * | 2021-05-28 | 2023-06-02 | 长沙链奇科技有限公司 | 基于区块链的交易处理方法及装置 |
| WO2022267316A1 (zh) * | 2021-06-24 | 2022-12-29 | 北京中电普华信息技术有限公司 | 基于区块链的电力需求响应处理方法和装置 |
| CN113612758B (zh) * | 2021-07-29 | 2022-12-13 | 石家庄学院 | 一种基于区块链的物联网数据安全管理系统及方法 |
| CN113612758A (zh) * | 2021-07-29 | 2021-11-05 | 石家庄学院 | 一种基于区块链的物联网数据安全管理系统及方法 |
| CN113760651A (zh) * | 2021-08-12 | 2021-12-07 | 熵链科技(福建)有限公司 | 区块链的主子链运行状态收集方法、系统及存储介质 |
| CN113760651B (zh) * | 2021-08-12 | 2024-04-02 | 熵链科技(福建)有限公司 | 区块链的主子链运行状态收集方法、系统及存储介质 |
| CN114363336A (zh) * | 2021-12-31 | 2022-04-15 | 支付宝(杭州)信息技术有限公司 | 一种启动/关闭区块链节点服务的方法和装置 |
| CN114936862A (zh) * | 2022-04-27 | 2022-08-23 | 建信金融科技有限责任公司 | 一种检测账户异常的方法及装置 |
| CN115239339A (zh) * | 2022-08-03 | 2022-10-25 | 浙江省金融综合服务平台管理有限公司 | 一种基于区块链的账户交易信息核验方法 |
| CN115239339B (zh) * | 2022-08-03 | 2023-02-14 | 浙江省金融综合服务平台管理有限公司 | 一种基于区块链的账户交易信息核验方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN106548330B (zh) | 2018-03-16 |
| CN106548330A (zh) | 2017-03-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11005665B2 (en) | Blockchain-based secure transaction method, electronic device, system and storage medium | |
| CN111898148B (zh) | 一种基于区块链的信息监管方法及装置 | |
| CN110651291B (zh) | 安全链外区块链交易 | |
| KR102145701B1 (ko) | 안전한 다자 계산에서 참가자에 의한 입력 데이터의 허위 표시 방지 | |
| JP2025011222A (ja) | 制御された暗号化秘密鍵の開放 | |
| CN109067528B (zh) | 密码运算、创建工作密钥的方法、密码服务平台及设备 | |
| CN113169866B (zh) | 使用同时密钥发布来防止共谋的技术 | |
| CN107453865A (zh) | 一种保护数据发送源隐私的多方数据共享方法及系统 | |
| CN110569666B (zh) | 一种基于区块链的数据统计的方法及装置 | |
| CN111046352A (zh) | 一种基于区块链的身份信息安全授权系统与方法 | |
| CN110784320A (zh) | 分布式密钥实现方法、系统及用户身份管理方法、系统 | |
| CZ197896A3 (en) | Encryption method with safekeeping of a key in a third person and a cryptographic system for making the same | |
| CN103023657B (zh) | 一种基于分布式的网络交易安全验证系统 | |
| CN106548330A (zh) | 基于区块链的交易验证方法及系统 | |
| CN112217636B (zh) | 基于区块链的数据处理方法、装置、计算机设备及介质 | |
| CN111047314A (zh) | 基于区块链的金融数据处理方法及系统 | |
| CN111814193A (zh) | 一种信息共享方法、装置及设备 | |
| JP2021019344A (ja) | ブロックチェーンのための選択的プライベート分散計算 | |
| CN112433985A (zh) | 控制提交给计算系统的信息的组合 | |
| CN114529385A (zh) | 一种基于智能合同企业信用数据协同处理方法及系统 | |
| US12425191B1 (en) | System and method for providing multiple key encryption | |
| CN114418769A (zh) | 一种区块链交易计费方法、装置及可读存储介质 | |
| CN110766407A (zh) | 基于区块链的交易验证方法、记账节点及介质 | |
| CN110750808B (zh) | 一种票据处理方法、装置及存储介质装置 | |
| CN117931944A (zh) | 区块链中处理数据的方法、装置、设备和计算机可读介质 |
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 |