CN109903450A - Electronic voting method and system - Google Patents

Electronic voting method and system Download PDF

Info

Publication number
CN109903450A
CN109903450A CN201910241739.4A CN201910241739A CN109903450A CN 109903450 A CN109903450 A CN 109903450A CN 201910241739 A CN201910241739 A CN 201910241739A CN 109903450 A CN109903450 A CN 109903450A
Authority
CN
China
Prior art keywords
ballot
module
vote
identification code
signing messages
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
CN201910241739.4A
Other languages
Chinese (zh)
Other versions
CN109903450B (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.)
Shenzhen Polytechnic
Original Assignee
Shenzhen Polytechnic
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 Shenzhen Polytechnic filed Critical Shenzhen Polytechnic
Priority to CN201910241739.4A priority Critical patent/CN109903450B/en
Publication of CN109903450A publication Critical patent/CN109903450A/en
Application granted granted Critical
Publication of CN109903450B publication Critical patent/CN109903450B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Time Recorders, Dirve Recorders, Access Control (AREA)

Abstract

The embodiment of the present invention discloses a kind of electronic voting method and a kind of electronic voting system.Wherein, electronic voting method for example, initiate ballot step, ballot signature step, ballot verification step and ballot and save step.A kind of electronic voting method provided in an embodiment of the present invention realized based on block chain ballot anonymity, can not tamper and non-repudiation.

Description

