Summary of the invention
The embodiment of the present application provides the common recognition method and its relevant device of a kind of block chain data, for simplifying block chain
Common recognition process.
The embodiment of the present application first aspect provides a kind of common recognition method of block chain data, is applied to propose node, institute
It states and proposes that node is the node in block catenary system, the block catenary system further includes multiple ballot nodes, which comprises
The signing messages that the multiple ballot node is sent respectively is received, the signing messages includes that the ballot node makes
With Gamma signature algorithm to the signature of block to be confirmed;
Judge whether the quantity of the signing messages received reaches preset value;
If so, generating aggregate signature using the polymerization of Gamma signature algorithm using the multiple signing messages received;
The aggregate signature is sent to the ballot node, so that when the ballot node is logical to the aggregate signature
Determine that the block to be confirmed is effective when crossing verifying.
Optionally, the block to be confirmed includes transaction results, in the label for receiving the multiple ballot node and sending
Before name information, the method also includes:
Receive the Transaction Information that the multiple ballot node is sent respectively;
The Transaction Information is ranked up, transaction List Table is obtained;
The transaction List Table is sent to the ballot node, so that ballot node simulation executes the transaction column
After table obtains transaction results, the ballot node generates block to be confirmed according to the transaction results.
Optionally, the transaction List Table includes history block information, and the transaction List Table is sent to the ballot node
Specifically further include:
The history block information is sent to the ballot node, so that the ballot node is to the history block
Information is matched.
Optionally, it is generated and is gathered using the polymerization of Gamma signature algorithm in multiple signing messages that the utilization receives
Before closing signature, the method also includes:
Simulation executes the transaction List Table, obtains transaction results;
Generate block to be confirmed according to the transaction results, and using Gamma signature algorithm to the block to be confirmed into
Row signature, obtains the first signature;
Multiple signing messages that the utilization receives generate aggregate signature packet using the polymerization of Gamma signature algorithm
It includes:
First signature is polymerize with the multiple signing messages received, obtains aggregate signature.
Optionally, the signing messages further includes the cryptographic Hash of the block head of the block to be confirmed.
Optionally, the block catenary system includes 3F+1 node, and the preset value includes 2F, and F is the nature greater than 0
Number.
The embodiment of the present application second aspect provides a kind of common recognition method of block chain data, is applied to ballot node, institute
Stating ballot node is the node in block catenary system, and the block catenary system further includes proposing node, which comprises
Obtain block to be confirmed;
It is signed using Gamma signature algorithm to the block to be confirmed, generates signing messages;
The signing messages is sent to the proposal node;
The aggregate signature that the proposal node is sent is received, the aggregate signature utilizes multiple described for the proposal node
It is generated after signing messages polymerization;
Verify the aggregate signature;
When the aggregate signature passes through verifying, determine that the block to be confirmed is effective.
Optionally, the block to be confirmed includes transaction results, and the acquisition block to be confirmed includes:
Obtain Transaction Information;
The Transaction Information is sent to the proposal node;
The transaction List Table that the proposal node is sent is received, the transaction List Table is that the proposal node believes the transaction
Breath is ranked up to obtain;
Simulation executes the transaction List Table, obtains transaction results;
Block to be confirmed is generated according to the transaction results.
Optionally, the transaction List Table includes history block information, the method also includes:
It is judged whether there is and the matched target data of history Block message using own database;
If it exists, then it triggers described according to transaction results generation block to be confirmed.
Optionally, after determining that the block to be confirmed is effective, the method also includes:
After determining that the block to be confirmed is effective, it is determined that the target data in the own database is effective.
Optionally, the block catenary system includes 3F+1 node, and F is the natural number greater than 0, the verifying polymerization
Signature includes:
Verify whether the quantity in the aggregate signature comprising signing messages is greater than or equal to 2F+1;
If so, determining that the aggregate signature passes through verifying;
If not, it is determined that the aggregate signature is unverified.
Optionally, the signing messages further includes the cryptographic Hash of the block head of the block to be confirmed.
The embodiment of the present application third aspect provides a kind of common recognition device of block chain data, and described device includes memory
And processor, the common recognition program for the block chain data that can be run on the processor, the area are stored on the memory
The method as described in any one of preceding method embodiment is realized when the common recognition program of block chain data is executed by the processor.
Optionally, described device is the node of block chain network.
The embodiment of the present application fourth aspect provides a kind of common recognition system of block chain data, is applied to propose node, institute
It states and proposes that node is the node in block catenary system, the block catenary system further includes ballot node, the system comprises:
First receiving unit, the signing messages sent respectively for receiving the multiple ballot node, the signing messages
Including the ballot node using Gamma signature algorithm to the signature of block to be confirmed;
Judging unit, for judging whether the quantity of the signing messages received reaches preset value;
First generation unit, for determining that the quantity of the signing messages received reaches default when the judging unit
When value, then aggregate signature is generated using the polymerization of Gamma signature algorithm using the multiple signing messages received;
First transmission unit, for the aggregate signature to be sent to the ballot node, so that when the ballot saves
Point determines that the block to be confirmed is effective when passing through verifying to the aggregate signature.
Optionally, the block to be confirmed includes transaction results, the system also includes:
Second receiving unit receives the Transaction Information that the multiple ballot node is sent respectively;
Sequencing unit obtains transaction List Table for being ranked up to the Transaction Information;
Second transmission unit, for the transaction List Table to be sent to the ballot node, so that the ballot node
After the simulation execution transaction List Table obtains transaction results, the ballot node generates area to be confirmed according to the transaction results
Block.
Optionally, the transaction List Table includes history block information, and second transmission unit is also used to:
The history block information is sent to the ballot node, so that the ballot node is to the history block
Information is matched.
Optionally, the system also includes:
Execution unit is simulated, the transaction List Table is executed for simulating, obtains transaction results;
Second generation unit for generating block to be confirmed according to the transaction results, and uses Gamma signature algorithm pair
The block to be confirmed is signed, and the first signature is obtained;
First generation unit is specifically used for:
First signature is polymerize with the multiple signing messages received, obtains aggregate signature.
Optionally, the signing messages further includes the cryptographic Hash of the block head of the block to be confirmed.
Optionally, the block catenary system includes 3F+1 node, and the preset value includes 2F, and F is the nature greater than 0
Number.
The 5th aspect of the embodiment of the present application provides a kind of common recognition system of block chain data, is applied to ballot node, institute
Stating ballot node is the node in block catenary system, and the block catenary system further includes proposing node, which comprises
Acquiring unit, for obtaining block to be confirmed;
Signature unit of voting generates A.L.S. for signing using Gamma signature algorithm to the block to be confirmed
Breath;
Transmission unit, for the signing messages to be sent to the proposal node;
Receiving unit, the aggregate signature sent for receiving the proposal node, the aggregate signature is proposal section
What point was generated after being polymerize using multiple signing messages;
Authentication unit, for verifying the aggregate signature;
First determination unit, for when the aggregate signature passes through verifying, determining that the block to be confirmed is effective.
Optionally, the block to be confirmed includes transaction results, and the acquiring unit is specifically used for:
Obtain Transaction Information;
The Transaction Information is sent to the proposal node;
The transaction List Table that the proposal node is sent is received, the transaction List Table is that the proposal node believes the transaction
Breath is ranked up to obtain;
Simulation executes the transaction List Table, obtains transaction results;
Block to be confirmed is generated according to the transaction results.
Optionally, the transaction List Table includes history block information, the system also includes:
Judging unit, for being judged whether there is and the matched number of targets of history Block message using own database
According to;
Trigger unit, for being matched when the judging unit determines to exist in own database with the history Block message
Target data, then trigger described generating block to be confirmed according to the transaction results.
Optionally, after determining that the block to be confirmed is effective, the system also includes:
Second determination unit, for after determining that the block to be confirmed is effective, it is determined that in the own database
Target data it is effective.
Optionally, the block catenary system includes 3F+1 node, and F is the natural number greater than 0, and the authentication unit is specific
For:
Verify whether the quantity in the aggregate signature comprising signing messages is greater than or equal to 2F+1;
If so, determining that the aggregate signature passes through verifying;
If not, it is determined that the aggregate signature is unverified.
Optionally, the signing messages further includes the cryptographic Hash of the block head of the block to be confirmed.
The 6th aspect of the embodiment of the present application provides a kind of computer readable storage medium, the computer-readable storage medium
The common recognition program of block chain data is stored in matter, the common recognition program of the block chain data can be by one or more processor
It executes, to realize the common recognition method of the block chain data as described in any one of preceding method embodiment.
As can be seen from the above technical solutions, the embodiment of the present application, which has the advantage that, receives the multiple ballot node
The signing messages sent respectively, the signing messages include that the ballot node uses Gamma signature algorithm to block to be confirmed
Signature;Judge whether the quantity of the signing messages received reaches preset value;If so, utilizing the multiple institutes received
It states signing messages and generates aggregate signature using the polymerization of Gamma signature algorithm;The aggregate signature is sent to the ballot node,
So that determining that the block to be confirmed is effective when the ballot node passes through verifying to the aggregate signature.Therefore, in area
It uses Gamma signature algorithm to generate aggregate signature during the common recognition of block chain, the signature from each ballot node can be thrown
Ticket is polymerize, and is simplified the common recognition process of block chain, can be known together to more data, hinder to reduce in network
The risk of plug.
Specific embodiment
Lower the embodiment of the present application provides the common recognition method and its relevant device of a kind of block chain data, for simplifying block
The common recognition process of chain.
In order to make those skilled in the art more fully understand application scheme, below in conjunction in the embodiment of the present application
Attached drawing, the technical scheme in the embodiment of the application is clearly and completely described, it is clear that described embodiment is only
The embodiment of the application a part, instead of all the embodiments.Based on the embodiment in the application, ordinary skill people
Member's every other embodiment obtained without making creative work, all should belong to the model of the application protection
It encloses.
The description and claims of this application and term " first ", " second ", " third ", " in above-mentioned attached drawing
Four " etc. be to be used to distinguish similar objects, without being used to describe a particular order or precedence order.It should be understood that using in this way
Data be interchangeable under appropriate circumstances, so that the embodiments described herein can be in addition to illustrating herein or describing
Sequence other than appearance is implemented.In addition, term " includes " and " having " and their any deformation, it is intended that covering is non-exclusive
Include, for example, the process, method, system, product or equipment for containing a series of steps or units are not necessarily limited to clearly arrange
Those of out step or unit, but may include be not clearly listed or it is solid for these process, methods, product or equipment
The other step or units having.
In the prior art, practical Byzantine failure tolerance system (PBFT, Practical Byzantine-Fault-
It Tolerant is) that a kind of more common common recognition algorithm, i.e. service are modeled as state machine in block chain, state machine is dividing
The different nodes of cloth system carry out copy replication, and the copy of each state machine saves the state of service, while also realizing
The operation of service.In the process of PBFT algorithm, the node total number for participating in common recognition is set as N=3f+1, wherein f is potentially to visit
Front yard (malice) number of nodes is accounted for, with f=1, i.e., the common recognition network formed for N=4 node, as shown in Figure 1.In the process,
Including request process (request), common recognition process and response process (reply), wherein common recognition process be divided into pre-prepare,
Prepare, commit three phases, the common recognition process are specific as follows: from the whole network node (node C, node 0, node 1, node 2,
Node 3) a proposal node (node C) is elected, new block is responsible for generation by proposal node;Other nodes send client
Transaction to the whole network broadcast, it is proposed that node will from network collection to need to be placed in new block multiple transaction sequence after be stored in column
Table, and the list is broadcasted to the whole network;After other nodes receive transaction List Table, these transaction are executed according to sequence simulation.Institute
After thering is transaction to execute, the Hash digest of new block is calculated based on transaction results, and broadcast to the whole network;If a node receives
2f item from other nodes send abstract it is all identical with oneself, just to the whole network broadcast one commit message;If one
A node receives 2f+1 commit message, and new block and its transaction can be submitted to arrive local block chain and slip condition database,
I.e. confirmation new block is legal block.It is right it can be appreciated that the communication complexity of PBFT algorithm is higher in the description of above-mentioned process
In the block chain common recognition network of n node composition, each round common recognition process needs O (n^2) secondary communication.For the minority of same computer room
For the network of node composition, performance issue caused by high communication complexity influences less, but due under many scenes, area
Block chain needs more node participations that can just better reflect public credibility and practical value, therefore there are the need that number of nodes increases
It asks.Experiment shows to apply when number of nodes is greater than 19 when PBFT algorithm, and performance can become obvious low;Work as number of nodes
When amount reaches 31, common recognition algorithm will almost be can not work normally.For this purpose, the embodiment of the present application provides a kind of block chain data
Common recognition method and its relevant device, for simplifying the common recognition process of block chain.
In order to make it easy to understand, the detailed process in the embodiment of the present application is described below, referring to Fig. 2, the application
A kind of one embodiment of the common recognition method of block chain data includes: in embodiment
201, ballot node obtains block to be confirmed;
In the present embodiment, ballot node obtains block to be confirmed.
It is generated in the period in a block, numerous nodes in block catenary system will go out propose by specific algorithms selection
Node (Proposer) and ballot node (Validators, also referred to as identifier's node), i.e., participate in common recognition in block chain
Role includes two classes: proposing node and ballot node, it is proposed that node is responsible for collecting transaction, is packaged block and verifying vote information;
Ballot node is responsible for verifying block and vote to effective block.In this step, ballot node can pass through block linkwork
Acquired in system and propose that node is sent to the block to be confirmed of the ballot node, be also possible to receive propose that node sends to
Confirmation message further generates block to be confirmed, can also be other acquisition modes, specifically herein without limitation.
202, ballot node votes to block to be confirmed;
In the present embodiment, ballot node can be used aggregate signature algorithm and carry out ballot signature to block to be confirmed, obtain
Signing messages.
In the present embodiment, ballot node treats vote information using Gamma signature algorithm and carries out ballot signature, is signed
Information.
Specifically, the ballot node can carry out legitimate verification to the vote information, when the ballot node determines the throwing
When ticket information passes through legitimate verification, vote information is treated using Gamma signature algorithm and is voted, A.L.S. is obtained
Breath.
203, ballot node sends signing messages to proposal node;
In the present embodiment, node is voted after step 202 obtains signing messages, which is sent to proposal section
Point, so that the proposal node learns that the ballot node votes to the block to be confirmed to get ballot node approval is known
The block to be confirmed.
Specifically in the implementation process of scheme, which can also include the Hash of the block head of block to be confirmed
Value, wherein the cryptographic Hash of the block head of block to be confirmed identifies the label for identifying the corresponding block information of the signing messages
There are corresponding relationships with the block to be confirmed for name information.
204, propose that node judges whether to reach preset value;
In the present embodiment, it is proposed that whether the quantity for the signing messages that node judgement receives reaches preset value, if so,
205 are thened follow the steps, if it is not, thening follow the steps 208.
Specifically, proposing that node may determine that whether the quantity of the signing messages received within a preset period of time reaches
Preset value.
As a preferred embodiment, the authentication mechanism of PBFT algorithm can be introduced herein, i.e., propose node herein
It can be used as ballot node and carry out participation ballot, ballot can also be not involved in.Specific deterministic process can use for reference PBFT algorithm
Certification mode, i.e., include 3F+1 node in the block catenary system altogether, and F is the natural number greater than 0 with proposal node participation
For ballot, the preset value in this step is 2F at this time, if that is, the proposal node receives 2F node within a preset period of time
When determining the signing messages to the block to be confirmed, that is, determine that the quantity of signing messages reaches preset value, thens follow the steps 205,
If it is not, thening follow the steps 208.
205, if so, proposing that signing messages polymerize by node;
In the present embodiment, when proposal node determines that the quantity of the signing messages received reaches pre- in step 204
If then the signing messages is polymerize using Gamma signature algorithm when value.
Specifically, Gamma algorithm implementation process described in Fig. 5 is seen, in Gamma signature algorithm, between user
Interaction can be abstracted as two steps.Firstly, signature node calls Gamma signature algorithm, treats ballot content and signs,
Then signature is sent to aggregation, as shown in figure 1..Then, the signature from different nodes is aggregated in by aggregation
Together, it is sent to verifier after generating multi-signature, as shown in figure 2..Gamma signature, will be multiple using elliptic curve is based on
Signature condenses together, and compared to general ECDSA algorithm, the S portion of multi-signature can be optimized becomes one, is saved with this
The nearly transimission and storage space of half.
206, propose that node sends aggregate signature to node of voting;
In the present embodiment, it is proposed that node is sent to ballot after step 205 obtains the aggregate signature, by the aggregate signature
Node.
207, ballot node determines that aggregate signature is effective;
In the present embodiment, when node of voting determines that the aggregate signature passes through legitimate verification, it is determined that described to be confirmed
Block is effective.
Specifically, after the ballot node receives the aggregate signature, and verifying this polymerization label herein still by taking PBFT as an example
Name includes the legal multi-signature from 2F+1 node for current block, can assert that the block to be confirmed is effective, after
It is continuous that new block and its transaction can be submitted to local block chain, slip condition database is updated or be added into the band vote information
Trading pit waits in line transaction etc., specifically herein without limitation.
208, if it is not, then proposing that node executes other operations.
In the present embodiment, when the proposal node determines that the quantity of the signing messages received does not reach in step 204
When to preset value, then other operations are executed, that is, determine that the block to be confirmed does not obtain the approval of block catenary system, then the proposal section
Point does not execute the step of generating aggregate signature according to signing messages, can directly abandon the block to be confirmed, or again
New submit waits next polling procedure, can also be other operations, specifically herein without limitation.
In the present embodiment, it is proposed that node receives the signing messages that the multiple ballot node is sent respectively, the A.L.S.
Breath includes signature of the ballot node using Gamma signature algorithm to block to be confirmed;Judge the A.L.S. received
Whether the quantity of breath reaches preset value;If so, poly- using Gamma signature algorithm using the multiple signing messages received
Symphysis is at aggregate signature;The aggregate signature is sent to the ballot node, so that when the ballot node is to described poly-
It closes when signature passes through verifying and determines that the block to be confirmed is effective.Therefore, it is signed during the common recognition of block chain using Gamma
Algorithm generates aggregate signature, the signature ballot from each ballot node can be polymerize, the common recognition of simplified block chain
Journey can know together to more data, to reduce the risk blocked in network.
The common recognition process for specifically seeing Fig. 4, elects a proposal node from the whole network node, new block is by proposal node
It is responsible for generation.Figure interior joint 0 is to propose node, other nodes are ballot node.
The transaction that client is sent of ballot node is broadcasted to the whole network, it is proposed that node will be from network collection to need to be placed on new district
It is stored in list after multiple transaction sequence in block, and the list is broadcasted to the whole network.After ballot node receives transaction List Table, root
These transaction are executed according to sequence simulation.After All Activity has executed, signed with the private key of oneself to block to be confirmed, so
Signature is returned into proposal node afterwards.Propose the block ballot signature that node verification receives, is more than if proposing that node receives
Signature is then polymerize by multi-signature aggregating algorithm together with oneself signature to block by the legitimate signature of 2f node
Generate a multi-signature.If a node receives multi-signature message, and verifying this multi-signature message includes to be directed to work as
The legal multi-signature from 2f+1 node of preceding block can submit new block and its transaction to local block chain and shape
State database.
In the embodiment of the present application, based on embodiment described in Fig. 2, block to be confirmed specifically is obtained in step 201 ballot node
Process can be by proposing that node is realized.Below referring to Fig. 3, a kind of common recognition of block chain data of the embodiment of the present application
In another embodiment of method, based on embodiment described in Fig. 2, specifically may include: in the implementation procedure of step 201
301, ballot node obtains Transaction Information;
In the present embodiment, ballot node obtains Transaction Information, i.e., it is generated that each ballot node obtains itself client
Transaction Information.
302, ballot node sends Transaction Information to proposal node;
In the present embodiment, the Transaction Information that each ballot node will acquire is sent to proposal node, for example, each throwing
Ticket node can be sent by way of block chain network is broadcasted, and be also possible to direct point-to-point sending mode and sent out
It send, specifically herein without limitation.
303, propose that node is ranked up the Transaction Information;
In the present embodiment, it is proposed that node is ranked up the Transaction Information being collected into step 302, obtains transaction List Table.
As a preferred embodiment, specifically introduced after transaction List Table in Fig. 3 corresponding embodiment, in step 205, when
When proposing that node determines that the quantity of the signing messages received reaches preset value in step 204, then by the signing messages
It is polymerize using aggregate signature algorithm, which specifically can be introduced aggregate signature by the process for obtaining aggregate signature
In.
Specifically, proposal node simulation executes the transaction List Table, obtains transaction results;It is raw according to the transaction results
After block to be confirmed, which signs to the block to be confirmed using Gamma signature algorithm, obtains first
Signature, thus, polymerization is generated using the polymerization of Gamma signature algorithm using the multiple signing messages received in step 204
Signature specifically includes: the first signature of the proposal node being polymerize with multiple signing messages that step 203 receives, is obtained
Aggregate signature.
304, propose that node sends transaction List Table to ballot node;
In the present embodiment, it is proposed that the transaction List Table that node is generated to ballot node sending step 303.
305, the simulation of ballot node executes transaction;
In the present embodiment, ballot node simulates according to normal process and executes the transaction List Table, generates transaction results.
306, ballot node generates block to be confirmed.
In the present embodiment, ballot node generates block to be confirmed according to the transaction results that step 305 obtains.
For example, block to be confirmed can be block to be confirmed, comprising complete in above-mentioned transaction List Table in the block
Portion's transaction;
In the present embodiment, specifically in the implementation procedure of scheme, ballot node sorts in the transaction that step 304 acquires
List further includes history block information, can also increase the judgment step to the implementing precondition condition of step 305, please refer to below
Fig. 3-1, specifically the step of increase include:
307, it is judged whether there is and the matched target data of history Block message using own database;
In the present embodiment, which judges that history Block message whether there is and the history using own database
The matched target data of Block message, if so, 308 are thened follow the steps, if it is not, thening follow the steps 309.
Specifically, the history block information can be all information of history block, it is also possible to history block and all believes
The cryptographic Hash of breath, as a preferred embodiment, in order to save Internet resources, which can also be the proposal node
The cryptographic Hash of a block of newest n (n is greater than 0 integer) in database, as a preferred embodiment, which can
There is load in the form of block head in the transaction sorted lists information, other kinds of history block letter can also be
Breath, specifically herein without limitation.
308, it if it exists, then triggers described according to transaction results generation block to be confirmed.
In the present embodiment, when ballot node determines in own database exist and the matched target of history block information
When data, then triggers and execute step 306 according to transaction results generation block to be confirmed.
Specifically, if ballot node finds cryptographic Hash and own database in the history block information of block to be confirmed
In before block whether match, if matching, illustrate that the ballot node is consistent with the block height of the proposal node, can hold
The subsequent common recognition process of row.
309, other operations if it does not exist, are then executed.
In the present embodiment, when the ballot node determines that there is no matched with the history block information in own database
When target data, then the ballot node executes other operations, and illustratively, which can check block height, if
Block height in history block information is higher than corresponding block height in own database, then first having to synchronous block;Such as
Fruit is not higher than oneself, then would not vote.
In the embodiment of the present application, it is based on Fig. 3-1 embodiment, specifically determines that the block to be confirmed has in step 207
After effect, it is determined that the target data in the own database is effective, i.e., the ballot node can determine in own database
It is also effective block with the matched target data of history block information.
Common recognition algorithm in this programme based on multi-signature another point different from traditional PBFT algorithm is we
Common recognition algorithm one additional block of needs of case confirms the absolute consistency of previous block.Since message has loss in network
Or the case where other abnormal aggressions, there are inconsistent possibility between different nodes for the common recognition presence of a single wheel, but for
Continuous two blocks by common recognition can mean the block before it when the block below is reached common understanding
It can confirm in a network absolutely unanimously, therefore the safety still available guarantee for algorithm of knowing together.
The embodiment of the present application is described from method part above, below from the angle of virtual bench to the application into
Row explanation.
Referring to Fig. 6, a kind of common recognition system of block chain data in the embodiment of the present application, is applied to propose node, this is
System includes:
First receiving unit 601, the signing messages sent respectively for receiving the multiple ballot node, the A.L.S.
Breath includes signature of the ballot node using Gamma signature algorithm to block to be confirmed;
Judging unit 602, for judging whether the quantity of the signing messages received reaches preset value;
First generation unit 603, for determining that the quantity of the signing messages received reaches when the judging unit
When preset value, then aggregate signature is generated using the polymerization of Gamma signature algorithm using the multiple signing messages received;
First transmission unit 604, for the aggregate signature to be sent to the ballot node, so that working as the ballot
Node determines that the block to be confirmed is effective when passing through verifying to the aggregate signature.
As a preferred embodiment, the block to be confirmed includes transaction results, the system also includes:
Second receiving unit 605, the Transaction Information sent respectively for receiving the multiple ballot node;
Sequencing unit 606 obtains transaction List Table for being ranked up to the Transaction Information;
Second transmission unit 607, for the transaction List Table to be sent to the ballot node, so that the ballot saves
After the point simulation execution transaction List Table obtains transaction results, the ballot node generates to be confirmed according to the transaction results
Block.
As a preferred embodiment, the transaction List Table includes history block information, and second transmission unit 607 is also used
In:
The history block information is sent to the ballot node, so that the ballot node is to the history block
Information is matched.
As a preferred embodiment, the system also includes:
Execution unit 608 is simulated, the transaction List Table is executed for simulating, obtains transaction results;
Second generation unit 609 for generating block to be confirmed according to the transaction results, and is calculated using Gamma signature
Method signs to the block to be confirmed, obtains the first signature;
First generation unit 603 is specifically used for:
First signature is polymerize with the multiple signing messages received, obtains aggregate signature.
As a preferred embodiment, the signing messages further includes the cryptographic Hash of the block head of the block to be confirmed.
As a preferred embodiment, the block catenary system includes 3F+1 node, and the preset value includes 2F, and F is big
In 0 natural number.
Referring to Fig. 7, being applied to ballot section the embodiment of the present application also provides a kind of common recognition system of block chain data
Point, the ballot node are the node in block catenary system, and the block catenary system further includes proposing node, the system packet
It includes:
Acquiring unit 701, for obtaining block to be confirmed;
Signature unit 702 of voting generates label for signing using Gamma signature algorithm to the block to be confirmed
Name information;
Transmission unit 703, for the signing messages to be sent to the proposal node;
Receiving unit 704, the aggregate signature sent for receiving the proposal node, the aggregate signature is the proposal
What node was generated after being polymerize using multiple signing messages;
Authentication unit 705, for verifying the aggregate signature;
First determination unit 706, for when the aggregate signature passes through verifying, determining that the block to be confirmed is effective.
Optionally, the block to be confirmed includes transaction results, and the acquiring unit 701 is specifically used for:
Obtain Transaction Information;
The Transaction Information is sent to the proposal node;
The transaction List Table that the proposal node is sent is received, the transaction List Table is that the proposal node believes the transaction
Breath is ranked up to obtain;
Simulation executes the transaction List Table, obtains transaction results;
Block to be confirmed is generated according to the transaction results.
Optionally, the transaction List Table includes history block information, the system also includes:
Judging unit 707, for being judged whether there is and the matched mesh of history Block message using own database
Mark data;
Trigger unit 708, for existing and the history Block message when the judging unit determines in own database
Matched target data then triggers described according to transaction results generation block to be confirmed.
Optionally, after determining that the block to be confirmed is effective, the system also includes:
Second determination unit 709, for after determining that the block to be confirmed is effective, it is determined that the own database
In target data it is effective.
Optionally, the block catenary system includes 3F+1 node, and F is the natural number greater than 0, and the authentication unit is specific
705 are used for:
Verify whether the quantity in the aggregate signature comprising signing messages is greater than or equal to 2F+1;
If so, determining that the aggregate signature passes through verifying;
If not, it is determined that the aggregate signature is unverified.
Optionally, the signing messages further includes the cryptographic Hash of the block head of the block to be confirmed.
In the present embodiment, the data common recognition device 1 of block chain can be PC (Personal Computer, personal electricity
Brain), it is also possible to smart phone, tablet computer, palm PC, portable computer, network storage equipment terminal device.
The device 1 can be the node of composition CDN network or block chain network.
The data common recognition device 1 of the block chain may include memory 11, processor 12 and bus 13.
Wherein, memory 11 include at least a type of readable storage medium storing program for executing, the readable storage medium storing program for executing include flash memory,
Hard disk, multimedia card, card-type memory (for example, SD or DX memory etc.), magnetic storage, disk, CD etc..Memory 11
It can be the internal storage unit of the data common recognition device 1 of block chain in some embodiments, such as the data of the block chain are total to
The hard disk of identification device 1.Memory 11 is also possible to the external storage of the data common recognition device 1 of block chain in further embodiments
The plug-in type hard disk being equipped in equipment, such as the data common recognition device 1 of block chain, intelligent memory card (SmartMedia Card,
SMC), secure digital (Secure Digital, SD) blocks, flash card (Flash Card) etc..Further, memory 11 may be used also
With the internal storage unit of the data common recognition device 1 both including block chain or including External memory equipment.Memory 11 not only may be used
It is installed on the application software and Various types of data of the data common recognition device 1 of block chain for storage, such as the data of block chain are total to
The code etc. for knowing program 01, can be also used for temporarily storing the data that has exported or will export.
Processor 12 can be in some embodiments a central processing unit (Central Processing Unit,
CPU), controller, microcontroller, microprocessor or other data processing chips, the program for being stored in run memory 11
Code or processing data, such as the data common recognition program 01 for executing block chain etc..
The bus 13 can be Peripheral Component Interconnect standard (peripheral component interconnect, abbreviation
PCI) bus or expanding the industrial standard structure (extended industry standard architecture, abbreviation EISA)
Bus etc..The bus can be divided into address bus, data/address bus, control bus etc..For convenient for indicating, in Fig. 8 only with one slightly
Line indicates, it is not intended that an only bus or a type of bus.
Further, the data common recognition device of block chain can also include network interface 14, and network interface 14 optionally may be used
To include wireline interface and/or wireless interface (such as WI-FI interface, blue tooth interface), commonly used in the device 1 and other electricity
Communication connection is established between sub- equipment.
Optionally, which can also include user interface, and user interface may include display (Display), input
Unit such as keyboard (Keyboard), optional user interface can also include standard wireline interface and wireless interface.It is optional
Ground, in some embodiments, display can be light-emitting diode display, liquid crystal display, touch-control liquid crystal display and OLED
(Organic Light-Emitting Diode, Organic Light Emitting Diode) touches device etc..Wherein, display can also be appropriate
Referred to as display screen or display unit, for being shown in the information handled in the data common recognition device 1 of block chain and for showing
Visual user interface.
Fig. 8 illustrates only the data common recognition of the block chain with the data of component 11-14 and block chain common recognition program 01
Device 1, it will be appreciated by persons skilled in the art that the structure shown in Fig. 8 does not constitute the data common recognition device 1 to block chain
Restriction, may include perhaps combining certain components or different component layouts than illustrating less perhaps more components.
It is understood that the size of the serial number of above steps is not meant in the various embodiments of the application
Execution sequence it is successive, the execution of each step sequence should be determined by its function and internal logic, without coping with the embodiment of the present application
Implementation process constitute any restriction.
It is apparent to those skilled in the art that for convenience and simplicity of description, the system of foregoing description,
The specific work process of device and unit, can refer to corresponding processes in the foregoing method embodiment, and details are not described herein.
In several embodiments provided herein, it should be understood that disclosed system, device and method can be with
It realizes by another way.For example, the apparatus embodiments described above are merely exemplary, for example, the unit
It divides, only a kind of logical function partition, there may be another division manner in actual implementation, such as multiple units or components
It can be combined or can be integrated into another system, or some features can be ignored or not executed.Another point, it is shown or
The mutual coupling, direct-coupling or communication connection discussed can be through some interfaces, the indirect coupling of device or unit
It closes or communicates to connect, can be electrical property, mechanical or other forms.
The unit as illustrated by the separation member may or may not be physically separated, aobvious as unit
The component shown may or may not be physical unit, it can and it is in one place, or may be distributed over multiple
In network unit.It can select some or all of unit therein according to the actual needs to realize the mesh of this embodiment scheme
's.
It, can also be in addition, each functional unit in each embodiment of the application can integrate in one processing unit
It is that each unit physically exists alone, can also be integrated in one unit with two or more units.Above-mentioned integrated list
Member both can take the form of hardware realization, can also realize in the form of software functional units.
If the integrated unit is realized in the form of SFU software functional unit and sells or use as independent product
When, it can store in a computer readable storage medium.Based on this understanding, the technical solution of the application is substantially
The all or part of the part that contributes to existing technology or the technical solution can be in the form of software products in other words
It embodies, which is stored in a storage medium, including some instructions are used so that a computer
Equipment (can be personal computer, server or the network equipment etc.) executes the complete of each embodiment the method for the application
Portion or part steps.And storage medium above-mentioned includes: USB flash disk, mobile hard disk, read-only memory (ROM, Read-Only
Memory), random access memory (RAM, RandomAccess Memory), magnetic or disk etc. are various can store journey
The medium of sequence code.
The above, above embodiments are only to illustrate the technical solution of the application, rather than its limitations;Although referring to before
Embodiment is stated the application is described in detail, those skilled in the art should understand that: it still can be to preceding
Technical solution documented by each embodiment is stated to modify or equivalent replacement of some of the technical features;And these
It modifies or replaces, the spirit and scope of each embodiment technical solution of the application that it does not separate the essence of the corresponding technical solution.