Background
With the continuous development of the internet, a block chain technology is produced, and the block chain technology is an internet database technology and has the characteristics of decentralization, openness and transparency. In particular, the essence of blockchain technology is a decentralized and distributed approach to data storage, transmission and certification, replacing the current internet dependency on a central server with data blocks, such that all data changes or transaction items are recorded on a cloud system. Since there is no distributed peer-to-peer network of central control points and a distributed collective operation method is used, it can be said that the blockchain is an account book disclosed on the network. The system has a plurality of nodes, each node can observe the whole ledger and participate in maintenance together, the income is the right of obtaining accounting, a complete database can be copied, and a single node cannot modify the database, so that the safety and reliability of ledger data are ensured.
In the existing blockchain technology, many important transactions in the blockchain require multi-party endorsements to pass, for example, the configuration of the blockchain network is changed. In the prior art, the collection process of multi-party endorsements is generally divided into two types, one is manual collection, and the other is that a centralized management platform initiates transactions and collects endorsement results. The collection process of the multi-side endorsement in the prior art has the problems of long process time and centralized transaction execution process, and reduces the transaction efficiency.
Disclosure of Invention
The invention provides a multi-party signature authentication method, device, equipment and storage medium based on a block chain, which are used for simplifying the flow of multi-party endorsement and shortening the flow time, thereby improving the transaction efficiency and needing no centralized management platform.
In a first aspect, an embodiment of the present invention provides a multi-party signature authentication method based on a block chain, including:
a transaction initiator generates transaction information, wherein the transaction initiator is any participant in a block chain network;
the transaction initiator broadcasts the transaction information to each participant of the block chain network through point-to-point communication so that each participant votes on the transaction information, signs the transaction information according to a voting result, and broadcasts the signed transaction information to each participant through point-to-point communication;
the transaction initiator acquires signed transaction information broadcast by each participant, and acquires a voting result of each participant after signature verification;
and the transaction initiator generates a transaction block according to the voting result of each participant and the transaction information text and issues the transaction block to a block chain.
Further, the transaction initiator generates transaction information, including:
the transaction initiator acquires blockchain configuration information from the blockchain;
the transaction initiator acquires the certificate information of each participant of the blockchain from the blockchain and compares the certificate information with the locally stored certificate information of each participant;
and if the comparison is consistent, the transaction initiator modifies the block chain configuration information according to the configuration required to be changed, so that the transaction information is generated.
Further, before the transaction initiator broadcasts the transaction information to each participant of the blockchain network through point-to-point communication, the method further includes:
and the transaction initiator signs the transaction information according to the local signature certificate and the private key so that each participant can judge the validity of the transaction information and verify the identity of the transaction initiator after receiving the transaction information.
Further, after the transaction initiator obtains the voting results of each participant, before the transaction initiator generates a transaction block according to the voting results of each participant and the transaction information text, the method further includes:
the transaction initiator judges whether the transaction information is declared to pass according to the voting result of each participant; if the transaction block is not passed, the generation of the transaction block is stopped.
In a second aspect, an embodiment of the present invention provides a block chain-based multi-party signature authentication method, including:
a participant of a block chain network receives transaction information broadcasted by a transaction initiator through point-to-point communication, wherein the transaction initiator is any participant in the block chain network;
voting the transaction information by the participant of the block chain network, and signing the transaction information according to a voting result;
and the participants of the block chain network broadcast the signed transaction information to all the participants of the block chain network through point-to-point communication, so that the transaction initiator acquires the signed transaction information broadcast by all the participants, acquires the voting result of all the participants after signature verification, generates a transaction block according to the voting result of all the participants and the original text of the transaction information, and releases the transaction block to a block chain.
Further, the voting of the participant of the block chain network on the transaction information and the signature of the transaction information according to the voting result include:
if the participator of the block chain network agrees with the transaction information, directly signing the transaction information;
and if the participator of the block chain network does not agree with the transaction information, adding a disagreement reason field in the transaction information and carrying out signature.
Further, before the participant of the block chain network votes on the transaction information, the method further includes:
and the participator of the block chain network carries out validity judgment and identity verification of the transaction initiator on the transaction information.
In a third aspect, an embodiment of the present invention provides a multi-party signature authentication apparatus based on a block chain, including:
the transaction generation module is used for generating transaction information, wherein the transaction initiator is any participant in the block chain network;
the communication module is used for broadcasting the transaction information to each participant of the block chain network through point-to-point communication so that each participant votes on the transaction information, signs the transaction information according to a voting result, and broadcasts the signed transaction information to each participant through point-to-point communication;
the communication module is also used for acquiring signed transaction information broadcasted by each participant;
the processing module is used for acquiring voting results of all participants after signature verification; and generating a transaction block according to the voting result and the transaction information text of each participant, and issuing the transaction block to a block chain.
Further, the transaction generation module is configured to:
acquiring block chain configuration information from the block chain;
acquiring certificate information of each participant of the blockchain from the blockchain, and comparing the certificate information with locally stored certificate information of each participant;
and if the comparison is consistent, modifying the block chain configuration information according to the configuration needing to be changed, thereby generating the transaction information.
Further, the processing module is further configured to:
before a transaction initiator broadcasts the transaction information to each participant of the block chain network through point-to-point communication, the transaction information is signed according to a local signature certificate and a private key, so that each participant can judge the validity of the transaction information and verify the identity of the transaction initiator after receiving the transaction information.
Further, the processing module is further configured to:
judging whether the transaction information is declared to pass or not according to voting results of all participants; if the transaction block is not passed, the generation of the transaction block is stopped.
In a fourth aspect, an embodiment of the present invention provides a multi-party signature authentication apparatus based on a block chain, including:
the system comprises a communication module, a point-to-point communication module and a point-to-point communication module, wherein the communication module is used for receiving transaction information broadcasted by a transaction initiator through point-to-point communication, and the transaction initiator is any participant in a block chain network;
the processing module is used for voting the transaction information and signing the transaction information according to a voting result;
the communication module is further used for broadcasting the signed transaction information to each participant of the block chain network through point-to-point communication, so that the transaction initiator acquires the signed transaction information broadcast by each participant, acquires a voting result of each participant after signature verification, generates a transaction block according to the voting result of each participant and a transaction information original text, and distributes the transaction block to a block chain.
Further, the processing module is configured to:
if the transaction information is agreed, directly signing the transaction information;
and if the transaction information is not approved, adding a non-approval reason field in the transaction information and carrying out signature.
Further, the processing module is further configured to:
and carrying out validity judgment and identity verification of a transaction initiator on the transaction information.
In a fifth aspect, an embodiment of the present invention provides a multi-party signature authentication device based on a block chain, including: a memory; a processor; and a computer program;
wherein the computer program is stored in the memory and configured to be executed by the processor to implement the method of the first aspect.
In a sixth aspect, an embodiment of the present invention provides a multi-party signature authentication device based on a block chain, including: a memory; a processor; and a computer program;
wherein the computer program is stored in the memory and configured to be executed by the processor to implement the method of the second aspect.
In a seventh aspect, an embodiment of the present invention provides a computer-readable storage medium, on which a computer program is stored;
which when executed by a processor implements the method according to the first aspect.
In an eighth aspect, an embodiment of the present invention provides a computer-readable storage medium on which a computer program is stored;
which when executed by a processor implements the method according to the second aspect.
Any party in a block chain network can be used as a transaction initiator to generate transaction information, the transaction information is broadcasted to all parties in the block chain network through point-to-point communication, the transaction information is broadcasted to all parties through point-to-point communication after voting and signing are carried out by all parties, then the transaction initiator collects voting results of all parties, transaction blocks are generated according to the voting results and transaction information text, and the transaction blocks are published to a block chain, so that a multi-party endorsement process is completed, a centralized management platform is not required to be arranged, the multi-party endorsement process is simplified, the process time is shortened, and the transaction efficiency is improved.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are only a part of the embodiments of the present invention, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
Fig. 1 is a flowchart of a block chain-based multi-party signature authentication method according to an embodiment of the present invention. The embodiment provides a multi-party signature authentication method based on a block chain, wherein an execution subject is a transaction initiator, and the method comprises the following specific steps:
s101, a transaction initiator generates transaction information, wherein the transaction initiator is any participant in a block chain network.
In this embodiment, the transaction initiator is any one of the participants in the blockchain network, and when the transaction initiator needs to change the configuration in the blockchain network, for example, a new participant is added to the blockchain network or an existing participant is deleted, or a certificate is changed, the transaction initiator generates transaction information according to the configuration that needs to be changed. Specifically, for example, a new participant is added to the blockchain network, the new participant initiates an application to the transaction initiator or the transaction initiator initiates an invitation to the new participant, and then the transaction initiator acquires information such as a certificate of the new participant, generates transaction information, and then performs subsequent multi-party endorsement. If the block chain network deletes the existing participant, the transaction initiator can generate transaction information according to the certificate and other information of the participant to be deleted, and then perform subsequent multi-party endorsement, and certainly, the transaction initiator can also delete itself from the block chain network.
S102, the transaction initiator broadcasts the transaction information to all the participants of the block chain network through point-to-point communication so that each participant votes on the transaction information, signs the transaction information according to the voting result, and broadcasts the signed transaction information to all the participants through point-to-point communication.
In this embodiment, since only the transaction information is usually issued in the blockchain network, particularly in the alliance chain network, and the multi-party signature authentication process cannot be performed, the transaction initiator broadcasts the transaction information to each participant of the blockchain network through point-to-point communication, and each participant votes the transaction information after receiving the transaction information and signs the transaction information according to the voting result, specifically, for example, an agreement or different fields may be added to the transaction information and then signature information thereof is added, or the signature information thereof may be directly added to the transaction information under the agreement condition, and an agreement reason field is added to the transaction information and then signature information thereof under the disagreement condition. The signed transaction information is broadcast to each participant via point-to-point communication after the participants have completed signing. It should be noted that, since the transaction initiator is also a participant in the block chain network, the transaction initiator may also broadcast the transaction information signed after voted by the transaction initiator, and certainly, since the transaction information is generated by the transaction initiator, it may be default that the transaction information itself agrees to the transaction information, or the transaction information signed after voted by the transaction initiator may not be broadcast separately, or the agreement field and the signature information thereof are added directly when the transaction information is generated.
In addition, it should be noted that the peer-to-peer communication is pre-constructed for each participant of the blockchain network, and one or more participants are selected as a seed node to provide a service address of the peer-to-peer communication between the participants, and any participant can obtain the service addresses of other participants from the seed node to establish the peer-to-peer communication. When a new participant joins in, an address acquisition request can be sent to the seed node, wherein the address acquisition request comprises a service address of the new participant and an MSPID (multiple subscriber identity identifier) of the new participant, and the MSPID is a unique identifier of the participant in the block chain; the seed node broadcasts the address and MSPID of the new participant to all participants of the blockchain through point-to-point communication, so that each participant of the blockchain establishes point-to-point communication with the new participant and exchanges certificates.
S103, the transaction initiator acquires the signed transaction information broadcasted by each participant, and acquires the voting result of each participant after the signature is verified.
In this embodiment, because each participant broadcasts the signed transaction information to each participant through point-to-point communication, and the transaction initiator is also a participant in the block chain network, the transaction initiator may acquire the signed transaction information broadcast by all participants, then verify the signature of each participant to confirm the identity of each participant, and then acquire the voting result, that is, the transaction initiator summarizes the voting result of each participant. Specifically, the signature of each participant is verified, the signature information may be extracted from each signed transaction information, and then compared with the certificate information of each participant locally stored by the transaction initiator, and if the comparison is consistent, it is determined that the participant belongs to the local blockchain network.
And S104, the transaction initiator generates a transaction block according to the voting result of each participant and the transaction information text, and issues the transaction block to a block chain.
In this embodiment, the transaction initiator may generate a transaction block according to the signature of the participant and the original text of the transaction information, and issue the transaction block to the blockchain, and whether the blockchain network can perform configuration change according to the transaction block may be determined according to the intelligent contract of the blockchain. Certainly, the transaction initiator may determine whether to continue generating the transaction block and issue the transaction block to the block chain according to the voting result, for example, when the ratio of the participants who agree with the transaction information to all the participants is higher than a preset threshold, the transaction block is generated and issued to the block chain, and when the ratio is lower than the preset threshold, the process may be ended.
In the multi-party signature authentication method based on the block chain, any party in the block chain network can be used as a transaction initiator to generate transaction information, the transaction information is broadcasted to all parties in the block chain network through point-to-point communication, the transaction information is broadcasted to all parties through point-to-point communication after all parties vote and sign, then the transaction initiator collects the voting results of all parties, a transaction block is generated according to the voting results and the original text of the transaction information, and the transaction block is published to the block chain, so that the multi-party endorsement process is completed, a centralized management platform is not required to be arranged, the multi-party endorsement process is simplified, the process time is shortened, and the transaction efficiency is improved.
On the basis of the foregoing embodiment, as shown in fig. 2, the generating of the transaction information by the transaction initiator in S101 specifically includes:
s1011, the transaction initiator obtains the block chain configuration information from the block chain.
In this embodiment, since the transaction initiator needs to change the configuration in the blockchain network, it needs to first acquire the current blockchain configuration information from the blockchain.
S1012, the transaction initiator acquires the certificate information of each participant of the blockchain from the blockchain and compares the certificate information with the locally stored certificate information of each participant.
In this embodiment, the transaction initiator further needs to acquire the certificate information of each participant of the blockchain from the blockchain, and of course, if the blockchain configuration information includes the certificate information of each participant of the blockchain, S1012 may not be performed, or S1012 is to acquire the certificate information of each participant of the blockchain from the blockchain configuration information. After the transaction initiator acquires the certificate information of each participant in the block chain, the certificate information is compared with the locally stored certificate information of each participant, if the comparison is consistent, the locally stored certificate information of each participant is correct, and after the signed transaction information broadcasted by each participant is subsequently received, the signature can be verified according to the correct certificate information of each participant, so that the identity of each participant is confirmed. The certificate information may be msp (membership Service provider) information, that is, a combination of identity information in the blockchain, which includes a signature certificate, a communication certificate, a signature root certificate, and a communication root certificate. In addition, since the transaction initiator may belong to different blockchain networks at the same time, and certificate information of different blockchain network participants may be locally stored, the transaction initiator needs to screen out certificate information of each participant of the blockchain from locally stored certificate information according to the certificate information of each participant acquired from the blockchain.
And S1013, if the comparison is consistent, the transaction initiator modifies the block chain configuration information according to the configuration required to be changed, so as to generate the transaction information.
In this embodiment, after the comparison is consistent, the transaction initiator modifies the block chain configuration information according to the configuration to be changed, thereby generating the transaction information. Of course, if the comparison is inconsistent, the transaction initiator needs to update the locally stored certificate information of each participant according to the certificate information of each participant in the blockchain acquired from the blockchain. Further, the transaction initiator signs the transaction information according to the local signature certificate and the private key, so that each participant can perform validity judgment and identity verification on the transaction information after receiving the transaction information. The data structure of the transaction information in this embodiment may be specifically as shown in table 1:
TABLE 1
| MSPID |
| TXID |
| transactioninfo |
| signature |
The MSPID is the MSPID of a transaction initiator and is used for representing the unique identification of a participant in a block chain, the TXID is a transaction ID, the transactioninfo is transaction content, and the signature is a signature of the initiator on the transaction. Wherein the signature is transmitted after being encoded by Base 64. It should be noted that the blockchain itself requires to fill in the certificate corresponding to the private signature key in the construction, so that the transaction information does not need to be accompanied by the signature certificate of the transaction.
Further, after the transaction initiator obtains the voting results of the participants in S103, and before the transaction initiator generates the transaction block according to the voting results of the participants and the transaction information text in S104, the method may further include:
the transaction initiator judges whether the transaction information is declared to pass according to the voting result of each participant; if the transaction block is not passed, the generation of the transaction block is stopped.
In this embodiment, when the transaction initiator determines that the ratio of the participants who agree with the transaction information to all the participants is lower than the preset threshold according to the result of each participant table, the process may be ended without executing the steps of generating the transaction block and issuing the transaction block to the block chain, thereby avoiding wasting resources. The preset threshold may be set according to actual needs, for example, if all participants must agree to make a decision, the preset threshold may be set to 100%; if agreement is required between the majority of participants, the preset threshold may be set to 50%.
In the multi-party signature authentication method based on the block chain, any party in the block chain network can be used as a transaction initiator to generate transaction information, the transaction information is broadcasted to all parties in the block chain network through point-to-point communication, the transaction information is broadcasted to all parties through point-to-point communication after all parties vote and sign, then the transaction initiator collects the voting results of all parties, a transaction block is generated according to the voting results and the original text of the transaction information, and the transaction block is published to the block chain, so that the multi-party endorsement process is completed, a centralized management platform is not required to be arranged, the multi-party endorsement process is simplified, the process time is shortened, and the transaction efficiency is improved.
Fig. 3 is a flowchart of a block chain-based multi-party signature authentication method according to an embodiment of the present invention. Although the transaction initiator is also a participant of the blockchain network, the execution subject in this embodiment is another participant except the transaction initiator, and it needs to endorse the transaction information broadcast by the transaction initiator. The method in the embodiment specifically comprises the following steps:
s201, a participant of the block chain network receives transaction information broadcasted by a transaction initiator through point-to-point communication, wherein the transaction initiator is any participant in the block chain network.
In this embodiment, when the transaction initiator needs to change the configuration in the blockchain network, for example, a new participant is added to the blockchain network or an existing participant is deleted, or a certificate is changed, the transaction initiator generates transaction information according to the configuration that needs to be changed, and broadcasts the transaction information to each participant of the blockchain network through point-to-point communication, so that the participant of the blockchain network receives the transaction information broadcast by the transaction initiator through the point-to-point communication.
S202, voting is carried out on the transaction information by the participants of the block chain network, and the transaction information is signed according to a voting result.
In this embodiment, after receiving the transaction information, each participant votes on the transaction information, and signs the transaction information according to the result of the voting, specifically, for example, an agreement or different fields may be added to the transaction information and then signature information thereof may be added, or the signature information thereof may be directly added to the transaction information under the agreement condition, or an agreement reason field is added to the transaction information and then signature information thereof is added under the disagreement condition.
S203, the participants of the block chain network broadcast the signed transaction information to the participants of the block chain network through point-to-point communication, so that the transaction initiator acquires the signed transaction information broadcast by the participants, acquires the voting result of the participants after signature verification, generates a transaction block according to the voting result of the participants and the original text of the transaction information, and distributes the transaction block to the block chain.
In this embodiment, the signed transaction information is broadcast to each participant via point-to-point communication after the participants have completed signing. The transaction initiator can acquire the signed transaction information broadcasted by all the participants, then verify the signature of each participant to confirm the identity of each participant, then acquire the voting result, namely the transaction initiator collects the voting result of each participant, then generate a transaction block according to the voting result of each participant and the original text of the transaction information, and release the transaction block to a block chain.
Further, the voting is performed on the transaction information by the participant of the block chain network in S202, and the signing is performed on the transaction information according to a voting result, which may specifically include:
if the participator of the block chain network agrees with the transaction information, directly signing the transaction information;
and if the participator of the block chain network does not agree with the transaction information, adding a disagreement reason field in the transaction information and carrying out signature.
In the embodiment, the signature information is directly added into the transaction information under the condition of agreement, and the disagreement reason field is added into the transaction information and then the signature information is added under the condition of disagreement. In addition, the participator analyzes the transaction information after receiving the transaction information, compares whether the analysis result is consistent with the transaction content, and if not, the transaction can be rejected. The data structure of the signed transaction information may be specifically as shown in table 2:
TABLE 2
| MSPID |
| TXID |
| transactioninfo |
| msg |
| signature |
The MSPID is used for representing the unique identification of the participant in the block chain, the TXID is a transaction ID, transactioninfo is transaction content, the msg field is additional information (such as a disagreement reason field or other fields), and the signature is a signature of the participant in the block chain network on the transaction.
Further, before the participant of the block chain network in S202 votes on the transaction information, the method may further include:
and the participator of the block chain network carries out validity judgment and identity verification of the transaction initiator on the transaction information.
In this embodiment, a transaction initiator signs transaction information according to a local signature certificate and a private key before broadcasting the transaction information, and a participant in a blockchain network analyzes the transaction information after receiving the transaction information, acquires a certificate in a transaction and a signature of the transaction, and determines whether the transaction information is initiated by a user corresponding to the certificate; and the participator of the block chain network reads the signature root certificate from the local, then verifies the transaction initiator certificate by using the signature root certificate, and verifies whether the transaction initiator is the participator in the block chain network, thereby improving the security of the transaction.
The block chain-based multi-party signature authentication method on the participant side of the block chain network provided in this embodiment corresponds to the method on the transaction initiator side in the above embodiment, and specific functions thereof are not described herein again.
In the multi-party signature authentication method based on the block chain, any party in the block chain network can be used as a transaction initiator to generate transaction information, the transaction information is broadcasted to all parties in the block chain network through point-to-point communication, the transaction information is broadcasted to all parties through point-to-point communication after all parties vote and sign, then the transaction initiator collects the voting results of all parties, a transaction block is generated according to the voting results and the original text of the transaction information, and the transaction block is published to the block chain, so that the multi-party endorsement process is completed, a centralized management platform is not required to be arranged, the multi-party endorsement process is simplified, the process time is shortened, and the transaction efficiency is improved.
Fig. 4 is a block diagram of a multi-party signature authentication apparatus based on a block chain according to an embodiment of the present invention. The blockchain network networking device may be a transaction initiator in the above embodiments. The block chain-based multi-party signature authentication device provided in this embodiment may execute the processing flow provided by the block chain-based multi-party signature authentication method embodiment on the transaction initiator side, as shown in fig. 3, the block chain-based multi-party signature authentication device includes atransaction generation module 31, acommunication module 32, and aprocessing module 33.
Thetransaction generation module 31 is configured to generate transaction information, where the transaction initiator is any one of participants in a block chain network;
thecommunication module 32 is configured to broadcast the transaction information to each participant of the block chain network through point-to-point communication, so that each participant votes on the transaction information, signs the transaction information according to a voting result, and broadcasts the signed transaction information to each participant through point-to-point communication;
thecommunication module 32 is further configured to obtain signed transaction information broadcasted by each participant;
theprocessing module 33 is configured to obtain voting results of each participant after verifying the signature; and generating a transaction block according to the voting result and the transaction information text of each participant, and issuing the transaction block to a block chain.
Further, thetransaction generation module 31 is configured to:
acquiring block chain configuration information from the block chain;
acquiring certificate information of each participant of the blockchain from the blockchain, and comparing the certificate information with locally stored certificate information of each participant;
and if the comparison is consistent, modifying the block chain configuration information according to the configuration needing to be changed, thereby generating the transaction information.
Further, theprocessing module 33 is further configured to:
before a transaction initiator broadcasts the transaction information to each participant of the block chain network through point-to-point communication, the transaction information is signed according to a local signature certificate and a private key, so that each participant can judge the validity of the transaction information and verify the identity of the transaction initiator after receiving the transaction information.
Further, theprocessing module 33 is further configured to:
judging whether the transaction information is declared to pass or not according to voting results of all participants; if the transaction block is not passed, the generation of the transaction block is stopped.
The block chain-based multi-party signature authentication apparatus provided in the embodiment of the present invention may be specifically configured to execute the method embodiments provided in fig. 1 and fig. 2, and specific functions are not described herein again.
In the multi-party signature authentication device based on the block chain, any party in the block chain network can be used as a transaction initiator to generate transaction information, the transaction information is broadcasted to all parties in the block chain network through point-to-point communication, the transaction information is broadcasted to all parties through point-to-point communication after all parties vote and sign, then the transaction initiator collects the voting results of all parties, a transaction block is generated according to the voting results and the original text of the transaction information, and the transaction block is published to the block chain, so that the multi-party endorsement process is completed, a centralized management platform is not required to be arranged, the multi-party endorsement process is simplified, the process time is shortened, and the transaction efficiency is improved.
Fig. 5 is a block diagram of a multi-party signature authentication apparatus based on a block chain according to an embodiment of the present invention. The device for building a blockchain network may be a participant of a blockchain network in the above embodiments. The multiparty signature authentication device based on the block chain according to this embodiment may perform the processing procedure provided by the above method for authenticating a multiparty signature based on the block chain on the participant side of the block chain network, as shown in fig. 3, the multiparty signature authentication device based on the block chain includes acommunication module 41 and aprocessing module 42.
Acommunication module 41, configured to receive transaction information broadcasted by a transaction initiator through peer-to-peer communication, where the transaction initiator is any participant in a block chain network;
theprocessing module 42 is used for voting the transaction information and signing the transaction information according to a voting result;
thecommunication module 41 is further configured to broadcast the signed transaction information to each participant of the block chain network through point-to-point communication, so that the transaction initiator obtains the signed transaction information broadcast by each participant, obtains a voting result of each participant after verifying the signature, generates a transaction block according to the voting result of each participant and a transaction information original text, and issues the transaction block to the block chain.
Further, theprocessing module 42 is configured to:
if the transaction information is agreed, directly signing the transaction information;
and if the transaction information is not approved, adding a non-approval reason field in the transaction information and carrying out signature.
Further, theprocessing module 42 is further configured to:
and carrying out validity judgment and identity verification of a transaction initiator on the transaction information.
The block chain-based multi-party signature authentication apparatus according to the embodiment of the present invention may be specifically configured to execute the method embodiment provided in fig. 3, and specific functions are not described herein again.
In the multi-party signature authentication device based on the block chain, any party in the block chain network can be used as a transaction initiator to generate transaction information, the transaction information is broadcasted to all parties in the block chain network through point-to-point communication, the transaction information is broadcasted to all parties through point-to-point communication after all parties vote and sign, then the transaction initiator collects the voting results of all parties, a transaction block is generated according to the voting results and the original text of the transaction information, and the transaction block is published to the block chain, so that the multi-party endorsement process is completed, a centralized management platform is not required to be arranged, the multi-party endorsement process is simplified, the process time is shortened, and the transaction efficiency is improved.
It should be noted that, since the transaction initiator may be any one of the participants in the blockchain network, the apparatus shown in fig. 4 and the apparatus shown in fig. 5 may be deployed on the device of any one of the participants in the blockchain network, and the apparatus shown in fig. 4 is used to complete the transaction when a certain participant needs to be used as the transaction initiator, and the apparatus shown in fig. 5 is used to complete the transaction when an endorsement of the transaction information of other transaction initiators is needed.
Fig. 6 is a block diagram of a multi-party signature authentication device based on a block chain according to another embodiment of the present invention. As shown in fig. 6, the present embodiment provides a multi-party signature authentication device based on a block chain, where the device includes: a processor 51; amemory 52; and a computer program.
The computer program is stored in thememory 52 and configured to be executed by the processor 51 to implement the processing procedure of the block chain based multi-party signature authentication method provided in the foregoing embodiment, including the block chain based multi-party signature authentication method of the transaction initiator side and/or the participating party of the block chain network, and the specific functions are not described herein again.
More specifically, the apparatus further includes areceiver 53 and atransmitter 54, and thereceiver 53 and thetransmitter 54, the processor 51, and thememory 52 are connected by a bus.
Another embodiment of the present invention also provides a computer-readable storage medium having a computer program stored thereon; the computer program, when executed by a processor, implements the method as described in the above embodiments of the transaction initiator side blockchain-based multi-party signature authentication method.
Another embodiment of the present invention also provides a computer-readable storage medium having a computer program stored thereon; the computer program, when executed by a processor, implements a method as described in the above embodiments of a blockchain based multiparty signature authentication method on a participant side of a blockchain network.
In the embodiments provided in the present invention, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, or in a form of hardware plus a software functional unit.
The integrated unit implemented in the form of a software functional unit may be stored in a computer readable storage medium. The software functional unit is stored in a storage medium and includes several instructions to enable a computer device (which may be a personal computer, a server, or a network device) or a processor (processor) to execute some steps of the methods according to the embodiments of the present invention. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
It is obvious to those skilled in the art that, for convenience and simplicity of description, the foregoing division of the functional modules is merely used as an example, and in practical applications, the above function distribution may be performed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to perform all or part of the above described functions. For the specific working process of the device described above, reference may be made to the corresponding process in the foregoing method embodiment, which is not described herein again.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.