Electronic voting method and system
Technical field
The present invention relates to ballot technical field more particularly to a kind of electronic voting methods and a kind of electronic voting system.
Background technique
Electronic voting system, which refers to, electronically votes, and a kind of mode by electronically counting poll. Unlike other types ballot mode: electronic voting is built upon on network voting system, and voting results are completely by journey Sequence output is participated in without artificial.However participated in without artificial, voting results are likely to be utilized by hacker.And electronic voting system Unite itself technology content it is not high, lack in ability for the verifying of successive ballots, as long as hacker has grasped principle, so that it may light Loose ground realizes continuous brush ticket, practises fraud to voting results.Existing electronic voting system frequently involves fraud, deception ballot paper etc. Problem, these safety problems seriously hinder electronic voting system extensive use.
Summary of the invention
The present invention provides a kind of electronic voting method and a kind of electronic voting system to solve above-mentioned the deficiencies in the prior art System.
To achieve the goals above, the embodiment of the present invention provides one kind and is suitable for application in comprising vote module, ballot management In the electronic voting system of module, password preserving module and block generation module, comprising: initiate ballot step: the ballot mould Block obtains the identification code sent by the ballot management module and ballot list;The vote module generates decrypted private key, and root Corresponding encrypted public key is calculated according to the decrypted private key;The vote module retains the decrypted private key, and described will add Migong key is sent to the ballot management module, is stored the encrypted public key to password by the ballot management module and saves mould Block;The vote module is voted to obtain vote information and polling hours according to the ballot list;Ballot signature step: institute It states vote module and the first cryptographic Hash is calculated according to the identification code, the polling hours and the vote information;The throwing Ticket module is signed to obtain signing messages using the decrypted private key to first cryptographic Hash;The vote module will be described Identification code, the vote information, the polling hours and the signing messages are sent to the ballot management module;Ballot verifying Step: the ballot management module obtains the encrypted public key from the password preserving module, and public according to the encryption Key verifies the signing messages and is verified rear signing messages;The ballot management module is according to the identification code, the ballot The second cryptographic Hash is calculated in information and the polling hours;The ballot management module compare after the verifying signing messages and Second cryptographic Hash;After signing messages is identical with second cryptographic Hash after comparing the verifying, by the identification code, institute It states vote information, the polling hours and the signing messages and is sent to the block generation module;Ballot saves step: described Block generation module generates new block according to the identification code, the vote information, the polling hours and the signing messages It is added in block chain.
In one embodiment of the invention, the identification code is the unique identification for being associated with the vote module.
In one embodiment of the invention, the decrypted private key is the character string generated at random in non-zero natural number.
In one embodiment of the invention, described that first cryptographic Hash sign using the decrypted private key It include: to be signed to obtain to first cryptographic Hash using the decrypted private key based on Elliptic Curve Cryptography to signing messages The signing messages.
In one embodiment of the invention, the new block includes: the identification code, the vote information, the label Upper block cryptographic Hash in name information, the polling hours and the block chain.
In addition, the embodiment of the invention provides a kind of electronic voting systems, comprising: ballot and is separately connected management module Vote module, password preserving module and the block generation module of the ballot management module;Wherein, the vote module is used for: Obtain the identification code sent by the ballot management module and ballot list;Decrypted private key is generated, and according to the decrypted private key Corresponding encrypted public key is calculated;Retain the decrypted private key, and the encrypted public key is sent to the ballot and is managed Module is stored the encrypted public key to password preserving module by the ballot management module;It is carried out according to the ballot list Ballot obtains vote information and polling hours;It is calculated according to the identification code, the polling hours and the vote information First cryptographic Hash;First cryptographic Hash is signed to obtain signing messages using the decrypted private key;By the identification code, The vote information, the polling hours and the signing messages are sent to the ballot management module;The ballot manages mould Block is used for: receiving the identification code, the vote information, the polling hours and the signature sent by the vote module Information;The encrypted public key is obtained from the password preserving module, and the signing messages is verified according to the encrypted public key It is verified rear signing messages;The second Hash is calculated according to the identification code, the vote information and the polling hours Value;Compare signing messages and second cryptographic Hash after the verifying;The signing messages and described second after comparing the verifying After cryptographic Hash is identical, the identification code, the vote information, the polling hours and the signing messages are sent to the area Block generation module;The block generation module was used for according to the identification code, the vote information, polling hours and described Signing messages generates new block and is added in block chain.
In one embodiment of the invention, aforementioned electronic ballot system further include: data memory module is connected to described Ballot management module;Wherein, the ballot management module is also used to periodically access and count all areas in the block chain The vote information of block is stored the polled data into the data memory module with obtaining polled data.
In one embodiment of the invention, the new block includes: the identification code, the vote information, the label Upper block cryptographic Hash in name information, the polling hours and the block chain.
In one embodiment of the invention, the vote module is also used to recall the ballot within ballot deadline Information.
In one embodiment of the invention, the identification code is the unique identification for being associated with the vote module;The solution Close private key is the character string generated at random in non-zero natural number;The password preserving module is the first distributed data base;Institute Stating data memory module is the second distributed data base.
Above-mentioned technical proposal can have following advantage or the utility model has the advantages that a kind of electronic voting provided in an embodiment of the present invention System is the electronic voting system realized based on block chain, is able to carry out open electronic voting, realizes ballot based on block chain Anonymity, can not tamper and non-repudiation, can support large-scale electronic voting, and security level is higher.
Detailed description of the invention
In order to illustrate the technical solution of the embodiments of the present invention more clearly, required use in being described below to embodiment Attached drawing be briefly described, it should be apparent that, drawings in the following description are only some embodiments of the invention, for this For the those of ordinary skill of field, without creative efforts, it can also be obtained according to these attached drawings others Attached drawing.
Fig. 1 is the structural schematic diagram of electronic voting system in first embodiment of the invention;
Fig. 2 is the another structural schematic diagram of electronic voting system in first embodiment of the invention;
Fig. 3 is the structural schematic diagram of new block 161 in electronic voting system in first embodiment of the invention;
Fig. 4 a- Fig. 4 c is the schematic diagram of the specific embodiment of electronic voting system in first embodiment of the invention;
Fig. 5 is the flow diagram of electronic voting method in second embodiment of the invention;
Fig. 6 is the flow chart of electronic voting method step S31 in second embodiment of the invention;
Fig. 7 is the flow chart of electronic voting method step S32 in second embodiment of the invention;
Fig. 8 is the flow chart of electronic voting method step S33 in second embodiment of the invention;
Fig. 9 is the flow chart of electronic voting method step S34 in second embodiment of the invention.
Specific embodiment
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, complete Site preparation description, it is clear that described embodiments are only a part of the embodiments of the present invention, instead of all the embodiments.It is based on Embodiment in the present invention, it is obtained by those of ordinary skill in the art without making creative efforts every other Embodiment shall fall within the protection scope of the present invention.
It should be noted that description and claims of this specification and term " first " in above-mentioned attached drawing, " Two " etc. be to be used to distinguish similar objects, without being used to describe a particular order or precedence order.It should be understood that using in this way Term be interchangeable under appropriate circumstances, so that the embodiment of the present invention described herein can be in addition to illustrating herein or retouching Sequence other than those of stating is implemented.In addition, term " includes " and " having " and their any deformation, it is intended that covering Non-exclusive includes, for example, the process, method, system, product or equipment for containing a series of steps or units are not necessarily limited to clearly Those of list to Chu step or unit, but may include be not clearly listed or for these process, methods, product or Other intrinsic step or units of equipment.
[first embodiment]
Referring to Fig. 1, first embodiment of the invention proposes a kind of electronic voting system.As shown in Figure 1, electronic voting system 10 For example, vote module 11, ballot management module 12, password preserving module 13 and block generation module 14.Wherein, ballot pipe Reason module 12 is separately connected vote module 11, password preserving module 12 and block generation module 14.
Specifically, vote module 11 is used for:
Obtain the identification code sent by ballot management module 12 and list of voting;
Decrypted private key is generated, and corresponding encrypted public key is calculated according to the decrypted private key;
Retain the decrypted private key, and the encrypted public key is sent to ballot management module 12, by ballot management module 12 store the encrypted public key to password preserving module 13;
It is voted to obtain vote information and polling hours according to the ballot list;
The first cryptographic Hash is calculated according to the identification code, the polling hours and the vote information;
First cryptographic Hash is signed to obtain signing messages using the decrypted private key;
The identification code, the vote information, the polling hours and the signing messages are sent to ballot management mould Block 12.
Ballot management module 12 is used for:
Receive the identification code, the vote information, the polling hours and the signature sent by vote module 11 Information obtains the encrypted public key from password preserving module 13, and verifies the signing messages according to the encrypted public key It is verified rear signing messages;
The second cryptographic Hash is calculated according to the identification code, the vote information and the polling hours;
Compare signing messages and second cryptographic Hash after the verifying;
After signing messages is identical with second cryptographic Hash after comparing the verifying, by the identification code, the ballot Information, the polling hours and the signing messages are sent to block generation module 14.
Block generation module 14 is used for according to the identification code, the vote information, the polling hours and the signature Information generates new block and is added in block chain.
Further, as shown in Fig. 2, electronic voting system for example further includes data memory module 15, it is connected to ballot pipe Manage module 12.Wherein, ballot management module 12 is also used to periodically access and count the ballot of all blocks in block chain 16 Information is stored the polled data into data memory module 15 with obtaining polled data.Wherein, ballot management module 12 Polled data can be stored for the first time in data memory module 15, or update the votes stored in data memory module 15 According to.
Further, vote module 11 can also recall the vote information within ballot deadline.
Specifically, the identification code mentioned is the unique identification for being associated with vote module 11, is transmitted by network security channel. The ballot list mentioned is the list comprising multiple the person to be electeds.The decrypted private key mentioned is to generate at random in non-zero natural number Character string, what the encrypted public key mentioned for example was calculated based on message authentication mode according to decrypted private key.Password saves mould Block 13 is, for example, a kind of database, for example, is PKI (Public Key Infrastructure, underlying public key facility), PKI is the distributed data base for managing and maintaining the encrypted public key of voter.Data memory module 15 is, for example, a kind of distribution Database.The first cryptographic Hash and the second cryptographic Hash mentioned are, for example, to be calculated using SHA-256 algorithm.
Further, as shown in figure 3, new block 161 for example, identification code 1611, vote information 1612, signing messages 1613, upper block cryptographic Hash 1615 in polling hours 1614 and block chain 16.Wherein, the upper block cryptographic Hash 1615 mentioned Such as it and is calculated using SHA-256 algorithm.
The present embodiment in order to facilitate understanding carries out detailed below with reference to specific embodiment of Fig. 4 a to Fig. 4 b to the present embodiment It describes in detail bright.
As shown in fig. 4 a, a kind of electronic voting system that the present embodiment specific embodiment provides is for example including voter (vote module), ballot office (ballot management module), PKI (password preserving module), (block generates mould to block generator Block), polled data library (data memory module) and ballot block chain (block chain).
Specifically, voter can vote or recall ballot.Ballot office can inquire ballot quantity, verifying is thrown Ticket authenticity, the encrypted public key for inquiring voter and update polled data.Polled data library is, for example, store votes evidence Distributed data base, by voting, office is responsible for periodically updating.PKI is the distribution for managing and maintaining the encrypted public key of voter Formula database, by voting, office is responsible for initialization data.Block generator is responsible for generating new block.
As shown in Figure 4 b, ballot block chain is by several ballot blocks (block) for being stored with vote information sequentially connected Composition.In general, first ballot block is known as creating generation block, before being voted, from first block generator creation. Ballot block chain is a kind of ballot structure for having robustness, high security and protection privacy based on distributed account book.
Wherein, vote block chain ballot block include voter ID namely identification code, vote information, ballot signature namely Signing messages, polling hours are also known as timestamp and a upper block cryptographic Hash.Wherein, voter ID is a string assigned at random Meaningless character string, by network security channel be transmitted or line under get.Vote information is the electronics for marking the person to be elected Information.Ballot signature is the label for generate after signature operation to the cryptographic Hash of vote information using the decrypted private key of voter Name, for guaranteeing the non repudiation of ballot.Polling hours are the character strings for recording the polling hours.A upper block Hash Value is that the cryptographic Hash of a upper block is calculated using SHA-256 algorithm.It assures that the integrality of a upper block.Once block It generates, the cryptographic Hash of block is calculated, it will not be able to be modified again.
Further, ballot office can be accessed and be owned on ballot block chain by the wound generation block for block chain of voting Ballot block in the vote information that stores, count the data of ballot.Ballot office can also be set by inquiring public base Apply PKI obtain voter encrypted public key, and verifying ballot authenticity and voter whether have permission ballot.Ballot office Room can also update the polled data in polled data library by the vote information of periodic queries block chain.Polled data library Store all polled datas.PKI stores the encrypted public key of all voters.
As illustrated in fig. 4 c, the course of work of the progress electronic voting of electronic voting system is as follows:
(1) each voter gets ID from ballot office by network security channel and the person to be elected's list (is thrown Ticket list).
(2) each voter generates a pair of of decrypted private key and encrypted public key, then voluntarily takes care of decrypted private key, submits and adds Migong key to ballot office.
(3) ballot office stores encrypted public key to PKI.
(4) block generator elects at random in ballot office.
(5) the first block generator elected creates wound generation block, i.e. first ballot block in ballot block chain.
(6) voter generates corresponding cryptographic Hash H=according to vote information, identification code and polling hours using SHA-256 ID+Vote+TimeStamp。
Wherein, the specific mistake of corresponding cryptographic Hash is generated according to vote information, identification code and polling hours using SHA-256 Journey is as follows:
(a) m is the binary representation of vote information.
(b) length of the m indicated using 100...000 and 64 bits fills m, i.e. m '=pad (m).
(c) m is divided into the block of 512 bits, i.e. M(1),M(2),...,M(N)
(d) 64 constants are used, and are identified as W0,W1,...,W63
(e) 8 variables are used, i.e. A=0x6A09E667, B=0xBB67AE85, C=0x3C6EF372, D= 0xA54FF53A, E=0x510E527F, F=0x9B05688C, G=0x1F83D9AB, H=0x5BE0CD19.
(f) calculated result in each block based on a upper block calculates 64 wheel interative computations.
(g) last blocks of calculated result is cryptographic Hash.
(7) voter carries out signature operation to the cryptographic Hash that previous step obtains using decrypted private key and generates signature S.
Wherein, signature is realized based on elliptic curve cipher (ECC), for guaranteeing the authenticity of ballot.Decrypted private key It is the character string d that voter generates at random in [1, n-1]A, encrypted public key is the character that voter generates according to decrypted private key String QA=dA×G.× it is elliptic curve point multiplication.G indicates elliptic curve basic point,nIndicate Prime Orders, LnIndicate n-bit length.
Voter carries out the specific mistake that signature operation generates signature S to the cryptographic Hash that previous step obtains using decrypted private key Journey is as follows:
(a) v '=HASH (v) is calculated, HASH is the hash function using SHA-256.
(b) enabling z is LnMost left bit series v '.
(c) a random integers k is selected from [1, n-1].
(d) elliptic curve point (x is calculated1,y1)=k × G.
(e) r=x is calculated1Mod n is returned (c) if r==0.
(f) s=k is calculated-1(v′+rdA) mod n, if s==0, return (c).
(g) signature for the cryptographic Hash voted is (r, s).
(8) signature that voter obtains identification code, vote information, polling hours and previous step, i.e. ID, Vote, TimeStamp, S are sent to ballot office.
(9) ballot office obtains the encrypted public key of voter.
(10) ballot office generates corresponding Hash according to identification code, vote information and polling hours using SHA-256 Value H, wherein H=ID+Vote+TimeStamp.
(11) ballot office uses the signature of encrypted public key verification step (8), and obtains H '.
(12) ballot office compares H and H ', and whether inquiry and verifying voter have permission ballot.
(13) after being proved to be successful, block generator generates one according to identification code, vote information, polling hours and signing messages A new block, and it is embedded in a upper block cryptographic Hash in new block tail portion, block chain then is added in new block.
Wherein, ballot is the process that voter carries out selection according to the person to be elected's list, usually disclose with it is non-encrypted Form.
Certainly, in the present embodiment, voter can recall ballot, i.e. voter can recall ballot within deadline, The process recalled is similar with the process of ballot, for sake of simplicity, no longer repeating herein.
In conclusion electronic voting system provided in this embodiment, is the electronic voting system realized based on block chain, energy Enough carry out open electronic voting, based on block chain realize ballot anonymity, can not tamper and non-repudiation, Ke Yizhi Large-scale electronic voting is held, and security level is high.
[second embodiment]
Referring to the flow diagram of Fig. 5, second embodiment of the invention electronic voting method provided.As shown in figure 5, electronics Voting method is for example including step S31 to step S34.
Step S31: ballot step is initiated;
Wherein, as shown in fig. 6, step S31 is for example including step S311 to S314.
Step S311: the vote module obtains the identification code sent by the ballot management module and ballot list;
Step S312: the vote module generates decrypted private key, and corresponding add is calculated according to the decrypted private key Migong key;
Step S313: the vote module retains the decrypted private key, and the encrypted public key is sent to the ballot Management module is stored the encrypted public key to password preserving module by the ballot management module;
Step S314: the vote module is voted to obtain vote information and polling hours according to the ballot list;
Step S32: ballot signature step;
Wherein, as shown in fig. 7, step S32 is for example including step S321 to step S323.
Step S321: the vote module is calculated according to the identification code, the polling hours and the vote information To the first cryptographic Hash;
Step S322: the vote module signs to first cryptographic Hash using the decrypted private key Information;
Step S323: the vote module is by the identification code, the vote information, the polling hours and the signature Information is sent to the ballot management module;
Step S33: ballot verification step;
Wherein, as shown in figure 8, step S33 is for example including step S331 to step S334.
Step S331: the ballot management module obtains the encrypted public key, Yi Jigen from the password preserving module The signing messages, which is verified, according to the encrypted public key is verified rear signing messages;
Step S332: the ballot management module is counted according to the identification code, the vote information and the polling hours Calculation obtains the second cryptographic Hash;
Step S333: the ballot management module compares signing messages and second cryptographic Hash after the verifying;
Step S334: after signing messages is identical with second cryptographic Hash after comparing the verifying, by the identification code, The vote information, the polling hours and the signing messages are sent to the block generation module;
Step S34: ballot saves step;
Wherein, as shown in figure 9, step S34 is for example including step S341.
Step S341: the block generation module is according to the identification code, the vote information, the polling hours and institute Signing messages generation new block is stated to be added in block chain.
Wherein, the identification code mentioned is the unique identification for being associated with vote module, is transmitted by network security channel.It mentions Decrypted private key be the character string generated at random in non-zero natural number, the encrypted public key mentioned is for example based on message authentication mode It is calculated according to decrypted private key.The ballot list mentioned is the list comprising multiple the person to be electeds.The password mentioned saves Module is, for example, a kind of database, and for example, (Public Key Infrastructure, underlying public key are set for example, PKI Apply), PKI is the distributed data base for managing and maintaining the encrypted public key of voter.The cryptographic Hash mentioned is, for example, to use SHA- What 256 algorithms were calculated.The new block mentioned for example, the identification code, the vote information, the signing messages, Upper block cryptographic Hash in the polling hours and the block chain.
Further, step S322 for example, based on Elliptic Curve Cryptography using the decrypted private key to described the One cryptographic Hash is signed to obtain the signing messages.
It should be noted that electronic voting method provided in this embodiment is the electronic voting that aforementioned first embodiment provides The electronic voting course of work that system is realized, modules being related to for the present embodiment etc., which are specifically introduced, can refer to first in fact Example is applied, for sake of simplicity, details are not described herein.
In conclusion electronic voting method provided in this embodiment, is able to carry out open electronic voting, it is real based on block chain Showed ballot anonymity, can not tamper and non-repudiation, can support large-scale electronic voting, and security level It is high.
Finally, it should be noted that the above embodiments are merely illustrative of the technical solutions of the present invention, rather than its limitations;Although Present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that: it still may be used To modify the technical solutions described in the foregoing embodiments or equivalent replacement of some of the technical features; And these are modified or replaceed, technical solution of various embodiments of the present invention that it does not separate the essence of the corresponding technical solution spirit and Range.

Claims (10)

1. a kind of electronic voting method is suitable for application in comprising vote module, ballot management module, password preserving module and block In the electronic voting system of generation module characterized by comprising
Initiate ballot step:
The vote module obtains the identification code sent by the ballot management module and ballot list;
The vote module generates decrypted private key, and corresponding encrypted public key is calculated according to the decrypted private key;
The vote module retains the decrypted private key, and the encrypted public key is sent to the ballot management module, by institute Ballot management module is stated by encrypted public key storage to password preserving module;
The vote module is voted to obtain vote information and polling hours according to the ballot list;
Ballot signature step:
The first cryptographic Hash is calculated according to the identification code, the polling hours and the vote information in the vote module;
The vote module is signed to obtain signing messages using the decrypted private key to first cryptographic Hash;
The identification code, the vote information, the polling hours and the signing messages are sent to institute by the vote module State ballot management module;
Ballot verification step:
The ballot management module obtains the encrypted public key from the password preserving module, and according to the encrypted public key It verifies the signing messages and is verified rear signing messages;
The second Hash is calculated according to the identification code, the vote information and the polling hours in the ballot management module Value;
The ballot management module compares signing messages and second cryptographic Hash after the verifying;
After signing messages is identical with second cryptographic Hash after comparing the verifying, by the identification code, the vote information, The polling hours and the signing messages are sent to the block generation module;
Ballot saves step:
The block generation module is raw according to the identification code, the vote information, the polling hours and the signing messages It is added in block chain at new block.
2. electronic voting method according to claim 1, which is characterized in that the identification code is to be associated with the vote module Unique identification.
3. electronic voting method according to claim 1, which is characterized in that the decrypted private key is in non-zero natural number The character string generated at random.
4. electronic voting method according to claim 1, which is characterized in that it is described using the decrypted private key to described the One cryptographic Hash is signed to obtain signing messages to include: using the decrypted private key based on Elliptic Curve Cryptography to described first Cryptographic Hash is signed to obtain the signing messages.
5. electronic voting method according to claim 1, which is characterized in that the new block includes: the identification code, institute State vote information, the signing messages, upper block cryptographic Hash in the polling hours and the block chain.
6. a kind of electronic voting system characterized by comprising ballot management module and be separately connected the ballot and manage mould Vote module, password preserving module and the block generation module of block;
Wherein, the vote module is used for: obtaining the identification code sent by the ballot management module and ballot list;Generate solution Close private key, and corresponding encrypted public key is calculated according to the decrypted private key;Retain the decrypted private key, and described will add Migong key is sent to the ballot management module, is stored the encrypted public key to password by the ballot management module and saves mould Block;It is voted to obtain vote information and polling hours according to the ballot list;According to the identification code, the polling hours The first cryptographic Hash is calculated with the vote information;First cryptographic Hash is signed to obtain using the decrypted private key Signing messages;The identification code, the vote information, the polling hours and the signing messages are sent to the ballot pipe Manage module;
The ballot management module is used for: receiving the identification code sent by the vote module the, vote information, described Polling hours and the signing messages;The encrypted public key is obtained from the password preserving module, and public according to the encryption Key verifies the signing messages and is verified rear signing messages;When according to the identification code, the vote information and the ballot Between the second cryptographic Hash is calculated;Compare signing messages and second cryptographic Hash after the verifying;After comparing the verifying After signing messages is identical with second cryptographic Hash, by the identification code, the vote information, the polling hours and the label Name information is sent to the block generation module;
The block generation module is used for according to the identification code, the vote information, the polling hours and the A.L.S. Breath generates new block and is added in block chain.
7. electronic voting system according to claim 6, which is characterized in that further include:
Data memory module is connected to the ballot management module;
Wherein, the ballot management module is also used to periodically access and count the ballot letter of all blocks in the block chain Breath is stored the polled data into the data memory module with obtaining polled data.
8. electronic voting system according to claim 6, which is characterized in that the new block includes: the identification code, institute State vote information, the signing messages, upper block cryptographic Hash in the polling hours and the block chain.
9. electronic voting system according to claim 6, which is characterized in that the vote module is also used to end in ballot The vote information is recalled in time.
10. electronic voting system according to claim 7, which is characterized in that the identification code is to be associated with the ballot mould The unique identification of block;The decrypted private key is the character string generated at random in non-zero natural number;The password preserving module is First distributed data base;The data memory module is the second distributed data base.
CN201910241739.4A 2019-03-28 2019-03-28 Electronic voting method and system Active CN109903450B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910241739.4A CN109903450B (en) 2019-03-28 2019-03-28 Electronic voting method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910241739.4A CN109903450B (en) 2019-03-28 2019-03-28 Electronic voting method and system

Publications (2)

Publication Number Publication Date
CN109903450A true CN109903450A (en) 2019-06-18
CN109903450B CN109903450B (en) 2021-04-09

Family

ID=66952606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910241739.4A Active CN109903450B (en) 2019-03-28 2019-03-28 Electronic voting method and system

Country Status (1)

Country Link
CN (1) CN109903450B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309672A (en) * 2019-07-01 2019-10-08 北京理工大学 A kind of controlled data management method of the secret protection based on block chain
CN110473332A (en) * 2019-08-23 2019-11-19 上海理工大学 It is a kind of based on the facial expression of recognition of face and block chain technology vote assessment system
CN110474779A (en) * 2019-08-09 2019-11-19 深圳前海微众银行股份有限公司 Card method, apparatus, equipment and readable storage medium storing program for executing are deposited in ballot based on block chain
CN111800325A (en) * 2020-07-30 2020-10-20 北京共识数信科技有限公司 Anonymous voting method of annular structure with separated server and encryption machine
CN114629660A (en) * 2022-04-21 2022-06-14 南方电网科学研究院有限责任公司 Anonymous credible voting method and device based on block chain and related equipment

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411503A (en) * 2016-11-28 2017-02-15 中国银行股份有限公司 Accounting method, accounting system, voting node and accounting node under block chain voting and accounting mode
US20170109955A1 (en) * 2015-10-20 2017-04-20 Follow My Vote, Inc. Blockchain electronic voting system and method
US20170149819A1 (en) * 2015-11-25 2017-05-25 International Business Machines Corporation Resisting replay attacks efficiently in a permissioned and privacy- preserving blockchain network
CN107294727A (en) * 2017-05-22 2017-10-24 联动优势科技有限公司 A kind of electronic voting method, terminal device and block chain network
CN108109257A (en) * 2018-01-05 2018-06-01 杭州电子科技大学 A kind of Anonymous Electronic Voting method based on block chain
CN108259489A (en) * 2018-01-11 2018-07-06 武汉斗鱼网络科技有限公司 A kind of voting data processing method, device and electronic equipment
CN108597090A (en) * 2018-04-20 2018-09-28 济南浪潮高新科技投资发展有限公司 A kind of voting method based on block chain, apparatus and system
CN108833082A (en) * 2018-06-25 2018-11-16 东北大学秦皇岛分校 A kind of secret protection ballot system based on block chain decentralization
CN108922007A (en) * 2018-05-02 2018-11-30 深圳圣马歌科技有限公司 Electronic voting method, system and computer program product based on block chain
CN108933656A (en) * 2018-07-18 2018-12-04 京东方科技集团股份有限公司 Online works voting method and device, computer equipment, readable storage medium storing program for executing
US20190020471A1 (en) * 2016-12-23 2019-01-17 Joseph Santilli Methods and systems for crowdsourcing an outcome to an issue
CN109286497A (en) * 2018-09-06 2019-01-29 贵阳信息技术研究院(中科院软件所贵阳分部) A method of secret ballot and many condition count of votes based on block chain

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170109955A1 (en) * 2015-10-20 2017-04-20 Follow My Vote, Inc. Blockchain electronic voting system and method
US20170149819A1 (en) * 2015-11-25 2017-05-25 International Business Machines Corporation Resisting replay attacks efficiently in a permissioned and privacy- preserving blockchain network
CN106411503A (en) * 2016-11-28 2017-02-15 中国银行股份有限公司 Accounting method, accounting system, voting node and accounting node under block chain voting and accounting mode
US20190020471A1 (en) * 2016-12-23 2019-01-17 Joseph Santilli Methods and systems for crowdsourcing an outcome to an issue
CN107294727A (en) * 2017-05-22 2017-10-24 联动优势科技有限公司 A kind of electronic voting method, terminal device and block chain network
CN108109257A (en) * 2018-01-05 2018-06-01 杭州电子科技大学 A kind of Anonymous Electronic Voting method based on block chain
CN108259489A (en) * 2018-01-11 2018-07-06 武汉斗鱼网络科技有限公司 A kind of voting data processing method, device and electronic equipment
CN108597090A (en) * 2018-04-20 2018-09-28 济南浪潮高新科技投资发展有限公司 A kind of voting method based on block chain, apparatus and system
CN108922007A (en) * 2018-05-02 2018-11-30 深圳圣马歌科技有限公司 Electronic voting method, system and computer program product based on block chain
CN108833082A (en) * 2018-06-25 2018-11-16 东北大学秦皇岛分校 A kind of secret protection ballot system based on block chain decentralization
CN108933656A (en) * 2018-07-18 2018-12-04 京东方科技集团股份有限公司 Online works voting method and device, computer equipment, readable storage medium storing program for executing
CN109286497A (en) * 2018-09-06 2019-01-29 贵阳信息技术研究院(中科院软件所贵阳分部) A method of secret ballot and many condition count of votes based on block chain

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘杰良: "基于区块链技术的投票***的设计与实现", 《中国优秀硕士学位论文全文数据库》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110309672A (en) * 2019-07-01 2019-10-08 北京理工大学 A kind of controlled data management method of the secret protection based on block chain
CN110309672B (en) * 2019-07-01 2020-12-22 北京理工大学 Block chain based privacy protection controllable data management method
CN110474779A (en) * 2019-08-09 2019-11-19 深圳前海微众银行股份有限公司 Card method, apparatus, equipment and readable storage medium storing program for executing are deposited in ballot based on block chain
CN110473332A (en) * 2019-08-23 2019-11-19 上海理工大学 It is a kind of based on the facial expression of recognition of face and block chain technology vote assessment system
CN111800325A (en) * 2020-07-30 2020-10-20 北京共识数信科技有限公司 Anonymous voting method of annular structure with separated server and encryption machine
CN114629660A (en) * 2022-04-21 2022-06-14 南方电网科学研究院有限责任公司 Anonymous credible voting method and device based on block chain and related equipment
CN114629660B (en) * 2022-04-21 2024-03-08 南方电网科学研究院有限责任公司 Anonymous trusted voting method, device and related equipment based on blockchain

