CN108921556B - Block chain verification method, device, equipment and storage medium - Google Patents

Block chain verification method, device, equipment and storage medium Download PDF

Info

Publication number
CN108921556B
CN108921556B CN201810709883.1A CN201810709883A CN108921556B CN 108921556 B CN108921556 B CN 108921556B CN 201810709883 A CN201810709883 A CN 201810709883A CN 108921556 B CN108921556 B CN 108921556B
Authority
CN
China
Prior art keywords
block
data
transaction data
node
verified
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.)
Active
Application number
CN201810709883.1A
Other languages
Chinese (zh)
Other versions
CN108921556A (en
Inventor
邱俊炜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Dajiaying Information Technology Co Ltd
Original Assignee
Shanghai Dajiaying Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Dajiaying Information Technology Co Ltd filed Critical Shanghai Dajiaying Information Technology Co Ltd
Priority to CN201810709883.1A priority Critical patent/CN108921556B/en
Publication of CN108921556A publication Critical patent/CN108921556A/en
Application granted granted Critical
Publication of CN108921556B publication Critical patent/CN108921556B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • 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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

The embodiment of the invention discloses a verification method, a device, equipment and a storage medium of a block chain, wherein the method comprises the following steps: the block verification node receives a to-be-verified block sent by a block generation node, wherein the block generation node is a node selected by a set consensus mechanism; the block verification node performs data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified; wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data. The technical scheme of the embodiment of the invention can effectively avoid adding error data into the block chain, thereby ensuring the validity of the data in the block chain network.

Description

Block chain verification method, device, equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of block chains, in particular to a verification method, a verification device, verification equipment and a storage medium of a block chain.
Background
The blockchain is a novel application mode of computer technologies such as distributed data storage, point-to-point transmission, a consensus mechanism and an encryption algorithm. In a distributed node system, nodes compete to obtain the right of current processing data to serve as block generation nodes; and the generated block is verified and confirmed by other nodes and then stored. The above-described operation mechanism makes it almost impossible for data recorded in a block chain to be tampered.
In the prior art, a blockchain mainly solves the trust and security problems of transactions, so that a significant characteristic is a distributed ledger. Specifically, at a node in the blockchain system, a transaction request within a certain time or a certain number of transaction requests are delivered to a current block generation node with an accounting right; the block generation node processes the transaction request, such as information conversion, format adjustment or code operation, to form ledger data, and then packs the ledger data to form a block; the block generation node sends the block to other nodes in the block chain system, and the other nodes carry out the same processing process to verify whether the block obtained by the processing result is consistent with the received block or not, if so, the block is approved and stored, otherwise, the block is not approved and discarded. The block generation nodes are mainly generated through a consensus algorithm, and the conventional consensus algorithm mainly comprises two categories of mining algorithms and non-mining consensus algorithms.
In the process of implementing the invention, the inventor finds that the prior art has the following defects:
in the non-mining consensus algorithm, if the source data has errors before joining the blockchain, the authenticity of the subsequent data is questioned, the storage space of the nodes is wasted, a large number of meaningless blocks are generated, and the problem of 'double flowers' is possibly caused.
Disclosure of Invention
Embodiments of the present invention provide a method, an apparatus, a device, and a storage medium for verifying a block chain, so as to effectively avoid adding error data into the block chain, thereby ensuring validity of data in a block chain network.
In a first aspect, an embodiment of the present invention provides a method for verifying a block chain, including:
the block verification node receives a to-be-verified block sent by a block generation node, wherein the block generation node is a node selected by a set consensus mechanism;
the block verification node performs data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified;
wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
In a second aspect, an embodiment of the present invention further provides a method for verifying a block chain, where the method includes:
a block generation node generates a block to be verified and sends the block to be verified to a block verification node of a block chain network, wherein the block generation node is a node selected by a set consensus mechanism;
the block generation node acquires a block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified;
wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
In a third aspect, an embodiment of the present invention further provides a device for verifying a block chain, where the device is configured at a block verification node, and the device includes:
the system comprises a block receiving module, a block verification module and a block verification module, wherein the block receiving module is used for receiving a to-be-verified block sent by a block generating node, and the block generating node is a node selected by a set consensus mechanism;
the data verification module is used for performing data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified;
wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
In a fourth aspect, an embodiment of the present invention further provides a verification apparatus for a block chain, configured at a block generation node, including:
the block generation module is used for generating a block to be verified and sending the block to be verified to a block verification node of a block chain network, wherein the block generation node is a node selected by a set consensus mechanism;
the result obtaining module is used for obtaining the block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified;
wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
In a fifth aspect, an embodiment of the present invention further provides a computer device, where the computer device includes:
one or more processors;
storage means for storing one or more programs;
when the one or more programs are executed by the one or more processors, the one or more processors are caused to implement the method for verifying a blockchain according to any of the first aspects.
In a sixth aspect, an embodiment of the present invention further provides a computer device, where the computer device includes:
one or more processors;
storage means for storing one or more programs;
when executed by the one or more processors, cause the one or more processors to implement the method of verifying a blockchain of any of the second aspects.
In a seventh aspect, an embodiment of the present invention further provides a computer storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the method for verifying a blockchain according to any of the first aspects.
In an eighth aspect, an embodiment of the present invention further provides a computer storage medium, on which a computer program is stored, where the computer program, when executed by a processor, implements the method for verifying a blockchain according to any of the second aspects.
The embodiment of the invention receives the to-be-verified block sent by the block generation node through the block verification node, and performs data verification on the transaction data in the to-be-verified block according to the data source identification information of the transaction data in the to-be-verified block. The block generation node is generated by a set consensus mechanism, wherein the set consensus does not comprise an ore excavation algorithm, the problem of 'double flowers' in the block chain applying the existing non-ore excavation consensus algorithm can be effectively solved, error data are prevented from being added into the block chain, and the validity of the data in the block chain network is further ensured.
Drawings
Fig. 1 is a flowchart of a verification method for a blockchain according to an embodiment of the present invention;
fig. 2 is a flowchart of a verification method for a blockchain according to a second embodiment of the present invention;
fig. 3 is a flowchart of a verification method for a blockchain according to a third embodiment of the present invention;
fig. 4 is a schematic diagram of an apparatus for verifying a block chain according to a fourth embodiment of the present invention;
fig. 5 is a schematic diagram of an apparatus for verifying a block chain according to a fifth embodiment of the present invention;
fig. 6 is a schematic structural diagram of a computer device according to a sixth embodiment of the present invention.
Detailed Description
The present invention will be described in further detail with reference to the accompanying drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the invention and are not limiting of the invention.
It should be further noted that, for the convenience of description, only some but not all of the relevant aspects of the present invention are shown in the drawings. Before discussing exemplary embodiments in more detail, it should be noted that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although a flowchart may describe the operations (or steps) as a sequential process, many of the operations can be performed in parallel, concurrently or simultaneously. In addition, the order of the operations may be re-arranged. The process may be terminated when its operations are completed, but may have additional steps not included in the figure. The processes may correspond to methods, functions, procedures, subroutines, and the like.
Example one
Fig. 1 is a flowchart of a verification method for a blockchain according to an embodiment of the present invention, where this embodiment is applicable to a case where a block verification node performs data verification on transaction data in a block to be verified, and the method may be executed by a verification apparatus for a blockchain, where the verification apparatus may be implemented by software and/or hardware, and may be generally integrated in a computer device, and the computer device may be a device that bears a blockchain node. Accordingly, as shown in fig. 1, the method comprises the following operations:
s110, the block verification node receives a to-be-verified block sent by a block generation node, wherein the block generation node is a node selected by setting a consensus mechanism.
The blockchain network may be a public chain or a federation chain. A blockchain network may comprise a base chain, i.e. a main chain, while side chains, sub chains or lightning networks may be comprised. The block verification node may be another blockchain network node participating in the verification process of the block generation node sending the block. The block generation node may be a node in the blockchain network that has block processing authority. The set consensus mechanism may be a non-mining consensus mechanism, such as PBFT (Practical Byzantine Fault Tolerance algorithm) or Raft algorithm.
In the embodiment of the present invention, the block generation node having the block processing permission may obtain the transaction request from the cache region of the blockchain network, process the transaction request, and perform encapsulation and packaging according to the transaction request and the obtained transaction data to generate the block to be verified. The transaction request may be a transaction request occurring within a period of time in the blockchain network or other pending request. The block generation node may transmit the block to be verified to the blockchain network, so that the block verification node verifies the block to be verified. Meanwhile, the block generation node can also participate in the verification process of the block to be verified.
S120, the block verification node performs data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified.
Wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
The data source identification information may be information identifying the source of the transaction request. For example, the data source identification information may be unique number information of the source of the transaction request. The historical transaction data corresponding to the source of the transaction request may be a record of the transaction request that has been processed and is locally stored by each node in the blockchain network.
In the embodiment of the invention, after the block verification node receives the block to be verified, the data verification can be performed on the block to be verified according to the data source identification information of the transaction data in the block to be verified. It should be noted that in the block-chain network, the "double-flower" problem is often generated due to network delay or other factors. Where "double flowers" may be the same data used to complete two different transactions. For example, a "double flower" may be the same fund for two different transactions. In the embodiment of the invention, each transaction data only has a unique data source identification information corresponding to the transaction data, and the generation of the data source identification information is associated with the historical transaction data of the historical transaction data. Therefore, data verification is carried out on the transaction data in the to-be-verified block according to the data source identification information of the transaction data, so that error data can be effectively prevented from being added into the block chain network, and the problem of 'double-flower' is avoided.
The embodiment of the invention receives the to-be-verified block sent by the block generation node through the block verification node, and performs data verification on the transaction data in the to-be-verified block according to the data source identification information of the transaction data in the to-be-verified block. The block generation node is generated by a set consensus mechanism, wherein the set consensus does not comprise an ore excavation algorithm, the problem of 'double flowers' in the block chain applying the existing non-ore excavation consensus algorithm can be effectively solved, error data are prevented from being added into the block chain, and the validity of the data in the block chain network is further ensured.
Example two
Fig. 2 is a flowchart of a verification method for a block chain according to a second embodiment of the present invention, which is embodied on the basis of the foregoing embodiments, and in this embodiment, a specific implementation manner is provided in which a block verification node performs data verification on transaction data in a block to be verified according to data source identification information of the transaction data in the block to be verified, and performs data update according to update information of data identification information. Correspondingly, as shown in fig. 2, the method of the present embodiment may include:
s210, the block verification node receives a to-be-verified block sent by a block generation node, wherein the block generation node is a node selected by setting a consensus mechanism.
S220, the block verification node performs data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified.
Correspondingly, S220 may specifically include the following steps:
s221, if the block verification node determines that the data source identification information does not exist in the currently processed transaction data, the currently processed transaction data is sent to an authentication node for authentication.
The authentication node may be a node in the blockchain network for authenticating the authenticity and validity of the transaction request. The authentication node may authenticate the source information of the relevant data in the transaction request in a side chain, a child chain or a lightning network of the blockchain network. The number of authentication nodes may be an odd number and the authentication result is returned to the block verification node. It should be noted that a representative and authoritative node may be selected as an authentication node in the blockchain network, and the authentication node does not participate in the verification process of the block to be verified, and is only responsible for authenticating the relevant data of the transaction request.
In the embodiment of the present invention, if the block verification node finds that the transaction data does not have the corresponding data source identification information when verifying the currently processed transaction data, it needs to send the currently processed transaction data to the authentication node for authentication. Optionally, the currently processed transaction data that needs to be authenticated may be sent to the authentication node by the block generation node.
S222, the block verification node uses the authentication result returned by the authentication node as the authentication result of the currently processed transaction data.
Correspondingly, the authentication node authenticates the data authenticity of a side chain, a sub chain or a lightning network of the transaction data to be authenticated and processed currently in the block chain network. The authentication result of the authentication node may include both the case of passing authentication and the case of failing authentication. And after the block verification node receives the authentication result fed back by the authentication node, verifying the currently processed transaction data according to the authentication result.
S223, if the block verification node determines that the data source identification information exists in the currently processed transaction data, extracting the data source identification information from the data content of the currently processed transaction data.
The data source identification information may be data identification information corresponding to already processed transaction data included in currently processed transaction data, that is, historical data identification information.
S224, the block verification node acquires historical transaction data associated with the currently processed transaction data as verification data according to the extracted data source identification information, and verifies the currently processed transaction data according to the verification data.
Correspondingly, if the block verification node finds that the transaction data has the corresponding data source identification information when verifying the currently processed transaction data, the block verification node does not need to send the currently processed transaction data to the authentication node for authentication, and can directly search the corresponding historical transaction data in the local database as verification data according to the data source identification information extracted from the data content of the currently processed transaction data so as to verify the currently processed transaction data.
And S230, the block verification node obtains a block verification result of the block to be verified according to a data verification result of the transaction data in the block to be verified, and feeds the block verification result back to the block generation node, so that the block generation node determines whether the block to be verified passes consensus.
The block verification result may be that the block to be verified passes verification or that the block to be verified fails verification.
Correspondingly, after each block verification node completes verification on each transaction data in the to-be-verified block, a corresponding block verification result is formed. The block verification node may transmit the block verification result obtained by the block verification node in the blockchain network to send to the block generation node.
S240, the block verification node receives the consensus pass response fed back by the block generation node, or simultaneously receives the update result of the data identification information of the target transaction data in the block to be verified; and the updating information of the data identification information is generated by the authentication node.
The consensus passing response may be a consensus result of the to-be-verified block determined by the block generation node according to the block verification result. For example, in the consensus algorithm based on Raft, when the verification pass ratio in the block verification result is greater than or equal to a set threshold, such as (f +1)/(2f +1), the block generation node may generate a consensus pass response indicating that the block to be verified passes the consensus.
In the embodiment of the invention, when the block verification node receives the consensus-passing response fed back by the block generation node, the block to be verified passes the consensus. Meanwhile, the block verification node can also receive the update result of the data identification information of the target transaction data in the block to be verified, which is sent by the block generation node.
And S250, if the update result is received, the block verification node updates the transaction data in the block to be verified according to the update information of the data identification information, updates the locally stored historical transaction data, and adds the block to be verified into a block chain.
Correspondingly, after the block verification node acquires the update information of the data identification information fed back by the authentication node for the target transaction data, the transaction data in the block to be verified can be updated according to the update information of the data identification information, and the updated block to be verified is added to the tail of the block chain to complete the uplink operation.
It should be noted that, in addition to updating the transaction data of the block to be verified according to the update information of the data identification information, the block verification node may also update the locally stored historical transaction data according to the update information of the data identification information. After the update is completed, the block verification node does not delete the locally stored historical transaction data. The locally stored historical transaction data may be used for processing of subsequent transaction requests.
In an optional embodiment of the invention, the transaction data comprises: financial transaction data, the data source identification information including: the serial number of the historical financial transaction data, namely historical data identification information; the block verification node acquires historical transaction data associated with the currently processed transaction data as verification data according to the extracted data source identification information, and verifies the currently processed transaction data according to the verification data, wherein the verification data comprises the following steps: the block verification node acquires historical financial transaction data corresponding to the serial number of the historical financial transaction data according to the serial number of the historical financial transaction data, and the block verification node acquires all transfer-in limits of transferred-in accounts corresponding to the historical financial transaction data as the total amount of the currently processed financial transaction data transfer-out accounts; the block verification node verifies whether the sum of the transfer amount of at least one transfer account in the currently processed financial transaction data is matched with the sum of the transfer amount of the currently processed financial transaction data transfer account; if yes, the block verification node determines that the currently processed financial transaction data is verified.
The financial transaction includes, but is not limited to, a fund transaction, a share transaction, and the like. The number of the financial transaction data may be a number of any data structure type, and specifically may be a character string including a node identifier, such as a0001, and of course, a random number may also be added to the number to avoid generating a duplicate number, for example, the number may be Ar0001, where r is a random number generated by the authentication node, the number of bits of the random number may be set according to actual needs, the random number generated each time is different, and Ar in the number is only used as an identifier and is not counted, and the number is counted by 0001 in the number as a starting number, for example, when r is 123, the counting range of the initial number a1230001 is a1230001-a 1239999. The embodiment of the invention does not limit the method and the form for realizing the numbering of the financial transaction data.
In an embodiment of the present invention, the financial transaction may optionally be processed as a transaction request. Specifically, when the block verification node obtains the associated historical transaction data according to the historical data identification information to verify the currently processed transaction data, the number of the historical financial transaction data may be used as the historical data identification information, and the historical financial transaction data corresponding to the number of the historical financial transaction data may be used as the associated historical transaction data. When the block verification node verifies the current financial transaction data, all transfer-in lines of the transferred-in accounts corresponding to the associated historical financial transaction data can be used as the total amount of the currently processed financial transaction data transfer-out accounts, whether the sum of the transfer-out lines of at least one transfer-out account in the currently processed financial transaction data is matched with the total amount of the currently processed financial transaction data transfer-out accounts is verified, and if the sum is matched, the currently processed financial transaction data is verified; otherwise, it indicates that the currently processed financial transaction data is not verified.
In a specific example, the block generation node may store the complete financial transaction record in its local database, and the other nodes are common nodes, that is, block verification nodes, and the block verification nodes may store the latest financial transaction record in their local databases. The financial transaction records already stored in the database may be used as input transaction records and the financial transaction records to be verified in the block may be used as output transaction records. In addition to the financial transaction source data, each outgoing transaction record must be able to find the corresponding incoming transaction record in the local database, and the total amount of the transaction amount of each outgoing transaction record must be consistent with the total amount of the transaction amount of the corresponding incoming transaction record.
Each node sends the financial transaction records of the node to a public transaction cache region, the block generation node takes out a plurality of financial transaction records from the public transaction cache region and puts the financial transaction records into a block to be verified, hash operation is carried out on the financial transaction records, the hash operation result is encrypted by using a private key of the node, the encrypted hash result is put into the block to be verified together, and then the block to be verified is broadcasted on a block chain. And the block generation node participates in verification, after receiving the block to be verified, the block verification node decrypts the encrypted hash result in the block to be verified by using the public key of the block generation node to obtain a decrypted hash result, then performs hash operation on a plurality of financial transaction records in the block to be verified, compares the hash result obtained by operation with the hash result decrypted in the block, and if the hash result is consistent with the hash result obtained by operation, the block to be verified is sent by the block generation node and is not tampered in the transmission process. The public key of the block generation node may be obtained from the authentication node.
The block verification node sequentially detects whether each financial transaction record in the block to be verified has a corresponding transaction source number. If there is no transaction source number, the financial transaction record is sent to the authentication node. The authentication node authenticates the financial transaction record and returns an authentication result to the block verification node, and the block verification node verifies according to the authentication result. If the transaction source number exists, the corresponding input transaction record is searched in the local database through the transaction source number, whether the total amount of the transaction amount in the input transaction record is consistent with the total amount of the transaction amount in the output transaction record is compared, and if the total amount of the transaction amount in the input transaction record is consistent with the total amount of the transaction amount in the output transaction record, the verification is passed. And if all the financial transaction records and the output transaction records in the block to be verified are verified to be passed, the block verification node returns a response that the block verification is passed to the block generation node. And after the block generation node receives a certain proportion of responses that the verification passes, judging that the blocks to be verified pass the consensus. And then the block generation node checks whether the financial transaction record without the initial number exists in the block to be verified, if so, the corresponding financial transaction record is sent to the authentication node to apply for the corresponding initial number, and the authentication node endows the financial transaction record with the initial number and returns the initial number to the block generation node. The block generation node can broadcast the financial transaction record with the initial number information and the consensus passing consensus response in the blockchain, the block verification node and the block generation node which receive the broadcast message update the financial transaction record without the initial number in the block to be verified, and then add the updated block to be verified to the tail of the blockchain to complete the uplink operation. Meanwhile, each node in the block chain network can update the financial transaction records stored in the local database according to the financial transaction records with the initial number information.
In particular, some authoritative nodes may be selected in the blockchain network as authentication nodes, such as bank or exchange nodes. The authentication node does not participate in the verification process of the block to be verified, and is only responsible for authenticating the financial transaction record and issuing the number. For example, there are nodes a-F in the block chain, where node D-F is an authentication node, nodes a-C are block chain nodes, node a is a block generation node, and nodes a-C all have their own local databases. Node B records a financial transaction record SN: and IN: 100 ten thousand, quantity: 1 ten thousand T stocks, OUT: the address of the node B is sent to a public transaction buffer, where SN represents a number corresponding to the financial transaction record, IN represents a number corresponding to a historical financial transaction record (when the financial transaction record is an initial transaction record, IN may represent original asset information of a current financial transaction record, that is, no data source identification information exists IN the IN field at this time), the number may be a specific transaction number involved IN the financial transaction, OUT represents a transaction output object, and the address of the node B is an account of the node B, and may specifically be a random character string. The financial transaction record means that one transaction is that node B spends 100 million purchases 1 million of T stock, placed at the address of node B. The block generation node A takes the financial transaction record out of the public transaction cache area, carries out hash operation on the financial transaction record, encrypts the hash operation result by using a private key of the block generation node A, puts the financial transaction record and the encrypted hash result into a block to be verified, and broadcasts the block to be verified to all the nodes participating in consensus on a block chain. After the block to be verified is received by the block verification nodes B and C, the encrypted hash result in the block to be verified is decrypted by using the public key of the block generation node A to obtain the decrypted hash result, then hash operation is carried out on the financial transaction record in the block to be verified, the hash result obtained by operation and the hash result decrypted in the block to be verified are compared, and if the hash result obtained by operation is consistent with the hash result obtained by operation, the block to be verified is sent by the block generation node and is not tampered in the transmission process.
Further, the nodes A-C detect the financial transaction record, and when the transaction source number is not found IN the IN field, the financial transaction record is the financial transaction source data, and then the financial transaction record is sent to the authentication nodes D-F. Alternatively, the authentication node D-F may receive the financial transaction record and then quickly authenticate the authenticity of the financial transaction record in a side chain, a sub chain or a lightning network. Specifically, the corresponding transaction details may be queried according to the address of the node B, and if the query result matches, the authentication result that the authentication passes is returned to the block generation node a. The block generation node a notifies the block verification nodes B-C of the authentication result of the authentication node. And the block verification node B-C returns a response of passing the verification to the block generation node after checking, and at the moment, the block generation node A judges that the block to be verified passes the consensus according to the received verification result. Under the condition of passing the consensus, the block generation node A checks whether the financial transaction record without the initial number exists in the block to be verified, finds the financial transaction record and sends the financial transaction record to any authentication node to apply for the corresponding initial number. The authentication node searches the financial transaction record to find that the financial transaction record is authenticated, then an initial number B0001 is given to the authentication node, the authentication node returns the initial number B0001 to the block generation node A, and the block generation node A broadcasts the financial transaction record with the initial number B0001 in the blockchain network. And the nodes A-C update the financial transaction records in the block to be verified according to the financial transaction records with the initial number B0001, namely, the initial number B0001 is endowed with an SN field, and then all the updated financial transaction records in the block to be verified are added into a block chain and stored in a local database of the nodes A-C, so that the local database is updated. That is, at this time, the local databases of nodes A-C each have a financial transaction record { SN: b0001, IN: 100 ten thousand, quantity: 1 ten thousand T stocks, OUT: the address of the node B }.
Accordingly, when the SN of the converged transaction data stored in the database is not empty, the node B automatically counts the SNs and generates a new number, and then transmits the generated next financial transaction record { SN: c0001, IN: b0001, amount: 2 kT stock, OUT: the address of node C; SN: b0002, IN: b0001, amount: 8 kilo T stock, OUT: node B address is sent to the common transaction cache. The financial transaction record means that the first transaction is for node B to transfer 2 kt stock to node C, which is placed in the address of node C, and the second transaction is for node B to transfer the remaining 8 kt stock to itself, which is placed in the address of node B. The block generation node A takes the financial transaction record out of the public transaction cache area, processes the financial transaction record and then places the financial transaction record into a block for broadcasting, and the nodes A-C detect that the IN field of the financial transaction record has a transaction source number, so that the financial transaction record with the number B0001 is found from the local database, namely the input transaction record. The node A-C calculates the total amount of the transaction amount in the input transaction record B0001 to be 1 ten thousand T stocks, calculates the total amount of the transaction amount in all the output transaction records corresponding to the input transaction record B0001, namely the transaction amount in C0001 and B0002 to be 2 thousand plus 8 thousand T stocks, namely 1 ten thousand T stocks, compares the two calculation results to find that the total amount of the transaction amount in the input transaction record is consistent with the total amount of the transaction amount in the output transaction record, and then returns a response of passing verification to the block generation node A. If the block generation node a receives verification passing responses larger than or equal to a certain proportion, the consensus is considered to pass, for example, verification passing responses of 2f +1 nodes are received in 3f +1 nodes based on the PBFT algorithm, and verification passing responses of f +1 nodes are received in 2f +1 nodes based on the Raft algorithm. After the consensus passes, the block generation node adds the blocks passing the consensus to the block chain, and broadcasts a consensus passing response to other block verification nodes (at the moment, the content of the blocks is not updated). And the block verification node adds the blocks passing the consensus into the block chain according to the consensus response, updates the local database respectively and stores corresponding financial transaction records. It should be noted that the block generation node may store all financial transaction records, and the block verification node may store only the latest transaction record. That is, the financial transaction record stored in the database of the block generation node a at this time is { SN: b0001, IN: 100 ten thousand, quantity: 1 ten thousand T stocks, OUT: the address of the node B; SN: c0001, IN: b0001, amount: 2 kT stock, OUT: the address of node C; SN: b0002, IN: b0001, amount: 8 kilo T stock, OUT: address of node B, and the financial transaction record stored in the database that identifies nodes B and C is { SN: c0001, IN: b0001, amount: 2 kT stock, OUT: the address of node C; SN: b0002, IN: b0001, amount: 8 kilo T stock, OUT: the address of the node B }. At this point node C has already had a numbered financial transaction record assigned by node B based on the financial transaction data.
Nodes B and C then continue to automatically count SNs and generate new numbers, and node B records the next financial transaction { SN: a0001, IN: b0002, amount: 1 kilo T stock, OUT: the address of node A; SN: b0003, IN: b0002, amount: 7 kilo T stock, OUT: node B address is sent to the common transaction cache. The financial transaction record means that the first transaction is for node B to transfer 1 kT of stock to node A, which is placed in node A's address, and the second transaction is for node B to transfer the remaining 7 kT of stock to itself, which is placed in node B's address. Node C records the next financial transaction record SN: a0002, IN: c0001, amount: 1 kilo T stock, OUT: the address of node A; SN: c0002, IN: c0001, amount: 1 kilo T stock, OUT: the address of node C is sent to the common transaction cache. The financial transaction record means that the first transaction is that node C transfers 1 kT of stock to node A, which is placed in the address of node A, and the second transaction is that node C transfers the remaining 1 kT of stock to itself, which is placed in the address of node C. And the block generation node A takes the two financial transaction records out of the public transaction cache area for processing, generates a block to be verified and broadcasts the block. The block verification node firstly verifies the financial transaction record sent by the node B, detects that a transaction source number exists IN an IN field of the financial transaction record, then finds out the financial transaction record with the number of B0002 from a local database, namely an input transaction record, the consensus node calculates that the total amount of the transaction IN the input transaction record, namely B0002 is 8 kiloT stocks, calculates that the total amount of the transaction IN the corresponding output transaction records, namely A0001 and B0003 is 1 kilo plus 7 kilo T stocks, namely 8 kiloT stocks, and compares the two calculation results to find that the total amount of the transaction IN the input transaction record is consistent with the total amount of the transaction IN the output transaction record. The block verification node continuously verifies the financial transaction record sent by the node C, detects that a transaction source number exists IN an IN field of the financial transaction record, then finds out the financial transaction record numbered C0001 from a local database, namely an input transaction record, calculates that the total amount of the transaction amount IN the input transaction record, namely C0001 is 2 kiloT stocks, calculates that the total amount of the transaction amount IN the corresponding output transaction record, namely A0002 and C0002 is 1 kiloT stocks plus 1 kiloT stocks, namely 2 kiloT stocks, compares the two calculation results to find that the total amount of the transaction amount IN the input transaction record is consistent with the total amount of the transaction amount IN the output transaction record, then returns a response of passing verification to the block generation node A, and if the block generation node A receives a response of passing verification which is larger than or equal to a certain proportion, the block generation node A considers that the consensus is passed. After passing the consensus, the block generation node adds the block into the block chain and broadcasts a consensus pass response to the block verification node (at which time the block content is not updated). And the block verification node adds the blocks passing the consensus into the block chain according to the consensus response, updates the local database respectively and stores corresponding financial transaction records. That is, the financial transaction record stored in the local database of the block generation node a at this time is { SN: b0001, IN: 100 ten thousand, quantity: 1 ten thousand T stocks, OUT: the address of the node B; SN: c0001, IN: b0001, amount: 2 kT stock, OUT: the address of node C; SN: b0002, IN: b0001, amount: 8 kilo T stock, OUT: the address of the node B; SN: a0001, IN: b0002, amount: 1 kilo T stock, OUT: the address of node A; SN: b0003, IN: b0002, amount: 7 kilo T stock, OUT: the address of the node B; SN: a0002, IN: c0001, amount: 1 kilo T stock, OUT: the address of node A; SN: c0002, IN: c0001, amount: 1 kilo T stock, OUT: address of node C }. The financial transaction records stored in the local databases of the block verification nodes B and C are { SN: a0001, IN: b0002, amount: 1 kilo T stock, OUT: the address of node A; SN: b0003, IN: b0002, amount: 7 kilo T stock, OUT: the address of the node B; SN: a0002, IN: c0001, amount: 1 kilo T stock, OUT: the address of node A; SN: c0002, IN: c0001, amount: 1 kilo T stock, OUT: address of node C }.
In another specific example, the block chain has nodes a-F, where nodes D-F are authentication nodes, nodes a-C are block chain nodes, node a is a block generation node, and nodes a-C all have their own local databases. Node B records a financial transaction record SN: and IN: 100 ten thousand, quantity: 1 ten thousand T stocks, OUT: the address of the node B is sent to a public transaction cache region, the block generation node A takes the financial transaction record from the public transaction cache region, carries out hash operation on the financial transaction record, encrypts the hash operation result by using a private key of the block generation node A, puts the encrypted hash result into a block to be verified, and broadcasts the block to be verified on a block chain. The nodes A-C detect the financial transaction record, and if no transaction source number is found IN the IN field, the financial transaction record is financial transaction source data, and then the block generation node A sends the financial transaction record to the authentication nodes D-F. And the authentication nodes D-F quickly authenticate the authenticity of the financial transaction record in a side chain, a sub chain or a lightning network after receiving the financial transaction record. Specifically, the corresponding transaction details may be queried according to the address of the node B, if the query result is not matched, an authentication result indicating that the authentication fails is returned to the block generation node a, and the block generation node a notifies the block verification node B-C of the authentication result of the authentication node. And returning a response of failed verification to the block generation node after the block verification node B-C checks, judging that the block to be verified does not pass the consensus by the block generation node A according to the received verification result, and sending the consensus failing response to each block verification node B-C by the block generation node A. And the block verification node B-C judges that the block to be verified does not pass the consensus according to the received consensus failing response, and each node in the block chain network abandons the block to be verified and executes the processes of block generation, verification and consensus again.
In another specific example, the block chain has nodes a-F, where nodes D-F are authentication nodes, nodes a-C are block chain nodes, node a is a block generation node, and nodes a-C all have their own local databases. Node B records a financial transaction record SN: a0001, IN: b0002, amount: 1 kilo T stock, OUT: the address of node A; SN: b0003, IN: b0002, amount: 7 kilo T stock, OUT: the address of the node B; SN: c0001, IN: b0002, amount: 3 kilo T stock, OUT: the address of node C; SN: b0004, IN: b0002, amount: 5 kilo T stock, OUT: the address of the node B is sent to a public transaction cache region, namely 8 kiloT stocks in the node B do two transactions at the moment, the block generation node A takes the financial transaction record out of the public transaction cache region, hash operation is carried out on the financial transaction records, the hash operation result is encrypted by using a private key of the block generation node A, the encrypted hash results are put into a block to be verified together, and then the block to be verified is broadcasted on a block chain. The nodes A-C detect the financial transaction record, detect that the transaction source number exists IN the IN field, then find the financial transaction record with the number B0002 from the local database, namely the input transaction record, the consensus node calculates the total amount of the transactions IN the input transaction record, namely B0002, to be 8 kT stocks, calculates the total amount of the transactions IN the output transaction records, namely A0001, B0003, C0002 and B0004, to be 1 thousand plus 7 thousand plus 3 thousand plus 5 thousand T stocks, namely 1 ten thousand 6 thousand T stocks, and compares the two calculation results to find that the total amount of the transactions IN the input transaction record is inconsistent with the total amount of the transactions IN the output transaction record. And the block verification node B-C returns a response of failed verification to the block generation node, and at the moment, the block generation node A judges that the block to be verified does not pass the consensus according to the received verification result, and then the block generation node A sends the consensus failing response to each block verification node B-C. And the block verification node B-C judges that the block to be verified does not pass the consensus according to the received consensus failing response, and each node in the block chain network abandons the block to be verified and executes the processes of block generation, verification and consensus again, thereby avoiding 'double flowers'.
It should be noted that, after the current block generation node fails, a new block generation node is elected by setting a consensus mechanism, the failed block generation node synchronizes all financial transaction records to the new block generation node, and the state of the historical financial transaction records in the database of the failed block generation node except the latest financial transaction record is failed, and only the state of the latest financial transaction record is valid. The invalid block generation node can be converted into a block verification node, and when the block verification is carried out, the historical financial transaction number corresponding to the transaction source number is obtained in the local database only through the latest financial transaction record, so that the historical financial transaction record is prevented from being reused by the transaction node.
By adopting the technical scheme, the authentication node performs legality authentication on the transaction data, so that the block verification node can perform data verification on the transaction data in the block to be verified according to historical transaction data corresponding to the data source identification information of the transaction data in the block to be verified. After the block verification is passed, each node can perform data updating on the to-be-verified block and the locally stored transaction data according to the updating information of the data identification information, and the problem of 'double flowers' in the existing block chain applying the non-mining consensus algorithm can be effectively solved, so that the situation that error data is added into the block chain is avoided, and the validity of the data in the block chain network is further ensured.
EXAMPLE III
Fig. 3 is a flowchart of a verification method for a blockchain according to a third embodiment of the present invention, where this embodiment is applicable to a case where a block generation node updates transaction data in a block to be verified, and the method may be executed by a verification apparatus for a blockchain, where the verification apparatus may be implemented by software and/or hardware, and may be generally integrated in a computer device, where the computer device may be a device that bears a blockchain node. Accordingly, as shown in fig. 3, the method includes the following operations:
s310, generating a to-be-verified block by a block generation node, and sending the to-be-verified block to a block verification node of a block chain network, wherein the block generation node is a node selected by a set consensus mechanism.
The blockchain network may be a public chain or a federation chain. The blockchain network may comprise a basic chain, i.e. a main chain, while side chains, sub-chains or lightning networks may be comprised. The block verification node may be another blockchain network node participating in the verification process of the block generation node sending the block. The block generation node may be a node in the blockchain network that has block processing authority. The set consensus mechanism may be a non-mining consensus mechanism, such as PBFT (Practical Byzantine Fault Tolerance algorithm) or Raft algorithm.
In the embodiment of the present invention, the block generation node having the block processing permission may obtain the transaction request from the cache region of the block chain network, process the transaction request, package and package the transaction request and the obtained transaction data to generate the block to be verified, and transmit the block to be verified to the block chain network, so that the block verification node verifies the block to be verified.
S320, the block generation node acquires a block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified.
Wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
The data source identification information may be information identifying the source of the transaction request. For example, the data source identification information may be unique number information of the source of the transaction request. The historical transaction data corresponding to the source of the transaction request may be a record of the transaction request that has been processed and is locally stored by each node in the blockchain network.
In the embodiment of the invention, after the block generation node sends the block to be verified to each block verification node, the block verification node verifies the received block to be verified to obtain a block verification result, and the block verification result is fed back to the block generation node. Correspondingly, the block verification node needs to verify the block to be verified according to the data source identification information of the transaction data in the block to be verified.
The embodiment of the invention generates the to-be-verified block through the block generating node and sends the to-be-verified block to the block verification node of the block chain network, and obtains the block verification result of the block verification node on the to-be-verified block according to the data source identification information of the transaction data in the to-be-verified block, so as to judge whether the to-be-verified block passes the consensus according to the verification result. The block generation node is generated by a set consensus mechanism, wherein the set consensus does not comprise an ore excavation algorithm, the problem of 'double flowers' in the block chain applying the existing non-ore excavation consensus algorithm can be effectively solved, error data are prevented from being added into the block chain, and the validity of the data in the block chain network is further ensured.
In an optional embodiment of the present invention, may further include: the block generation node judges whether the block to be verified passes the verification of the block verification node according to the block verification result, and if the block generation node determines that the block to be verified passes the consensus according to the block verification result, the block generation node feeds back the consensus passing response to the block verification node; if the to-be-verified block passes the consensus, detecting whether the to-be-verified block comprises target transaction data of the to-be-updated data identification information; if yes, the block generation node sends the target transaction data to an authentication node, and obtains an update result which is fed back by the authentication node and aims at data identification information; the block generation node updates the transaction data in the block to be verified according to the update result aiming at the data identification information, and adds the block to be verified into a block chain; and the block generation node instructs all block verification nodes in the block chain to update the locally stored transaction data in the block to be verified and the locally stored historical transaction data according to the updating result aiming at the data identification information.
Wherein, the update result for the data identification information may be a number corresponding to the transaction data, such as B0001.
In the embodiment of the present invention, optionally, the data source identification information may be used as a detection target, and the block generation node may detect whether the transaction data in the block to be verified has the data source identification information. And if the block generation node determines that the target transaction data including the identification information of the data to be updated is included in the block to be verified, the target transaction data is sent to the authentication node, and the update result aiming at the data identification information fed back by the authentication node is received.
Correspondingly, after the block generation node obtains the update result for the data identification information, the target transaction data in the block to be verified can be updated by using the update result for the data identification information, and the updated block to be verified is added to the tail of the block chain to complete the uplink operation.
Meanwhile, if the block generation node determines that the to-be-verified block passes the consensus according to the block verification result, for example, in a knowledge algorithm based on Raft, when the verification passing ratio in the block verification result is greater than or equal to a set threshold, such as (f +1)/(2f +1), the block generation node may generate a consensus passing response that the to-be-verified block passes the consensus, and feed the consensus passing response back to the block verification node. After the block verification node receives the consensus passing response and simultaneously determines that the block to be verified passing the consensus does not need to update the transaction data, the block to be verified passing the consensus is directly added to the tail part of the block chain so as to complete the uplink operation.
In addition, the block generation node needs to broadcast the update result for the data identification information in the blockchain network, so that other block verification nodes in the blockchain network update the transaction data in the local block to be verified and the locally stored historical transaction data according to the received update result of the data identification information. After the block verification node completes updating the local block to be verified, the updated block to be verified can be added to the tail of the block chain to complete the uplink operation.
It should be noted that the block generation node may perform broadcasting in the block chain network after receiving the update result for the data identifier information, and does not need to perform broadcasting after completing the uplink operation.
In an optional embodiment of the present invention, detecting whether the to-be-verified block includes target transaction data with to-be-updated data identification information includes: and the block generation node detects whether the transaction data in the block to be verified has data identification information.
In the embodiment of the present invention, optionally, the data identification information may be used as a detection target, and the block generation node may detect whether the transaction data in the block to be verified has the data identification information.
In an optional embodiment of the invention, the transaction data comprises: financial transaction data, the target transaction data of the update data identification information including: transaction data with the number of the financial transaction data being null; detecting whether the to-be-verified block includes target transaction data of the to-be-updated data identification information, including: and the block generation node detects whether the transaction data in the block to be verified has the number of the financial transaction data.
The financial transaction includes, but is not limited to, a fund transaction, a share transaction, and the like. The number of the financial transaction data may be a number of any data structure type, and specifically may be a character string including a node identifier, such as a0001, and of course, a random number may also be added to the number to avoid generating a duplicate number, for example, the number may be Ar0001, where r is a random number generated by the authentication node, the number of bits of the random number may be set according to actual needs, the random number generated each time is different, and Ar in the number is only used as an identifier and is not counted, and is counted by 0001 in the number, for example, when r is 123, the counting range of the initial number a1230001 is a1230001-a 1239999. The embodiment of the invention does not limit the method and the form for realizing the numbering of the financial transaction data.
In the embodiment of the present invention, when the financial transaction data is used as the transaction data, it may be detected by the block generation node whether there is transaction data with an empty number in the block to be verified. If the transaction data with the empty number of the financial transaction data exists in the to-be-verified block, the transaction data is indicated to have no number of the financial transaction data.
Example four
Fig. 4 is a schematic diagram of an apparatus for verifying a block chain according to a fourth embodiment of the present invention, as shown in fig. 4, the apparatus includes: a block receiving module 410 and a data verification module 420, wherein:
a block receiving module 410, configured to receive a block to be verified sent by a block generating node, where the block generating node is a node selected by setting a consensus mechanism;
the data verification module 420 is configured to perform data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified;
wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
The embodiment of the invention receives the to-be-verified block sent by the block generation node through the block verification node, and performs data verification on the transaction data in the to-be-verified block according to the data source identification information of the transaction data in the to-be-verified block. The block generation node is generated by a set consensus mechanism, wherein the set consensus does not comprise an ore excavation algorithm, the problem of 'double flowers' in the block chain applying the existing non-ore excavation consensus algorithm can be effectively solved, error data are prevented from being added into the block chain, and the validity of the data in the block chain network is further ensured.
Optionally, the data verification module 420 is further configured to, if it is determined that the data source identification information does not exist in the currently processed transaction data, send the currently processed transaction data to an authentication node for authentication; and taking the authentication result returned by the authentication node as the authentication result of the currently processed transaction data.
Optionally, the data verification module 420 is further configured to, if it is determined that data source identification information exists in the currently processed transaction data, extract the data source identification information from the data content of the currently processed transaction data; and acquiring historical transaction data associated with the currently processed transaction data as verification data according to the extracted data source identification information, and verifying the currently processed transaction data according to the verification data.
Optionally, the transaction data includes: financial transaction data, the data source identification information including: a number of historical financial transaction data; the data verification module 420 is further configured to obtain historical financial transaction data corresponding to the number of the historical financial transaction data according to the number of the historical financial transaction data; acquiring all transfer-in limits of the transferred-in accounts corresponding to the historical financial transaction data as the total amount of the currently processed financial transaction data transfer-out accounts; verifying whether the sum of the transfer-out amount of at least one transfer-out account in the currently processed financial transaction data is matched with the sum of the transfer-out amount of the currently processed financial transaction data; and if so, determining that the currently processed financial transaction data passes verification.
Optionally, the apparatus further comprises: the data updating module is used for obtaining a block verification result of the to-be-verified block according to a data verification result of the transaction data in the to-be-verified block, and feeding the block verification result back to the block generating node so that the block generating node can determine whether the to-be-verified block passes consensus or not; receiving a consensus passing response fed back by the block generation node, or simultaneously receiving an update result of the data identification information of the target transaction data in the block to be verified; the updating information of the data identification information is generated through an authentication node; and if the updating result is received, updating the transaction data in the block to be verified according to the updating information of the data identification information, updating the locally stored historical transaction data, and adding the block to be verified into a block chain.
The verification device for the block chain can execute the verification method for the block chain provided by the first embodiment and the second embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method. For details of the technique not described in detail in this embodiment, reference may be made to the verification method of the block chain provided in the first and second embodiments of the present invention.
EXAMPLE five
Fig. 5 is a schematic diagram of an apparatus for verifying a blockchain according to a fifth embodiment of the present invention, as shown in fig. 5, the apparatus includes: a block generation module 510 and a result acquisition module 520, wherein:
a block generation module 510, configured to generate a block to be verified and send the block to a block verification node of a block chain network, where the block generation node is a node elected by setting a consensus mechanism;
a result obtaining module 520, configured to obtain a block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified;
wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
The embodiment of the invention generates the to-be-verified block through the block generating node and sends the to-be-verified block to the block verification node of the block chain network, and obtains the block verification result of the block verification node on the to-be-verified block according to the data source identification information of the transaction data in the to-be-verified block, so as to judge whether the to-be-verified block passes the consensus according to the verification result. The block generation node is generated by a set consensus mechanism, wherein the set consensus does not comprise an ore excavation algorithm, the problem of 'double flowers' in the block chain applying the existing non-ore excavation consensus algorithm can be effectively solved, error data are prevented from being added into the block chain, and the validity of the data in the block chain network is further ensured.
Optionally, the apparatus further comprises: the data updating module is used for judging whether the block to be verified passes the verification of the block verification node or not according to the block verification result, and if the block to be verified passes the consensus according to the block verification result, the consensus passing response is fed back to the block verification node; if the to-be-verified block passes the consensus, detecting whether the to-be-verified block comprises target transaction data of the to-be-updated data identification information; if yes, sending the target transaction data to an authentication node, and acquiring an update result fed back by the authentication node and aiming at data identification information; updating the transaction data in the block to be verified according to the updating result aiming at the data identification information, and adding the block to be verified into a block chain; and according to the updating result aiming at the data identification information, indicating all block verification nodes in the block chain to update the locally stored transaction data in the block to be verified and the locally stored historical transaction data.
Optionally, the data updating module is further configured to detect whether the transaction data in the block to be verified has data identification information.
Optionally, the transaction data includes: financial transaction data, the target transaction data of the update data identification information including: transaction data with the number of the financial transaction data being null; and the data updating module is also used for detecting whether the transaction data in the block to be verified has the serial number of the financial transaction data.
The verification device of the block chain can execute the verification method of the block chain provided by the third embodiment of the invention, and has corresponding functional modules and beneficial effects of the execution method. For details of the technique not described in detail in this embodiment, reference may be made to the block chain verification method provided in the third embodiment of the present invention.
Example 6
Fig. 6 is a schematic structural diagram of a computer device according to a sixth embodiment of the present invention. FIG. 6 illustrates a block diagram of a computer device 612 suitable for use in implementing embodiments of the present invention. The computer device 612 shown in fig. 6 is only an example and should not bring any limitations to the functionality or scope of use of embodiments of the present invention. The computer device 612 is typically a computing device that assumes the functionality of a blockchain system block verification node.
As shown in fig. 6, the computer device 612 is in the form of a general purpose computing device. Components of computer device 612 may include, but are not limited to: one or more processors 616, a memory device 628, and a bus 618 that couples the various system components including the memory device 628 and the processors 616.
Bus 618 represents one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures. By way of example, such architectures include, but are not limited to, an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an enhanced ISA bus, a Video Electronics Standards Association (VESA) local bus, and a Peripheral Component Interconnect (PCI) bus.
Computer device 612 typically includes a variety of computer system readable media. Such media can be any available media that is accessible by computer device 612 and includes both volatile and nonvolatile media, removable and non-removable media.
Storage 628 may include computer system readable media in the form of volatile Memory, such as Random Access Memory (RAM) 630 and/or cache Memory 632. The computer device 612 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 634 may be used to read from or write to non-removable, nonvolatile magnetic media (not shown in FIG. 6, commonly referred to as a "hard disk drive"). Although not shown in FIG. 6, a magnetic disk drive for reading from and writing to a removable, nonvolatile magnetic disk (e.g., a "floppy disk") and an optical disk drive for reading from or writing to a removable, nonvolatile optical disk (e.g., a Compact disk-Read Only Memory (CD-ROM), a Digital Video disk (DVD-ROM), or other optical media) may be provided. In such cases, each drive may be connected to bus 618 by one or more data media interfaces. Storage device 628 may include at least one program product having a set (e.g., at least one) of program modules that are configured to carry out the functions of embodiments of the invention.
A program 636 having a set (at least one) of program modules 626 may be stored, for example, in storage device 628, such program modules 626 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which examples or some combination thereof may include an implementation of a network environment. Program modules 626 generally perform the functions and/or methodologies of embodiments of the invention as described herein.
Computer device 612 may also communicate with one or more external devices 614 (e.g., keyboard, pointing device, camera, display 624, etc.), with one or more devices that enable a user to interact with computer device 612, and/or with any devices (e.g., network card, modem, etc.) that enable computer device 612 to communicate with one or more other computing devices. Such communication may occur via input/output (I/O) interfaces 622. Further, computer device 612 may also communicate with one or more networks (e.g., a Local Area Network (LAN), Wide Area Network (WAN), and/or a public Network, such as the internet) via Network adapter 620. As shown, the network adapter 620 communicates with the other modules of the computer device 612 via the bus 618. It should be appreciated that although not shown, other hardware and/or software modules may be used in conjunction with the computer device 612, including but not limited to: microcode, device drivers, Redundant processing units, external disk drive Arrays, disk array (RAID) systems, tape drives, and data backup storage systems, to name a few.
The processor 616 executes programs stored in the storage device 628, so as to execute various functional applications and data processing, for example, implement the verification method of the block chain provided in the first and second embodiments of the present invention.
That is, the processing unit implements, when executing the program: the block verification node receives a to-be-verified block sent by a block generation node, wherein the block generation node is a node selected by a set consensus mechanism; the block verification node performs data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified; wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
And receiving the to-be-verified block sent by the block generating node through the computer equipment, and performing data verification on the transaction data in the to-be-verified block according to the data source identification information of the transaction data in the to-be-verified block. The block generation node is generated by a set consensus mechanism, wherein the set consensus does not comprise an ore excavation algorithm, the problem of 'double flowers' in the block chain applying the existing non-ore excavation consensus algorithm can be effectively solved, error data are prevented from being added into the block chain, and the validity of the data in the block chain network is further ensured.
EXAMPLE seven
A seventh embodiment of the present invention is an apparatus for executing a verification method of a block chain provided in the third embodiment of the present invention, where the apparatus includes: one or more processors; storage means for storing one or more programs; when the one or more programs are executed by the one or more processors, the one or more processors implement the method for verifying the blockchain according to the third embodiment of the present invention: a block generation node generates a block to be verified and sends the block to be verified to a block verification node of a block chain network, wherein the block generation node is a node selected by a set consensus mechanism; the block generation node acquires a block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified; and the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data and is suitable for being used as a block generation node. The specific structure and the details thereof can be referred to fig. 6 and the sixth embodiment.
Example eight
An eighth embodiment of the present invention further provides a computer storage medium storing a computer program, where the computer program is used to execute the verification method for a blockchain according to the first and second embodiments of the present invention when executed by a computer processor: the block verification node receives a to-be-verified block sent by a block generation node, wherein the block generation node is a node selected by a set consensus mechanism; the block verification node performs data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified; wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data.
Computer storage media for embodiments of the invention may employ any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM) or flash Memory), an optical fiber, a portable compact disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, Radio Frequency (RF), etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
Example nine
An embodiment ninth of the present invention further provides a computer-readable storage medium, on which a computer program is stored, where the computer program, when executed by a processor, can implement the method for verifying a block chain according to the third embodiment: a block generation node generates a block to be verified and sends the block to be verified to a block verification node of a block chain network, wherein the block generation node is a node selected by a set consensus mechanism; the block generation node acquires a block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified; wherein the data source identification information of the transaction data is used for indicating that the transaction data is associated with historical transaction data. The specific details thereof are described with reference to example eight.
It is to be noted that the foregoing is only illustrative of the preferred embodiments of the present invention and the technical principles employed. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, although the present invention has been described in greater detail by the above embodiments, the present invention is not limited to the above embodiments, and may include other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims (15)

1. A method for verifying a blockchain, comprising:
the block verification node receives a to-be-verified block sent by a block generation node, wherein the block generation node is a node selected by a set consensus mechanism, and the block generation node processes a transaction request to obtain transaction data;
if the block verification node determines that the currently processed transaction data has data source identification information, performing data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified;
if the block verification node determines that no data source identification information exists in the transaction data currently processed, the transaction data currently processed is sent to an authentication node for authentication, and the authentication node is used for authenticating the authenticity and the validity of a transaction request;
the data source identification information is used for indicating that the currently processed transaction data is associated with historical transaction data, each transaction data has a unique data source identification information corresponding to the transaction data, and the generation of the data source identification information is associated with the historical transaction data.
2. The method according to claim 1, wherein the performing data validation on the transaction data in the block to be validated according to the data source identification information of the transaction data in the block to be validated further comprises:
and the block verification node takes the authentication result returned by the authentication node as the authentication result of the currently processed transaction data.
3. The method according to claim 1 or 2, wherein the performing data validation on the transaction data in the block to be validated according to the data source identification information of the transaction data in the block to be validated includes:
if the block verification node determines that the data source identification information exists in the currently processed transaction data, extracting the data source identification information from the data content of the currently processed transaction data;
and the block verification node acquires historical transaction data associated with the currently processed transaction data as verification data according to the extracted data source identification information, and verifies the currently processed transaction data according to the verification data.
4. The method of claim 3, wherein the transaction data comprises: financial transaction data, the data source identification information including: a number of historical financial transaction data;
the block verification node acquires historical transaction data associated with the currently processed transaction data as verification data according to the extracted data source identification information, and verifies the currently processed transaction data according to the verification data, wherein the verification data comprises the following steps:
the block verification node acquires historical financial transaction data corresponding to the serial number of the historical financial transaction data according to the serial number of the historical financial transaction data;
the block verification node acquires all transfer-in limits of the transferred-in accounts corresponding to the historical financial transaction data as the total amount of the currently processed financial transaction data transfer-out accounts;
the block verification node verifies whether the sum of the transfer amount of at least one transfer account in the currently processed financial transaction data is matched with the sum of the transfer amount of the currently processed financial transaction data transfer account;
if yes, the block verification node determines that the currently processed financial transaction data is verified.
5. The method of claim 1, further comprising:
the block verification node obtains a block verification result of the block to be verified according to a data verification result of the transaction data in the block to be verified, and feeds the block verification result back to the block generation node, so that the block generation node determines whether the block to be verified passes consensus or not;
the block verification node receives a consensus passing response fed back by the block generation node, or simultaneously receives an update result of data identification information of target transaction data in the block to be verified; wherein, the updating result of the data identification information is generated by an authentication node;
and if the update result is received, the block verification node updates the transaction data in the block to be verified according to the update result of the data identification information, updates the locally stored historical transaction data, and adds the block to be verified into a block chain.
6. A method for verifying a blockchain, comprising:
the block generation node generates a block to be verified and sends the block to be verified to a block verification node of the block chain network; the block generation node is a node selected by a set consensus mechanism, and the block generation node processes the transaction request to obtain transaction data;
the block generation node acquires a block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified; the data source identification information is used for indicating that the currently processed transaction data is associated with historical transaction data, each transaction data has a unique data source identification information corresponding to the transaction data, and the generation of the data source identification information is associated with the historical transaction data;
if the block verification node determines that the data source identification information exists in the currently processed transaction data, performing data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified; and if the data source identification information does not exist in the transaction data processed currently, sending the transaction data processed currently to an authentication node for authentication, wherein the authentication node is used for authenticating the authenticity and the validity of the transaction request.
7. The method of claim 6, further comprising:
the block generation node judges whether the block to be verified passes the verification of the block verification node according to the block verification result;
if the block generation node determines that the to-be-verified block passes the consensus according to the block verification result, the consensus passing response is fed back to the block verification node; if the to-be-verified block passes the consensus, detecting whether the to-be-verified block comprises target transaction data of the to-be-updated data identification information;
if yes, the block generation node sends the target transaction data to an authentication node, and obtains an update result which is fed back by the authentication node and aims at data identification information; the block generation node updates the transaction data in the block to be verified according to the update result aiming at the data identification information, and adds the block to be verified into a block chain; and the block generation node instructs all block verification nodes in the block chain to update the locally stored transaction data in the block to be verified and the locally stored historical transaction data according to the updating result aiming at the data identification information.
8. The method according to claim 7, wherein the detecting whether the target transaction data of the data identification information to be updated is included in the block to be verified comprises:
and the block generation node detects whether the transaction data in the block to be verified has data identification information.
9. The method of claim 8, wherein the transaction data comprises: the financial transaction data, the target transaction data of the data identification information to be updated includes: transaction data with the number of the financial transaction data being null;
detecting whether the to-be-verified block includes target transaction data of the to-be-updated data identification information, including:
and the block generation node detects whether the transaction data in the block to be verified has the number of the financial transaction data.
10. An apparatus for verifying a blockchain, configured at a block verification node, comprising:
the block receiving module is used for receiving a to-be-verified block sent by a block generating node, wherein the block generating node is a node selected by a set consensus mechanism, and the block generating node processes a transaction request to obtain transaction data;
the data verification module is used for performing data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified if the data source identification information exists in the currently processed transaction data; if the data source identification information does not exist in the transaction data processed currently, the transaction data processed currently is sent to an authentication node for authentication, and the authentication node is used for authenticating the authenticity and the validity of a transaction request;
the data source identification information is used for indicating that the currently processed transaction data is associated with historical transaction data, each transaction data has a unique data source identification information corresponding to the transaction data, and the generation of the data source identification information is associated with the historical transaction data.
11. An apparatus for verifying a block chain, which is arranged at a block generation node, comprising:
the block generation module is used for generating a block to be verified and sending the block to be verified to a block verification node of the block chain network; the block generation node is a node selected by a set consensus mechanism, and the block generation node processes the transaction request to obtain transaction data;
the result obtaining module is used for obtaining the block verification result of the block to be verified by the block verification node according to the data source identification information of the transaction data in the block to be verified; the data source identification information is used for indicating that the currently processed transaction data is associated with historical transaction data, each transaction data has a unique data source identification information corresponding to the transaction data, and the generation of the data source identification information is associated with the historical transaction data;
if the block verification node determines that data source identification information exists in the currently processed transaction data, performing data verification on the transaction data in the block to be verified according to the data source identification information of the transaction data in the block to be verified; and if the data source identification information does not exist in the transaction data processed currently, sending the transaction data processed currently to an authentication node for authentication, wherein the authentication node is used for authenticating the authenticity and the validity of the transaction request.
12. A computer device, the device comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a method of validation of a blockchain as claimed in any one of claims 1 to 5.
13. A computer device, the device comprising:
one or more processors;
a storage device for storing one or more programs,
when executed by the one or more processors, cause the one or more processors to implement a method of validation of a blockchain as claimed in any one of claims 6 to 9.
14. A computer storage medium on which a computer program is stored, which program, when being executed by a processor, is adapted to carry out a method of verifying a blockchain according to any one of claims 1 to 5.
15. A computer storage medium on which a computer program is stored which, when being executed by a processor, carries out a method of verifying a blockchain according to any one of claims 6 to 9.
CN201810709883.1A 2018-07-02 2018-07-02 Block chain verification method, device, equipment and storage medium Active CN108921556B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810709883.1A CN108921556B (en) 2018-07-02 2018-07-02 Block chain verification method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810709883.1A CN108921556B (en) 2018-07-02 2018-07-02 Block chain verification method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN108921556A CN108921556A (en) 2018-11-30
CN108921556B true CN108921556B (en) 2022-04-19

Family

ID=64423692

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810709883.1A Active CN108921556B (en) 2018-07-02 2018-07-02 Block chain verification method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN108921556B (en)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109102261A (en) * 2018-08-02 2018-12-28 刘卓 Based on the encryption currency for matching the decentralization for winning banknote, safety, power saving
CN111258599B (en) * 2018-12-03 2023-06-20 中国电信股份有限公司 Firmware upgrade method, system and computer readable storage medium
CN109683995B (en) * 2018-12-17 2022-03-11 达闼机器人有限公司 Packing block, verification block and intelligent contract execution method
CN109710695B (en) * 2018-12-26 2021-10-08 百度在线网络技术(北京)有限公司 Transaction request validity identification and initiation method, device, equipment and medium
CN109858914A (en) * 2019-01-18 2019-06-07 深圳壹账通智能科技有限公司 Block chain data verification method, device, computer equipment and readable storage medium storing program for executing
CN109933629B (en) * 2019-03-15 2021-07-30 腾讯科技(深圳)有限公司 Data synchronization method and device, computer equipment and readable storage medium
CN110138596A (en) * 2019-04-13 2019-08-16 山东公链信息科技有限公司 A kind of block chain common recognition method based on handover network topology mode
CN110060064B (en) * 2019-04-26 2023-05-16 深圳市迅雷网络技术有限公司 Transaction information verification method and related device
CN112671689B (en) * 2019-10-15 2022-10-14 北京新唐思创教育科技有限公司 Data uplink method, device, electronic equipment and computer storage medium
CN110933040B (en) * 2019-11-05 2021-11-12 武汉菲旺软件技术有限责任公司 Block chain based data uplink method, device, equipment and medium
CN110933627B (en) * 2019-11-15 2021-04-27 北京三快在线科技有限公司 Service processing method, device, equipment and storage medium
CN111064711B (en) * 2019-11-27 2020-11-10 重庆浙大网新科技有限公司 Block chain-based data stream detection method and device and server
CN114731277A (en) * 2019-12-26 2022-07-08 富士通株式会社 Transmission control method, transmission control program, and information processing apparatus
CN113312362A (en) * 2020-02-26 2021-08-27 百度在线网络技术(北京)有限公司 Block chain data modification method, device, equipment and storage medium
CN111339569B (en) * 2020-02-26 2023-05-26 百度在线网络技术(北京)有限公司 Block chain data processing method, device, electronic equipment and medium
CN111932254B (en) * 2020-08-11 2024-03-22 杭州萌格信息科技有限公司 Application method of block chain multi-chain parallel structure
CN112235802A (en) * 2020-10-14 2021-01-15 深圳市众云网有限公司 Information environment security analysis method and system for mobile internet
CN112819628B (en) * 2021-02-01 2024-02-02 网易(杭州)网络有限公司 Transaction replay prevention detection method, device and system, electronic equipment and storage medium
CN112950208A (en) * 2021-03-29 2021-06-11 建信金融科技有限责任公司 Accounting information processing method and device based on block chain
CN113610539A (en) * 2021-08-24 2021-11-05 上海点融信息科技有限责任公司 Information notification method, device, system, equipment and storage medium
CN113505138B (en) * 2021-09-06 2021-12-21 支付宝(杭州)信息技术有限公司 Method and apparatus for state attestation and execution of blocks in a blockchain system
CN113852679B (en) * 2021-09-16 2024-01-26 安徽中科晶格技术有限公司 Network resource optimization method, device, equipment and storage medium based on authentication node
CN113556238B (en) * 2021-09-22 2022-02-15 深圳前海微众银行股份有限公司 Block verification method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106981004A (en) * 2016-01-15 2017-07-25 埃森哲环球解决方案有限公司 Equipment, method and system for the autonomous selection to goods providers
CN107766540A (en) * 2017-10-31 2018-03-06 上海分布信息科技有限公司 A kind of block chain network of subregion and its method for realizing partitioned storage
CN107766542A (en) * 2017-10-30 2018-03-06 上海分布信息科技有限公司 A kind of block chain network of subregion and its method for realizing subregion inquiry
CN108182482A (en) * 2017-11-20 2018-06-19 广东中科南海岸车联网技术有限公司 The cultivation monitoring method and device of long-term cropping based on block chain

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105608588A (en) * 2016-01-04 2016-05-25 布比(北京)网络技术有限公司 Tracing record processing method and apparatus
CN105719185B (en) * 2016-01-22 2019-02-15 杭州复杂美科技有限公司 The data comparison and common recognition method of block chain
CN105931052A (en) * 2016-04-21 2016-09-07 四川大学 Virtual currency transaction validation method based on block chain multi-factor cross-validation
KR101780635B1 (en) * 2016-04-28 2017-09-21 주식회사 코인플러그 Method for creating, registering, revoking certificate information and server using the same
CN106327173A (en) * 2016-08-22 2017-01-11 布比(北京)网络技术有限公司 Network payment method and network payment device
CN106453636A (en) * 2016-11-22 2017-02-22 深圳银链科技有限公司 Credible block generation method and system
CN107016606A (en) * 2016-12-08 2017-08-04 阿里巴巴集团控股有限公司 A kind of method for processing resource and device
CN107453870A (en) * 2017-09-12 2017-12-08 京信通信系统(中国)有限公司 Mobile terminal authentication management method, device and corresponding mobile terminal based on block chain
CN107833060B (en) * 2017-11-13 2020-12-25 中国银行股份有限公司 Verification method and system for intelligent contract transaction in block chain

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106981004A (en) * 2016-01-15 2017-07-25 埃森哲环球解决方案有限公司 Equipment, method and system for the autonomous selection to goods providers
CN107766542A (en) * 2017-10-30 2018-03-06 上海分布信息科技有限公司 A kind of block chain network of subregion and its method for realizing subregion inquiry
CN107766540A (en) * 2017-10-31 2018-03-06 上海分布信息科技有限公司 A kind of block chain network of subregion and its method for realizing partitioned storage
CN108182482A (en) * 2017-11-20 2018-06-19 广东中科南海岸车联网技术有限公司 The cultivation monitoring method and device of long-term cropping based on block chain

Also Published As

Publication number Publication date
CN108921556A (en) 2018-11-30

Similar Documents

Publication Publication Date Title
CN108921556B (en) Block chain verification method, device, equipment and storage medium
CN108985772B (en) Block chain verification method, device, equipment and storage medium
US11258612B2 (en) Method, apparatus, and electronic device for blockchain-based recordkeeping
CN108810006B (en) Resource access method, device, equipment and storage medium
US10567175B2 (en) Method and system blockchain variant using digital signatures
US20200382490A1 (en) Method and system for trustworthiness using digital certificates
CN108961052B (en) Verification method, storage method, device, equipment and medium of block chain data
CN108924130B (en) Block data verification method, device, equipment and storage medium
CN108920514B (en) Information storage method, device, equipment and storage medium based on block chain
CN108923909B (en) Block chain generation method and device, computer equipment and storage medium
EP3720045A1 (en) Blockchain-based data verification method and apparatus, and electronic device
CN107240001B (en) Transaction method and system for digital assets
US20210083856A1 (en) Improved hardware security module management
US20210304201A1 (en) Transaction verification method and apparatus, storage medium, and electronic device
US20210049715A1 (en) Blockchain-based data procesing method, apparatus, and electronic device
CN111681003A (en) Resource cross-chain transfer method and device, computer equipment and storage medium
CN109684414B (en) Method, device and equipment for synchronizing block data and storage medium
CN111314172B (en) Block chain-based data processing method, device, equipment and storage medium
CN110598456B (en) Data storage method and device, electronic equipment and storage medium
US20190207766A1 (en) File based transmission validation and failure location identification system
CN111597567B (en) Data processing method, data processing device, node equipment and storage medium
GB2573499A (en) A method of communicating
CN111899019A (en) Method and system for cross validation and sharing of blacklist and multiple parties
CN112636984B (en) Federation chain configuration updating method, equipment and computer medium
CN114782045A (en) Cross-chain non-transactional writing method and device, storage medium and electronic equipment

Legal Events

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