Movatterモバイル変換


[0]ホーム

URL:


CN108768607A - A kind of voting method, device, equipment and medium based on block chain - Google Patents

A kind of voting method, device, equipment and medium based on block chain
Download PDF

Info

Publication number
CN108768607A
CN108768607ACN201810455285.6ACN201810455285ACN108768607ACN 108768607 ACN108768607 ACN 108768607ACN 201810455285 ACN201810455285 ACN 201810455285ACN 108768607 ACN108768607 ACN 108768607A
Authority
CN
China
Prior art keywords
ballot
node
block chain
value
votes
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.)
Granted
Application number
CN201810455285.6A
Other languages
Chinese (zh)
Other versions
CN108768607B (en
Inventor
张亮轩
张锋
张一锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhongchao Credit Card Industry Development Co Ltd Hangzhou Blockchain Technology Research Institute
Original Assignee
Zhongchao Credit Card Industry Development Co Ltd Hangzhou Blockchain Technology Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongchao Credit Card Industry Development Co Ltd Hangzhou Blockchain Technology Research InstitutefiledCriticalZhongchao Credit Card Industry Development Co Ltd Hangzhou Blockchain Technology Research Institute
Priority to CN201810455285.6ApriorityCriticalpatent/CN108768607B/en
Publication of CN108768607ApublicationCriticalpatent/CN108768607A/en
Application grantedgrantedCritical
Publication of CN108768607BpublicationCriticalpatent/CN108768607B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Classifications

Landscapes

Abstract

The step of the invention discloses a kind of voting method, device, equipment and medium based on block chain, this method includes:Obtain the ballot value that characterization ballot is intended in each ballot node;According to the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm, each ballot value is encrypted to generate secret value;Each secret value, which is transmitted to operation, the common recognition node of block chain intelligence contract, and controls common recognition node and carry out summation operation to each secret value, to obtain encrypted vote result;The homomorphism private key that control count of votes node is generated by homomorphic encryption algorithm, encrypted vote result is decrypted to obtain original voting results, and original voting results are recorded in block chain by block chain intelligence contract, for each node publicity into block chain network.Present method ensures the fairness of count of votes process and the ballot efficiency of entirety.In addition, the present invention also provides a kind of balloting device, equipment and medium based on block chain, advantageous effect are same as above.

Description

A kind of voting method, device, equipment and medium based on block chain
Technical field
The present invention relates to block chain technical fields, more particularly to a kind of voting method, device, equipment based on block chainAnd medium.
Background technology
Current electronic voting (e-voting) system is often based on the centralized system of Proxy Signature, ring signatures.It is throwingBallot node or the Proxy Signature by interacting generation ballot with count of votes node during ticket, or pass through other ballot nodesPublic key generates the ring signatures of ballot, is voted anonymously with realizing, Proxy Signature or ring signatures are sent to count of votes section by final vote nodePoint carries out poll statistics and result is carried out publicity.
Due in current electronic voting system, since the count of votes process of count of votes node is underground, being also difficult to ensureFairness of the count of votes node in count of votes.In addition, when using ballot is realized based on ring signatures technology, each node of voting needsThe ring signatures to generate itself are interacted with other ballot nodes respectively, therefore when the substantial amounts for node of voting, respectivelyThe process that node of voting generates ring signatures is complicated, computationally intensive, it is difficult to ensure whole ballot efficiency, it can be to electronic voting systemAvailability impact.
It can be seen that a kind of voting method based on block chain is provided, to ensure the fairness and entirety of count of votes processBallot efficiency, be those skilled in the art's urgent problem to be solved.
Invention content
The object of the present invention is to provide a kind of voting method, device, equipment and medium based on block chain, to ensure count of votesThe fairness of process and the ballot efficiency of entirety.
In order to solve the above technical problems, the present invention provides a kind of voting method based on block chain, including:
Obtain the ballot value that characterization ballot is intended in each ballot node;
According to the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm, each ballot value is encrypted to generate encryptionValue;
Each secret value, which is transmitted to operation, the common recognition node of block chain intelligence contract, and controls common recognition node to each encryptionValue carries out summation operation, to obtain encrypted vote result;
The homomorphism private key that control count of votes node is generated by homomorphic encryption algorithm, is decrypted to obtain to encrypted vote resultOriginal voting results, and original voting results being recorded in block chain by block chain intelligence contract, for block chainEach node publicity in network.
Preferably, after the ballot value that characterization ballot is intended in obtaining each ballot node, this method further comprises:
Control each ballot node by preset digest algorithm and signature private key to include in itself ballot value throwingTicket information carries out digest, obtains signed data;
Each signed data is recorded into block chain by block chain intelligence contract.
Preferably, digest algorithm is specially SHA256 digest algorithms or SM3 digest algorithms, signature private key especially byECDSA algorithms or SM2 algorithms or SM9 algorithms generate.
Preferably, homomorphic encryption algorithm is specially EC-ElGamal homomorphic encryption algorithms.
Preferably, EC-ElGamal homomorphic encryption algorithms are specially EC-ElGamal additive homomorphism Encryption Algorithm.
Preferably, the value of ballot value includes 0 and 1;Wherein, when ballot value is 0, characterization ballot is intended to oppose, works as throwingCharacterization ballot is intended to agree with when ticket value is 1.
Preferably, ballot node is specially mobile terminal.
In addition, the present invention also provides a kind of balloting devices based on block chain, including:
Acquisition module, for obtaining the ballot value that characterization ballot is intended in each ballot node;
Encrypting module, the homomorphism public key for being generated by homomorphic encryption algorithm according to count of votes node carry out each ballot valueEncryption is to generate secret value;
Computing module is transmitted, has the common recognition node of block chain intelligence contract for each secret value to be transmitted to operation, and controlSystem common recognition node carries out summation operation to each secret value, to obtain encrypted vote result;
Deciphering module, the homomorphism private key generated by homomorphic encryption algorithm for controlling count of votes node, to encrypted vote knotFruit is decrypted to obtain original voting results, and original voting results are recorded in block chain by block chain intelligence contract,For each node publicity into block chain network.
In addition, the present invention also provides a kind of ballot equipment based on block chain, including:
Memory, for storing computer program;
Processor is realized when for executing computer program such as the step of above-mentioned voting method based on block chain.
In addition, the present invention also provides a kind of computer readable storage medium, meter is stored on computer readable storage mediumCalculation machine program is realized when computer program is executed by processor such as the step of above-mentioned voting method based on block chain.
Voting method provided by the present invention based on block chain, obtains the ballot value of each ballot node, and then usesEach ballot value is encrypted as secret value by the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm, and is transmitted to operation and has areaThe common recognition node of block chain intelligence contract, by know together node to each secret value carry out summation operation generate encrypted vote as a result, intoAnd it obtains the encrypted vote result of common recognition node using count of votes node and it is decrypted to obtain original throwing using homomorphism private keyOriginal voting results as a result, be finally recorded in by block chain intelligence contract in block chain, with into block chain network by ticketEach node publicity.This method ensures to decrypt the result of gained after carrying out operation to secret value and to throwing using homomorphic encryption algorithmThe result that ticket value directly carries out identical operation is identical, and then summation operation can be directly carried out in the form of secret value, ensure thatThe safety of operation.In addition, since common recognition node operation has block chain intelligence contract, common recognition node is by block chain networkOther nodes trusted, and then ensure the fairness of count of votes process;And in the method, respectively ballot node is all made of togetherState Encryption Algorithm carries out respective handling to ballot value, and since the execution content of homomorphic encryption algorithm is relatively easy, calculation amountIt is small, therefore ensure whole ballot efficiency relatively.In addition, the balloting device that the present invention also provides a kind of based on block chain, settingStandby and medium, advantageous effect are same as above.
Description of the drawings
In order to illustrate the embodiments of the present invention more clearly, attached drawing needed in the embodiment will be done simply belowIt introduces, it should be apparent that, drawings in the following description are only some embodiments of the invention, for ordinary skill peopleFor member, without creative efforts, other drawings may also be obtained based on these drawings.
Fig. 1 is a kind of flow chart of the voting method based on block chain provided in an embodiment of the present invention;
Fig. 2 is the flow chart of another voting method based on block chain provided in an embodiment of the present invention;
Fig. 3 is the flow sequence diagram of the voting method based on block chain;
Fig. 4 is a kind of balloting device structure chart based on block chain provided in an embodiment of the present invention.
Specific implementation mode
Following will be combined with the drawings in the embodiments of the present invention, and technical solution in the embodiment of the present invention carries out clear, completeSite preparation describes, it is clear that described embodiments are only a part of the embodiments of the present invention, rather than whole embodiments.Based on thisEmbodiment in invention, without making creative work, what is obtained is every other by those of ordinary skill in the artEmbodiment belongs to the scope of the present invention.
Core of the invention is to provide a kind of voting method based on block chain, with ensure count of votes process fairness andWhole ballot efficiency.Another core of the present invention is to provide a kind of balloting device and medium based on block chain.
In order to enable those skilled in the art to better understand the solution of the present invention, with reference to the accompanying drawings and detailed descriptionThe present invention is described in further detail.
Implement profit one
Fig. 1 is a kind of flow chart of the voting method based on block chain provided in an embodiment of the present invention.Referring to FIG. 1, baseInclude in the specific steps of the voting method of block chain:
Step S10:Obtain the ballot value that characterization ballot is intended in each ballot node.
It should be noted that ballot node should be the node operated in block chain network, to be able to carry out block chain machineRelevant operation under system.The quantity of ballot node in this step is often multiple, and particular number should be set according to actual conditionsIt is fixed, it is not specifically limited herein.In addition, each ballot node is intended to by the corresponding ballot of ballot value characterization, and ballot valueCorrespondence between being intended to ballot should be set according to actual conditions, such as can the value of ballot value be positioned 0 or 1,When ballot value is 0, characterization ballot is intended to " oppose ";When ballot value is 1, characterization ballot is intended to " agreeing with ".Above-mentioned exampleSon is only to illustrate to be not intended as the restriction to ballot value value there are correspondence between ballot value and ballot intention.
Step S11:According to the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm, to each ballot value be encrypted withGenerate secret value.
It should be noted that homomorphic cryptography is the cryptological technique of the computational complexity theory based on difficult math question, to warpThe data for crossing homomorphic cryptography are handled to obtain an output, this output is decrypted, result with at Same WayOutput that the initial data of reason unencryption obtains is the result is that the same.In addition, the precondition for executing this step is count of votes nodeGenerate homomorphism key (including public key and private key) according to homomorphic encryption algorithm, so count of votes node need open homomorphism public key forNode other than count of votes node uses, and itself retains homomorphism private key.This step is public by the homomorphism disclosed in count of votes nodeThe ballot value that key generates each ballot node is encrypted and generates secret value, and then participates in subsequent hold by using secret valueRow step can ensure that the specific ballot content of ballot node is not leaked, and improve the crypticity of ballot.In addition, to ballot valueThe executive agent being encrypted can be each ballot node itself, can also be the node other than voting node, node of such as knowing together,It is not specifically limited herein.In addition, homomorphic encryption algorithm signified in this step, is for additive homomorphism Encryption Algorithm and to multiplyThe general designation of method homomorphic encryption algorithm, and it is above-mentioned since there are transforming relationships, above two to calculate between multiplication and additionThe homomorphic encryption algorithm of type can be realized in this step to being asked secret value in the encryption of ballot value and subsequent stepAnd operation.
Step S12:Each secret value, which is transmitted to operation, the common recognition node of block chain intelligence contract, and controls common recognition nodeSummation operation is carried out to each secret value, to obtain encrypted vote result.
Signified common recognition node is to execute the node for having block chain intelligence contract in this step, is by institute in block chain networkThere is the working node that node is trusted, therefore the public affairs that summation operation ensure that operation are carried out to secret value by control common recognition nodePositivity.It should be noted that in practical situations, the quantity for node of knowing together is usually multiple, phase is followed between each node of knowing togetherSame block chain intelligence contract, block chain is recorded in a distributed fashion in each common recognition node, and then passes through each common recognitionBlock in node can restore complete block chain in current block chain network.
Step S13:The homomorphism private key that control count of votes node is generated by homomorphic encryption algorithm, carries out encrypted vote resultDecryption obtains original voting results, and original voting results are recorded in block chain by block chain intelligence contract, forEach node publicity into block chain network.
It is understood that since count of votes node retains the homomorphism private key being generated in advance in itself, this step needsIt controls count of votes node to be decrypted by homomorphism private key pair encryption data, and then obtains original voting results.Due to using sameThe encryption and subsequent decryption that state Encryption Algorithm carries out ballot value, therefore can ensure obtained original voting results justTrue property.After original voting results are recorded in block chain, each node under block chain mechanism can be obtained by node of knowing togetherGet original voting results.It is this field skill it should be noted that by block chain intelligence contract by data record in block chainTechnological means well known to art personnel, and the emphasis of this method is that ballot is realized under block chain mechanism using homomorphic encryption algorithmOperation, does not lie in and how original voting results to be recorded in block chain, therefore related content does not repeat herein.
Voting method provided by the present invention based on block chain, obtains the ballot value of each ballot node, and then usesEach ballot value is encrypted as secret value by the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm, and is transmitted to operation and has areaThe common recognition node of block chain intelligence contract, by know together node to each secret value carry out summation operation generate encrypted vote as a result, intoAnd it obtains the encrypted vote result of common recognition node using count of votes node and it is decrypted to obtain original throwing using homomorphism private keyOriginal voting results as a result, be finally recorded in by block chain intelligence contract in block chain, with into block chain network by ticketEach node publicity.This method ensures to decrypt the result of gained after carrying out operation to secret value and to throwing using homomorphic encryption algorithmThe result that ticket value directly carries out identical operation is identical, and then summation operation can be directly carried out in the form of secret value, ensure thatThe safety of operation.In addition, since common recognition node operation has block chain intelligence contract, common recognition node is by block chain networkOther nodes trusted, and then ensure the fairness of count of votes process;And in the method, respectively ballot node is all made of togetherState Encryption Algorithm carries out respective handling to ballot value, and since the execution content of homomorphic encryption algorithm is relatively easy, calculation amountIt is small, therefore ensure whole ballot efficiency relatively.
Embodiment two
On the basis of the above embodiments, the present invention also provides a series of preferred embodiments.
Fig. 2 is the flow chart of another voting method based on block chain provided in an embodiment of the present invention.Step in Fig. 2S10-S13 is identical as Fig. 1, and details are not described herein.
As shown in Fig. 2, as a preferred embodiment, the ballot that characterization ballot is intended in obtaining each ballot nodeAfter value, this method further comprises:
Step S20:Each ballot node is controlled by preset digest algorithm and signature private key to including to throw in itselfThe vote information of ticket value carries out digest, obtains signed data.
Step S21:Each signed data is recorded into block chain by block chain intelligence contract.
In order to avoid there is the case where ballot node duplicates ballot or do not vote, can be saved by controlling each ballotPoint is to including that the vote information of ballot value carries out digest to obtain signed data, since ballot node is to use in itselfThe signed data that the signature private key of own identification generates is characterized, therefore each signed data can correspond to unique ballot node.Each signed data is recorded to block chain, all nodes under block chain mechanism can verify each throwing according to signed dataWhether ticket node normally votes, opposite the case where avoiding ballot node from duplicating ballot or do not vote, and then ensures ballot knotThe accuracy of fruit.In addition, equal to data progress informative abstract and by signature private key progress digest by digest algorithmTechnological means known to those skilled in the art, this will not be repeated here, and the digest algorithm for specifically choosing and signature are privateThe concrete type of key should be herein not specifically limited depending on particular condition in use.
On the basis of the above embodiment, as a preferred embodiment, digest algorithm is specially SHA256 plucksAlgorithm or SM3 digest algorithms, signature private key is wanted to be generated especially by ECDSA algorithms or SM2 algorithms or SM9 algorithms.
It should be noted that SHA (secure hash algorithm) is a Cryptographic Hash Function family, be FIPS certification peaceFull hashing algorithm can calculate corresponding to a digital information, the fixed character string of length, i.e. eap-message digest, and SHA256Digest algorithm is comparatively common algorithm in SHA, has higher reliability.SM3, SM2 and SM9 algorithm belong to stateThe commercial algorithm of Password Management office of family establishment, in cipher application digital signature and verification, the generation of message authentication code withVerification and the generation of random number, can meet the demand for security of a variety of cipher applications;In addition, the keys sizes of ECDSA algorithms are small,Encrypting and decrypting speed is fast, occupies smaller for memory space, therefore have higher availability.
In addition, as a preferred embodiment, homomorphic encryption algorithm is specially EC-ElGamal homomorphic encryption algorithms.
EC-ElGamal homomorphic encryption algorithms are the homomorphic algorithms of current opposite mainstream, have higher reliability, pass throughEC-ElGamal homomorphic encryption algorithms, are encrypted ballot value and operation, be capable of the opposite safety for ensureing secret value andThe reliability of operation result.
The execution of specific EC-ElGamal homomorphic encryption algorithms includes the following steps:
1, parameter generates:E is an elliptic curve on finite field gf (p), and n is the rank of curve E, and G is the base of curve EPoint.
2, key generates:One integer x ∈ GF (p) of random selection is used as private key, calculates public key Y=xG.
3, it encrypts:Input public key Y and plaintext m.
Random number k ∈ [1, n-1] is selected, and calculates R=kG;
Calculate S=m+kY;
Export ciphertext (R, S).
4, it decrypts:Input private key x and ciphertext (R, S).
Calculate m=S-xR;
Export plaintext m.
In the following, characterizing the additive homomorphism operation based on EC-ElGamal homomorphic encryption algorithms in the form of expression formula:
D(E(m1)+E(m2))=D ((R1,S1)+(R2,S2))=D ((k1G,m1+k1Y)+(k2G,m2+k2Y))
=D ((k1G+k2G,m1+m2+k1Y+k2Y))=m1+m2+(k1+k2)Y-x(k1+k2) G=m1+m2
Wherein, D characterizations to the additive homomorphism operation of encrypted data and;m1Characterization first is in plain text;m2Characterize second plaintext;k1Characterize the first random number;k2Characterize the second random number.
In addition, homomorphic encryption algorithm can also be that Paillier homomorphic algorithms, user can be selected according to actual demandIt takes.
In addition, as a preferred embodiment, EC-ElGamal homomorphic encryption algorithms are specially EC-ElGamal addsMethod homomorphic encryption algorithm.
It is understood that due to carrying out the complexity of add operation in a computer compared to multiplying smaller, becauseBallot value is encrypted using EC-ElGamal additive homomorphisms Encryption Algorithm for this and the calculation amount smaller of summation operation, into oneStep improves operation efficiency.
In addition, as a preferred embodiment, the value of ballot value includes 0 and 1.
Wherein, when ballot value is 0, characterization ballot is intended to oppose, ballot is characterized when ballot value is 1 and is intended to agree with.
The value of ballot value includes 1 and 0, can more intuitively characterize the intention of ballot, and original voting results energyEnough directly corresponding with favorable ballot number of nodes, user can throw according to the more intuitive efficient understanding of original voting resultsThe ballot situation of ticket node.
Ballot is intended to the relationship between ballot value referring to following table:
Ballot is intended toIt agrees withOppose
Ballot value10
Further, it is contemplated that ballot node can have the right of abstention ballot, ballot to be intended to include " abandoningPower ".In the case, the relationship that ballot is intended between ballot value is as shown in the table:
Ballot is intended toIt agrees withOpposeAbstention
Ballot value10Null value
But be emphasized that since ballot value when ballot is intended to " waive the right " is null value, carrying out homomorphismWhen summation operation, null value is identical as operation effect caused by " 0 " value.Further, user can be by judging ballot valueFor 0 value or null value, statistics ballot is intended to " to oppose " and the quantity of the node of voting of " abstention ".
In addition, as a preferred embodiment, ballot node is specially mobile terminal.
In view of there is very strong portability due to mobile terminal, ballot can be completed under several scenes.In addition,The cost of mobile terminal is relatively low, and user base number is larger, therefore may be implemented to vote on a large scale by mobile terminal, and realizesOverall cost needed for ballot is relatively low.
Embodiment three
A kind of embodiment under concrete application scene is provided below:
In order to make it easy to understand, the flow sequence diagram of the voting method based on block chain shown in please referring to Fig.3.
This application scene embodiment includes the following steps:
1, count of votes node generates a pair of EC-ElGamal encryption keys pair, and public encryption public key retains encryption key;
2, ballot node generates public and private key of signing using SM2/SM9/ECDSA
3, ballot node is encrypted ballot value using the EC-ElGamal encrypted public keys of count of votes node;
4, ballot node generates the abstract of complete vote information using SM3/SHA256 digest algorithms, and uses oneselfSM2/SM9/ECDSA signature private key is sent to after signing to it on block chain;
5, operation have the common recognition node of block chain intelligence contract to it is all by the encrypted ballots of EC-ElGamal be worth intoRow plus homomorphism calculate, and obtain the result of cryptogram computation;
6, count of votes node decryption add homomorphism calculate as a result, obtaining the statistical information of final poll;
7, count of votes node generates the abstract of statistical result using SM3/SHA256 digest algorithms,;
8, count of votes node is sent to after being signed to it using the SM2/SM9/ECDSA signature private key of oneself on block chain, intoAnd it is all with per family it can be seen that final voting results.
Example IV
Hereinbefore the embodiment of the voting method based on block chain is described in detail, the present invention also providesA kind of balloting device based on block chain corresponding with this method, due to the embodiment of the embodiment and method part of device partIt corresponds, therefore the embodiment of device part refers to the description of the embodiment of method part, wouldn't repeat here.
Fig. 4 is a kind of balloting device structure chart based on block chain provided in an embodiment of the present invention.The embodiment of the present invention carriesThe balloting device based on block chain supplied, including:
Acquisition module 10, for obtaining the ballot value that characterization ballot is intended in each ballot node.
Encrypting module 11, for the homomorphism public key that is generated by homomorphic encryption algorithm according to count of votes node, to each ballot be worth intoRow encryption is to generate secret value.
Computing module 12 is transmitted, has the common recognition node of block chain intelligence contract for each secret value to be transmitted to operation, andControl common recognition node carries out summation operation to each secret value, to obtain encrypted vote result;
Deciphering module 13, the homomorphism private key generated by homomorphic encryption algorithm for controlling count of votes node, to encrypted voteAs a result it is decrypted to obtain original voting results, and original voting results is recorded in by block chain by block chain intelligence contractIn, for each node publicity into block chain network.
Balloting device provided by the present invention based on block chain, obtains the ballot value of each ballot node, and then usesEach ballot value is encrypted as secret value by the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm, and is transmitted to operation and has areaThe common recognition node of block chain intelligence contract, by know together node to each secret value carry out summation operation generate encrypted vote as a result, intoAnd it obtains the encrypted vote result of common recognition node using count of votes node and it is decrypted to obtain original throwing using homomorphism private keyOriginal voting results as a result, be finally recorded in by block chain intelligence contract in block chain, with into block chain network by ticketEach node publicity.The present apparatus ensures to decrypt the result of gained after carrying out operation to secret value and to throwing using homomorphic encryption algorithmThe result that ticket value directly carries out identical operation is identical, and then summation operation can be directly carried out in the form of secret value, ensure thatThe safety of operation.In addition, since common recognition node operation has block chain intelligence contract, common recognition node is by block chain networkOther nodes trusted, and then ensure the fairness of count of votes process;And in the present apparatus, each node of voting is all made of togetherState Encryption Algorithm carries out respective handling to ballot value, and since the execution content of homomorphic encryption algorithm is relatively easy, calculation amountIt is small, therefore ensure whole ballot efficiency relatively.
On the basis of example IV, which further includes:
Signature blocks, for controlling encryption of each ballot node by preset digest algorithm and signature private key to itselfValue carries out digest, obtains signed data.
Block chained record module records each signed data into block chain for passing through block chain intelligence contract.
Embodiment five
The present invention also provides a kind of ballot equipment based on block chain, including:
Memory, for storing computer program;
Processor is realized when for executing computer program such as the step of above-mentioned voting method based on block chain.
Ballot equipment provided by the present invention based on block chain, obtains the ballot value of each ballot node, and then usesEach ballot value is encrypted as secret value by the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm, and is transmitted to operation and has areaThe common recognition node of block chain intelligence contract, by know together node to each secret value carry out summation operation generate encrypted vote as a result, intoAnd it obtains the encrypted vote result of common recognition node using count of votes node and it is decrypted to obtain original throwing using homomorphism private keyOriginal voting results as a result, be finally recorded in by block chain intelligence contract in block chain, with into block chain network by ticketEach node publicity.This equipment ensures to decrypt the result of gained after carrying out operation to secret value and to throwing using homomorphic encryption algorithmThe result that ticket value directly carries out identical operation is identical, and then summation operation can be directly carried out in the form of secret value, ensure thatThe safety of operation.In addition, since common recognition node operation has block chain intelligence contract, common recognition node is by block chain networkOther nodes trusted, and then ensure the fairness of count of votes process;And in this equipment, each node of voting is all made of togetherState Encryption Algorithm carries out respective handling to ballot value, and since the execution content of homomorphic encryption algorithm is relatively easy, calculation amountIt is small, therefore ensure whole ballot efficiency relatively.
The present invention also provides a kind of computer readable storage medium, computer journey is stored on computer readable storage mediumSequence is realized when computer program is executed by processor such as the step of above-mentioned voting method based on block chain.
The computer readable storage medium of ballot provided by the present invention based on block chain obtains each ballot nodeBallot value, and then each ballot value is encrypted as by secret value using the homomorphism public key that count of votes node is generated by homomorphic encryption algorithm,And it is transmitted to the common recognition node for running and having block chain intelligence contract, by knowing together, node carries out summation operation generation to each secret valueEncrypted vote is as a result, obtaining the encrypted vote result of common recognition node using count of votes node in turn and being carried out to it using homomorphism private keyDecryption obtain original voting results, finally original voting results are recorded in by block chain intelligence contract in block chain, with toEach node publicity in block chain network.This computer readable storage medium use homomorphic encryption algorithm, ensure to secret value intoThe result of decryption gained is identical as the result of identical operation is directly carried out to ballot value after row operation, and then can be with secret valueForm directly carries out summation operation, ensure that the safety of operation.In addition, since common recognition node operation has block chain intelligently to closeAbout, therefore common recognition node is trusted by other nodes in block chain network, and then ensures the fairness of count of votes process;AndIn this computer readable storage medium, each node of voting is all made of homomorphic encryption algorithm and carries out respective handling to ballot value, andAnd since the execution content of homomorphic encryption algorithm is relatively easy, calculation amount is small, therefore ensure whole ballot efficiency relatively.
A kind of voting method, device, equipment and medium based on block chain provided by the present invention have been carried out in detail aboveIt is thin to introduce.Each embodiment is described by the way of progressive in specification, the highlights of each of the examples are with other realitiesApply the difference of example, just to refer each other for identical similar portion between each embodiment.For device disclosed in embodimentSpeech, since it is corresponded to the methods disclosed in the examples, so description is fairly simple, related place is referring to method part illustration?.It should be pointed out that for those skilled in the art, without departing from the principle of the present invention, alsoCan be with several improvements and modifications are made to the present invention, these improvement and modification also fall into the protection domain of the claims in the present inventionIt is interior.
It should also be noted that, in the present specification, relational terms such as first and second and the like be used merely to byOne entity or operation are distinguished with another entity or operation, without necessarily requiring or implying these entities or operationBetween there are any actual relationship or orders.Moreover, the terms "include", "comprise" or its any other variant meaningCovering non-exclusive inclusion, so that the process, method, article or equipment including a series of elements includes not only thatA little elements, but also include other elements that are not explicitly listed, or further include for this process, method, article orThe intrinsic element of equipment.In the absence of more restrictions, the element limited by sentence "including a ...", is not arrangedExcept there is also other identical elements in the process, method, article or apparatus that includes the element.

Claims (10)

CN201810455285.6A2018-05-142018-05-14Voting method, device, equipment and medium based on block chainActiveCN108768607B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN201810455285.6ACN108768607B (en)2018-05-142018-05-14Voting method, device, equipment and medium based on block chain

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201810455285.6ACN108768607B (en)2018-05-142018-05-14Voting method, device, equipment and medium based on block chain

Publications (2)

Publication NumberPublication Date
CN108768607Atrue CN108768607A (en)2018-11-06
CN108768607B CN108768607B (en)2021-10-08

Family

ID=64010497

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201810455285.6AActiveCN108768607B (en)2018-05-142018-05-14Voting method, device, equipment and medium based on block chain

Country Status (1)

CountryLink
CN (1)CN108768607B (en)

Cited By (40)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN108809624A (en)*2018-07-182018-11-13杭州安恒信息技术股份有限公司A kind of electronic voting method, system, equipment and computer readable storage medium
CN109493053A (en)*2018-11-222019-03-19质数链网科技成都有限公司A kind of anonymous deal method for alliance's block catenary system
CN109523683A (en)*2018-12-292019-03-26杭州趣链科技有限公司A kind of blank electronic voting method based on block chain technology
CN109840770A (en)*2019-01-312019-06-04北京瑞卓喜投科技发展有限公司A kind of intelligence contract execution method and intelligent contract execute system
CN109861822A (en)*2018-11-292019-06-07中国电子科技集团公司第三十研究所 A method for controllable message transaction encryption in a blockchain system
CN109905244A (en)*2018-12-262019-06-18顺丰科技有限公司The management method and device of alliance
CN109934691A (en)*2019-02-282019-06-25矩阵元技术(深圳)有限公司A kind of data processing method of auction, auction client and system
CN109981281A (en)*2019-01-142019-07-05北京领主科技有限公司It is known together at random based on the motion of block chain and determines the method and device of candidate's element
CN110011981A (en)*2019-03-152019-07-12湖北工程学院 A blockchain-based trusted cloud storage method and system
CN110034917A (en)*2019-04-112019-07-19鸿秦(北京)科技有限公司A kind of alliance's chain data processing method and device based on homomorphic encryption algorithm
CN110035057A (en)*2019-02-282019-07-19阿里巴巴集团控股有限公司System, method and apparatus for ballot
CN110061828A (en)*2019-04-042019-07-26西安电子科技大学Distributed digital endorsement method without trusted party
CN110162996A (en)*2019-04-232019-08-23上海链度科技有限公司Ballot system, method and voting terminal based on block chain
CN110169015A (en)*2018-12-132019-08-23阿里巴巴集团控股有限公司Reach common understanding between network node in a distributed system
CN110245183A (en)*2019-05-052019-09-17上海链度科技有限公司A kind of encrypted electronic voting system and method based on alliance's block chain technology
CN110264608A (en)*2019-04-112019-09-20阿里巴巴集团控股有限公司Voting method, apparatus and system based on block chain
CN110400410A (en)*2019-07-312019-11-01中钞信用卡产业发展有限公司杭州区块链技术研究院A kind of electronic voting system
CN110555933A (en)*2019-07-312019-12-10中钞信用卡产业发展有限公司杭州区块链技术研究院Electronic voting method, device, equipment and computer storage medium
CN110782347A (en)*2019-10-222020-02-11全链通有限公司Intelligent contract signing method based on block chain, initiating node and medium
CN110958107A (en)*2019-12-052020-04-03全链通有限公司Electronic voting method, device and storage medium based on block chain
CN111131218A (en)*2019-12-192020-05-08平安资产管理有限责任公司Blacklist management method, device, computer system and readable storage medium
CN111310206A (en)*2020-02-122020-06-19腾讯科技(深圳)有限公司Data encryption method, node equipment and storage medium
CN111476548A (en)*2020-04-162020-07-31山东师范大学 A blockchain-based job title review method and system
CN111740833A (en)*2019-04-162020-10-02北京沃东天骏信息技术有限公司Signature method, node, system and storage medium of block chain network
WO2020216065A1 (en)*2019-04-242020-10-29深圳前海微众银行股份有限公司Voting method and apparatus in blockchain
CN112163191A (en)*2020-09-152021-01-01广东工业大学Education resource sharing method and system based on national secret block chain
CN112466032A (en)*2020-11-232021-03-09深圳前海微众银行股份有限公司Electronic voting method and device and electronic equipment
CN112685751A (en)*2020-12-252021-04-20联想(北京)有限公司Data processing method and device and electronic voting system
CN112784305A (en)*2021-02-012021-05-11杭州复杂美科技有限公司Encrypted voting method, computer device, and storage medium
CN112863040A (en)*2021-03-292021-05-28中信银行股份有限公司Voting result generation, statistics and acquisition method and device and electronic equipment
CN112865980A (en)*2021-02-012021-05-28杭州复杂美科技有限公司Block chain encryption voting method, computer device and storage medium
CN112926062A (en)*2019-12-062021-06-08中国电信股份有限公司Grading data processing method and device and computer readable storage medium
CN112995136A (en)*2021-02-032021-06-18浙江泰科数联信息技术有限公司K-out-of-m anonymous voting method based on alliance chain
CN113765666A (en)*2020-10-202021-12-07北京沃东天骏信息技术有限公司 Information encryption method and device
CN113850947A (en)*2020-12-282021-12-28杭州趣链科技有限公司Electronic voting system based on ElGamal encryption
CN114299656A (en)*2020-09-232022-04-08成都中科信息技术有限公司Voting method
CN114741710A (en)*2022-03-312022-07-12微位(深圳)网络科技有限公司Anonymous voting method, device, equipment and storage medium based on block chain
CN115589303A (en)*2022-07-112023-01-10昆明理工大学Data sharing and privacy protection method based on SM9 algorithm and cross-chain technology
CN115632777A (en)*2022-12-122023-01-20中电长城网际系统应用有限公司Data processing method and electronic equipment
CN116524642A (en)*2023-04-282023-08-01维沃移动通信有限公司 Voting statistics method, device, electronic equipment and readable storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN114629660B (en)*2022-04-212024-03-08南方电网科学研究院有限责任公司Anonymous trusted voting method, device and related equipment based on blockchain

Citations (9)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN103903325A (en)*2013-07-082014-07-02苏州大学Safe electronic voting system based on identity signature
CN104796475A (en)*2015-04-242015-07-22苏州大学Social recommendation method based on homomorphic encryption
CN106411503A (en)*2016-11-282017-02-15中国银行股份有限公司Accounting method, accounting system, voting node and accounting node under block chain voting and accounting mode
CN106845960A (en)*2017-01-242017-06-13上海亿账通区块链科技有限公司Method for secure transactions and system based on block chain
CN106878022A (en)*2017-02-152017-06-20中钞信用卡产业发展有限公司北京智能卡技术研究院The method and device signed on block chain, verified
US20170250796A1 (en)*2016-02-182017-08-31Gideon SamidTrans Vernam Cryptography: Round One
CN107395403A (en)*2017-07-072017-11-24北京区块链云科技有限公司A kind of fiduciary block chain common recognition method suitable for extensive ecommerce
CN107666388A (en)*2016-07-282018-02-06郑珂威Block chain information encryption method based on complete homomorphic cryptography method
WO2018073564A1 (en)*2016-10-172018-04-26Arm LtdBlockchain mining using trusted nodes

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN103903325A (en)*2013-07-082014-07-02苏州大学Safe electronic voting system based on identity signature
CN104796475A (en)*2015-04-242015-07-22苏州大学Social recommendation method based on homomorphic encryption
US20170250796A1 (en)*2016-02-182017-08-31Gideon SamidTrans Vernam Cryptography: Round One
CN107666388A (en)*2016-07-282018-02-06郑珂威Block chain information encryption method based on complete homomorphic cryptography method
WO2018073564A1 (en)*2016-10-172018-04-26Arm LtdBlockchain mining using trusted nodes
CN106411503A (en)*2016-11-282017-02-15中国银行股份有限公司Accounting method, accounting system, voting node and accounting node under block chain voting and accounting mode
CN106845960A (en)*2017-01-242017-06-13上海亿账通区块链科技有限公司Method for secure transactions and system based on block chain
CN106878022A (en)*2017-02-152017-06-20中钞信用卡产业发展有限公司北京智能卡技术研究院The method and device signed on block chain, verified
CN107395403A (en)*2017-07-072017-11-24北京区块链云科技有限公司A kind of fiduciary block chain common recognition method suitable for extensive ecommerce

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
LINMINGGONG ECT.: "A homomorphic encryption scheme with adaptive chosen ciphertext security but without random oracle", 《THEORETICAL COMPUTER SCIENCE》*
SAFDAR HUSSAIN SHAHEEN ECT.: "Temper Proof Data Distribution for Universal Verifiability and Accuracy in Electoral Process Using Blockchain", 《2017 13TH INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES (ICET)》*
姚前: "分布式账本技术研究进展综述", 《武汉金融》*
王昊: "基于三角矩阵全同态加密算法的安全电子投票系统研究与设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》*

Cited By (56)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN108809624A (en)*2018-07-182018-11-13杭州安恒信息技术股份有限公司A kind of electronic voting method, system, equipment and computer readable storage medium
CN109493053A (en)*2018-11-222019-03-19质数链网科技成都有限公司A kind of anonymous deal method for alliance's block catenary system
CN109861822A (en)*2018-11-292019-06-07中国电子科技集团公司第三十研究所 A method for controllable message transaction encryption in a blockchain system
CN110169015A (en)*2018-12-132019-08-23阿里巴巴集团控股有限公司Reach common understanding between network node in a distributed system
CN110169015B (en)*2018-12-132022-03-01创新先进技术有限公司 Reach consensus among network nodes in a distributed system
CN109905244A (en)*2018-12-262019-06-18顺丰科技有限公司The management method and device of alliance
CN109523683A (en)*2018-12-292019-03-26杭州趣链科技有限公司A kind of blank electronic voting method based on block chain technology
CN109523683B (en)*2018-12-292021-05-04杭州趣链科技有限公司Anonymous electronic voting method based on block chain technology
CN109981281A (en)*2019-01-142019-07-05北京领主科技有限公司It is known together at random based on the motion of block chain and determines the method and device of candidate's element
CN109981281B (en)*2019-01-142021-11-26北京领主科技有限公司Method and device for determining candidate elements based on block chain proposal random consensus
CN109840770A (en)*2019-01-312019-06-04北京瑞卓喜投科技发展有限公司A kind of intelligence contract execution method and intelligent contract execute system
CN109934691A (en)*2019-02-282019-06-25矩阵元技术(深圳)有限公司A kind of data processing method of auction, auction client and system
CN109934691B (en)*2019-02-282023-08-25矩阵元技术(深圳)有限公司Auction data processing method, auction client and system
CN110035057A (en)*2019-02-282019-07-19阿里巴巴集团控股有限公司System, method and apparatus for ballot
CN110011981B (en)*2019-03-152021-06-29湖北工程学院 A blockchain-based trusted cloud storage method and system
CN110011981A (en)*2019-03-152019-07-12湖北工程学院 A blockchain-based trusted cloud storage method and system
CN110061828A (en)*2019-04-042019-07-26西安电子科技大学Distributed digital endorsement method without trusted party
CN110264608A (en)*2019-04-112019-09-20阿里巴巴集团控股有限公司Voting method, apparatus and system based on block chain
CN110034917A (en)*2019-04-112019-07-19鸿秦(北京)科技有限公司A kind of alliance's chain data processing method and device based on homomorphic encryption algorithm
CN110264608B (en)*2019-04-112021-06-29创新先进技术有限公司Voting method, device and system based on block chain
CN111740833B (en)*2019-04-162023-09-05北京沃东天骏信息技术有限公司Signature method, node, system and storage medium of blockchain network
CN111740833A (en)*2019-04-162020-10-02北京沃东天骏信息技术有限公司Signature method, node, system and storage medium of block chain network
CN110162996A (en)*2019-04-232019-08-23上海链度科技有限公司Ballot system, method and voting terminal based on block chain
WO2020216065A1 (en)*2019-04-242020-10-29深圳前海微众银行股份有限公司Voting method and apparatus in blockchain
CN110245183A (en)*2019-05-052019-09-17上海链度科技有限公司A kind of encrypted electronic voting system and method based on alliance's block chain technology
CN110555933B (en)*2019-07-312021-04-30中钞信用卡产业发展有限公司杭州区块链技术研究院Electronic voting method, device, equipment and computer storage medium
CN110400410A (en)*2019-07-312019-11-01中钞信用卡产业发展有限公司杭州区块链技术研究院A kind of electronic voting system
CN110555933A (en)*2019-07-312019-12-10中钞信用卡产业发展有限公司杭州区块链技术研究院Electronic voting method, device, equipment and computer storage medium
CN110782347B (en)*2019-10-222023-02-03全链通有限公司Intelligent contract signing method, device and medium based on block chain
CN110782347A (en)*2019-10-222020-02-11全链通有限公司Intelligent contract signing method based on block chain, initiating node and medium
CN110958107A (en)*2019-12-052020-04-03全链通有限公司Electronic voting method, device and storage medium based on block chain
CN112926062A (en)*2019-12-062021-06-08中国电信股份有限公司Grading data processing method and device and computer readable storage medium
CN111131218A (en)*2019-12-192020-05-08平安资产管理有限责任公司Blacklist management method, device, computer system and readable storage medium
CN111310206A (en)*2020-02-122020-06-19腾讯科技(深圳)有限公司Data encryption method, node equipment and storage medium
CN111476548A (en)*2020-04-162020-07-31山东师范大学 A blockchain-based job title review method and system
CN111476548B (en)*2020-04-162024-01-23山东师范大学Title review method and system based on blockchain
CN112163191A (en)*2020-09-152021-01-01广东工业大学Education resource sharing method and system based on national secret block chain
CN114299656A (en)*2020-09-232022-04-08成都中科信息技术有限公司Voting method
CN113765666B (en)*2020-10-202025-01-14北京沃东天骏信息技术有限公司 Information encryption method and device
CN113765666A (en)*2020-10-202021-12-07北京沃东天骏信息技术有限公司 Information encryption method and device
WO2022105518A1 (en)*2020-11-232022-05-27深圳前海微众银行股份有限公司Electronic voting method and device
CN112466032B (en)*2020-11-232021-08-17深圳前海微众银行股份有限公司 Electronic voting method, device and electronic equipment
CN112466032A (en)*2020-11-232021-03-09深圳前海微众银行股份有限公司Electronic voting method and device and electronic equipment
CN112685751B (en)*2020-12-252024-04-26联想(北京)有限公司Data processing method, device and electronic voting system
CN112685751A (en)*2020-12-252021-04-20联想(北京)有限公司Data processing method and device and electronic voting system
CN113850947A (en)*2020-12-282021-12-28杭州趣链科技有限公司Electronic voting system based on ElGamal encryption
CN113850947B (en)*2020-12-282023-08-29杭州趣链科技有限公司Electronic Voting System Based on ElGamal Encryption
CN112784305A (en)*2021-02-012021-05-11杭州复杂美科技有限公司Encrypted voting method, computer device, and storage medium
CN112865980A (en)*2021-02-012021-05-28杭州复杂美科技有限公司Block chain encryption voting method, computer device and storage medium
CN112995136A (en)*2021-02-032021-06-18浙江泰科数联信息技术有限公司K-out-of-m anonymous voting method based on alliance chain
CN112863040A (en)*2021-03-292021-05-28中信银行股份有限公司Voting result generation, statistics and acquisition method and device and electronic equipment
CN114741710A (en)*2022-03-312022-07-12微位(深圳)网络科技有限公司Anonymous voting method, device, equipment and storage medium based on block chain
CN115589303B (en)*2022-07-112024-02-27昆明理工大学SM9 algorithm and cross-link technology based data sharing and privacy protection method
CN115589303A (en)*2022-07-112023-01-10昆明理工大学Data sharing and privacy protection method based on SM9 algorithm and cross-chain technology
CN115632777A (en)*2022-12-122023-01-20中电长城网际系统应用有限公司Data processing method and electronic equipment
CN116524642A (en)*2023-04-282023-08-01维沃移动通信有限公司 Voting statistics method, device, electronic equipment and readable storage medium

Also Published As

Publication numberPublication date
CN108768607B (en)2021-10-08

Similar Documents

PublicationPublication DateTitle
CN108768607A (en)A kind of voting method, device, equipment and medium based on block chain
Yassein et al.Comprehensive study of symmetric key and asymmetric key encryption algorithms
Jiang et al.Public integrity auditing for shared dynamic cloud data with group user revocation
Hohenberger et al.Online/offline attribute-based encryption
US10129029B2 (en)Proofs of plaintext knowledge and group signatures incorporating same
Guo et al.Better concrete security for half-gates garbling (in the multi-instance setting)
US8605897B2 (en)Symmetric-key encryption method and cryptographic system employing the method
EP3664360A1 (en)Certificateless public key encryption using pairings
Jayapandian et al.Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption
CN105468986A (en)Confidential information retrieval method and system
US20080232591A1 (en)Simple and efficient one-pass authenticated encryption scheme
Koko et al.Comparison of Various Encryption Algorithms and Techniques for improving secured data Communication
CN113783683A (en)Cloud platform privacy protection verifiable data aggregation method based on sensor network
Shi et al.An obfuscatable aggregatable signcryption scheme for unattended devices in IoT systems
Lu et al.Transactive energy system deployment over insecure communication links
Mateescu et al.A hybrid approach of system security for small and medium enterprises: Combining different cryptography techniques
Huang et al.Continual leakage-resilient hedged public-key encryption
Zhan et al.Improved proxy re-encryption with delegatable verifiability
DoshiAn enhanced approach for CP-ABE with proxy re-encryption in IoT paradigm
Zhang et al.Privacy‐friendly weighted‐reputation aggregation protocols against malicious adversaries in cloud services
Wang et al.HOPE: Homomorphic Order-Preserving Encryption for Outsourced Databases--A Stateless Approach
Mihaljevic et al.On wireless communications privacy and security evaluation of encryption techniques
Bergman Martinkauppi et al.Performance evaluation and comparison of standard cryptographic algorithms and Chinese cryptographic algorithms
Gobi et al.A new digital envelope approach for secure electronic medical records
Kulyk et al.Efficiency evaluation of cryptographic protocols for boardroom voting

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant

[8]ページ先頭

©2009-2025 Movatter.jp