CN107171794B - A kind of electronic document signature method based on block chain and intelligent contract - Google Patents
A kind of electronic document signature method based on block chain and intelligent contract Download PDFInfo
- Publication number
- CN107171794B CN107171794B CN201710498686.5A CN201710498686A CN107171794B CN 107171794 B CN107171794 B CN 107171794B CN 201710498686 A CN201710498686 A CN 201710498686A CN 107171794 B CN107171794 B CN 107171794B
- Authority
- CN
- China
- Prior art keywords
- block chain
- bob
- task
- node
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/006—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Abstract
A kind of electronic document signature method based on block chain and intelligent contract, it uses business platform server CS, multiple block chain node server TS and multiple block chain intelligence contract script server JS, wherein, business platform server CS is used to receive the access of user and provides data interaction, CS and each block chain node server TS connection communication, each TS is communicated with corresponding JS, keeps data synchronous between the database of each TS.It is proposed the present invention is based on the technical application of block chain, utilize the decentralization thought and its distributed account book of combination of block chain and intelligent contract mechanism, it realizes on the basis of independent of particular trusted main body, solves from technological layer and guarantee electronic contract signature integrity problem.
Description
Technical field
The present invention relates to intelligent contract technical field, especially a kind of electronic document label based on block chain and intelligent contract
Arranging method.
Background technique
Currently, traditional papery contract is replaced electronic contract with the continuous development of e-commerce.But it is existing
Electronic contract signature method all inevitably at least need one to estimate the main body that can be trusted to be participated in, for example safeguard
The center CA of digital certificate, or the intervention of the notarial office based on specific public letter identity, although the CA based on Public Key Infrastructure
Center is technically reliable, but reliable use must use the Ukey of hardware medium, and property easy to use be caused seriously to be owed
Lack, although and the intervention based on notarial office can solve the objective believable identity problems of electronic contract platform in legal principle,
This can only trust for the morals to notarial office completely, can not technically realize reliable guarantee;It can be used just in practice
Victory, but the solution of technically reliable is very rare.
Summary of the invention
The purpose of the present invention is in view of the above-mentioned problems, proposing a kind of electronic document signature based on block chain and intelligent contract
Method.
The technical scheme is that
A kind of electronic document based on block chain and intelligent contract signs method, it is using business platform server CS, more
A block chain node server TS and multiple block chain intelligence contract script server JS, wherein business platform server CS is used
In the access that receives user and provide data interaction, CS and each block chain node server TS connection communication, each TS with it is corresponding
JS communicated, keep data synchronous between the database of each TS, the step of this method includes:
The step of S1, initialization:
S1.1, using public key algorithm, issue key pair for CS, wherein public key is PuKC, private key PrKc;
S1.2, using public key algorithm, issue key pair for each TS, public key is respectively PuKT1、PuKT2、
PuKT3、…、PuKTN, private key are respectively PrKT1、PrKT2、PrKT3、…、PrKTn;
S1.3, setting CS, TS and JS use unified Hash operation rule;
S1.4, unique address is distributed for each TS and JS, is expressed as AdT1、AdT2、AdT3、…AdTnAnd AdJ1、
AdJ2、AdJ3、…、AdJn;
S1.5, each user log in CS and register, and CS is that each user completes the audit of real name identity;
Sign process
S2, signing are initiated
S2.1, user Alice log in CS, import and need to pass through user data with electronic document M, CS that Bob is signed jointly
Library inquiry obtains the unique identity information X of AliceAWith communication information PAAnd the unique identity information X of BobBAnd the communication information
PB, while CS is that this signature task generates unique number N, by the X of AliceAAnd PAMerge, is labeled as IDA, by the X of BobBWith
PBMerge, is labeled as IDB;
S2.2, CS are to M, IDA、IDBHash operation is carried out respectively, obtains HC M、HC IDA、HC IDB, and by Alice this sign
Acting be engaged according to Bob communication information PBIt notifies to Bob;
S2.3, CS are by HC M、HC IDA、HC IDBTogether with mission number N, broadcasted to all block chain node server TS of the whole network,
Request response;
S2.4, all TS for receiving broadcast will number addition task form for N, save mission bit stream HC M、HC IDA、
HC IDB, and decide whether to respond according to server free degree;
S2.5, determine the block chain node server TS responded by HC M、HC IDA、HC IDBTogether with mission number N and oneself
Address in response information-reply to CS;
S2.6, CS randomly choose one as the node TQ that has the right in the response of all TS received;
S2.7, CS are by M, IDA、IDBUse the public key PuK of the node TQ that has the rightTQEncryption, obtains M ', IDA’、IDB', pass through
Address AdTQIt is sent to the node TQ that has the right;
While S2.8, progress step 2.7, CS is sent to the whole network TS through PuKTQEncrypt obtained M ', IDA’、IDB', and
The task of notice number N has been chosen be handled by the node TQ that has the right, and receives all TS of notice for M ', IDA’、IDB’、AdTQ
It is recorded in the task form that number is N;
S2.9, the node TQ that has the right receive the encryption data of step 2.7 sending, use private key PrKTQDecryption, restore M,
IDA、IDB, and Hash operation is carried out respectively to it, with verify cryptographic Hash whether with H beforeC M、HC IDA、HC IDBIt is consistent;Verifying
It is inconsistent, notify CS to re-initiate task, verifying is consistent then further by IDA、IDBIt is reduced to XA、PA、XB、PB;
S2.10, the node TQ that has the right are randomly choosed wherein from the block chain intelligence contract script server JS of all connections
One as having the right server JQ;
S2.11, the node TQ that has the right are by HC M、XA、PA、XB、PBTogether with the address Ad of sole task number N and TQTQIt is sent to JQ
Address AdJQ;After task is sent, M, ID that the node TQ that has the right obtains decryptionA、IDBIt abandons, only saves M ', the ID of encryptionA’、
IDB' into database;
S2.12, the server JQ that has the right receive information;
S2.13, the server JQ that has the right are by HC M、XAWith current time tJQN is raw for Alice using random algorithm as parameter
At a random code RNA, pass through communication information PAIt is sent to Alice;Simultaneously by RNA、tJQThe form data that N deposit number is N
Library;JQ is by HC M、XBWith current time tJQN is that Bob generates a random code R using random algorithm as parameterNB, pass through communication
Information PBIt is sent to Bob;Simultaneously by RNA、tJQThe form database that N deposit number is N;
S2.14, JQ are respectively to RNAAnd RNBHash operation is carried out, cryptographic Hash H (R is obtainedN) and H (R ANB), and together with task
The address Ad of number N and JQJQ, the broadcast of Xiang Suoyou TS node server receives the node server of broadcast for H (RNA)、H(RNB)
And AdJQIt is stored in the task data list that number is N;(at this point, task form of all TS node servers in number N
In synchronous recording HC M、HC IDA、HC IDB、AdTQ、H(RNA)、H(RNB) and AdJQ, and through TQ public key PuKTQEncrypted
M’、IDA’、IDB’)
S2.15, Alice log in CS, consult M, the random code R that input JQ is sent into task NNA is to confirm to electronics text
The signature of book M;Bob logs in CS, consults M, the random code R that input JQ is sent into task NNBTo confirm the label to electronic document M
Administration;
S2.16, CS are respectively to RNAAnd RNBHash operation is carried out, cryptographic Hash H (R is obtainedNA) ' and H (RNB) ', and by H
(RNA) ' and H (RNB) ' broadcasted together with mission number N to all TS of the whole network, requests verification;
S2.17, the node of step 2.16 checking request is received respectively by H (RNA) ' and H (RNB) ' with before save task N
H (R in listNA) and H (RNB) be compared, if H (RNA) ' and H (RNA) compare unanimously, then notify CS, H (RNA) ' compare
Pass through, as inconsistent, notifies H (RNA) ' compare do not pass through;If H (RNB) ' and H (RNB) compare unanimously, then notify CS, H
(RNB) ' compare and pass through, as inconsistent, notify H (RNB) ' compare do not pass through;
The verifying feedback result H (R that S2.18, CS are received from multiple nodesNA) ', it compares by being more than threshold value, then Alice
The signature task of electronic document M is completed;It compares by being no more than threshold value, then Alice signature failure;CS is received from multiple nodes
Verifying feedback result H (RNB) ', it compares by being more than threshold value, then the signature task of Bob electronic document M is completed;Comparison passes through
No more than threshold value, then Bob signature failure;
The signature task of S2.19, Alice and Bob electronic document M are completed, then sign success, CS is under arbitrary node TS
Carry the H for the task form that number is NC M、HC IDA、HC IDB、AdTQ、H(RNA)、H(RNB) and AdJQAnd M ', IDA’、IDB’。
Further, each block chain intelligence contract script server JS is the default script being deployed on network
The server for executing code can receive the input of predetermined format, and receiving as the intelligent contract script on block chain
After qualified input, operation output is completed.
Further, in institute step S1.3, CS, TS and JS are SHA256 algorithm using unified Hash operation rule.
Further, in institute step S2.1, unique identity information XAIt is the information for being able to carry out the audit of real name identity, packet
It includes: ID card No., passport number or social security number, communication information PAIncluding cell-phone number, address, fax and electronics postal
Case.
Further, in the step S2.3, CS is by HC M、HC IDA、HC IDBUse private key PrKcAfter signature, together with task
Number N, to all block chain node server TS broadcast of the whole network, request response;Accordingly in step S2.5, the area of response is determined
Block chain node server TS uses the public key PuK of CSCThe signature of validation task N is correct.
Further, in the step S2.5, determine that the block chain node server TS of response uses respective private key
To HC M、HC IDA、HC IDBAfter being signed, together with mission number N and oneself address in response information-reply to CS;Accordingly
In step S2.6, CS randomly chooses a progress signature verification in the response of all TS received, and signature correctly then should
Block chain node server TS is as the node TQ that has the right.
Further, in the step S2.6, the response of all TS received is ranked up by CS according to the time, and
It selects to reach at first and the correct block chain node server TS of signature verification is as the node TQ that has the right.
Further, in the step S2.11, the node TQ that has the right is by HC M、XA、PA、XB、PBUse private key PrKTQSignature
Afterwards, together with the address Ad of sole task number N and TQTQIt is sent to the address Ad of JQJQ;In corresponding step S2.12, have the right to take
Business device JQ receives information, uses the public key PuK of TQTQSignature verification.
Further, in the step S2.12, the server JQ that has the right receives information, judges HC M、XA、PA、XB、PBIt is defeated
Whether entry format is consistent with preset rules, and format error then feeds back to TQ, task termination, and format unanimously then continues.
Further, this method further includes verification step, when Bob needs to verify whether electronic document M is signed by Bob, then
Steps are as follows:
S3.1, Bob log in CS proposition to the checking request of electronic document M;
S3.2, CS provide HC M、HC IDB、H(RNB) downloaded for Bob, and Hash operation tool is provided;
S3.3, CS submit the checking request of Bob in the task that number is N to any TS node;
S3.4, the node of step 3.3 request is received according to the Ad recorded in number N taskJQBob's reported to JQ in address
Checking request;
S3.5, JQ receive the verifying requirement of Bob, extract R from the assignment database that number is NNBAnd it is sent to PB;
S3.6, Bob hold parameter M, XB、PB、RNBAnd HC M、HC IDB、H(RNB), Bob is right respectively using Hash operation tool
M、(XB+PB)、RNBCarry out Hash operation, and respectively with HC M、HC IDB、H(RNB) be compared, comparison unanimously then verifies completion, compiles
It number is completed for the signature task of N by Bob, compares inconsistent then authentication failed, the non-Bob of the signature task that number is N is completed;
Alice's needs to verify whether electronic document M is same as above by the step of its signature.
Beneficial effects of the present invention:
It is proposed the present invention is based on the technical application of block chain, using the decentralization thought of block chain and in conjunction with its distribution
Formula account book and intelligent contract mechanism, realize on the basis of independent of particular trusted main body, solve and protect from technological layer
It demonstrate,proves electronic contract and signs integrity problem.
Method is signed relative to traditional electronic contract, is had a characteristic that
1, decentralization, system are no longer dependent on some and estimate believable main body;
2, distributed data base is disposed, and no longer needs to the disaster recovery backup problem for worrying data occur;
3, data validity user can self-service verification, without relying on special body provide report;
4, platform cannot pretend to be some user to initiate subscription request, good reliability to another user.
Detailed description of the invention
Fig. 1 is structural schematic diagram of the invention.
Specific embodiment
The present invention is further illustrated with reference to the accompanying drawings and examples.
As shown in Figure 1, a kind of electronic document based on block chain and intelligent contract signs method, it is taken using business platform
Be engaged in device CS, multiple block chain node server TS and multiple block chain intelligence contract script server JS, wherein business platform clothes
Business device CS is used to receive the access of user and provides data interaction, CS and each block chain node server TS connection communication, each
TS is communicated with corresponding JS, each block chain intelligence contract script for keeping data synchronous, described between the database of each TS
Server JS is the server for the default script execution code being deployed on network, as the intelligent contract foot on block chain
The step of this, can receive the input of predetermined format, and after receiving qualified input, complete operation and export, this method is wrapped
It includes:
The step of S1, initialization:
S1.1, using public key algorithm, issue key pair for CS, wherein public key is PuKC, private key PrKc;
S1.2, using public key algorithm, issue key pair for each TS, public key is respectively PuKT1、PuKT2、
PuKT3、…、PuKTN, private key are respectively PrKT1、PrKT2、PrKT3、…、PrKTn;
SHA256 algorithm can be used using unified Hash operation rule in S1.3, setting CS, TS and JS;
S1.4, unique address is distributed for each TS and JS, is expressed as AdT1、AdT2、AdT3、…AdTnAnd AdJ1、
AdJ2、AdJ3、…、AdJn;
S1.5, each user log in CS and register, and CS is that each user completes the audit of real name identity;
Sign process
S2, signing are initiated
S2.1, user Alice log in CS, import and need to pass through user data with electronic document M, CS that Bob is signed jointly
Library inquiry obtains the unique identity information X of AliceAWith communication information PAAnd the unique identity information X of BobBAnd the communication information
PB, while CS is that this signature task generates unique number N, by the X of AliceAAnd PAMerge, is labeled as IDA, by the X of BobBWith
PBMerge, is labeled as IDB;Unique identity information XAIt is the information for being able to carry out the audit of real name identity, comprising: ID card No., shield
According to number or social security number, communication information PAIncluding cell-phone number, address, fax and E-mail address.
S2.2, CS are to M, IDA、IDBHash operation is carried out respectively, obtains HC M、HC IDA、HC IDB, and by Alice this sign
Acting be engaged according to Bob communication information PBIt notifies to Bob;
S2.3, CS are by HC M、HC IDA、HC IDBUse private key PrKcAfter signature, together with mission number N, to all block chains of the whole network
Node server TS broadcast, request response;
S2.4, all TS for receiving broadcast will number addition task form for N, save mission bit stream HC M、HC IDA、
HC IDB, and decide whether to respond according to server free degree;
S2.5, determine that the block chain node server TS of response uses the public key PuK of CSCThe signature of validation task N is correct,
Using respective private key to HC M、HC IDA、HC IDBAfter being signed, together with mission number N and the address information in response of oneself
Reply to CS;
S2.6, CS randomly choose a progress signature verification in the response of all TS received, and signature is correct then will
Block chain node server TS is as the node TQ that has the right;
S2.7, CS are by M, IDA、IDBUse the public key PuK of the node TQ that has the rightTQEncryption, obtains M ', IDA’、IDB', pass through
Address AdTQIt is sent to the node TQ that has the right;
While S2.8, progress step 2.7, CS is sent to the whole network TS through PuKTQEncrypt obtained M ', IDA’、IDB', and
The task of notice number N has been chosen be handled by the node TQ that has the right, and receives all TS of notice for M ', IDA’、IDB’、AdTQ
It is recorded in the task form that number is N;
S2.9, the node TQ that has the right receive the encryption data of step 2.7 sending, use private key PrKTQDecryption, restore M,
IDA、IDB, and Hash operation is carried out respectively to it, with verify cryptographic Hash whether with H beforeC M、HC IDA、HC IDBIt is consistent;Verifying
It is inconsistent, notify CS to re-initiate task, verifying is consistent then further by IDA、IDBIt is reduced to XA、PA、XB、PB;
S2.10, the node TQ that has the right are randomly choosed wherein from the block chain intelligence contract script server JS of all connections
One as having the right server JQ;
S2.11, the node TQ that has the right are by HC M、XA、PA、XB、PBUse private key PrKTQAfter signature, together with sole task number N and
The address Ad of TQTQIt is sent to the address Ad of JQJQ;After task is sent, M, ID that the node TQ that has the right obtains decryptionA、IDBIt abandons,
Only save M ', the ID of encryptionA’、IDB' into database;
S2.12, the server JQ that has the right receive information, use the public key PuK of TQTQSignature verification judges HC M、XA、PA、XB、PB
Input format it is whether consistent with preset rules, format error then feeds back to TQ, task termination, and format unanimously then continues.
S2.13, the server JQ that has the right are by HC M、XAWith current time tJQN is raw for Alice using random algorithm as parameter
At a random code RNA, pass through communication information PAIt is sent to Alice;Simultaneously by RNA、tJQThe form data that N deposit number is N
Library;JQ is by HC M、XBWith current time tJQN is that Bob generates a random code R using random algorithm as parameterNB, pass through communication
Information PBIt is sent to Bob;Simultaneously by RNA、tJQThe form database that N deposit number is N;
S2.14, JQ are respectively to RNAAnd RNBHash operation is carried out, cryptographic Hash H (R is obtainedN) and H (R ANB), and together with task
The address Ad of number N and JQJQ, the broadcast of Xiang Suoyou TS node server receives the node server of broadcast for H (RNA)、H(RNB)
And AdJQIt is stored in the task data list that number is N;(at this point, task form of all TS node servers in number N
In synchronous recording HC M、HC IDA、HC IDB、AdTQ、H(RNA)、H(RNB) and AdJQ, and through TQ public key PuKTQEncrypted
M’、IDA’、IDB’)
S2.15, Alice log in CS, consult M, the random code R that input JQ is sent into task NNA is to confirm to electronics text
The signature of book M;Bob logs in CS, consults M, the random code R that input JQ is sent into task NNBTo confirm the label to electronic document M
Administration;
S2.16, CS are respectively to RNAAnd RNBHash operation is carried out, cryptographic Hash H (R is obtainedNA) ' and H (RNB) ', and by H
(RNA) ' and H (RNB) ' broadcasted together with mission number N to all TS of the whole network, requests verification;
S2.17, the node of step 2.16 checking request is received respectively by H (RNA) ' and H (RNB) ' with before save task N
H (R in listNA) and H (RNB) be compared, if H (RNA) ' and H (RNA) compare unanimously, then notify CS, H (RNA) ' compare
Pass through, as inconsistent, notifies H (RNA) ' compare do not pass through;If H (RNB) ' and H (RNB) compare unanimously, then notify CS, H
(RNB) ' compare and pass through, as inconsistent, notify H (RNB) ' compare do not pass through;
The verifying feedback result H (R that S2.18, CS are received from multiple nodesNA) ', it compares by being more than threshold value, then Alice
The signature task of electronic document M is completed;It compares by being no more than threshold value, then Alice signature failure;CS is received from multiple nodes
Verifying feedback result H (RNB) ', it compares by being more than threshold value, then the signature task of Bob electronic document M is completed;Comparison passes through
No more than threshold value, then Bob signature failure;
The signature task of S2.19, Alice and Bob electronic document M are completed, then sign success, CS is under arbitrary node TS
Carry the H for the task form that number is NC M、HC IDA、HC IDB、AdTQ、H(RNA)、H(RNB) and AdJQAnd M ', IDA’、IDB’。
When specific implementation:
This method further includes verification step,
When Bob needs to verify whether electronic document M is signed by Bob, then steps are as follows:
S3.1, Bob log in CS proposition to the checking request of electronic document M;
S3.2, CS provide HC M、HC IDB、H(RNB) downloaded for Bob, and Hash operation tool is provided;
S3.3, CS submit the checking request of Bob in the task that number is N to any TS node;
S3.4, the node of step 3.3 request is received according to the Ad recorded in number N taskJQBob's reported to JQ in address
Checking request;
S3.5, JQ receive the verifying requirement of Bob, extract R from the assignment database that number is NNBAnd it is sent to PB;
S3.6, Bob hold parameter M, XB、PB、RNBAnd HC M、HC IDB、H(RNB), Bob is right respectively using Hash operation tool
M、(XB+PB)、RNBCarry out Hash operation, and respectively with HC M、HC IDB、H(RNB) be compared, comparison unanimously then verifies completion, compiles
It number is completed for the signature task of N by Bob, compares inconsistent then authentication failed, the non-Bob of the signature task that number is N is completed;
Alice's needs to verify whether electronic document M is same as above by the step of its signature.
When Alice needs to verify whether electronic document M is signed by Alice, then steps are as follows:
S4.1, Alice log in CS proposition to the checking request of electronic document M;
S4.2, CS provide HC M、HC IDA、H(RNA) downloaded for Alice, and Hash operation tool is provided;
S4.3, CS submit the checking request of Alice in the task that number is N to any TS node;
S4.4, the node of step 4.3 request is received according to the Ad recorded in number N taskJQAlice is reported to JQ in address
Checking request;
S4.5, JQ receive the verifying requirement of Alice, extract R from the assignment database that number is NNAAnd it is sent to PA;
S4.6, Alice hold parameter M, XA、PA、RNAAnd HC M、HC IDA、H(RNA), Alice uses Hash operation tool point
It is other to M, (XA+PA)、RNACarry out Hash operation, and respectively with HC M、HC IDA、H(RNA) be compared, comparison has unanimously then been verified
At the signature task that number is N is completed by Alice, compares inconsistent then authentication failed, the non-Alice of signature task that number is N
It completes.
It is proposed the present invention is based on the technical application of block chain, using the decentralization thought of block chain and in conjunction with its distribution
Formula account book and intelligent contract mechanism, realize on the basis of independent of particular trusted main body, solve and protect from technological layer
It demonstrate,proves electronic contract and signs integrity problem.
Part that the present invention does not relate to is the same as those in the prior art or can be realized by using the prior art.
Claims (10)
1. a kind of electronic document based on block chain and intelligent contract signs method, it is using business platform server CS, multiple
Block chain node server TS and multiple block chain intelligence contract script server JS, wherein business platform server CS is used for
Receive the access of user and data interaction be provided, CS and each block chain node server TS connection communication, each TS with it is corresponding
JS is communicated, and keeps data synchronous between the database of each TS, it is characterised in that the step of this method includes:
The step of S1, initialization:
S1.1, using public key algorithm, issue key pair for CS, wherein public key is PuKC, private key PrKc;
S1.2, using public key algorithm, issue key pair for each TS, public key is respectively PuKT1、PuKT2、PuKT3、…、
PuKTN, private key are respectively PrKT1、PrKT2、PrKT3、…、PrKTn;
S1.3, setting CS, TS and JS use unified Hash operation rule;
S1.4, unique address is distributed for each TS and JS, is expressed as AdT1、AdT2、AdT3、…AdTnAnd AdJ1、AdJ2、
AdJ3、…、AdJn;
S1.5, each user log in CS and register, and CS is that each user completes the audit of real name identity;
Sign process
S2, signing are initiated
S2.1, user Alice log in CS, import the electronic document M for needing to be signed jointly with Bob, and CS is looked by customer data base
Inquiry obtains the unique identity information X of AliceAWith communication information PAAnd the unique identity information X of BobBWith communication information PB, together
When CS be this signature task generate unique number N, by the X of AliceAAnd PAMerge, is labeled as IDA, by the X of BobBAnd PBIt closes
And it is labeled as IDB;
S2.2, CS are to M, IDA、IDBHash operation is carried out respectively, obtains HC M、HC IDA、HC IDB, and this signature of Alice is appointed
The communication information P being engaged according to BobBIt notifies to Bob;
S2.3, CS are by HC M、HC IDA、HC IDBTogether with mission number N, to all block chain node server TS broadcast of the whole network, request is rung
It answers;
S2.4, all TS for receiving broadcast will number addition task form for N, save mission bit stream HC M、HC IDA、HC IDB,
And decide whether to respond according to server free degree;
S2.5, determine the block chain node server TS responded by HC M、HC IDA、HC IDBMake together with mission number N and the address of oneself
CS is replied to for response message;
S2.6, CS randomly choose one as the node TQ that has the right in the response of all TS received;
S2.7, CS are by M, IDA、IDBUse the public key PuK of the node TQ that has the rightTQEncryption, obtains M ', IDA’、IDB', pass through address
AdTQIt is sent to the node TQ that has the right;
While S2.8, progress step S2.7, CS is sent to the whole network TS through PuKTQEncrypt obtained M ', IDA’、IDB', and notify
The task of number N has been chosen receive all TS of notice for M ', ID by node TQ processing of having the rightA’、IDB’、AdTQRecord
The task form for being N in number;
S2.9, the node TQ that has the right receive the encryption data of step S2.7 sending, use private key PrKTQDecryption, restores M, IDA、
IDB, and Hash operation is carried out respectively to it, with verify cryptographic Hash whether with H beforeC M、HC IDA、HC IDBIt is consistent;It verifies different
Cause then notifies CS to re-initiate task, and verifying is consistent then further by IDA、IDBIt is reduced to XA、PA、XB、PB;
S2.10, the node TQ that has the right randomly choose therein one from the block chain intelligence contract script server JS of all connections
It is a to be used as the server JQ that has the right;
S2.11, the node TQ that has the right are by HC M、XA、PA、XB、PBTogether with the address Ad of sole task number N and TQTQIt is sent to the ground of JQ
Location AdJQ;After task is sent, M, ID that the node TQ that has the right obtains decryptionA、IDBIt abandons, only saves M ', the ID of encryptionA’、IDB’
Into database;
S2.12, the server JQ that has the right receive information;
S2.13, the server JQ that has the right are by HC M、XAWith current time tJQN is that Alice generates one using random algorithm as parameter
A random code RNA, pass through communication information PAIt is sent to Alice;Simultaneously by RNA、tJQThe form database that N deposit number is N;JQ
By HC M、XBWith current time tJQN is that Bob generates a random code R using random algorithm as parameterNB, pass through communication information PB
It is sent to Bob;Simultaneously by RNA、tJQThe form database that N deposit number is N;
S2.14, JQ are respectively to RNAAnd RNBHash operation is carried out, cryptographic Hash H (R is obtainedNA) and H (RNB), and together with mission number N
With the address Ad of JQJQ, the broadcast of Xiang Suoyou TS node server receives the node server of broadcast for H (RNA)、H(RNB) and AdJQ
It is stored in the task data list that number is N;
S2.15, Alice log in CS, consult M, the random code R that input JQ is sent into task NNATo confirm to electronic document M's
Signature;Bob logs in CS, consults M, the random code R that input JQ is sent into task NNBTo confirm the signature to electronic document M;
S2.16, CS are respectively to RNAAnd RNBHash operation is carried out, cryptographic Hash H (R is obtainedNA) ' and H (RNB) ', and by H (RNA) ' and H
(RNB) ' broadcasted together with mission number N to all TS of the whole network, requests verification;
S2.17, the node of step S2.16 checking request is received respectively by H (RNA) ' and H (RNB) ' with before save task N list
In H (RNA) and H (RNB) be compared, if H (RNA) ' and H (RNA) compare unanimously, then notify CS, H (RNA) ' compare pass through,
As inconsistent, H (R is notifiedNA) ' compare do not pass through;If H (RNB) ' and H (RNB) compare unanimously, then notify CS, H (RNB) ' compare
Pass through, as inconsistent, notifies H (RNB) ' compare do not pass through;
The verifying feedback result H (R that S2.18, CS are received from multiple nodesNA) ', it compares by being more than threshold value, then Alice electronics
The signature task of document M is completed;It compares by being no more than threshold value, then Alice signature failure;CS is tested from what multiple nodes received
Demonstrate,prove feedback result H (RNB) ', it compares by being more than threshold value, then the signature task of Bob electronic document M is completed;It compares by not surpassing
Threshold value is crossed, then Bob signature failure;
The signature task of S2.19, Alice and Bob electronic document M are completed, then sign success, and CS is downloaded from arbitrary node TS and compiled
Number for N task form HC M、HC IDA、HC IDB、AdTQ、H(RNA)、H(RNB) and AdJQAnd M ', IDA’、IDB’。
2. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
Each block chain intelligence contract script server JS is the server for the default script execution code being deployed on network,
As the intelligent contract script on block chain, the input of predetermined format can be received, and after receiving qualified input, completed
Operation output.
3. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
In the step S1.3, CS, TS and JS are SHA256 algorithm using unified Hash operation rule.
4. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
In the step S2.1, unique identity information XAIt is the information for being able to carry out the audit of real name identity, comprising: ID card No.,
Passport number or social security number, communication information PAIncluding cell-phone number, address, fax and E-mail address.
5. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
In the step S2.3, CS is by HC M、HC IDA、HC IDBUse private key PrKcAfter signature, together with mission number N, to all areas of the whole network
Block chain node server TS broadcast, request response;Accordingly in step S2.5, determine that the block chain node server TS of response makes
With the public key PuK of CSCThe signature of validation task N is correct.
6. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
In the step S2.5, determine that the block chain node server TS of response uses respective private key to HC M、HC IDA、HC IDBIt carries out
After signature, together with mission number N and oneself address in response information-reply to CS;Accordingly in step S2.6, CS is being connect
A progress signature verification is randomly choosed in the response of all TS received, signature is correct then by block chain node server TS
As the node TQ that has the right.
7. a kind of electronic document based on block chain and intelligent contract according to claim 1 or 6 signs method, feature
In the step S2.6, the response of all TS received is ranked up by CS according to the time, and select at first reach and
The correct block chain node server TS of signature verification is as the node TQ that has the right.
8. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
In the step S2.11, the node TQ that has the right is by HC M、XA、PA、XB、PBUse private key PrKTQAfter signature, compiled together with sole task
The address Ad of number N and TQTQIt is sent to the address Ad of JQJQ;In corresponding step S2.12, the server JQ that has the right receives information, makes
With the public key PuK of TQTQSignature verification.
9. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
In the step S2.12, the server JQ that has the right receives information, judges HC M、XA、PA、XB、PBInput format whether with it is default
Regular consistent, format error then feeds back to TQ, task termination, and format unanimously then continues.
10. a kind of electronic document based on block chain and intelligent contract according to claim 1 signs method, it is characterized in that
Described this method further includes verification step, and when Bob needs to verify whether electronic document M is signed by Bob, then steps are as follows:
S3.1, Bob log in CS proposition to the checking request of electronic document M;
S3.2, CS provide HC M、HC IDB、H(RNB) downloaded for Bob, and Hash operation tool is provided;
S3.3, CS submit the checking request of Bob in the task that number is N to any TS node;
S3.4, the node of step S3.3 request is received according to the Ad recorded in number N taskJQAddress reports the verifying of Bob to JQ
Request;
S3.5, JQ receive the verifying requirement of Bob, extract R from the assignment database that number is NNBAnd it is sent to PB;
S3.6, Bob hold parameter M, XB、PB、RNBAnd HC M、HC IDB、H(RNB), Bob is using Hash operation tool respectively to M, (XB
+PB)、RNBCarry out Hash operation, and respectively with HC M、HC IDB、H(RNB) be compared, it compares and unanimously then verifies completion, number N
Signature task completed by Bob, compare inconsistent then authentication failed, the non-Bob of the signature task that number is N is completed.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710498686.5A CN107171794B (en) | 2017-06-27 | 2017-06-27 | A kind of electronic document signature method based on block chain and intelligent contract |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710498686.5A CN107171794B (en) | 2017-06-27 | 2017-06-27 | A kind of electronic document signature method based on block chain and intelligent contract |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107171794A CN107171794A (en) | 2017-09-15 |
CN107171794B true CN107171794B (en) | 2019-10-22 |
Family
ID=59826156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710498686.5A Active CN107171794B (en) | 2017-06-27 | 2017-06-27 | A kind of electronic document signature method based on block chain and intelligent contract |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107171794B (en) |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107888557B (en) * | 2017-10-09 | 2020-07-03 | 中国平安人寿保险股份有限公司 | Method and system for generating protocol file |
CN107846289B (en) * | 2017-10-11 | 2020-08-11 | 众安信息技术服务有限公司 | Method, electronic equipment and system for supporting artificial participation block chain decision |
CN107846282B (en) * | 2017-11-03 | 2021-01-29 | 法信公证云(厦门)科技有限公司 | Block chain technology-based electronic data distributed storage method and system |
CN107918666B (en) * | 2017-11-24 | 2020-05-12 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | Data synchronization method and system on block chain |
CN109840767B (en) * | 2018-01-09 | 2021-06-11 | 中国科学院计算技术研究所 | Multi-party fair contract evidence storing method and system based on block chain technology |
CN107942718A (en) * | 2018-01-15 | 2018-04-20 | 天津大学 | Intelligent home furnishing control method and system based on block chain |
CN108270551B (en) * | 2018-02-02 | 2020-09-25 | 上海二秒科技有限公司 | Security service construction system on block chain |
CN108418690A (en) * | 2018-02-11 | 2018-08-17 | 深圳市图灵奇点智能科技有限公司 | The method and apparatus that block chain contract is signed by the auxiliary that onboard system is realized |
CN108389042B (en) * | 2018-02-11 | 2021-06-11 | 深圳市图灵奇点智能科技有限公司 | Method and device for realizing auxiliary fee settlement by intelligent mobile phone |
CN108305058B (en) * | 2018-02-11 | 2021-03-02 | 深圳市图灵奇点智能科技有限公司 | Auxiliary expense settlement method and device based on Internet of things and terminal node |
CN108399544B (en) * | 2018-02-11 | 2021-06-11 | 深圳市图灵奇点智能科技有限公司 | Method and device for auxiliary signing of block chain contract based on Internet of things |
US11146545B2 (en) * | 2018-03-27 | 2021-10-12 | Exosite LLC | Apparatus and method for establishing secured connection |
CN108830545B (en) * | 2018-04-28 | 2020-08-25 | 深圳慧通商务有限公司 | Contract data processing method, contract management client and block chain management device |
CN108833115B (en) * | 2018-06-15 | 2021-01-26 | 中山大学 | Multi-party fair PDF (Portable document Format) contract signing method based on block chain |
CN108960825A (en) * | 2018-06-26 | 2018-12-07 | 阿里巴巴集团控股有限公司 | Electric endorsement method and device, electronic equipment based on block chain |
CN108985936A (en) * | 2018-07-09 | 2018-12-11 | 北京中电普华信息技术有限公司 | A kind of auditing method and system based on intelligent contract |
CN109033317B (en) * | 2018-07-17 | 2019-05-21 | 广东奥维信息科技有限公司 | A kind of the big data processing system and processing method of block chain database |
CN108881296B (en) * | 2018-07-24 | 2021-11-30 | 中国联合网络通信集团有限公司 | Block chain real-name authentication method, device, equipment and storage medium |
CN110830256A (en) * | 2018-08-14 | 2020-02-21 | 珠海金山办公软件有限公司 | File signature method and device, electronic equipment and readable storage medium |
CN110830257B (en) * | 2018-08-14 | 2023-01-03 | 珠海金山办公软件有限公司 | File signature method and device, electronic equipment and readable storage medium |
CN109194628B (en) * | 2018-08-16 | 2021-08-13 | 广东工业大学 | Manufacturing personnel information management method, system, electronic device and storage medium |
CN109190769B (en) * | 2018-08-21 | 2021-12-24 | 深圳点宽网络科技有限公司 | Artificial intelligence training method based on block chain |
CN109194633B (en) * | 2018-08-21 | 2021-08-10 | 山东智慧云链网络科技有限公司 | Address book backup method and system |
CN109492983B (en) * | 2018-09-26 | 2023-04-07 | 深圳壹账通智能科技有限公司 | Electronic seal signing method, device, equipment and medium based on block chain intelligent contract |
CN109359978B (en) * | 2018-10-08 | 2021-10-08 | 全链通有限公司 | Intelligent contract trading method and system based on block chain network |
CN109493020B (en) * | 2018-11-08 | 2022-02-11 | 众安信息技术服务有限公司 | Block chain based secure transaction method and device |
US11068470B2 (en) * | 2018-11-09 | 2021-07-20 | Innoplexus Ag | System and method for interoperability of blockchains |
CN109639646B (en) * | 2018-11-16 | 2020-04-24 | 清华大学 | Block chain-based Internet of things safety detection method and system |
CN110035105B (en) * | 2018-12-13 | 2021-09-21 | 创新先进技术有限公司 | Screen recording evidence obtaining method and system based on block chain and electronic equipment |
CN109413211B (en) * | 2018-12-18 | 2019-12-31 | 陕西医链区块链集团有限公司 | Architecture of EOS block chain super node and implementation method thereof |
CN109766724A (en) * | 2018-12-19 | 2019-05-17 | 四川商通实业有限公司 | Data evidence storing method based on block chain |
CN109729080B (en) * | 2018-12-20 | 2021-05-11 | 全链通有限公司 | Access attack protection method and system based on block chain domain name system |
CN110324395B (en) * | 2019-01-31 | 2022-04-19 | 林德(中国)叉车有限公司 | IOT equipment data processing method based on double heavy chains |
CN110033269A (en) * | 2019-03-18 | 2019-07-19 | 阿里巴巴集团控股有限公司 | Contract based on block chain consults method and device, electronic equipment, storage medium |
CN110113157A (en) * | 2019-05-05 | 2019-08-09 | 江苏全链通信息科技有限公司 | Contract processing method, equipment, network and storage medium based on block chain |
CN110098932B (en) * | 2019-05-16 | 2022-10-28 | 江苏慧世联网络科技有限公司 | Electronic document signing method based on safe electronic notarization technology |
CN111104686B (en) * | 2019-09-10 | 2021-07-30 | 腾讯科技(深圳)有限公司 | Block chain network control method, device, equipment and storage medium |
CN110474925B (en) * | 2019-09-19 | 2022-07-29 | 腾讯科技(深圳)有限公司 | Method and device for sharing judicial writing delivery information and computer readable storage medium |
CN110691079B (en) * | 2019-09-25 | 2021-07-13 | 东北大学 | Multi-copy reliability verification method based on block chain encryption |
CN110782347B (en) * | 2019-10-22 | 2023-02-03 | 全链通有限公司 | Intelligent contract signing method, device and medium based on block chain |
CN110929272B (en) * | 2019-11-06 | 2023-04-11 | 山东易通发展集团有限公司 | Client with electronic contract private signing function, signing platform, system and method |
CN110912711B (en) * | 2019-12-11 | 2022-04-05 | 江苏慧世联网络科技有限公司 | Cross-internal and external network domain electronic document signing method based on electronic notarization technology |
CN111445209A (en) * | 2020-03-27 | 2020-07-24 | 北京瑞卓喜投科技发展有限公司 | Block chain-based electronic contract signing method and device and storage medium |
CN112118107B (en) * | 2020-08-12 | 2021-08-27 | 北京大学 | Self-adaptive execution method for realizing data credibility |
CN112671769B (en) * | 2020-08-28 | 2022-10-11 | 支付宝(杭州)信息技术有限公司 | Electronic contract signing method, device and equipment |
CN112187816B (en) * | 2020-09-30 | 2022-06-28 | 杭州复杂美科技有限公司 | RPC request processing method, equipment and storage medium |
CN116644479A (en) * | 2023-04-25 | 2023-08-25 | 重庆万友人才服务有限公司 | Tamper-resistant electronic contract signing method based on blockchain technology |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105635169A (en) * | 2016-01-26 | 2016-06-01 | 葛峰 | Electronic contract signing method based on the internet |
CN105809062A (en) * | 2016-03-01 | 2016-07-27 | 布比(北京)网络技术有限公司 | Contract construction and execution methods and apparatuses |
CN105893042A (en) * | 2016-03-31 | 2016-08-24 | 北京航空航天大学 | Intelligent contract implementation method based on block chain |
CN105975868A (en) * | 2016-04-29 | 2016-09-28 | 杭州云象网络技术有限公司 | Block chain-based evidence preservation method and apparatus |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170140408A1 (en) * | 2015-11-16 | 2017-05-18 | Bank Of America Corporation | Transparent self-managing rewards program using blockchain and smart contracts |
-
2017
- 2017-06-27 CN CN201710498686.5A patent/CN107171794B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105635169A (en) * | 2016-01-26 | 2016-06-01 | 葛峰 | Electronic contract signing method based on the internet |
CN105809062A (en) * | 2016-03-01 | 2016-07-27 | 布比(北京)网络技术有限公司 | Contract construction and execution methods and apparatuses |
CN105893042A (en) * | 2016-03-31 | 2016-08-24 | 北京航空航天大学 | Intelligent contract implementation method based on block chain |
CN105975868A (en) * | 2016-04-29 | 2016-09-28 | 杭州云象网络技术有限公司 | Block chain-based evidence preservation method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN107171794A (en) | 2017-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107171794B (en) | A kind of electronic document signature method based on block chain and intelligent contract | |
US10790976B1 (en) | System and method of blockchain wallet recovery | |
CN110537346B (en) | Safe decentralized domain name system | |
CN106878318B (en) | Block chain real-time polling cloud system | |
US20240031155A1 (en) | Decentralized data authentication | |
CN107742212B (en) | Asset verification method, device and system based on block chain | |
CN101189827B (en) | Method for inclusive authentication and management of service provider, terminal and user identity module, and system and terminal device using the method | |
CN110945549A (en) | Method and system for universal storage and access to user-owned credentials for cross-institution digital authentication | |
CN109189962A (en) | A kind of license service realization system based on block chain | |
US20160080157A1 (en) | Network authentication method for secure electronic transactions | |
CN111191283B (en) | Beidou positioning information security encryption method and device based on alliance block chain | |
JP2011515961A (en) | Authentication storage method and authentication storage system for client side certificate authentication information | |
CN1937498A (en) | Dynamic cipher authentication method, system and device | |
Hardjono et al. | Anonymous identities for permissioned blockchains | |
CN110096903B (en) | Asset verification method based on block chain and block chain network system | |
CN103152178B (en) | cloud computing verification method and system | |
CN111027036A (en) | Identity association method based on block chain | |
EP3796613B1 (en) | Techniques for repeat authentication | |
CN113497709A (en) | Trusted data source management method based on block chain, signature device and verification device | |
Kunke et al. | Evaluation of account recovery strategies with FIDO2-based passwordless authentication | |
JP2010231404A (en) | System, method, and program for managing secret information | |
CN101582876A (en) | Method, device and system for registering user generated content (UGC) | |
CN113014394B (en) | Electronic data certification method and system based on alliance chain | |
CN113328854A (en) | Service processing method and system based on block chain | |
Boontaetae et al. | RDI: Real digital identity based on decentralized PKI |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |