CN112789823B - Block chain-based competitive election network system and competitive election method - Google Patents

Block chain-based competitive election network system and competitive election method Download PDF

Info

Publication number
CN112789823B
CN112789823B CN201980041782.4A CN201980041782A CN112789823B CN 112789823 B CN112789823 B CN 112789823B CN 201980041782 A CN201980041782 A CN 201980041782A CN 112789823 B CN112789823 B CN 112789823B
Authority
CN
China
Prior art keywords
node
candidate
voting
public key
transaction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201980041782.4A
Other languages
Chinese (zh)
Other versions
CN112789823A (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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Publication of CN112789823A publication Critical patent/CN112789823A/en
Application granted granted Critical
Publication of CN112789823B publication Critical patent/CN112789823B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2230/00Voting or election arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Abstract

The invention discloses an election method of an election network system based on a block chain. The election method of the block chain-based election network system according to the embodiment comprises the following steps: step (A), the superior node of the superior meeting sponsor as the meeting to be sponsored forms a alliance by requesting meeting generation from a platform manager; step (B), the superior node or the subordinate node of the subordinate party sponsor generates a private key public key pair of the candidate of the party and registers the party candidate; step (C), the manager node only generates a private key public key pair by the authenticated user, and registers the optional person of the participant by adding an account number to the network; step (D), the voter node registered as the voter generates a voting transaction through the public key of the candidate; and step (E), the verifier node generates a query transaction, confirms the detailed information of the transaction generated from the election account to the candidate account through the generated query transaction, and calculates a voting result.

Description

Block chain-based competitive election network system and competitive election method
Technical Field
The present invention relates to an election network system and an election method based on a blockchain, and more particularly, to an election network system and a voting result calculation method in which an election sponsor can register candidates, only a network member can inquire a voting detail recorded in a blockchain, and a plurality of votes can be performed in a single platform.
Background
Unless otherwise indicated herein, what is described herein is not prior art to the extent that it pertains to the scope of the claimed invention and, even though it is in this section, is not admitted to be prior art.
The blockchain is a scattered account book technology, a central centralized mechanism is not needed, and system participants can record, verify and store transaction information together to ensure the reliability of the transaction information. Blockchains are governed by protocols for peer-to-peer networks between participants to collectively authenticate new blocks, so if someone wants to manipulate a transaction record, all blocks connected between participants need to be manipulated before the new block is generated.
That is, many blocks in the blockchain need to be manipulated within a specified time, but this is practically impossible, and therefore, blockchain technology has high transaction security.
In addition, the blockchain can solve the dual payment problems of fraud and the like by only realizing the transaction of a new unit value, and the transaction cost can be greatly reduced because the mediation can be realized without an intermediation mechanism. Blockchains have unlimited creative potential in a number of fields such as user authentication, smart contracts, securities distribution and transactions, overseas money transfers, trade financing, real estate registration, authentication of luxury goods, digital identification number management, electronic voting, personal health record management, and the like.
With the development of wireless communication technologies such as networks, electronic voting, which replaces the conventional paper voting method, is being studied. The electronic voting has an effect that the voting is performed by using a node capable of communication as an electronic voting using a network, and thus is not limited in time and space. Despite this advantage, many problems are found in existing electronic voting schemes. As a specific example, if a node is maliciously occupied by a hacker or the like, a data packet containing voting contents may be manipulated or damaged, and information about which persons cast a vote to which candidates may be revealed by reversely tracking the target node that exercises the electronic vote.
The electronic voting is a four-major principle that the election cannot be guaranteed due to the problem, and the current technology has limitation in the introduction of the electronic voting technology. Therefore, there is a need to develop a technique capable of ensuring reliability of voting process and results in an electronic voting process, but patent techniques related to existing electronic voting focus on protecting personal information of a voter, preventing fraud in the voting process, and there is no sponsor-related technique of registering candidates and managing votes.
Disclosure of Invention
Technical problem
The invention provides a block chain-based election network system and an election method, wherein an authenticated party sponsor can register candidates, only network members can inquire voting details recorded in a block chain, a plurality of participant related votes can be carried out in a single platform, and voting results of legal participants can be automatically calculated. In addition, the general ledger data can be generated to prove the voting detail in the condition that the fraud dispute is generated for the voting, so that the notarization and the reliability of the voting can be improved.
Technical proposal
The election method of the block chain-based election network system according to the embodiment comprises the following steps: step (A), the superior node of the superior meeting sponsor as the meeting to be sponsored forms a alliance by requesting meeting generation from a platform manager; step (B), the upper node or the lower node serving as the host of the lower party generates a private key public key pair of the candidate of the party and registers the party candidate; step (C), the manager node only generates a private key public key pair by the authenticated user, and registers the optional person of the participant by adding an account number to the network; step (D), the voter node registered as the voter generates a voting transaction through the public key of the candidate; and step (E), the verifier node generates a query transaction, confirms the detailed information of the transaction generated from the election account to the candidate account through the generated query transaction, and calculates a voting result.
A blockchain-based election network system according to another embodiment includes: the upper node forms a alliance by requesting a system manager for a meeting generation; a party sponsor node for generating a private key public key pair of a party candidate and registering the party candidate; the manager node only generates a private key public key pair by the authenticated user, and registers the optional person of the participant by adding an account number to the network; the voter node generates a voting transaction through the public key of the candidate; and a verifier node generating a query transaction, confirming detailed information of a transaction generated from the voter account to the candidate account by the generated query transaction, and calculating a voting result.
ADVANTAGEOUS EFFECTS OF INVENTION
The block chain-based election network system and the election method have the effect that the reliability of electronic voting is improved by recording voting details in the block chain, and meanwhile, only participants allowed by representative nodes (manager nodes) can generate transactions on the network, so that privacy can be ensured and the safety of voting process and results can be improved.
In addition, because a plurality of meetings are organized on a single platform, users who want to participate in voting can be easily gathered on the meeting sponsor standpoint, so that the method is beneficial to propaganda and popularization of the meetings.
And, when a winner of a regional meeting enters a positive choice meeting or a domestic meeting winner enters an international meeting, an upper meeting sponsor needs to select and manage a lower meeting sponsor, in an embodiment, a private key of a lower authority may be generated by adding a private key of the upper authority and a serial number (alliance identification number) of the lower authority and using a hash function, and the private key generates a public key through an Elliptic Curve Digital Signature Algorithm (ECDSA), whereby the upper meeting sponsor may manage a plurality of lower meetings.
In addition, since the voting details of the participants are stored in the blockchain, manipulation or hacking intrusion can be prevented, and reliability and security of the meeting can be improved.
The effects of the present invention are not limited to the above-described effects, and it is to be understood that all effects derivable from the detailed description of the present invention or the structure of the invention described in the scope of the invention claimed below are included.
Drawings
FIG. 1a is a diagram illustrating a node structure of a blockchain-based election network system of an embodiment.
FIG. 1b is a diagram illustrating a meeting platform generated by the system of an embodiment.
Fig. 2 is a diagram showing data processing blocks of manager nodes and upper nodes of the embodiment.
Fig. 3 is a diagram showing a data processing structure of a verifier node of the embodiment.
Fig. 4 is a diagram showing a party generation flow for explaining an embodiment.
Fig. 5 is a diagram showing the structure of the blockchain-based election network system of the embodiment.
FIG. 6 is a signal flow diagram illustrating an exemplary blockchain-based election network system.
Fig. 7 is a diagram illustrating a general ledger data structure generated by the blockchain-based election network system of an embodiment.
Detailed Description
The competitive election method of the competitive election network system based on the block chain comprises the following steps: step (A), the superior node of the superior meeting sponsor as the meeting to be sponsored forms a alliance by requesting meeting generation from a platform manager; step (B), the upper node or the lower node serving as the host of the lower party generates a private key public key pair of the candidate of the party and registers the party candidate; step (C), the manager node only generates a private key public key pair by the authenticated user, and registers the optional person of the participant by adding an account number to the network; step (D), the voter node registered as the voter generates a voting transaction through the public key of the candidate; and step (E), the verifier node generates a query transaction, confirms the detailed information of the transaction generated from the election account to the candidate account through the generated query transaction, and calculates a voting result.
The advantages, features and methods of accomplishing the same may be understood by reference to the accompanying drawings and the detailed description of various embodiments. However, the present invention is not limited to the examples disclosed below, and the present invention may be implemented by various embodiments, which are only for complete disclosure of the present invention, so that those skilled in the art to which the present invention pertains will fully understand the scope of the present invention, which is defined only by the scope of the claims of the present invention. Throughout this specification, like reference numerals refer to like elements.
In describing the embodiments of the present invention, when it is determined that a detailed description about a well-known function or structure is likely to unnecessarily obscure the gist of the present invention, a detailed description thereof will be omitted. Also, terms in the following are terms defined in consideration of functions of the embodiments of the present invention, and may become different according to intention or convention of a user, an operator, or the like. Therefore, it should be defined based on the content of the present specification.
FIG. 1a is a diagram illustrating a node structure of a blockchain-based election network system of an embodiment.
Referring to fig. 1a, a blockchain-based election network system of an embodiment may include an administrator node 100, a verifier node 101, an upper level node 200, lower level nodes 301, 302, and an election person node 401.
The manager node 100 constitutes a requested meeting federation by receiving a meeting generation request from a higher node 200 that is to hold a meeting, as a terminal or server of a platform (system) manager constituting the federation. After the federation is formed, the superordinate node 200, which is the sponsor of each meeting, registers the meeting candidate. In an embodiment, the upper node 200 may register the candidate by generating a public key pair (pair) of the private key of the candidate participating in the meeting. In an embodiment, the meeting candidate may be registered by a superior node or a subordinate node that is a meeting sponsor node.
The upper node 200, which is an upper party sponsor, generates a party sponsor request message and transmits it to the manager node 100, and then generates a private key of a lower node through a hash function by combining the private key of the party with a serial number (e.g., a federation identification number) of the lower node. In an embodiment, the public key is generated by applying an elliptic curve digital signature algorithm (ECDSA, elliptic Curve Digital Signature Algorithm) to the private key. Elliptic Curve Digital Signature Algorithm (ECDSA) is used as a digital signature algorithm using Elliptic Curve Cryptography (ECC) as a Digital Signature Algorithm (DSA). As an encryption scheme having a 160-bit key, a scheme having security equivalent to a 1024-bit asymmetric key (RSA) scheme and capable of reducing a processing speed is suitable for a mobile terminal.
In an embodiment, the private key of the lower authority is generated by combining the private key of the upper authority and the serial number (for example, the alliance identification number) of the lower authority and through the hash function encryption process, so that the upper node serving as the host of the upper party can manage a plurality of lower nodes.
Further, since the voting details are stored in the blockchain, manipulation or hacking can be prevented, and reliability of the meeting can be improved.
To add candidates of a participating party, the lower nodes 301 and 302 calculate the candidate voting address as a public key of the candidate in the form of an output value by adding the key of the corresponding party sponsor as a non-public key and the candidate serial number, then calculating the private key by using a hash function, and inputting the calculated private key to an elliptic curve digital signature algorithm.
And, when the participant who is the voter to participate in the voting normally completes the client investigation (KYC, know Your Customer) step of mobile phone authentication, account real name authentication, etc., the manager node 100 issues the public key by adding the password directly registered by the participant and the voter serial number and generating the private key through a hash function, and then inputting to the elliptic curve digital signature algorithm.
The voting participant that receives the private key and the public key that encrypts the private key, i.e., the voter node 401, may participate in the vote by generating a transaction encrypted with its own private key as the public key address of the meeting candidate.
The verifier node 101 verifies whether the generated transaction belongs to the normal participant who has undergone the authentication step by decoding the transaction generated from the voting voter node by the public key of the voting participant. Also, in an embodiment, the verifier node 101 verifies whether each voter node exceeds the voteable number of times.
In an embodiment, the voting details verified by the verifier node 101 are again encrypted by the public key of the voting participants and recorded in blocks. The voting details recorded in the block can only be decoded by the private key of the voting participant, so that only the person who performs the voting can query the voting details.
In the embodiment, the verifier node 101 records, in each block, details of encryption by the public key of the candidate and details of encryption by the public key of the subordinate party sponsor. In this case, the candidate may decode the recorded details encrypted by the candidate's public key with the principal's private key. And, because the private key of the lower party can be known to the upper party sponsor, the detail encrypted by the public key of the lower party sponsor can be decoded by both the lower party sponsor and the upper party sponsor.
As described in the embodiments, transactions generated from the election nodes, respectively, may be encrypted and recorded in the blockchain, so that an upper node, which is an upper party sponsor, may query all transactions of a plurality of lower nodes, which are lower party sponsors, and conversely, the lower party sponsor may disable transaction queries related to the upper party and other lower parties. In an embodiment, when the voting of the next-level party is finished, the node also adds the private key of the node and the serial number of the candidate to calculate the private key and generates the public key of the candidate through an elliptic curve digital signature algorithm.
Thereafter, the manner of voting and recording in blocks is the same as the procedure described previously.
Although fig. 1 illustrates an embodiment using a node structure in a vertical structure (Hierarchical) manner, the election network system based on a blockchain of the embodiment may form not only a node system in a vertical structure manner, but also a node system in various structures such as a Bus (Bus), a Ring (Ring), a star (star), an Extended star (Extended star), and a Mesh (Mesh) manner.
FIG. 1b is a diagram illustrating a meeting platform generated by the system of an embodiment.
The blockchain-based election network system of the embodiments may host multiple meetings simultaneously. Referring to fig. 1b, the meeting platform of the embodiment shares all the gatherers, the general ledger blocks for sponsors, the general ledger blocks for candidates and the general ledger blocks for the gatherers through the first meeting network and the second meeting network, and is connected with the meeting sponsor nodes belonging to the corresponding meeting. The first meeting network is connected with a first upper-level mechanism node, a selector and a general ledger block shared by the whole meeting network, and the first upper-level mechanism node is connected with a candidate pool, a first lower-level mechanism node and a second lower-level mechanism node. The first subordinate mechanism node and the second subordinate mechanism node are respectively connected with the candidate pool. The second party network is connected with the election person, the general ledger block and the upper node (upper mechanism) shared by the whole network, and the upper node can be connected with the lower node (lower mechanism).
Fig. 2 is a diagram showing data processing blocks of manager nodes and upper nodes of the embodiment.
The manager node, the upper node, and the lower node of an embodiment may include a key generation module 110, an encryption module 130, and a candidate registration module 150. The term "module" as used in this specification may include software, hardware, or a combination thereof, depending on the context in which the term is used. For example, the software may be a mechanical language, firmware (firmware), embedded code (embedded code), and application software. As another example, the hardware may be circuitry, a processor, a computer, an integrated circuit die, a sensor, a microelectromechanical system (MEMS), a manual device, or a combination thereof.
The key generation module 110 evaluates the meeting fitness by generating a message through the meeting received by the manager node, and issues a private key to the senior meeting sponsor if the sponsor is approved according to the evaluation result. In the embodiment, the suitability of the large party can be evaluated by whether or not the input information included in the large party generation request message is present or not and whether or not the large party generation is determined, authentication of the manager, and the like. In an embodiment, the generated private key may be a key generated using a date, time, name, detailed information of a superordinate node, and the like.
The encryption module 130 generates a public key using Elliptic Curve Digital Signature Algorithm (ECDSA) on a private key issued by the hash function. For example, after adding the private key of the upper-level meeting and the serial number of the lower-level node such as the alliance identification number, the private key of the lower-level node is generated by a hash function, and the public key is generated by applying an elliptic curve digital signature algorithm to the private key.
When a candidate of a participating party is added to a lower node, the candidate registration module 150 calculates a candidate voting address as a public key of the candidate in an output value manner by calculating a private key using a hash function after adding a key of a corresponding party sponsor as a non-public key and a candidate serial number, and inputting the calculated private key to an elliptic curve digital signature algorithm.
Next, the interviewer node performs a client investigation (KYC, know Your Customer) step of confirming the user identity, and when registering a password by the interviewer of the client investigation, the manager node adds the password and the interviewer serial number and issues a secret key of the interviewer by a hash function, and the issued secret key generates a public key by an elliptic curve digital signature algorithm. The voter node then performs a vote by generating a transaction encrypted with the issued private key via the public key address of the big-candidate.
In an embodiment, a public key generated by implementing an elliptic curve digital signature algorithm on a private key may be used as an address for transceiving transactions when it is disclosed externally.
Fig. 3 is a diagram showing a data processing structure of a verifier node of the embodiment.
Referring to fig. 3, verifier node 101 of an embodiment may include a decode module 1011, a transaction determination module 1013, and a record module 1015.
The decode module 1011 is used to decode transactions encrypted by the voting participant public key.
The transaction determination module 1013 is configured to confirm whether the transaction is generated from a normal election node for which identity has been confirmed. And, the verifier node is operable to verify whether the voteable number of times has been exceeded. In the embodiment, the transaction determination module 1013 calculates the voting result by grasping the final state information of the candidate account, and when the result calculation transaction and the result inquiry transaction are generated from the account to which the manager node has not been added, generates the voting transaction only at the participant terminal for which the verification is completed by prohibiting the access transaction. In an embodiment, the transaction determination module 1013 may verify the transaction by comparing detailed information of the transaction with registered information. For example, it is possible to verify a transaction by grasping the transaction generation time point, the data transmission/reception address, the packet capacity, and the like, and grasping whether or not data is transmitted to the transmission/reception address of a registered node, whether or not the packet capacity is within a predetermined range, and the like.
The logging module 1015 encrypts the verified voting details again with the voting participants' public key and logs in blocks. For example, the recording module 1015 generates and records details of the voting details encrypted by the candidate's public key, details of the public key encryption by the subordinate party sponsor, and details of the public key encryption by the voter.
Fig. 4 is a diagram showing a party generation flow for explaining an embodiment.
The blockchain-based election network system of the embodiments may conduct multiple conferences simultaneously. For example, by employing a sequential encryption hierarchy of issuing federation identification numbers and keys, an upper party sponsor (upper node) can generate and manage a lower party (lower node). Further, since the voting details are stored in the blockchain, manipulation and hacking hazards can be eliminated, and the general ledger for the external authentication mechanism can be separately generated in order to prevent possible disputes in the future.
An embodiment of the generation flow is described in further detail below with reference to fig. 4.
Big meeting generating flow
In the embodiment, first, in order to generate a meeting, when a higher node serving as a host of a higher-level meeting requests the meeting platform to generate a meeting, a platform manager assigns any meeting number that is not repeated after evaluating the suitability of the meeting. The assigned meeting serial number will be disclosed in the form of a federation identity number. Then, the platform manager adds the password and the meeting serial number input by the host party of the upper-level meeting, calculates the private key of the upper-level meeting through a hash function, and generates the public key by implementing an elliptic curve digital signature algorithm on the private key.
The lower-level meeting sponsor requests the meeting generation from the upper-level meeting sponsor on the platform. The upper node serving as the upper party sponsor will assign a non-duplicate lower party serial number after evaluating the suitability of the party. The assigned serial number will be disclosed in the manner of the next-level meeting alliance identity number. In an embodiment, with the value implementing the hash function as the private key, the public address may be generated by implementing an elliptic curve digital signature algorithm on the private key.
Fig. 5 is a diagram showing the structure of the blockchain-based election network system of the embodiment. The data processing flow disclosed in the embodiment is further described in detail below by means of fig. 5.
Candidate registration process
First, when a party sponsor is to register candidates, a 64-bit value is obtained by encrypting the value added by the private key of the corresponding party and the candidate sequence number by the SHA256 hash function algorithm. The encrypted 64-bit value will be known only to the candidate as a key for the candidate. The value obtained by applying elliptic curve digital signature algorithm to the candidate private key will become the public address of the candidate for the transmissible blockchain token.
As shown in fig. 5, if the first superordinate sponsor a is to register a candidate, encryption is performed by adding the private key of the principal and the candidate number and by a hash function.
If the third subordinate sponsor D registers the candidate of the corresponding party, a private key and a candidate serial number are added, a key of the candidate is generated through a hash function, and then an elliptic curve digital signature algorithm is performed on the generated key to become a public address of the candidate.
Voting process
When the entry is completed through the personal authentication (mobile phone, bank account authentication), the voter (voter node) registers a password of 8 digits or more which can inquire the voting details of the user. If the password is registered, the manager node assigns any user serial number. In an embodiment, a user who is a voting candidate for a registered password may obtain a token that can participate in voting in a free or paid manner according to a meeting prescription. The voter may then transmit the token and participate in the vote via the candidate public address assigned in the candidate registration procedure.
Next, a method of voting a big meeting in the block chain-based election network system will be described in order. Essentially, the roles (functions) of the big voting method of the blockchain-based election network system of the embodiment are the same as those on the blockchain-based election network system, and thus, the description repeated with the contents of fig. 1 to 5 will be omitted.
FIG. 6 is a signal flow diagram illustrating an exemplary blockchain-based election network system.
In step S100, the upper node 200, which is an upper-level meeting sponsor to hold the meeting, composes a federation by requesting meeting generation from the platform manager node 100.
If the federation is formed in step S200, the superior node or the subordinate node as the party sponsor generates a private key public key pair of the candidate participating in the party, and the superior party or the subordinate party sponsor registers the party candidate in step S300. For example, if the manager node 100 evaluates suitability of the meeting through the meeting received by the manager node and approves the holding according to the evaluation result in step S200, the superior meeting sponsor will directly register the password, the manager node generates the private key by adding the password and the meeting serial number, and calculates the public key by applying an elliptic curve digital signature algorithm to the private key. When the upper node adds the lower node, as described above, the private key is generated by adding the upper private key and the serial number as the federation identification number, followed by generation of the public key.
In step S300, when the node of the next party sponsor adds the candidate of the party, in order to add the candidate of the party, the key of the corresponding party sponsor as the non-public key and the candidate serial number are added, the private key is calculated by using the hash function, and the calculated private key is input to the elliptic curve digital signature algorithm, so that the candidate voting address of the public key as the candidate is calculated in an output value manner, and the candidate can be registered. In the embodiment, the candidate registration step is described as a step performed in the sponsor node of the meeting, and the step performed by the lower node is illustrated in fig. 6, but the upper node, which is the sponsor of the upper meeting, may perform the candidate registration.
In an embodiment, a public key generated by applying an elliptic curve digital signature algorithm to a private key may be used as an address for transceiving transactions when it is disclosed externally.
If authentication information is transmitted from the election node 401 to the lower node 301 in step S400, the lower node 301 performs an authentication step such as user real name authentication based on the received authentication information in step S500. When authentication for the election node is normally completed, in step S600, the manager node 100 generates a private key public key pair as a secret key of the election, and adds a network account number through step S700. Subsequently, in step S800, the manager node registers the election node as a normal election.
In an embodiment, if the voter node participating in the vote performs a client investigation (KYC, know Your Customer) step for confirming the identity of the user in step S600, the voter node may perform the vote by generating a transaction encrypted with a private key issued to the public key address of the party candidate, issuing a private key of each participant and applying a public key generated by elliptic curve digital signature algorithm to each participant' S private key.
In step S900, a voter node registered as a voter to participate in the vote generates a voting transaction with the candidate' S public key.
In step S1000, the verifier node 101 generates a query transaction, and in step S1010, the verifier node 101 confirms detailed information of a transaction generated from a voter account to a candidate account through the generated query transaction, thereby calculating a voting result. In step S1000, the verifier node may also verify whether the voted number of times has been exceeded.
In an embodiment, if the verifier node 101 decodes the transaction encrypted by the voting party public key to confirm whether the transaction was generated from a normal voter node for which identity was confirmed in step S1010, the verifier node may encrypt again the verified voting details by the voting party public key and record them in a block.
Also, in an embodiment, the step of the verifier node encrypting again the verified voting details by the voting participant public key and recording in the block may include the step of generating at the verifier node a detail encrypted by the public key of the candidate and a detail encrypted by the key of the subordinate party sponsor and recording the generated detail in the block, respectively.
Further, in step S1010, the voting result is calculated by grasping the final state information of the candidate account, and when a result calculation transaction and a result query transaction are generated from the account to which the manager node has not been added, access to the voter node that generated the transaction is prohibited or an abnormal transaction is invalidated.
Fig. 7 is a diagram illustrating a general ledger data structure generated by the blockchain-based election network system of an embodiment.
When a voting transaction is generated from a voter node, the manager node confirms whether the voter node has authority to transmit a token and performs a flow of generating general ledger data for votes having no problem. In an embodiment, the general ledger data is recorded data that increases fairness and accuracy of voting results by recording detailed information of a meeting sponsor, a voting participant, and the like. In an embodiment, general ledger data may be generated in 3 categories, namely, for meeting sponsors, candidate validation, voting participant validation.
The general ledger data generation process for the sponsor of the party, for the confirmation of the candidate, and for the confirmation of the voting participant will be described in further detail below with reference to fig. 7.
General ledger data (a) generation flow as superordinate node or subordinate node of party sponsor
As shown in part (a) of FIG. 7, the general ledger for the sponsor of the meeting may be generated by recording the superior sponsor alliance identification number, the inferior meeting alliance identification number, and the encrypted voting details. The encrypted voting details contained in the general ledger data can only be decoded by the lower party key. The upper node, which is the host of the upper party, can calculate the key of the lower party, and thus can decode all the voting details implemented in the lower party. That is, as shown in FIG. 5, the first superordinate sponsor node A may decode the voting details of all meetings A, B, C, D. Instead, the first lower sponsor B may only decode the details of meeting B and meeting D. While the second lower sponsor C may decode the details of the meeting C, it cannot. In an embodiment, since the federation identification number is recorded in the general ledger data, when the general ledger is queried by the identification number, the voting details of the desired party can be easily filtered and confirmed. In an embodiment, since the general ledger data is recorded in the blockchain, the details of the recording once cannot be forged or changed.
General ledger data (b) generation flow for candidate
In an embodiment, general ledger data for candidates may be generated, whereby candidates participating in a meeting can confirm details of votes to themselves. In an embodiment, the candidate has public addresses and encrypted voting details of the candidate recorded with general ledger data. The encrypted voting details recorded in the general ledger data for the candidate can only be revoked by the secret key of the candidate. Unlike other general ledger data, the candidate is recorded in the server inside the system (platform) by using general ledgers, and is not a blockchain, and when the general ledgers are all finished, the whole details are all uploaded to the blockchain at one time. After the meeting ends, the candidate can decode the details of the vote to the principal by using the principal's key. Since the candidate public address is recorded in the general ledger data for the candidate, the candidate can easily filter the voting details of the candidate.
General ledger data (c) generation flow for voting participants
In an embodiment, general ledger data for voting participants may be generated, whereby voting participants may confirm the details of their votes. The voting participants record the user serial numbers and the encrypted voting details with general ledger data. The encrypted voting details can be decoded by the secret key of the voter, and the secret key can be matched in the platform as long as the secret code input by the user of the system is known, so that the voting details can be confirmed by the matched secret key.
The user serial number is recorded in the general ledger, so that the voting details of the user can be easily filtered.
The block chain-based election network system and the election method have the effect that the reliability of electronic voting is improved by recording voting details in the block chain, and meanwhile, only participants allowed by representative nodes (manager nodes) can generate transactions on the network, so that privacy can be ensured and the safety of voting process and results can be improved. In addition, because a plurality of meetings are organized on a single platform, users who want to participate in voting can be easily gathered on the meeting sponsor standpoint, so that the method is beneficial to propaganda and popularization of the meetings. And, when a winner of a regional meeting enters a positive choice meeting or a domestic meeting winner enters an international meeting, an upper-level meeting sponsor needs to select and manage a lower-level meeting sponsor, in an embodiment, a private key of a lower-level authority may be generated through a step of combining a private key of an upper-level authority and a public key of a lower-level authority and encrypting with a hash function, whereby a plurality of lower-level nodes may be managed as upper-level nodes of the above-mentioned meeting sponsor.
The disclosure is merely illustrative and many modifications may be made by one of ordinary skill in the art without departing from the spirit of the invention as claimed and the scope of the disclosure is not limited to the specific embodiments described above.
Industrial applicability
The election network system and the election method based on the block chain improve the reliability of electronic voting by recording voting details in the block chain, and meanwhile, only participants allowed by representative nodes (manager nodes) can generate transactions on the network, thereby ensuring privacy and improving the safety of voting process and results.

Claims (12)

1. An election method of an election network system based on a block chain for calculating an election voting result of the election network system based on the block chain, comprising the following steps:
step A, an upper node serving as an upper-level party sponsor for a party forms a alliance by requesting party generation from a platform manager;
step B, the upper node or the lower node serving as a host of the lower party generates a private key public key pair of the candidate of the party and registers the party candidate;
step C, the manager node only generates a private key public key pair by the authenticated user, and registers the participant participating in the conference by adding an account number to the network;
step D, the voter node registered as the voter generates a voting transaction through the public key of the candidate; and
step E, the verifier node generates a query transaction, confirms the detailed information of the transaction generated from the election account to the candidate account through the generated query transaction and calculates a voting result,
the step A comprises the following steps:
step A-1, generating a message to evaluate the suitability of the meeting through the meeting received by the manager node, issuing a private key to the upper node when the meeting is approved to hold according to an evaluation result, and generating a public key according to the private key and through an elliptic curve digital signature algorithm; and
step A-2, after adding the private key and the serial number of the upper node, the upper node calculates the private key of the lower node by utilizing a hash function and generates the public key of the lower node by an elliptic curve digital signature algorithm,
the step B comprises the following steps:
when adding the candidate of the reference party, the lower node calculates the private key of the candidate by using a hash function after adding the private key of the lower node and the serial number of the candidate, and generates the public key serving as the voting address of the candidate by using an elliptic curve digital signature algorithm.
2. The method of claim 1, wherein,
step C described above includes step C-1, in which the voter node participating in the vote performs a client investigation step of confirming the identity of the user, and receives the public key by implementing an elliptic curve digital signature algorithm on the private key of each participant,
step D includes step D-1, where the voter node generates a transaction encrypted with the issued private key to the public key address of the party candidate to perform the vote.
3. The method of claim 1, wherein the step E further comprises:
e-1, verifying whether the transaction is generated from the normal voter node with the confirmed identity or not by decoding the transaction encrypted by the public key of the voting participant; and
step E-2, the verifier node encrypts the verified voting details again with the public key of the voting party and records the encrypted voting party's public key in a block.
4. The method of claim 3, wherein in the step E-2, the verifier node generates a list of voting details encrypted by the public key of the candidate and a list of voting details encrypted by the public key of the subordinate party sponsor, respectively, and records the generated list in the block, respectively.
5. The method of claim 3, wherein the step E-1 includes the step of verifying that the verifier node verifies that the voted number is exceeded.
6. The method of claim 1, wherein the public key generated by encrypting the private key by elliptic curve digital signature algorithm is used as an address for a transaction.
7. The method according to claim 1, wherein in the step E, the voting result is calculated by grasping the final state information of the candidate account, and when the result calculation transaction and the result inquiry transaction are generated from the account to which the manager node has not been added, the access to the transaction is prohibited or the voting based on the transaction is invalidated.
8. A blockchain-based election network system, comprising:
the upper node forms a alliance by requesting a system manager for a meeting generation;
a party sponsor node for generating a private key public key pair of a party candidate and registering the party candidate;
the manager node only generates a private key public key pair by the authenticated user, and registers the optional person of the participant by adding an account number to the network;
the voter node generates a voting transaction through the public key of the candidate; and
a verifier node for generating a query transaction, confirming detailed information of a transaction generated from a voter account to a candidate account by the generated query transaction, and calculating a voting result,
the suitability of the meeting is evaluated by the meeting generation message received by the manager node, when the meeting is approved to be held according to the evaluation result, the private key is issued to the upper node, the public key is generated according to the private key and through an elliptic curve digital signature algorithm, the upper node calculates the private key of the lower node by utilizing a hash function after adding the private key of the upper node and the serial number, and generates the public key of the lower node through the elliptic curve digital signature algorithm,
when adding the candidate of the reference party, the lower node calculates the private key of the candidate by using a hash function after adding the private key of the lower node and the serial number of the candidate, and generates the public key serving as the voting address of the candidate by using an elliptic curve digital signature algorithm.
9. The blockchain-based election network system of claim 8, wherein said election node performs a customer investigation step of confirming the identity of the user and receives from the manager node a private key of each participant and a public key generated by applying an elliptic curve digital signature algorithm to said private key, the election node generating a transaction encrypted with said issued private key to a public key address of the party candidate to perform the vote.
10. The blockchain-based election network system of claim 8, wherein said verifier node confirms whether said transaction was generated from a normal voter node for which identity was confirmed by decoding a transaction encrypted using the public key of the voting party, encrypts the verified voting details again by the public key of the voting party, and records the encrypted voting party's public key in a block.
11. The blockchain-based election network system of claim 10, wherein the verifier node generates details of the public key encryption voting details by the candidate and details of the public key encryption by the subordinate party sponsor, respectively, and records the generated details in blocks, respectively.
12. The blockchain-based election network system of claim 10, wherein the voting result is calculated by grasping final state information of the candidate account, and access to the transaction is prohibited or the voting based on the transaction is invalidated when a result calculation transaction and a result query transaction are generated from an account to which the manager node has not been added.
CN201980041782.4A 2019-09-11 2019-10-11 Block chain-based competitive election network system and competitive election method Active CN112789823B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10-2019-0112996 2019-09-11
KR1020190112996A KR102120882B1 (en) 2019-09-11 2019-09-11 Block chain based contest system and method for contesting
PCT/KR2019/013319 WO2021049702A1 (en) 2019-09-11 2019-10-11 Blockchain-based contest network system and contest method

Publications (2)

Publication Number Publication Date
CN112789823A CN112789823A (en) 2021-05-11
CN112789823B true CN112789823B (en) 2023-12-22

Family

ID=71082528

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980041782.4A Active CN112789823B (en) 2019-09-11 2019-10-11 Block chain-based competitive election network system and competitive election method

Country Status (3)

Country Link
KR (1) KR102120882B1 (en)
CN (1) CN112789823B (en)
WO (1) WO2021049702A1 (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114299655B (en) * 2020-09-23 2023-09-05 成都中科信息技术有限公司 Electronic voting system and working method thereof
KR102277389B1 (en) * 2020-10-28 2021-07-14 에스지에이비엘씨 주식회사 Method, apparatus and computer-readable medium of voting management and aggregation that guarantees transparency using blockchain
CN112927414A (en) * 2021-01-29 2021-06-08 福建中科星泰数据科技有限公司 Service public identification system and method based on alliance block chain
WO2023204410A1 (en) * 2022-04-19 2023-10-26 주식회사 블로코 Method for generating user intention information identifier and system for same
KR102479988B1 (en) * 2022-04-19 2022-12-22 주식회사 블로코 Method for generating user decision intention information identifier and system therefor
CN114844891B (en) * 2022-04-21 2024-04-12 浪潮云信息技术股份公司 Block chain consensus method and system based on Raft algorithm
CN114785598A (en) * 2022-04-22 2022-07-22 博智安全科技股份有限公司 Encryption and decryption method, device, equipment and storage medium for player identity
CN115115367B (en) * 2022-08-30 2023-03-31 平安银行股份有限公司 Transaction information query method and device based on block chain and electronic equipment
KR102568098B1 (en) * 2022-12-13 2023-08-17 이민재 A method to prevent tampering of audition votes by transferring blockchain-based tokens

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105592098A (en) * 2016-01-16 2016-05-18 杭州复杂美科技有限公司 Management method of vote and CA certificate of block chain
CN108809624A (en) * 2018-07-18 2018-11-13 杭州安恒信息技术股份有限公司 A kind of electronic voting method, system, equipment and computer readable storage medium
KR20190023894A (en) * 2017-08-30 2019-03-08 세종대학교산학협력단 System and method for electronic voting
WO2019142076A1 (en) * 2018-01-18 2019-07-25 nChain Holdings Limited Computer-implemented decision making system and method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100984275B1 (en) * 2008-08-28 2010-09-30 경희대학교 산학협력단 Method for generating secure key using certificateless public key in insecure communication channel
KR101908677B1 (en) * 2017-09-29 2018-10-16 숭실대학교산학협력단 System and method for managementing electronic vote using blockchain
KR102417067B1 (en) 2017-12-08 2022-07-05 한국전자통신연구원 Method and apparatus for generating blocks in node on a block-chain network
KR102377841B1 (en) 2017-12-11 2022-03-25 한국전자통신연구원 Method and apparatus for performing hierarchically agreement based on service zone

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105592098A (en) * 2016-01-16 2016-05-18 杭州复杂美科技有限公司 Management method of vote and CA certificate of block chain
KR20190023894A (en) * 2017-08-30 2019-03-08 세종대학교산학협력단 System and method for electronic voting
WO2019142076A1 (en) * 2018-01-18 2019-07-25 nChain Holdings Limited Computer-implemented decision making system and method
CN108809624A (en) * 2018-07-18 2018-11-13 杭州安恒信息技术股份有限公司 A kind of electronic voting method, system, equipment and computer readable storage medium

Also Published As

Publication number Publication date
CN112789823A (en) 2021-05-11
KR102120882B1 (en) 2020-06-09
WO2021049702A1 (en) 2021-03-18

Similar Documents

Publication Publication Date Title
CN112789823B (en) Block chain-based competitive election network system and competitive election method
RU2652443C1 (en) Voters votes quantity collected by electronic voting determining system and method
US10367817B2 (en) Systems and methods for challengeless coauthentication
JP7203829B2 (en) Systems and methods for communicating, storing, and processing data provided by entities on a blockchain
JP4603252B2 (en) Security framework and protocol for universal general transactions
KR102171568B1 (en) A voter terminal, an authentication server, a voting server, and Electronic voting system
US9189777B1 (en) Electronic commerce with cryptographic authentication
US7802104B2 (en) Context sensitive dynamic authentication in a cryptographic system
CN112437938A (en) System and method for block chain address and owner verification
CN115758444A (en) Method and system for realizing block chain
KR20180123709A (en) Method and system for recording multiple transactions in a block chain
US20080105742A1 (en) Device and method of electronic voting using mobile terminal
JP6293716B2 (en) Anonymous communication system and method for joining the communication system
CN110414270B (en) Personal data protection system and method based on block chain
CN109791660A (en) Data protection system and method
TW200427284A (en) Personal authentication device and system and method thereof
Pathak et al. Blockchain based e-voting system
US20230259899A1 (en) Method, participant unit, transaction register and payment system for managing transaction data sets
KR20200051135A (en) Method for connecting dapp service with cryptocurrency wallet server and cryptocurrency wallet server therefor
KR20210058784A (en) Method for providing virtual asset service based on dicentralized identity and virtual asset service providing server using them
CN111931230A (en) Data authorization method and device, storage medium and electronic device
Osho et al. Framework for an e-voting system applicable in developing economies
Hölzl et al. Real-world identification: towards a privacy-aware mobile eID for physical and offline verification
US20240013170A1 (en) Method for secure, traceable and privacy-preserving digital currency transfer with anonymity revocation on a distributed ledger
Wang et al. Not yet another digital ID: privacy-preserving humanitarian aid distribution

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