Also Published As

Publication number Publication date
CN109903450B (en) 2021-04-09

Similar Documents

Publication Publication Date Title
CN109903450A (en) Electronic voting method and system
CN111914027B (en) Block chain transaction keyword searchable encryption method and system
CN102170356B (en) Authentication system realizing method supporting exclusive control of digital signature key
CN102164367B (en) Key management method used for wireless sensor network
CN108009445B (en) Semi-centralized trusted data management system
JP4699368B2 (en) Method and apparatus for efficiently revoking certificates
CN107122682A (en) The data processing method and system stored based on block chain
CN101425902A (en) Threshold digital signature method and system having forward security
CN110097367A (en) Electronic contract signature method, apparatus, equipment and storage medium based on block chain
CN108717666A (en) Personalized vehicle insurance computational methods, system and terminal based on block chain
CN103903325A (en) Safe electronic voting system based on identity signature
CN107743065A (en) Battery uses verification method, battery system and automobile
CN110060403A (en) The more ticket electronic voting methods of a people and system based on block chain
CN114329621A (en) Block chain cross-chain interactive data integrity verification method
WO2021102443A1 (en) Multi-party and multi-use quantum resistant signatures and key establishment
CN116108410A (en) Identity credential generation method and device
CN113761597B (en) Contract signing method based on verifiable certificate VC and blockchain signature
CN111612457A (en) Electronic voting method, device and storage medium based on block chain
CN108733783A (en) A kind of student status information management system based on privately owned block chain
WO2001020562A2 (en) Multiway election method and apparatus
CN1820449B (en) Method for encoded data transmission via a communication network
Lu et al. Self-tallying e-voting with public traceability based on blockchain
CN109598108A (en) Program product marketing method, block chain node, storage medium and block catenary system
CN114677794B (en) Electronic voting method based on block chain
CN112702159B (en) Online expert scoring method and system based on block chain

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