KR102381028B1 - Electronic vote management system and method using block-chain - Google Patents

Electronic vote management system and method using block-chain Download PDF

Info

Publication number
KR102381028B1
KR102381028B1 KR1020210129374A KR20210129374A KR102381028B1 KR 102381028 B1 KR102381028 B1 KR 102381028B1 KR 1020210129374 A KR1020210129374 A KR 1020210129374A KR 20210129374 A KR20210129374 A KR 20210129374A KR 102381028 B1 KR102381028 B1 KR 102381028B1
Authority
KR
South Korea
Prior art keywords
voting
information
server
voter
terminal
Prior art date
Application number
KR1020210129374A
Other languages
Korean (ko)
Inventor
신철우
Original Assignee
신철우
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 신철우 filed Critical 신철우
Priority to KR1020210129374A priority Critical patent/KR102381028B1/en
Application granted granted Critical
Publication of KR102381028B1 publication Critical patent/KR102381028B1/en
Priority to JP2022153286A priority patent/JP7317195B2/en

Links

Images

Classifications

    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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
    • G06Q2220/00Business processing using cryptography
    • G06Q2220/10Usage protection of distributed data files
    • 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
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Human Resources & Organizations (AREA)
  • Educational Administration (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Signal Processing (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Time Recorders, Dirve Recorders, Access Control (AREA)

Abstract

The present invention relates to a system and a method for managing an electronic vote by using a blockchain, capable of enhancing confidentiality and security of the electronic vote. According to the present invention, the system for managing the electronic vote by using the blockchain includes: a plurality of voter terminals; a plurality of voting terminals; a manager terminal; an electronic vote server; a mirroring backup server; a plurality of storage devices; and a blockchain server.

Description

블록체인 이용 전자 투표 관리 시스템 및 방법{Electronic vote management system and method using block-chain}Electronic vote management system and method using block-chain

본 발명의 기술 분야는 블록체인 이용 전자 투표 관리 시스템 및 방법에 관한 것으로, 특히 블록체인(block-chain)을 이용하여 투표 처리하면서 각종 투표 방식들을 전자 투표로 통합적으로 관리 및 운용함과 동시에 미러링 백업(mirroring backup) 동기화를 수행하도록 구현한 블록체인 이용 전자 투표 관리 시스템 및 방법에 관한 것이다.The technical field of the present invention relates to an electronic voting management system and method using block chain, and in particular, while processing voting using a block-chain, integrated management and operation of various voting methods with electronic voting, and mirroring backup at the same time (mirroring backup) It relates to a blockchain-using electronic voting management system and method implemented to perform synchronization.

투표는, 일반적으로 정해진 시간에 정해진 투표 장소를 방문하고, 신분 확인을 거쳐 종이로 된 투표용지에 기표를 하면, 투표용지를 한곳으로 수거하여 집계하는 방식으로 이루어진다. 이러한 투표 방식은 시간 및 공간적 제약이 따를 뿐만 아니라, 투표함이 부정하게 바뀌는 등 신뢰성이 떨어진다는 단점을 가지고 있다. 이에, 정보통신 기술의 발전과 함께, 이러한 투표 방식의 단점을 해결할 수 있는 온라인 전자 투표 시스템에 대한 기술이 개발되고 있다.Voting is generally carried out in a manner that visits a fixed voting place at a fixed time, checks identification, and places a mark on a paper ballot, collects the ballots in one place and counts them. This voting method has disadvantages in that it is not only limited by time and space, but also has low reliability, such as illegally changing the ballot box. Accordingly, with the development of information and communication technology, technology for an online electronic voting system that can solve the disadvantages of such a voting method is being developed.

이러한 온라인 전자 투표 시스템의 경우, 투표 관리자는 서버에 접수된 각 유권자들의 투표 내용을 확인할 수 있으므로, 투표 관리자가 투표 진행 중에 투표의 진행 상황을 파악할 수 있고, 나아가 각 유권자들의 투표 내용을 조작할 수도 있다는 단점을 가지고 있다. 따라서 온라인 전자 투표의 활성화를 위해서는 전자 투표의 비밀성 및 보안성을 강화할 수 있는 기술의 개발이 필요하다.In the case of such an online electronic voting system, the voting manager can check the voting contents of each voter received on the server, so that the voting manager can check the progress of the voting while the voting is in progress, and furthermore, it is possible to manipulate the voting contents of each voter It has the disadvantage of being Therefore, in order to activate online electronic voting, it is necessary to develop a technology that can strengthen the confidentiality and security of electronic voting.

민주주의에서 의사결정의 기반이 되는 투표에서는 공정성과 신뢰성이 매우 중요한 요소이기 때문에, 온라인 전자 투표 시스템 개발에서도 기술적인 보안성과 안정성에 대한 완벽이 요구된다. 이에 따라, 블록체인의 보안성을 활용한 블록체인 기반의 전자 투표 시스템에 대한 관심이 크게 증가하고 있다.Since fairness and reliability are very important factors in voting, which is the basis of decision making in democracy, perfection in technical security and stability is also required in the development of an online electronic voting system. Accordingly, interest in the blockchain-based electronic voting system utilizing the security of the blockchain is increasing significantly.

이러한 블록체인 기반의 전자 투표 시스템은, 유권자의 투표가 이루어진 후, 유권자의 후보자 선택 정보만을 블록체인 네트워크에 저장하기 때문에, 투표 과정 전반에 걸쳐 발생하는 투표 이력 데이터에 대한 관리가 어려우며, 이에 따라 중복 투표 및 무자격자에 의한 투표 검증 등 투표 전반에 걸친 과정의 신뢰성을 완전하게 검증하기 힘들다는 단점이 있어, 보다 높은 수준의 무결성을 보증하는 시스템이 요구되는 실정이다.Since this blockchain-based electronic voting system stores only the candidate selection information of the voters in the blockchain network after the voters vote, it is difficult to manage the voting history data that occurs throughout the voting process, There is a disadvantage in that it is difficult to completely verify the reliability of the overall process of voting, such as voting and verification of votes by unqualified persons, so a system that guarantees a higher level of integrity is required.

한국공개특허 제10-2021-0083457호(2021.07.07. 공개)는 투표용지에 표기되는 투표 내용뿐만 아니라, 투표 시행일, 투표 시행 시각, 투표 시행 장소 등 다양한 투표 이력데이터를 저장할 수 있는 별도의 이력데이터 저장서버를 구축하고, 해당 투표 이력데이터를 바탕으로 생성되는 트랜잭션을 저장할 수 있는 블록체인 네트워크를 운영하여, 데이터 저장 서버를 이원화하여 관리함으로써, 블록체인 네트워크에 저장된 데이터와 별도의 이력데이터 저장서버에 저장된 데이터를 각각 집계하여 비교를 통해 데이터가 조작되었는지 검증할 수 있음은 물론, 저장되는 다양한 투표 이력데이터를 통해 중복 투표 및 무자격자에 의한 투표 등을 검증할 수 있는 등, 투표 과정에서 발생하는 정보에 대한 무결성을 검증하고 신뢰성을 제고할 수 있는 블록체인 기반 전자투표 이력 관리 시스템에 관하여 개시되어 있다. 개시된 기술에 따르면, 블록체인 네트워크를 활용하여 전자투표 단말기를 통한 온라인상에서의 전자투표를 관리하는 시스템에 있어서, 전자투표 단말기로부터 전송받은 투표 정보에 기초하여 트랜잭션을 생성하고, 생성된 트랜잭션을 블록체인 네트워크상에 분산 저장하는 블록체인 서버; 전자투표 단말기로부터 전송받은 투표이력데이터를 해시함수를 통해 해시 값으로 변환하고, 해시 변환된 투표 이력데이터를 데이터베이스에 저장하는 이력데이터 저장서버; 블록체인 서버에 저장된 트랜잭션 정보를 바탕으로 투표 결과를 산출하는 집계서버; 및 전자투표 단말기, 블록체인 서버, 이력데이터 저장서버 및 집계서버 간의 데이터 통신을 중계하는 중계서버를 포함하여 구성되어, 집계서버에서 투표 결과를 산출하는 과정에서, 블록체인 서버에 저장된 트랜잭션 정보와 이력데이터 저장서버에 저장된 투표 이력데이터를 비교하여 검증하는 과정을 거치도록 구성되는 것을 특징으로 한다.Korean Patent Laid-Open Patent No. 10-2021-0083457 (published on July 7, 2021) discloses a separate history that can store various voting history data, such as voting date, voting time, and voting location, as well as the voting contents displayed on the ballot paper. By building a data storage server, operating a blockchain network that can store transactions generated based on the voting history data, and managing the data storage server in two ways, data stored in the blockchain network and a separate history data storage server Information generated during the voting process, such as being able to verify whether the data has been manipulated through comparison by aggregating each data stored in the Disclosed is a blockchain-based electronic voting history management system that can verify the integrity of and enhance reliability. According to the disclosed technology, in a system for managing online electronic voting through an electronic voting terminal using a block chain network, a transaction is generated based on voting information received from the electronic voting terminal, and the generated transaction is transferred to a block chain Blockchain server for distributed storage on the network; a history data storage server that converts the voting history data received from the electronic voting terminal into a hash value through a hash function, and stores the hash-converted voting history data in a database; an aggregation server that calculates voting results based on transaction information stored in the block chain server; and a relay server that relays data communication between the electronic voting terminal, the block chain server, the history data storage server, and the aggregation server. It is characterized in that it is configured to go through the process of verifying by comparing the voting history data stored in the data storage server.

한국등록특허 제10-2186029호(2020.112.27. 등록)는 블록체인을 이용한 전자투표 시스템 및 블록체인을 이용한 전자투표 방법에 관하여 개시되어 있는데, 투표 관리 서버가 후보자 리스트, 투표 시작 시각, 및 투표 종료 시각을 포함하는 투표 정보를 신규 투표로서 등록하는 단계; 투표 관리 서버가기 신규 투표로 등록된 투표 정보에 상응하는 개인키 및 공개키 쌍을 생성하는 단계; 투표 관리 서버가 키 잠금 해제 시각을 투표 종료 시각 이후의 시각으로 설정하고, 키 잠금 해제 시각 및 개인키를 키 관리 시스템에 전송하는 단계; 투표 관리 서버가 키 잠금 해제 시각 및 개인키를 키 관리 시스템에 전송한 후, 개인키를 삭제하는 단계; 키 관리 시스템이 개인키를 내부에 저장하고, 키 잠금 해제 시각까지 개인키의 독출을 차단하는 단계; 투표 관리 서버가 투표 시작 시각과 투표 종료 시각 사이에 사용자 단말기들 각각으로부터 수신되는 투표 내용을 공개키를 사용하여 암호화하여 암호화된 투표 내용을 생성하는 단계; 투표 관리 서버가 암호화된 투표 내용을 포함하는 투표 트랜잭션을 생성하고, 투표 트랜잭션을 블록체인 네트워크의 블록체인에 저장하는 단계; 투표 관리 서버가 키 잠금 해제 시각 이후에 키 관리 시스템으로부터 개인키를 독출하는 단계; 투표 관리 서버가 블록체인 네트워크의 블록체인에 저장된 투표 트랜잭션들을 독출하는 단계; 투표 관리 서버가 투표 트랜잭션들 각각에 포함되는 암호화된 투표 내용을 개인키를 사용하여 복호화하여 복호화된 투표 내용을 생성하는 단계; 및 투표 관리 서버가 복호화된 투표 내용들에 기초하여 투표 결과를 생성하는 단계를 포함하는 것을 특징으로 한다. 개시된 기술에 따르면, 블록체인을 이용하여 전자투표를 관리하도록 함으로써, 투표의 조작 가능성은 감소시키면서도 투표의 비밀성 및 보안성은 더욱 향상시킬 수 있다.Korea Patent Registration No. 10-2186029 (registered on 27.12.2020) discloses an electronic voting system using a block chain and an electronic voting method using a block chain, wherein the voting management server includes a candidate list, voting start time, and voting registering voting information including an end time as a new vote; generating, by the voting management server, a private key and a public key pair corresponding to voting information registered as a new vote; setting, by the voting management server, the key unlocking time to a time after the voting end time, and transmitting the key unlocking time and the private key to the key management system; After the voting management server transmits the key unlock time and the private key to the key management system, deleting the private key; storing, by the key management system, the private key therein, and blocking the reading of the private key until the key unlock time; generating, by the voting management server, the voting contents received from each of the user terminals between the voting start time and the voting end time, using a public key, to generate encrypted voting contents; generating, by the voting management server, a voting transaction including encrypted voting contents, and storing the voting transaction in a block chain of a block chain network; Reading, by the voting management server, the private key from the key management system after the key unlock time; Reading, by the voting management server, the voting transactions stored in the block chain of the block chain network; generating, by the voting management server, decrypting the encrypted voting contents included in each of the voting transactions using a private key, the decrypted voting contents; and the voting management server generating a voting result based on the decoded voting contents. According to the disclosed technology, by using a block chain to manage electronic voting, the possibility of manipulation of voting can be reduced while the confidentiality and security of voting can be further improved.

상술한 바와 같은 종래의 기술에서는, 별도의 투표용 단말기를 이용하여 전자 투표를 진행하거나, 이동통신단말기를 이용한 전자 투표를 수행하거나, 인터넷을 통한 전자 투표를 실시하는 등과 같이 다양한 장치 및 방법으로 각기 개별적으로 운용되고 있으므로, 각기 다른 전자 투표 장치 및 방법을 중앙서버로 집중시켜 통합적으로 관리 및 운용하기가 어려웠으며, 또한 중앙서버 용량의 과도한 증가 요구, 데이터 처리 용량의 한계, 서버 마비 시에 투표의 불능 등의 단점을 유발하였다.In the prior art as described above, each using various devices and methods, such as conducting electronic voting using a separate voting terminal, performing electronic voting using a mobile communication terminal, or conducting electronic voting through the Internet Since they are operated individually, it was difficult to manage and operate them in an integrated manner by concentrating different electronic voting devices and methods on the central server. It caused disadvantages such as inability.

상술한 바와 같은 종래의 기술에서는, 특히 별도의 투표용 단말기를 이용하는 경우에 유권자 확인, 유권자 인증 등과 같은 각종 절차를 거쳐야 하므로 투표하는 시간이 길고 불편한 단점도 있었다. 또한, 각기 다른 장소나 장치를 이용하여 투표를 수행한 경우에는, 각각의 투표 결과를 수집해야 하므로, 개표 결과 및 집계를 바로 확인할 수 없어 개표 업무가 비효율적이며, 안건별 또는 선거별로 별도로 진행해야 하므로 신속하고 정확한 통계 자료를 얻기 어려우며, 선거 진행 후에 선거에 참여한 개개인의 투표시간 및 투표참여 여부를 바로 확인할 수도 없었으며, 또한 실시간으로 투표를 생성시켜 바로 진행할 수도 없는 단점을 가지고 있다.In the prior art as described above, in particular, in the case of using a separate voting terminal, since various procedures such as voter identification and voter authentication are required, voting time is long and inconvenient. In addition, when voting is performed using different places or devices, since each voting result must be collected, the counting results and counting cannot be checked immediately, making the ballot counting task inefficient and must be carried out separately for each agenda or election. It is difficult to obtain quick and accurate statistical data, and it is not possible to check the voting time and voting participation of each individual who participated in the election immediately after the election.

한국공개특허 제10-2021-0083457호Korean Patent Publication No. 10-2021-0083457 한국등록특허 제10-2186029호Korean Patent Registration No. 10-2186029

본 발명이 해결하고자 하는 과제는, 전술한 바와 같은 단점을 해결하기 위한 것으로, 블록체인(block-chain)을 이용하여 투표 처리하면서 각종 투표 방식들을 전자 투표로 통합적으로 관리 및 운용함과 동시에 미러링 백업(mirroring backup) 동기화를 수행하도록 구현한 블록체인 이용 전자 투표 관리 시스템 및 방법을 제공하는 것이다.The problem to be solved by the present invention is to solve the above-described shortcomings, and while processing voting using a block-chain, various voting methods are collectively managed and operated by electronic voting, and mirroring backup is performed at the same time. (mirroring backup) To provide an electronic voting management system and method using a blockchain implemented to perform synchronization.

상술한 과제를 해결하는 수단으로는, 본 발명의 한 특징에 따르면, 지정 선거 사이트에 접속하여 온라인 투표 준수 사항을 제공받아 표시한 다음에 유권자의 동의 정보를 제공하며, 로그인 창 정보를 제공받아 표시한 다음에 유권자의 로그인 정보를 암호화시켜 전송하며, 유권자 인증 후에 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 암호화시켜 전송하는 복수 개의 유권자 단말기; 투표인증번호를 암호화하여 인쇄하거나, 투표인증번호를 랜덤하게 생성시켜 암호화하여 등록된 카드를 출력하며, 유권자의 로그인 정보 및 투표인증번호를 입력받아 제공하며, 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 입력받아 암호화시켜 전송하는 복수 개의 투표용 단말기; 선거 정보를 복호화키 또는 복수 개의 개표키와 함께 생성시켜, 복호화키를 관리자의 이메일 또는 핸드폰으로 전송하거나 각 개표키를 각각의 개표자의 이메일 또는 핸드폰으로 각각 전송하며, 선거 정보를 제공하며, 유권자 정보를 암호화시켜 제공하며, 후보자 정보의 최종 지정 및 투표 시작 정보를 생성시켜 전송하는 관리자 단말기; 상기 관리자 단말기에서 제공한 선거 정보 및 유권자 정보를 등록하며, 상기 관리자 단말기에서 전송한 투표 시작 정보에 따라 지정 선거 사이트를 상기 유권자 단말기로 제공하며, 온라인 투표 준수 사항을 상기 유권자 단말기로 제공한 다음에, 동의 정보를 제공받아 로그인 창 정보를 상기 유권자 단말기로 제공하며, 상기 유권자 단말기에서 전송한 로그인 정보를 복호화한 후에 등록된 유권자 정보를 확인하여 유권자 인증을 수행하며, 선거 정보를 상기 유권자 단말기로 제공한 다음에 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 전송하여 투표 처리하며, 상기 투표용 단말기에서 제공한 유권자의 로그인 정보 및 투표인증번호를 등록된 유권자 정보와 확인하여 투표 인증을 수행한 다음에, 선거 정보를 상기 투표용 단말기로 제공한 후에 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 전송하여 투표 처리하는 전자 투표 제공 서버; 상기 전자 투표 제공 서버의 전자 투표 처리에 대해 미러링 백업을 수행하여 상기 전자 투표 제공 서버와의 동기화를 유지하며, 상기 전자 투표 제공 서버의 전자 투표 에러 발생 시에 상기 전자 투표 제공 서버를 대신하는 미러링 백업 서버; 투표 값 정보를 수신받아 서로 공유하고, 이를 대조해서 데이터 위조나 변조를 수행할 수 없도록 저장해 두는 복수 개의 저장장치; 및 상기 전자 투표 제공 서버에서 전송한 투표 값 정보를 포함한 투표 블록을 생성해서 블록체인 네트워크상에서 상기 저장장치로 전송한 다음에, 상기 저장장치의 정보 상호 검증을 통해 검증 완료된 투표 블록을 체인에 결합하여 투표 완료해 주는 블록체인 서버를 포함하는 블록체인 이용 전자 투표 관리 시스템을 제공한다.As a means of solving the above problem, according to one feature of the present invention, access to a designated election site, receiving and displaying online voting compliance matters, provides voter consent information, and receives and displays login window information a plurality of voter terminals for encrypting and transmitting the log-in information of the voters, receiving and displaying the election information after voter authentication, and then encrypting and transmitting the voting value information of the voters; The voting authentication number is encrypted and printed, or the vote authentication number is randomly generated and encrypted to print the registered card, and the voter's login information and voting authentication number are input and provided. A plurality of voting terminals for receiving and transmitting the input of the voting value information of the encrypted; Election information is generated together with a decryption key or a plurality of counting keys, and the decryption key is transmitted to the administrator's e-mail or mobile phone, or each ballot counting key is transmitted to each counting person's e-mail or mobile phone, respectively, to provide election information and voter information a manager terminal that encrypts and provides, generates and transmits final designation of candidate information and voting start information; Registers the election information and voter information provided by the manager terminal, provides a designated election site to the voter terminal according to the voting start information transmitted from the manager terminal, and provides online voting compliance matters to the voter terminal , receiving consent information, providing login window information to the voter terminal, decrypting the login information transmitted from the voter terminal, verifying registered voter information, performing voter authentication, and providing election information to the voter terminal After receiving the voting value information, decoding it and transmitting it without keeping a record to process the vote, verify the voter login information and voting authentication number provided by the voting terminal with the registered voter information E, after providing the election information to the voting terminal, receiving and decoding the voting value information, the electronic voting server that transmits the vote processing without record keeping; A mirroring backup is performed for the electronic voting processing of the electronic voting server to maintain synchronization with the electronic voting server, and when an electronic voting error occurs in the electronic voting server, a mirroring backup that replaces the electronic voting server server; a plurality of storage devices that receive and share vote value information, collate it, and store it so that data forgery or falsification cannot be performed; And after generating a voting block including the voting value information transmitted from the electronic voting server and transmitting it to the storage device on the blockchain network, the voting block verified through mutual verification of information in the storage device is combined with the chain. We provide an electronic voting management system using blockchain that includes a blockchain server that completes voting.

일 실시 예에서, 상기 투표용 단말기는, 투표인증번호를 인쇄시켜 주거나, 등록 카드를 출력할 때에 접속 코드도 함께 포함시켜 출력하는 것을 특징으로 한다.In an embodiment, the voting terminal is characterized in that it prints a voting authentication number or outputs an access code together with an access code when outputting a registration card.

일 실시 예에서, 상기 관리자 단말기는, 기 설정해 둔 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 관리자로부터 복호화키를 입력받거나 개표자로부터 개표키를 입력받도록 하는 것을 특징으로 한다.In one embodiment, the manager terminal is in a waiting state until a preset voting completion time is reached, and when the voting completion time comes, a decryption key is input from the manager or a ballot counting key is inputted from a voter. do.

일 실시 예에서, 상기 전자 투표 제공 서버는, 현재 진행 중인 투표에 대한 투표율을 산출하며, 산출한 투표율이 기 설정된 투표율보다 저조한 경우에, 투표하지 않은 유권자를 확인하여, 투표를 독려하는 문자 메시지를 생성시켜 확인된 유권자에 대응하는 유권자 단말기로 전송하는 것을 특징으로 한다.In one embodiment, the electronic voting providing server calculates the turnout for the currently in progress vote, and when the calculated turnout is lower than the preset turnout, check the voters who did not vote, and send a text message to encourage voting It is characterized in that it is generated and transmitted to the voter terminal corresponding to the confirmed voter.

일 실시 예에서, 상기 전자 투표 제공 서버는, 기 설정해 둔 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 상기 블록체인 서버로 투표 값 정보를 요청하며, 상기 블록체인 서버로부터 투표 값 정보를 수신받아 투표 결과를 집계하여 투표 정보를 산출하는 것을 특징으로 한다.In one embodiment, the electronic voting providing server waits until a preset voting completion time, and when the voting completion time arrives, requests the voting value information to the block chain server, and from the block chain server It is characterized in that the voting information is calculated by receiving the voting value information and counting the voting results.

일 실시 예에서, 상기 블록체인 서버는, 상기 전자 투표 제공 서버로부터 수신받은 투표 값 정보를 투표 블록에 담아 체인 형태로 연결시켜, 분산형 데이터 저장 기술을 이용하여 상기 저장장치에 동시에 이를 복제하여 저장해 주는 것을 특징으로 한다.In one embodiment, the block chain server connects the voting value information received from the electronic voting server in a voting block in a chain form, and copies and stores it in the storage device using distributed data storage technology at the same time. characterized by giving.

일 실시 예에서, 상기 블록체인 서버는, 상기 전자 투표 제공 서버로부터 투표 값 정보를 요청받아 상기 저장장치에 저장해 둔 투표 값 정보를 상기 전자 투표 제공 서버로 전송하는 것을 특징으로 한다.In an embodiment, the block chain server receives a request for voting value information from the electronic voting server and transmits the voting value information stored in the storage device to the electronic voting server.

일 실시 예에서, 상기 전자 투표 제공 서버는, 팀 형성 창을 상기 유권자 단말기에 제공하며, 상기 유권자 단말기로부터 요청되는 팀 생성이나, 팀원 가입이나, 팀원 초대에 따라 이에 대응하여 팀을 생성시켜 주거나, 팀원으로 가입시켜 주거나, 팀원을 초대해 주는 것을 특징으로 한다.In one embodiment, the electronic voting providing server provides a team formation window to the voter terminal, and creates a team in response to team creation requested from the voter terminal, team member registration, or team member invitation, It is characterized by joining as a team member or inviting team members.

일 실시 예에서, 상기 전자 투표 제공 서버는, 투표 완료 후에 팀별 투표율을 계산하여 가장 높은 투표율을 가진 팀을 우승 팀으로 선정하는 것을 특징으로 한다.In one embodiment, the electronic voting providing server, after completion of voting, calculates the turnout for each team, and selects the team with the highest turnout as the winning team.

일 실시 예에서, 상기 유권자 단말기는, 상기 전자 투표 제공 서버로부터 팀 형성 창을 제공받아 팀 생성이나, 팀원 가입이나, 팀원 초대의 요청을 상기 전자 투표 제공 서버로 하는 것을 특징으로 한다.In an embodiment, the voter terminal receives a team formation window from the electronic voting providing server and making a request for team creation, team member registration, or team member invitation to the electronic voting providing server.

일 실시 예에서, 상기 저장장치는, 상기 블록체인 서버로부터 전송되는 투표 값 정보에 대한 상호 검증을 수행해서 해킹을 막도록 해 주는 것을 특징으로 한다.In one embodiment, the storage device is characterized in that it prevents hacking by performing mutual verification on the voting value information transmitted from the block chain server.

상술한 과제를 해결하는 수단으로는, 본 발명의 다른 한 특징에 따르면, 관리자 단말기가 선거 정보를 복호화키 또는 복수 개의 개표키와 함께 생성시켜, 복호화키를 관리자의 이메일 또는 핸드폰으로 전송하거나 각 개표키를 각각의 개표자의 이메일 또는 핸드폰으로 각각 전송하며, 선거 정보를 제공하며, 유권자 정보를 암호화시켜 제공하며, 후보자 정보의 최종 지정 및 투표 시작 정보를 생성시켜 전송하는 단계; 전자 투표 제공 서버가 상기 관리자 단말기에서 제공한 선거 정보 및 유권자 정보를 등록하며, 상기 관리자 단말기에서 전송한 투표 시작 정보에 따라 지정 선거 사이트를 제공하고 온라인 투표 준수 사항을 제공하는 단계; 유권자 단말기가 상기 지정 선거 사이트에 접속하여 상기 온라인 투표 준수 사항을 제공받아 표시한 다음에 유권자의 동의 정보를 제공하는 단계; 상기 전자 투표 제공 서버가 동의 정보를 제공받아 로그인 창 정보를 상기 유권자 단말기로 제공하는 단계; 상기 유권자 단말기가 로그인 창 정보를 제공받아 표시한 다음에 유권자의 로그인 정보를 암호화시켜 전송하는 단계; 상기 전자 투표 제공 서버가 상기 유권자 단말기에서 전송한 로그인 정보를 복호화한 후에 등록된 유권자 정보를 확인하여 유권자 인증을 수행하며, 선거 정보를 상기 유권자 단말기로 제공하는 단계; 상기 유권자 단말기가 유권자 인증 후에 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 암호화시켜 전송하는 단계; 상기 전자 투표 제공 서버가 상기 유권자 단말기로부터 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 전송하여 투표 처리하는 단계; 투표용 단말기가 투표인증번호를 암호화하여 인쇄하거나, 투표인증번호를 랜덤하게 생성시켜 암호화하여 등록된 카드를 출력하며, 유권자의 로그인 정보 및 투표인증번호를 입력받아 제공하는 단계; 상기 전자 투표 제공 서버가 상기 투표용 단말기에서 제공한 유권자의 로그인 정보 및 투표인증번호를 등록된 유권자 정보와 확인하여 투표 인증을 수행하며, 선거 정보를 상기 투표용 단말기로 제공하는 단계; 상기 투표용 단말기가 유권자 인증 후에 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 암호화시켜 전송하는 단계; 상기 전자 투표 제공 서버가 상기 투표용 단말기로부터 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 전송하여 투표 처리하는 단계; 미러링 백업 서버가 상기 전자 투표 제공 서버의 전자 투표 처리에 대해 미러링 백업을 수행하여 상기 전자 투표 제공 서버와의 동기화를 유지하며, 상기 전자 투표 제공 서버의 전자 투표 에러 발생 시에 상기 전자 투표 제공 서버를 대신하는 단계; 블록체인 서버가 상기 전자 투표 제공 서버에서 전송한 투표 값 정보를 포함한 투표 블록을 생성해서 블록체인 네트워크상에서 저장장치로 전송한 다음에, 상기 저장장치의 정보 상호 검증을 통해 검증 완료된 투표 블록을 체인에 결합하여 투표 완료해 주는 단계; 및 상기 저장장치가 상기 블록체인 서버로부터 투표 값 정보를 수신받아 서로 공유하고, 이를 대조해서 데이터 위조나 변조를 수행할 수 없도록 저장해 두는 단계를 포함하는 블록체인 이용 전자 투표 관리 방법을 제공한다.As a means of solving the above-described problem, according to another feature of the present invention, the manager terminal generates election information together with a decryption key or a plurality of counting keys, and transmits the decryption key to the manager's email or mobile phone or each ballot counting key transmitting the key to each voter's e-mail or mobile phone, respectively, providing election information, encrypting and providing voter information, generating and transmitting the final designation of candidate information and voting start information; Registering, by the electronic voting server, the election information and voter information provided by the manager terminal, providing a designated election site according to the voting start information transmitted from the manager terminal, and providing online voting compliance; providing, by a voter terminal, access to the designated election site, receiving and displaying the online voting compliance information, and then providing information on the consent of the voter; providing, by the electronic voting server, consent information, log-in window information to the voter terminal; transmitting, by the voter terminal, receiving and displaying the login window information, and then encrypting the login information of the voter; performing voter authentication by confirming registered voter information after the electronic voting server decrypts the login information transmitted from the voter terminal, and providing election information to the voter terminal; The voter terminal receives and displays election information after voter authentication, and then encrypts and transmits the voter's vote value information; processing, by the electronic voting server, receiving voting value information from the voter terminal, decoding it, and transmitting it without record keeping; The voting terminal encrypts and prints the voting verification number, or randomly generates and encrypts the voting verification number to output a registered card, and receives and provides the voter's login information and voting verification number; performing voting authentication by verifying, by the electronic voting server, the voter's login information and voting authentication number provided by the voting terminal with registered voter information, and providing election information to the voting terminal; The voting terminal receives and displays the election information after voter authentication, and then encrypts and transmits the voter's vote value information; processing, by the electronic voting server, receiving voting value information from the voting terminal, decoding it, and transmitting it without keeping a record; A mirroring backup server maintains synchronization with the electronic voting server by performing a mirroring backup for the electronic voting processing of the electronic voting server, and when an electronic voting error of the electronic voting server occurs, the electronic voting server instead of; The blockchain server creates a voting block including the voting value information transmitted from the electronic voting server and transmits it to the storage device on the blockchain network, and then transfers the verified voting block to the chain through mutual verification of information in the storage device. Combining the steps to complete voting; and the storage device receives the voting value information from the block chain server, shares it with each other, collates it, and stores it so that data forgery or falsification cannot be performed.

본 발명의 효과로는, 블록체인(block-chain)을 이용하여 투표 처리하면서 각종 투표 방식들을 전자 투표로 통합적으로 관리 및 운용함과 동시에 미러링 백업(mirroring backup) 동기화를 수행하도록 구현한 블록체인 이용 전자 투표 관리 시스템 및 방법을 제공함으로써, 관리자가 유권자들의 투표 내용을 확인할 수 없어 투표 진행 중의 상황 파악이나 투표 내용 조작을 할 수 없도록 하며, 이에 전자 투표의 활성화는 물론이고 전자 투표의 비밀성 및 보안성을 강화할 수 있으며, 투표 과정 전반에 걸쳐 발생하는 투표 이력에 대한 관리뿐만 아니라, 중복 투표 및 무자격자에 의한 투표 검증 등 투표 전반에 걸친 과정의 신뢰성을 완전하게 검증할 수 있어, 보다 높은 수준의 무결성을 보증해 줄 수 있다는 것이다.As an effect of the present invention, the use of a blockchain implemented to manage and operate various voting methods through electronic voting while processing voting using a block-chain and to perform mirroring backup synchronization at the same time By providing an electronic voting management system and method, the administrator cannot check the voter's voting details, so that the voting status cannot be grasped or the voting contents are manipulated. In addition to managing the voting history that occurs throughout the voting process, it is also possible to completely verify the reliability of the overall voting process, such as duplicate voting and voting verification by unqualified persons, resulting in a higher level of integrity. that can guarantee

본 발명에 의하면, 자신이 지지하는 후보자 또는 안건을 클릭만 하면 되므로 투표하는 시간이 대폭 단축될 수 있으며, 실시간으로 진행되기 때문에 투표가 끝남과 동시에 개표 결과를 바로 확인할 수 있으며, 집계도 바로 이루어지므로 개표 인원이 필요치 않아 개표 업무가 효율적이며, 투표 의사의 정확한 반영으로 기재 오류, 오자, 탈자에 의한 무효표, 의문표를 방지할 수 있으며, 안건별로 신속하고 정확한 통계 자료를 쉽게 얻을 수 있으며, 한 번의 로그인으로 여러 선거를 동시에 진행할 수 있으며, 선거 진행 후에 선거에 참여한 개개인의 투표시간 및 투표참여 여부를 바로 확인할 수 있으며, 또한 실시간으로 투표를 생성시켜 바로 진행할 수 있으며, 투표 결과를 데이터베이스화하여 투표 결과를 언제든지 검색 및 열람할 수 있는 효과를 가진다.According to the present invention, the voting time can be greatly reduced because all you need to click on the candidate or agenda you support, and because it is conducted in real time, you can immediately check the result of the counting as soon as the voting ends, and the counting is done immediately. Efficient ballot counting work because it does not require a number of voters multiple elections can be held simultaneously, and after the election, the voting time and voting participation of each individual who participated in the election can be checked immediately. It has the effect of being able to search and browse at any time.

본 발명에 의하면, 미러링 백업 운영으로 중앙서버 용량의 증가 요구를 감소시켜 줄 수 있으며, 데이터 처리 용량을 분산시켜 효율적인 운영이 가능하며, 서버 마비 시에도 다른 투표 방식으로 계속적인 투표가 이루어질 수 있도록 하는 효과도 가진다.According to the present invention, it is possible to reduce the need to increase the capacity of the central server through mirroring backup operation, and it is possible to efficiently operate by distributing the data processing capacity, and to continuously vote by other voting methods even when the server is paralyzed. have an effect

도 1은 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 시스템을 설명하는 도면이다.
도 2는 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 방법을 제1예로 설명하는 도면이다.
도 3은 도 2에 있는 온라인 투표 준수 사항 표시를 예로 나타낸 도면이다.
도 4는 도 2에 있는 로그인 창 표시를 예로 나타낸 도면이다.
도 5는 도 2에 있는 유권자 인증을 예로 나타낸 도면이다.
도 6은 도 2에 있는 선거 리스트 확인 창 표시를 예로 나타낸 도면이다.
도 7은 도 2에 있는 투표 창 표시를 예로 나타낸 도면이다.
도 8은 도 2에 있는 투표완료 표시를 예로 나타낸 도면이다.
도 9는 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 방법을 제2예로 설명하는 도면이다.
도 10은 도 9에 있는 등록 카드 출력을 예로 나타낸 도면이다.
도 11은 도 9에 있는 로그인 정보 및 투표인증번호 제공을 예로 나타낸 도면이다.
도 12는 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 방법을 제3예로 설명하는 도면이다.
도 13은 도 12에 있는 접속 코드 포함 등록 카드를 예로 나타낸 도면이다.
도 14는 도 12에 있는 모바일 투표 준수 사항 표시를 예로 나타낸 도면이다.
도 15는 도 12에 있는 로그인 창 표시를 예로 나타낸 도면이다.
도 16은 도 12에 있는 선거 리스트 확인 창 표시를 예로 나타낸 도면이다.
도 17은 도 12에 있는 투표 창 표시를 예로 나타낸 도면이다.
도 18은 도 12에 있는 투표완료 표시를 예로 나타낸 도면이다.
1 is a diagram illustrating an electronic voting management system using a block chain according to an embodiment of the present invention.
2 is a view for explaining the electronic voting management method using a block chain according to an embodiment of the present invention as a first example.
3 is a diagram illustrating an example of the online voting compliance indication in FIG. 2 .
FIG. 4 is a diagram illustrating the login window display in FIG. 2 as an example.
5 is a diagram illustrating voter authentication in FIG. 2 as an example.
6 is a view showing an example of the election list confirmation window display in FIG.
7 is a view showing the voting window display in FIG. 2 as an example.
8 is a view showing the voting completion indication in FIG. 2 as an example.
9 is a view for explaining the electronic voting management method using a block chain according to an embodiment of the present invention as a second example.
FIG. 10 is a view showing the registration card output in FIG. 9 as an example.
11 is a view showing the login information and voting authentication number provided in FIG. 9 as an example.
12 is a diagram for explaining the electronic voting management method using a block chain according to an embodiment of the present invention as a third example.
13 is a view showing the registration card including the access code in FIG. 12 as an example.
14 is a diagram illustrating an example of the mobile voting compliance indication in FIG. 12 .
FIG. 15 is a diagram illustrating the login window display in FIG. 12 as an example.
FIG. 16 is a view illustrating the display of the election list confirmation window shown in FIG. 12 as an example.
17 is a view showing the voting window display in FIG. 12 as an example.
18 is a view showing the voting completion indication in FIG. 12 as an example.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시 예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시 예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시 예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Hereinafter, with reference to the accompanying drawings, embodiments of the present invention will be described in detail so that those of ordinary skill in the art to which the present invention pertains can easily implement them. However, since the description of the present invention is merely an embodiment for structural or functional description, the scope of the present invention should not be construed as being limited by the embodiment described in the text. That is, since the embodiment is capable of various changes and may have various forms, it should be understood that the scope of the present invention includes equivalents capable of realizing the technical idea. In addition, since the object or effect presented in the present invention does not mean that a specific embodiment should include all of them or only such effects, it should not be understood that the scope of the present invention is limited thereby.

본 발명에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.The meaning of the terms described in the present invention should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.Terms such as “first” and “second” are for distinguishing one component from another, and the scope of rights should not be limited by these terms. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component. When a component is referred to as being “connected to” another component, it may be directly connected to the other component, but it should be understood that other components may exist in between. On the other hand, when it is mentioned that a certain element is "directly connected" to another element, it should be understood that the other element does not exist in the middle. Meanwhile, other expressions describing the relationship between elements, that is, "between" and "between" or "neighboring to" and "directly adjacent to", etc., should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression is to be understood to include the plural expression unless the context clearly dictates otherwise, and terms such as "comprise" or "have" are not intended to refer to the specified feature, number, step, action, component, part or any of them. It is intended to indicate that a combination exists, and it should be understood that it does not preclude the possibility of the existence or addition of one or more other features or numbers, steps, operations, components, parts, or combinations thereof.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs, unless otherwise defined. Terms defined in general used in the dictionary should be interpreted as having the same meaning in the context of the related art, and cannot be interpreted as having an ideal or excessively formal meaning unless explicitly defined in the present invention.

이제 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 시스템 및 방법에 대하여 도면을 참고로 하여 상세하게 설명한다.Now, with reference to the drawings for the electronic voting management system and method using a block chain according to an embodiment of the present invention will be described in detail.

도 1은 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 시스템을 설명하는 도면이다.1 is a diagram illustrating an electronic voting management system using a block chain according to an embodiment of the present invention.

도 1을 참조하면, 블록체인 이용 전자 투표 관리 시스템(100)은, 복수 개의 유권자 단말기(110), 복수 개의 투표용 단말기(120), 관리자 단말기(130), 전자 투표 제공 서버(140), 미러링 백업 서버(150), 투표 네트워크(160), 블록체인 서버(170), 복수 개의 저장장치(180), 블록체인 네트워크(190)를 포함한다.Referring to FIG. 1 , the electronic voting management system 100 using a block chain includes a plurality of voter terminals 110 , a plurality of voting terminals 120 , an administrator terminal 130 , an electronic voting server 140 , and mirroring. It includes a backup server 150 , a voting network 160 , a block chain server 170 , a plurality of storage devices 180 , and a block chain network 190 .

유권자 단말기(110)는, 유권자가 직접 투표소에 나오지 않고 가정이나 학교 또는 인터넷이 가능한 공간(또는, 모바일 통신이 가능한 공간)에서 전자 투표 제공 서버(140)가 투표 네트워크(160)를 통해 제공해 주는 지정 선거 사이트에 접속하는 경우에, 지정 선거 사이트를 통해 온라인 투표 준수 사항을 제공받아 디스플레이해 준 다음에 유권자의 동의 입력에 따라 동의 정보를 전자 투표 제공 서버(140)로 제공해 주며, 전자 투표 제공 서버(140)로부터 수신되는 로그인 창 정보를 디스플레이해 준 다음에 유권자의 로그인 정보(즉, 아이디 및 패스워드)를 입력받아 암호화시켜 전자 투표 제공 서버(140)로 제공해 주며, 유권자 인증을 수행한 후에 전자 투표 제공 서버(140)로부터 수신되는 선거 정보를 디스플레이해 준 다음에 유권자의 투표 값 정보를 입력받아 암호화시켜 전자 투표 제공 서버(140)로 제공해 줌으로써, 이러한 온라인 전자투표 방식(또는, 모바일 전자투표 방식)에 의해 시간과 장소에 구애받지 않아 효율적이면서, 여러 지역에서 많은 인원(유권자)이 동시에 투표할 수 있어 비용이나 시간을 절감할 수 있다.Voter terminal 110 is a designation provided by the electronic voting server 140 through the voting network 160 at home, school, or a space where the Internet is available (or a space where mobile communication is possible) without the voter directly coming to the polling place When accessing the election site, the online voting compliance information is provided and displayed through the designated election site, and then consent information is provided to the electronic voting providing server 140 according to the voter's consent input, and the electronic voting providing server ( After displaying the login window information received from 140), it receives and encrypts the login information (ie, ID and password) of the voters and provides them to the electronic voting providing server 140, and provides electronic voting after performing voter authentication After displaying the election information received from the server 140, it receives and encrypts the voter's vote value information and provides it to the electronic voting providing server 140, so that the online electronic voting method (or mobile electronic voting method) It is efficient because it is not limited by time and place, and a large number of people (voters) can vote at the same time in multiple regions, saving money and time.

일 실시 예에서, 유권자 단말기(110)는, PC, 노트북, PDA, 스마트폰, 휴대폰 등과 같은 인터넷이 가능한 통신 단말기로서, 투표용 단말기(120)에서 인쇄시켜 준 투표인증번호나 출력시켜 준 등록 카드 중 접속 코드(예를 들어, QR 코드, 바코드 등)를 인식하여, 전자 투표 제공 서버(140)에서 제공해 주는 지정 선거 사이트에 접속하며, 지정 선거 사이트를 통해 모바일 투표 준수 사항을 제공받아 디스플레이해 준 다음에 유권자의 동의 입력에 따라 동의 정보를 전자 투표 제공 서버(140)로 제공해 주며, 전자 투표 제공 서버(140)로부터 수신되는 로그인 창 정보를 디스플레이해 준 다음에, 유권자의 로그인 정보(예를 들어, 주민번호, 학생번호 등) 및 투표인증번호를 입력(또는, 자동 입력)하며, 해당 입력받은 유권자의 로그인 정보 및 투표인증번호를 전자 투표 제공 서버(140)에 제공해 준 후에, 전자 투표 제공 서버(140)로부터 수신되는 선거 정보를 디스플레이해 준 다음에 유권자의 투표 값 정보를 입력받아 암호화시켜 전자 투표 제공 서버(140)로 제공해 줄 수 있다. 이와 같이, 유권자가 직접 투표소에 나와서 투표해야 하나, 당일 선거 유세 후에 유권자 단말기(110)를 이용하여 투표를 해야 할 경우에 사용함으로써, 투표용 단말기(120)의 개수를 감소시켜 비용이나 시간을 줄일 수 있다.In an embodiment, the voter terminal 110 is a communication terminal capable of the Internet, such as a PC, a laptop computer, a PDA, a smart phone, a mobile phone, etc., and a voting authentication number printed by the voting terminal 120 or a registration card printed out It recognizes access codes (eg, QR codes, barcodes, etc.), accesses the designated election site provided by the electronic voting server 140, and displays the mobile voting compliance information provided through the designated election site. Next, according to the voter's consent input, consent information is provided to the electronic voting providing server 140, and after displaying the login window information received from the electronic voting providing server 140, the voter's login information (for example, , resident number, student number, etc.) and voting authentication number are input (or automatically entered), and after providing the inputted voter's login information and voting authentication number to the electronic voting server 140, the electronic voting providing server After displaying the election information received from 140 , the voter's voting value information may be received and encrypted and provided to the electronic voting providing server 140 . In this way, the voters must come to the polling place and vote directly, but by using it when they need to vote using the voter terminal 110 after the election campaign on the same day, the number of voting terminals 120 is reduced to reduce costs and time can

일 실시 예에서, 유권자 단말기(110)는, 전자 투표 제공 서버(140)로부터 수신되는 결과보기 창 정보를 디스플레이해 준 다음에 유권자의 결과보기 입력에 따라 결과보기 요청 정보를 전자 투표 제공 서버(140)로 전송해 주며, 전자 투표 제공 서버(140)로부터 수신되는 투표 정보를 디스플레이해 줄 수 있다.In one embodiment, the voter terminal 110 displays the result view window information received from the electronic voting providing server 140 and then transmits the result view request information according to the voter's result view input to the electronic voting providing server 140 ) and may display voting information received from the electronic voting server 140 .

일 실시 예에서, 유권자 단말기(110)는, 전자 투표 제공 서버(140)로부터 팀 형성 창을 제공받아 팀을 생성하거나, 팀원으로 가입하거나, 팀원을 초대하도록 전자 투표 제공 서버(140)로 요청할 수도 있다.In an embodiment, the voter terminal 110 may request the electronic voting server 140 to receive a team formation window from the electronic voting providing server 140 to create a team, join as a team member, or invite a team member there is.

투표용 단말기(120)는, 지정된 투표소에서 지참한 신분증으로 본인 확인을 수행한 유권자에게, 투표인증번호를 암호화하여 인쇄시켜 주거나, 투표인증번호를 랜덤하게 생성시키고 해당 생성시킨 투표인증번호를 암호화하여 등록된 카드(예를 들어, QR 코드 카드, 바코드 카드)를 출력시켜 주며, 인쇄된 투표인증번호나 출력된 등록 카드를 가지고 기표소에 입장한 유권자가 로그인 정보(예를 들어, 주민번호, 학생번호 등) 및 투표인증번호를 입력하는 경우에 해당 입력받은 유권자의 로그인 정보 및 투표인증번호를 전자 투표 제공 서버(140)에 제공해 준 후에, 전자 투표 제공 서버(140)로부터 수신되는 선거 정보를 디스플레이해 준 다음에 유권자의 투표 값 정보를 입력받아 암호화시켜 전자 투표 제공 서버(140)로 제공해 준다.The voting terminal 120 encrypts and prints a voting authentication number to a voter who has performed identification with an ID brought from a designated polling place, or randomly generates a voting authentication number and encrypts the generated voting authentication number. The registered card (eg, QR code card, barcode card) is printed, and the voter who entered the voting booth with the printed voting verification number or printed registration card can log in information (eg, resident number, student number). etc.) and voting authentication number, after providing the inputted voter's login information and voting authentication number to the electronic voting server 140, the election information received from the electronic voting server 140 is displayed. After giving, the voter's vote value information is received, encrypted, and provided to the electronic voting providing server 140 .

일 실시 예에서, 투표용 단말기(120)는, 미리 지정해 둔 투표소에 유권자가 직접 나와서 투표하도록 하기 위해 투표소에 설치된 전자투표장치로서, 소규모의 투표인 경우(예를 들어, 학교 선거 등)에 투표 네트워크(160)를 통해 보안상으로 외부 인터넷을 차단시키고 내부 인트라넷만으로 전자 투표 제공 서버(140)와 연결시켜 진행하도록 할 수 있다.In one embodiment, the voting terminal 120 is an electronic voting device installed in a polling place to allow voters to come out to vote directly at a pre-designated polling place, and to vote in a small-scale voting (eg, school election, etc.) It is possible to block the external Internet for security through the network 160 and to connect with the electronic voting server 140 only through the internal intranet to proceed.

일 실시 예에서, 투표용 단말기(120)는, 투표인증번호를 인쇄시켜 주거나, 등록 카드를 출력할 때에 접속 코드(예를 들어, QR 코드, 바코드 등)도 함께 포함시켜 출력할 수도 있다.In an embodiment, the voting terminal 120 may print a voting authentication number or output an access code (eg, QR code, barcode, etc.) together when outputting a registration card.

관리자 단말기(130)는, 유권자가 투표해야 할 선거 정보(예를 들어, 선거 또는 투표 리스트)를 복호화키(또는, 복수 개의 개표키)와 함께 생성시키며, 해당 생성된 복호화키를 관리자의 이메일(또는, 핸드폰)로 전송해 주고(또는, 해당 생성된 각 개표키를 각각의 개표자(예를 들어, 선거관리위원장 및 선거관리위원 등)의 이메일(또는, 핸드폰)로 각각 전송해 주고) 해당 생성된 선거 정보를 전자 투표 제공 서버(140)에 제공해 주며, 유권자 엑셀 입력을 통해 투표할 권리를 가지고 있는 유권자 정보(예를 들어, 유권자의 휴대폰 번호나 이메일주소 등)를 암호화시켜 전자 투표 제공 서버(140)에 제공해 준 후에, 후보자 정보에 대한 최종 지정과 함께 투표 시작을 알리기 위한 투표 시작 정보를 생성시켜 전자 투표 제공 서버(140)로 전송해 준다.The manager terminal 130 generates election information (eg, an election or a voting list) to be voted by the voter together with a decryption key (or a plurality of vote counting keys), and sends the generated decryption key to the administrator's email ( Or, send it to your mobile phone) (or send each generated ballot counting key to the email (or mobile phone) of each voter (eg, election commissioner and election commissioner, etc.) The generated election information is provided to the electronic voting server 140, and the voter information (for example, the voter's mobile phone number or email address, etc.) having the right to vote through the voter Excel input is encrypted and the electronic voting providing server After providing to (140), it generates and transmits the voting start information to inform the start of voting together with the final designation of the candidate information to the electronic voting server (140).

일 실시 예에서, 관리자 단말기(130)는, 기 설정해 둔 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 관리자로부터의 복호화키를 입력받도록(또는, 다수의 개표자로부터 각 개표키를 입력받도록) 할 수 있도록 함으로써, 관리자가 유권자들의 투표 내용을 확인할 수 없어 투표 진행 중의 상황 파악이나 투표 내용 조작을 할 수 없도록 하며, 이때 이전에 생성시킨 복호화키와 일치하는지를 확인하고(또는, 이전에 생성시킨 각 개표키와 일치하는지를 확인하고), 일치하는 경우에 개표 정보를 생성시켜 전자 투표 제공 서버(140)로 전송해 줄 수 있다.In one embodiment, the manager terminal 130 is in a waiting state until a preset voting completion time is reached, and when the voting completion time arrives, a decryption key is input from the manager (or each from a plurality of voters) By allowing the vote counting key to be input), the administrator cannot check the voters' votes, so they cannot understand the voting status or manipulate the voting contents, and check whether the previously generated decryption key matches (or , check whether it matches each of the previously generated ballot counting keys), and if they match, it is possible to generate ballot counting information and transmit it to the electronic voting providing server 140 .

전자 투표 제공 서버(140)는, 관리자 단말기(130)로부터 수신되는 선거 정보 및 유권자 정보를 데이터베이스에 등록해 준 후에, 관리자 단말기(130)로부터 수신되는 투표 시작 정보에 따라 선거관리위원회 등이 미리 지정해 둔 선거 사이트를 투표 네트워크(160)를 통해 유권자 단말기(110)로 제공해 주며, 지정 선거 사이트를 통해 온라인 투표 준수 사항을 유권자 단말기(110)로 제공한 다음에, 유권자 단말기(110)로부터 수신되는 동의 정보를 확인하여 로그인 창 정보를 유권자 단말기(110)로 제공해 주며, 유권자 단말기(110)로부터 로그인 정보를 수신받아 복호화한 후에 데이터베이스에 기 등록되어 있는 유권자 정보를 확인하고 해당 확인된 유권자 정보를 이용하여 유권자 인증을 수행한 다음에, 데이터베이스에 기 등록되어 있는 선거 정보를 유권자 단말기(110)로 제공해 주며, 유권자 단말기(110)로부터 투표 값 정보를 수신받아 복호화한 후에 복호화된 투표 값 정보를 기록 보관하지 않고(이에, 관리자가 유권자들의 투표 내용을 확인할 수 없어 투표 진행 중의 상황 파악이나 투표 내용 조작을 할 수 없도록 함) 블록체인 서버(170)에 전송하여 투표 처리해 주며, 투표용 단말기(120)로부터 유권자의 로그인 정보 및 투표인증번호를 수신받는 경우에 데이터베이스에 기 등록되어 있는 유권자 정보를 확인하여 투표 인증을 수행한 다음에, 데이터베이스에 기 등록되어 있는 선거 정보를 투표용 단말기(120)로 제공해 주며, 투표용 단말기(120)로부터 투표 값 정보를 수신받아 복호화한 후에 복호화된 투표 값 정보를 기록 보관하지 않고 블록체인 서버(170)에 전송하여 투표 처리해 준다.The electronic voting server 140 registers the election information and voter information received from the manager terminal 130 in the database, and, according to the voting start information received from the manager terminal 130, the election commission etc. Consent received from the voter terminal 110 after providing the election site to the voter terminal 110 through the voting network 160 and providing online voting compliance matters to the voter terminal 110 through the designated election site After confirming the information, the login window information is provided to the voter terminal 110, and after receiving and decoding the login information from the voter terminal 110, the voter information registered in the database is checked and the confirmed voter information is used. After performing voter authentication, the election information registered in the database is provided to the voter terminal 110, and after receiving and decoding the vote value information from the voter terminal 110, the decoded vote value information is not recorded. Without (therefore, the administrator cannot check the voter's voting contents, so that the voting status cannot be grasped or the voting contents can be manipulated), it is transmitted to the block chain server 170 for voting processing, and from the voting terminal 120 When receiving the login information and voting authentication number of After receiving and decoding the voting value information from the voting terminal 120, the decoded voting value information is transmitted to the block chain server 170 without record keeping and voting is processed.

일 실시 예에서, 전자 투표 제공 서버(140)는, 유권자 단말기(110)의 QR 코드 인식을 통해 선거관리위원회 등이 미리 지정해 둔 선거 사이트를 유권자 단말기(110)로 제공해 주며, 지정 선거 사이트를 통해 모바일 투표 준수 사항을 유권자 단말기(110)로 제공한 다음에, 유권자 단말기(110)로부터 수신되는 동의 정보를 확인하여 로그인 창 정보를 유권자 단말기(110)로 제공해 주며, 유권자 단말기(110)로부터 유권자의 로그인 정보 및 투표인증번호를 수신받는 경우에 데이터베이스에 기 등록되어 있는 유권자 정보를 확인하여 투표 인증을 수행한 다음에, 데이터베이스에 기 등록되어 있는 선거 정보를 유권자 단말기(110)로 제공해 주며, 유권자 단말기(110)로부터 투표 값 정보를 수신받아 복호화한 후에 복호화된 투표 값 정보를 기록 보관하지 않고 블록체인 서버(170)에 전송하여 투표 처리해 줄 수 있다.In one embodiment, the electronic voting providing server 140 provides the election site previously designated by the Election Commission, etc. to the voter terminal 110 through QR code recognition of the voter terminal 110, and through the designated election site After providing mobile voting compliance matters to the voter terminal 110 , the consent information received from the voter terminal 110 is checked to provide login window information to the voter terminal 110 , and from the voter terminal 110 to the voter's When the login information and voting authentication number are received, voting is verified by checking the voter information registered in the database, and then, the election information registered in the database is provided to the voter terminal 110, and the voter terminal After receiving and decoding the voting value information from 110, the decoded voting value information is transmitted to the block chain server 170 without record keeping to process the vote.

일 실시 예에서, 전자 투표 제공 서버(140)는, 상술한 유권자 인증의 경우에, 휴대폰의 SMS나 이메일을 통한 인증 방식으로, 투표인증번호를 랜덤하게 생성시키고, 해당 생성시킨 투표인증번호를 데이터베이스에 미리 등록해 둔 유권자의 휴대폰 번호나 이메일 주소로 SMS나 메일로 전송한 다음에, 유권자가 유권자 단말기(110)(예를 들어, 휴대폰, PC 등)를 통해 SMS나 메일을 수신받아 투표인증번호를 입력하면, 유권자 단말기(110)에서 입력받은 투표인증번호를 수신받으며, 이에 유권자 단말기(110)로부터 수신되는 투표인증번호와 이전에 생성시킨 투표인증번호가 일치하는지를 확인하여 유권자가 정당한지의 여부를 인증해 줄 수 있다.In one embodiment, the electronic voting providing server 140, in the case of the above-described voter authentication, generates a vote authentication number randomly by an authentication method through SMS or e-mail of a mobile phone, and stores the generated voting authentication number in a database After sending by SMS or email to the mobile phone number or email address of the voter registered in advance, the voter receives the SMS or email through the voter terminal 110 (eg, mobile phone, PC, etc.) and receives the voting authentication number If you input , you receive the voting authentication number input from the voter terminal 110, and check whether the voting authentication number received from the voter terminal 110 matches the previously generated voting authentication number to see if the voter is legitimate can be authenticated.

일 실시 예에서, 전자 투표 제공 서버(140)는, 상술한 투표 인증의 경우에, 바코드 인증 방식으로, 유권자가 투표소에서 신분을 확인한 후에 투표용 단말기(120)에서 발급된 바코드 카드를 등록받아 인증해 줄 수 있다.In an embodiment, the electronic voting server 140 receives and authenticates the barcode card issued by the voting terminal 120 after the voter confirms the identity at the polling place in the case of the above-described voting authentication, barcode authentication method. can do it

일 실시 예에서, 전자 투표 제공 서버(140)는, 상술한 투표 인증의 경우에, 바코드 카드 인증 및 QR 코드 인식 방식으로, 유권자가 투표소에서 신분을 확인한 후에 투표용 단말기(120)에서 발급된 바코드 카드 중에서 QR 코드로 투표 사이트에 접속한 다음에, 바코드 카드(투표인증번호)를 등록받아 인증해 줄 수 있다.In one embodiment, the electronic voting providing server 140, in the case of the above-described voting authentication, barcode card authentication and QR code recognition method, the barcode issued by the voting terminal 120 after the voter confirms the identity at the polling place After accessing the voting site with a QR code from among the cards, you can register and authenticate the barcode card (voting verification number).

일 실시 예에서, 전자 투표 제공 서버(140)는, 현재 진행 중인 투표에 대한 투표율을 산출할 수 있으며, 해당 산출한 투표율이 기 설정된 투표율보다 저조한 경우에, 투표하지 않은 유권자를 데이터베이스로부터 확인하고, 투표를 독려하는 문자 메시지를 생성시켜 해당 확인된 유권자에 대응하는 유권자 단말기(110)로 전송해 줄 수도 있다.In one embodiment, the electronic voting providing server 140 may calculate the turnout for the voting currently in progress, and if the calculated turnout is lower than the preset turnout, check the voters who did not vote from the database, A text message encouraging voting may be generated and transmitted to the voter terminal 110 corresponding to the confirmed voter.

일 실시 예에서, 전자 투표 제공 서버(140)는, 투표할 권리를 가지고 있는 유권자 정보(예를 들어, 유권자의 휴대폰 번호나 이메일주소 등), 유권자가 투표해야 할 선거 정보(예를 들어, 선거 또는 투표 리스트), 유권자가 투표한 투표 정보(예를 들어, 투표율, 후보자별 득표수 등)를 데이터베이스에 등록 저장해 줄 수 있다.In an embodiment, the electronic voting providing server 140 includes information on voters who have the right to vote (eg, a mobile phone number or email address of a voter), election information for which the voter should vote (eg, an election). or voting list), and voting information (eg, turnout rate, number of votes for each candidate, etc.) voted by voters may be registered and stored in a database.

일 실시 예에서, 전자 투표 제공 서버(140)는, 기 설정해 둔 투표 완료 시간이 될 때까지 대기 상태로 있다가(이에, 관리자가 유권자들의 투표 내용을 확인할 수 없어 투표 진행 중의 상황 파악이나 투표 내용 조작을 할 수 없도록 함), 투표 완료 시간이 되면 블록체인 서버(170)로 투표 값 정보를 요청하도록 한 후에, 블록체인 서버(170)로부터 투표 값 정보를 수신받아 투표 결과를 집계하여 투표 정보(예를 들어, 선거별 투표율, 지역별 투표 진행률, 선거별 각 당선자 및 득표율, 상세집계보기를 통한 후보자별 집계 결과 정보 등)를 산출하여 데이터베이스에 등록해 줄 수 있다.In one embodiment, the electronic voting server 140 is in a waiting state until a preset voting completion time is reached (therefore, the administrator cannot check the voter's voting contents, so the status of voting or voting contents in progress) When the voting completion time comes), after the voting value information is requested from the block chain server 170, the voting value information is received from the block chain server 170 and the voting results are aggregated and the voting information ( For example, it is possible to calculate the turnout for each election, the voting progress by region, each elected and vote rate for each election, aggregate result information for each candidate through detailed aggregation view, etc.) and register it in the database.

일 실시 예에서, 전자 투표 제공 서버(140)는, 관리자 단말기(130)로부터 수신되는 개표 정보에 따라 결과보기 창 정보를 유권자 단말기(110)로 제공한 후에, 유권자 단말기(110)로부터 결과보기 요청 정보를 수신받아 데이터베이스에 등록된 투표 정보(예를 들어, 선거별 투표율, 지역별 투표 진행률, 선거별 각 당선자 및 득표율, 상세집계보기를 통한 후보자별 집계 결과 정보 등)를 유권자 단말기(110)로 제공해 줄 수 있다.In an embodiment, the electronic voting server 140 provides the result view window information to the voter terminal 110 according to the ballot counting information received from the manager terminal 130 , and then requests the result view from the voter terminal 110 . Receive information and provide voting information registered in the database (for example, voter turnout by election, voting progress by region, each winner and vote rate by election, aggregated result information for each candidate through detailed aggregation view, etc.) to the voter terminal 110 can give

일 실시 예에서, 전자 투표 제공 서버(140)는, 전자 투표에 익숙하지 못한 유권자를 위해서 연습으로 전자 투표할 수 있도록 하기 위한 모의투표를 상술한 바와 유사한 구성으로 제공할 수도 있다.In an embodiment, the electronic voting providing server 140 may provide a mock voting for voters unfamiliar with electronic voting in a configuration similar to that described above to enable electronic voting by practice.

일 실시 예에서, 전자 투표 제공 서버(140)는, 유권자가 팀을 형성할 수 있도록 팀 형성 창을 유권자 단말기(110)에 제공해 줄 수 있으며, 유권자 단말기(110)로부터 요청되는 팀 생성이나, 팀원 가입이나, 팀원 초대에 따라 이에 대응하여 팀을 생성시켜 주거나, 팀원으로 가입시켜 주거나, 팀원을 초대해 줄 수 있으며, 투표 완료 후에 팀별 투표율을 계산하여 가장 높은 투표율을 가진 팀을 우승 팀으로 선정해 줌으로써, 투표를 게임과 같이 수행하여 흥미 유발뿐만 아니라 투표에 적극 참여하도록 해 줄 수도 있다.In an embodiment, the electronic voting providing server 140 may provide a team formation window to the voter terminal 110 so that the voters can form a team, and may generate a team requested from the voter terminal 110 or a team member. In response to joining or team member invitation, you can create a team, join as a team member, or invite team members. , voting can be performed like a game to not only stimulate interest, but also encourage active participation in voting.

미러링 백업 서버(150)는, 실시간으로 전자 투표 제공 서버(140)의 전자 투표 처리에 대해서 미러링 백업을 수행하여 전자 투표 제공 서버(140)와의 동기화를 유지하며, 전자 투표 제공 서버(140)의 부하가 기 설정된 부하 이상인 경우 등과 같이 전자 투표 에러가 발생할 소지가 있는 경우를 감지하여 전자 투표 제공 서버(140) 대신에 상술한 바와 같은 전자 투표를 연속적으로 제공해 주도록 한다.The mirroring backup server 150 performs a mirroring backup for the electronic voting processing of the electronic voting providing server 140 in real time to maintain synchronization with the electronic voting providing server 140, and the load of the electronic voting providing server 140 Detects a case where an electronic voting error is likely to occur, such as when the load is greater than or equal to a preset load, and continuously provides the electronic voting as described above instead of the electronic voting providing server 140 .

일 실시 예에서, 미러링 백업 서버(150)는, 전자 투표 제공 서버(140)에서 이루어지는 선거 정보 및 유권자 정보에 대한 등록 처리, 미리 지정해 둔 선거 사이트에 대한 제공 처리, 온라인 투표 준수 사항에 대한 제공 처리, 동의 정보 확인 및 로그인 창 정보 제공 처리, 로그인 정보 복호화 및 유권자 정보 확인 처리, 유권자 인증 처리, 선거 정보 제공 처리, 투표 값 정보 복호화 및 투표 정보 산출 처리, 유권자의 로그인 정보 및 투표인증번호 수신 처리, 투표 인증 처리 등을 실시간으로 동기화해 줄 수 있다.In one embodiment, the mirroring backup server 150, registration processing for election information and voter information made in the electronic voting server 140, provision processing for a predetermined election site, provision processing for online voting compliance matters , processing consent information confirmation and login window information provision, login information decryption and voter information confirmation processing, voter authentication processing, election information provision processing, voting value information decoding and voting information calculation processing, voter login information and voting authentication number reception processing, It can synchronize voting authentication processing in real time.

투표 네트워크(160)는, 유선 통신망 또는 무선 통신망을 포함하며, 복수 개의 유권자 단말기(110)와 전자 투표 제공 서버(140)(또는, 미러링 백업 서버(150)) 사이의 통신을 연결하거나, 복수 개의 투표용 단말기(120)와 전자 투표 제공 서버(140)(또는, 미러링 백업 서버(150)) 사이의 통신을 연결하거나, 복수 개의 관리자 단말기(130)와 전자 투표 제공 서버(140)(또는, 미러링 백업 서버(150)) 사이의 통신을 연결하여, 서로 간의 데이터 송수신을 수행하도록 한다.The voting network 160 includes a wired communication network or a wireless communication network, and connects communication between a plurality of voter terminals 110 and the electronic voting providing server 140 (or mirroring backup server 150), or a plurality of To connect communication between the voting terminal 120 and the electronic voting server 140 (or mirroring backup server 150), or to connect a plurality of administrator terminals 130 and the electronic voting server 140 (or mirroring) By connecting communication between the backup servers 150), data transmission and reception are performed between each other.

블록체인 서버(170)는, 전자 투표 제공 서버(140)로부터 전송되는 투표 값 정보를 수신받으면, 해당 수신받은 투표 값 정보를 포함한 투표 블록을 생성해서 블록체인 네트워크(190) 상의 모든 저장장치(180)로 전송한 다음에, 저장장치(180)의 정보 상호 검증을 통해 검증 완료된 투표 블록을 체인에 결합하여 투표 완료해 준다.When the block chain server 170 receives the voting value information transmitted from the electronic voting providing server 140, it generates a voting block including the received voting value information and all storage devices 180 on the block chain network 190. ), and then, the voting block that has been verified through mutual verification of the information of the storage device 180 is combined with the chain to complete the voting.

일 실시 예에서, 블록체인 서버(170)는, 전자 투표 제공 서버(140)로부터 수신받은 투표 값 정보를 투표 블록에 담아 체인 형태로 연결시켜, 분산형 데이터 저장 기술을 이용하여 복수 개의 저장장치(180)에 동시에 이를 복제하여 저장해 줄 수 있다.In one embodiment, the block chain server 170 connects the voting value information received from the electronic voting providing server 140 in a voting block in a chain form, and using a distributed data storage technology, a plurality of storage devices ( 180) can be copied and saved at the same time.

일 실시 예에서, 블록체인 서버(170)는, 전자 투표 제공 서버(140)로부터 투표 값 정보를 요청받아 저장장치(180)에 저장해 둔 투표 값 정보를 전자 투표 제공 서버(140)로 전송해 줄 수 있다.In one embodiment, the block chain server 170 receives a request for voting value information from the electronic voting server 140 and transmits the voting value information stored in the storage device 180 to the electronic voting server 140 . can

저장장치(180)는, 블록체인 서버(170)로부터 전송되는 투표 값 정보를 서로 공유하고, 이를 대조해서 데이터 위조나 변조를 수행할 수 없도록 저장해 둔다.The storage device 180 shares the voting value information transmitted from the block chain server 170 with each other and stores it so that data forgery or falsification cannot be performed by collating it.

일 실시 예에서, 저장장치(180)는, 블록체인 서버(170)로부터 전송되는 투표 값 정보에 대한 상호 검증을 수행해서 해킹을 막도록 해 줄 수 있다.In an embodiment, the storage device 180 may prevent hacking by performing mutual verification on the voting value information transmitted from the block chain server 170 .

블록체인 네트워크(190)는, 블록체인 서버(170)와 복수 개의 저장장치(180) 간에 블록체인을 형성시켜 준다.The block chain network 190 forms a block chain between the block chain server 170 and the plurality of storage devices 180 .

상술한 바와 같은 구성을 가진 블록체인 이용 전자 투표 관리 시스템(100)은, 투표 결과가 1명의 오차 없이 선거별로 정확한 집계가 이루어지도록 하기 위한 정확성, 누가 어떤 후보자를 선택하였는지를 알 수 없도록, 즉 투표 결과와 투표자와의 관계에 대한 비밀이 유지되도록 하기 위한 3중 암호화 처리를 통한 비밀성; 본인 여부를 체크하여 투표자가 단 1회만 투표 가능하도록 하기 위한 중복 투표 방지성; 투표중일 때에 선거 결과를 집계하지 않으며 아무도 알 수 없도록, 즉 투표 도중 집계 결과가 나머지 투표에 영향을 주지 않도록 하기 위한 공명성; SSL, 보안프로그램, 방화벽 및 고성능 침입방지시스템인 IPS를 도입하여 자체 서버에 전자투표시스템 구축으로, 외부 침입이나 디도스(Ddos), 웜(Worm), 바이러스(Virus), 스파이웨어(Spyware), 해킹(Hacking) 등과 같은 각종 위험에 대처함과 동시에 유해 트래픽을 탐지하고 방어하여 보안 사고를 사전에 예방하도록 하기 위한 보안성; 투표 조건에 해당하는 사람만 투표 권한이 있고 투표권이 없는 사람의 투표 행위가 방지되도록 하기 위한 적격성; 투표결과가 3중 암호화되어 저장되어 누구도 투표 결과를 위조할 수 없고 복호화키를 입력해야 선거 결과가 복호화되도록 하기 위한 무결성; 투표자 로그 기록을 통해 부정 투표자에 의한 선거 방해를 방지하도록 하기 위한 부정 방지성을 가지도록 구현함으로써, 안전하고 신뢰할 만한 전자 투표가 이루어지도록 한다.The electronic voting management system 100 using the block chain having the configuration as described above is accurate to ensure that the voting results are accurately counted for each election without error of one person, so that it is not possible to know who selected which candidate, that is, the voting result Confidentiality through triple encryption processing to ensure that confidentiality of the relationship with the voter is maintained; Duplicate voting prevention to check who you are and allow voters to vote only once; Responsiveness to ensure that the election results are not counted while voting and that no one knows, i.e., the count results during voting do not affect the rest of the vote; By introducing SSL, security program, firewall, and IPS, which is a high-performance intrusion prevention system, an electronic voting system is built on its own server. Security to prevent security accidents in advance by detecting and defending harmful traffic while coping with various risks such as hacking; Eligibility to ensure that only those who meet the voting conditions have the right to vote and that voting by non-voting persons is prevented; Integrity to ensure that the voting results are stored in triple encryption so that no one can forge the voting results and the election results must be decrypted only by entering the decryption key; By implementing anti-corruption properties to prevent election interference by fraudulent voters through voter log records, secure and reliable electronic voting is made.

상술한 바와 같은 구성을 가진 블록체인 이용 전자 투표 관리 시스템(100)은, 블록체인(block-chain) 서버(170), 복수 개의 저장장치(180), 블록체인 네트워크(190)에 의해 형성된 블록체인을 이용하여 투표 처리하면서, 각종 투표 방식들을 전자 투표로 통합적으로 관리 및 운용함과 동시에 미러링 백업(mirroring backup) 동기화를 수행하도록 구현함으로써, 관리자가 유권자들의 투표 내용을 확인할 수 없어 투표 진행 중의 상황 파악이나 투표 내용 조작을 할 수 없도록 하며, 이에 전자 투표의 활성화는 물론이고 전자 투표의 비밀성 및 보안성을 강화할 수 있으며, 투표 과정 전반에 걸쳐 발생하는 투표 이력에 대한 관리뿐만 아니라, 중복 투표 및 무자격자에 의한 투표 검증 등 투표 전반에 걸친 과정의 신뢰성을 완전하게 검증할 수 있어, 보다 높은 수준의 무결성을 보증해 줄 수 있도록 한다.The electronic voting management system 100 using a block chain having the configuration as described above is a block chain formed by a block-chain server 170 , a plurality of storage devices 180 , and a block chain network 190 . By implementing the integrated management and operation of various voting methods through electronic voting and synchronization of mirroring backups while processing voting using However, it is possible to not only activate electronic voting but also to strengthen the confidentiality and security of electronic voting, and to manage voting history that occurs throughout the voting process, as well as duplicate voting and unqualified persons It is possible to completely verify the reliability of the overall voting process, such as voting verification by

상술한 바와 같은 구성을 가진 블록체인 이용 전자 투표 관리 시스템(100)은, 유권자 단말기(110)를 이용한 모바일 전자 투표를 수행하거나, 유권자 단말기(110)를 이용하여 인터넷을 통한 온라인 전자 투표를 실시하거나, 별도의 투표용 단말기(120)를 이용하여 전자 투표를 진행하는 등과 같은 각종 투표 방식들을 전자 투표로 통합적으로 관리 및 운용함과 동시에, 미러링 백업 서버(150)를 통한 전자 투표 제공 서버(140)와의 미러링 백업 동기화를 수행하도록 함으로써, 자신이 지지하는 후보자 또는 안건을 클릭만 하면 되므로 투표하는 시간이 대폭 단축될 수 있으며, 실시간으로 진행되기 때문에 투표가 끝남과 동시에 개표 결과를 바로 확인할 수 있으며, 집계도 바로 이루어지므로 개표 인원이 필요치 않아 개표 업무가 효율적이며, 투표 의사의 정확한 반영으로 기재 오류, 오자, 탈자에 의한 무효표, 의문표를 방지할 수 있으며, 안건별로 신속하고 정확한 통계 자료를 쉽게 얻을 수 있으며, 한 번의 로그인으로 여러 선거를 동시에 진행할 수 있으며, 선거 진행 후에 선거에 참여한 개개인의 투표시간 및 투표참여 여부를 바로 확인할 수 있으며, 또한 실시간으로 투표를 생성시켜 바로 진행할 수 있으며, 투표 결과를 데이터베이스화하여 투표 결과를 언제든지 검색 및 열람할 수 있도록 한다.The electronic voting management system 100 using a block chain having the configuration as described above performs mobile electronic voting using the voter terminal 110, or conducts online electronic voting through the Internet using the voter terminal 110, or , a separate voting terminal 120 to manage and operate various voting methods such as conducting electronic voting in an integrated manner through electronic voting, and at the same time, electronic voting server 140 through a mirroring backup server 150 By synchronizing the mirroring backup with Since the voting is done immediately, the counting task is efficient because no people are required to count the votes, and it is possible to prevent entry errors, misspellings, invalid votes due to misspellings, and questionable votes by accurately reflecting the voting intention. , multiple elections can be conducted at the same time with a single login, and after the election, you can check the voting time and voting participation of each individual who participated in the election immediately. so that voting results can be searched and viewed at any time.

상술한 바와 같은 구성을 가진 블록체인 이용 전자 투표 관리 시스템(100)은, 미러링 백업 서버(150)에 의해서 전자 투표 제공 서버(140)의 미러링 백업을 운영하도록 함으로써, 중앙서버 용량의 증가 요구를 감소시켜 줄 수 있으며, 데이터 처리 용량을 분산시켜 효율적인 운영이 가능하며, 서버 마비 시에도 다른 투표 방식으로 계속적인 투표가 이루어질 수 있도록 한다.The block chain using electronic voting management system 100 having the configuration as described above reduces the need to increase the capacity of the central server by operating the mirroring backup of the electronic voting providing server 140 by the mirroring backup server 150 Efficient operation is possible by distributing data processing capacity, and it enables continuous voting by other voting methods even when the server is down.

도 2는 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 방법을 제1예로 설명하는 도면이며, 도 3은 도 2에 있는 온라인 투표 준수 사항 표시를 예로 나타낸 도면이며, 도 4는 도 2에 있는 로그인 창 표시를 예로 나타낸 도면이며, 도 5는 도 2에 있는 유권자 인증을 예로 나타낸 도면이며, 도 6은 도 2에 있는 선거 리스트 확인 창 표시를 예로 나타낸 도면이며, 도 7은 도 2에 있는 투표 창 표시를 예로 나타낸 도면이며, 도 8은 도 2에 있는 투표완료 표시를 예로 나타낸 도면이다.2 is a diagram illustrating an electronic voting management method using a block chain according to an embodiment of the present invention as a first example, FIG. 3 is a diagram showing the online voting compliance information display in FIG. 2 as an example, and FIG. 4 is FIG. It is a view showing the login window display in FIG. 5 as an example, FIG. 5 is a view showing the voter authentication in FIG. 2 as an example, and FIG. It is a view showing the voting window display as an example, and FIG. 8 is a view showing the voting completion display in FIG. 2 as an example.

도 2 내지 도 8을 참조하면, 우선 관리자 단말기(130)에서는, 유권자가 투표해야 할 선거 정보(예를 들어, 선거 또는 투표 리스트)를 복호화키(또는, 복수 개의 개표키)와 함께 생성시키며, 해당 생성된 복호화키를 관리자의 이메일(또는, 핸드폰)로 전송해 주고(또는, 해당 생성된 각 개표키를 각각의 개표자(예를 들어, 선거관리위원장 및 선거관리위원 등)의 이메일(또는, 핸드폰)로 각각 전송해 주고) 해당 생성된 선거 정보를 전자 투표 제공 서버(140)에 제공해 준다. 이에, 전자 투표 제공 서버(140)에서는, 관리자 단말기(130)로부터 수신되는 선거 정보를 데이터베이스에 등록해 준다(S201).2 to 8, first, in the manager terminal 130, the election information (eg, an election or a voting list) to be voted by the voter is generated together with a decryption key (or a plurality of vote counting keys), Send the generated decryption key to the administrator's email (or mobile phone) (or send each generated ballot counting key to the email (or , mobile phone)) and provides the generated election information to the electronic voting providing server 140 . Accordingly, the electronic voting server 140 registers the election information received from the manager terminal 130 in the database (S201).

상술한 단계 S201에서 선거 정보를 등록한 후에, 관리자 단말기(130)에서는, 유권자 엑셀 입력을 통해 투표할 권리를 가지고 있는 유권자 정보(예를 들어, 유권자의 휴대폰 번호나 이메일주소 등)를 암호화시켜 전자 투표 제공 서버(140)에 제공해 준다. 이에, 전자 투표 제공 서버(140)에서는, 관리자 단말기(130)로부터 수신되는 유권자 정보를 데이터베이스에 등록해 준다(S202).After registering the election information in the above-described step S201, the manager terminal 130 encrypts the voter information (eg, the voter's mobile phone number or e-mail address, etc.) having the right to vote through the voter Excel input to vote electronically. It is provided to the provision server 140 . Accordingly, the electronic voting server 140 registers the voter information received from the manager terminal 130 in the database (S202).

상술한 단계 S202에서 유권자 정보를 등록한 후에, 지정된 투표 시간이 되는 경우에, 관리자 단말기(130)에서는, 후보자 정보에 대한 최종 지정과 함께 투표 시작을 알리기 위한 투표 시작 정보를 생성시켜 전자 투표 제공 서버(140)로 전송해 준다. 이에, 전자 투표 제공 서버(140)에서는, 관리자 단말기(130)로부터 수신되는 투표 시작 정보에 따라, 유권자가 직접 투표소에 나오지 않고 가정이나 학교 또는 인터넷이 가능한 공간(또는, 모바일 통신이 가능한 공간)에서 투표할 수 있도록 하기 위해서, 선거관리위원회 등이 미리 지정해 둔 선거 사이트를 투표 네트워크(160)를 통해 유권자 단말기(110)로 제공해 준다.After registering the voter information in the above-described step S202, when the designated voting time comes, the manager terminal 130 generates voting start information to inform the start of voting along with the final designation of candidate information to provide an electronic voting server ( 140) is sent. Accordingly, in the electronic voting server 140, according to the voting start information received from the manager terminal 130, the voter does not come to the polling place directly at home, school, or a space where the Internet is available (or a space where mobile communication is possible) In order to be able to vote, an election site previously designated by the election commission or the like is provided to the voter terminal 110 through the voting network 160 .

그러면, PC, 노트북, PDA, 스마트폰, 휴대폰 등과 같은 인터넷이 가능한 통신 단말기인 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)가 투표 네트워크(160)를 통해 제공해 주는 지정 선거 사이트에 접속하게 된다.Then, in the voter terminal 110 , which is an Internet-capable communication terminal such as a PC, a laptop computer, a PDA, a smart phone, a mobile phone, etc., the electronic voting server 140 accesses a designated election site provided through the voting network 160 . do.

예를 들어, 유권자 단말기(110)에서는, 유권자에 의해 열려진 인터넷 웹브라우저를 통해서 직접적으로 선거 사이트 주소로 접속할 수 있거나, 홈 페이지를 통해서 베너 링크되어 있는 선거 사이트로 접속할 수 있으며, 또한 스마트폰이나 모바일 태블릿 등을 이용하여 접속하는 경우에는 이에 대응하는 모바일용 선거 사이트로 자동 접속되도록 할 수도 있다.For example, in the voter terminal 110 , it is possible to directly access an election site address through an Internet web browser opened by the voter, or to an election site linked to a banner through a home page, and also a smartphone or mobile device. When accessing using a tablet or the like, it is possible to automatically connect to a corresponding mobile election site.

다른 예를 들어, 유권자 단말기(110)에서는, 투표를 유권자에게 알리기 위한 알림문자를 전자 투표 제공 서버(140)로부터 제공받아, 알림문자 내에 포함되어 있는 선거 사이트 주소를 클릭하는 경우에 링크되어 있는 선거 사이트로 접속해 줄 수도 있다.For another example, in the voter terminal 110, a notification text for notifying the voters is provided from the electronic voting providing server 140, and an election linked when an election site address included in the notification text is clicked. You can also connect to the site.

그런 다음에, 전자 투표 제공 서버(140)에서는, 지정 선거 사이트를 통해 접속된 유권자 단말기(110)(예를 들어, 유권자 단말기(110)의 어드레스, 고유 식별자 등)를 확인하여 온라인(또는, 모바일) 투표 준수 사항(또는, 투표 절차에 대한 정보)을 해당 확인된 유권자 단말기(110)로 제공하게 된다. 이에, 유권자 단말기(110)에서는, 지정 선거 사이트를 통해 온라인 투표 준수 사항(또는, 투표 절차를 포함한 정보)을 제공받아 도 3에 도시된 바와 같이 디스플레이해 준다(S203).Then, the electronic voting providing server 140 checks the voter terminal 110 (eg, the address of the voter terminal 110 , a unique identifier, etc.) accessed through the designated election site to be online (or mobile ) voting compliance matters (or information on the voting procedure) will be provided to the confirmed voter terminal 110 . Accordingly, the voter terminal 110 receives the online voting compliance information (or information including the voting procedure) through the designated election site and displays it as shown in FIG. 3 ( S203 ).

상술한 바와 같은 단계 S203에서 디스플레이해 준 온라인 투표 준수 사항에 있어서, 도 3에 도시된 바와 같은 온라인 투표 준수 사항에 대한 동의를 유권자가 입력 수단(예를 들어, 마우스 등에 의한 포인트)을 통해 클릭하게 되면, 유권자 단말기(110)에서는, 유권자의 동의 입력에 따라 온라인 투표 준수 사항에 대해 동의하였음을 알려주기 위한 동의 정보를 생성시켜 전자 투표 제공 서버(140)로 제공해 준다. 그러면, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 수신되는 동의 정보를 확인하여 로그인 창 정보를 유권자 단말기(110)로 제공해 준다.In the online voting compliance matters displayed in step S203 as described above, the voter clicks the consent for the online voting compliance matters as shown in FIG. 3 through an input means (eg, a point by a mouse, etc.) When done, the voter terminal 110 generates consent information for informing that the voter agrees to the online voting observances according to the voter's consent input and provides it to the electronic voting providing server 140 . Then, the electronic voting providing server 140 checks the consent information received from the voter terminal 110 and provides the login window information to the voter terminal 110 .

이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 로그인 창 정보(또는, 후보자 공약보기를 입력하기 위한 클릭 창)를 도 4에 도시된 바와 같이 디스플레이해 준다(S204).Accordingly, the voter terminal 110 displays the login window information (or a click window for inputting the candidate promise view) received from the electronic voting providing server 140 as shown in FIG. 4 ( S204 ).

상술한 바와 같은 단계 S204에서 디스플레이해 준 로그인 창에 있어서, 유권자가 자기 자신의 로그인 정보(즉, 아이디 및 패스워드)를 입력 수단(예를 들어, 터치패널, 키패드 등)을 통해 입력하게 되면, 유권자 단말기(110)에서는, 해당 입력받은 로그인 정보를 암호화시켜 전자 투표 제공 서버(140)로 제공해 준다.In the login window displayed in step S204 as described above, when a voter inputs their own login information (ie, ID and password) through an input means (eg, a touch panel, a keypad, etc.), the voter The terminal 110 encrypts the received login information and provides it to the electronic voting server 140 .

예를 들어, 유권자 단말기(110)에서는, 유권자가 입력한 자기 자신의 이름 및 학번을 로그인 클릭을 통해 전자 투표 제공 서버(140)로 제공할 수 있으며, 또한 후보자 공약 보기를 클릭하는 경우에 전자 투표 제공 서버(140)로부터 후보자의 공약을 제공받아 보여 줄 수도 있다.For example, in the voter terminal 110, the voter's own name and student number input by the voter may be provided to the electronic voting providing server 140 through a login click, and also electronic voting when the candidate's pledge view is clicked A promise of a candidate may be received from the providing server 140 and displayed.

그러면, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 로그인 정보를 수신받아 복호화한 후에, 해당 복호화된 로그인 정보가 데이터베이스에 저장된 유권자 정보에 등록되어 있는지를 확인하고, 해당 확인된 유권자 정보를 이용하여 유권자 단말기(110)에 대해 유권자 인증을 수행하도록 한다(S205).Then, the electronic voting server 140 receives and decrypts the login information from the voter terminal 110, checks whether the decrypted login information is registered in the voter information stored in the database, and the confirmed voter information to perform voter authentication for the voter terminal 110 by using (S205).

예를 들어, 상술한 단계 S205에서의 유권자 인증이 휴대폰의 SMS을 통한 인증 방식인 경우, 전자 투표 제공 서버(140)에서는, 투표인증 창 정보를 유권자 단말기(110)로 제공해 주게 된다. 이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 투표인증 창 정보(또는, 인증번호받기를 입력하기 위한 클릭 창)를 도 5에 도시된 바와 같이 디스플레이해 줄 수 있다. 이에 따라, 유권자가 자기 자신의 핸드폰 번호를 입력 수단을 통해 입력한 다음에 인증번호받기를 클릭하게 되면, 유권자 단말기(110)에서는, 해당 입력받은 핸드폰 번호 및 인증번호받기 요청 정보를 암호화시켜 전자 투표 제공 서버(140)로 제공해 줄 수 있다. 그러면, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 핸드폰 번호 및 인증번호받기 요청 정보를 수신받아 투표인증번호를 랜덤하게 생성시키고, 해당 생성시킨 투표인증번호를 유권자의 휴대폰 번호로 SMS로 전송하게 된다. 이에, 유권자가 SMS를 통해 수신받은 투표인증번호를 유권자 단말기(110)를 통해 입력한 다음에 투표인증 확인을 클릭하게 되면, 유권자 단말기(110)에서는, 입력받은 투표인증번호 및 투표인증 확인 요청 정보를 전자 투표 제공 서버(140)로 전송해 줄 수 있다. 이에 따라, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 수신되는 투표인증번호와 이전에 생성시킨 투표인증번호가 일치하는지를 확인하여 유권자가 정당한지의 여부를 인증해 줄 수 있다.For example, when the voter authentication in step S205 described above is an authentication method through the mobile phone SMS, the electronic voting providing server 140 provides the voting authentication window information to the voter terminal 110 . Accordingly, the voter terminal 110 may display the voting authentication window information (or a click window for inputting an authentication number) received from the electronic voting providing server 140 as shown in FIG. 5 . Accordingly, when the voter inputs his/her mobile phone number through the input means and then clicks Receive authentication number, the voter terminal 110 encrypts the received mobile phone number and authentication number request information for electronic voting It may be provided to the providing server 140 . Then, the electronic voting server 140 receives the mobile phone number and authentication number request information from the voter terminal 110 , randomly generates a voting authentication number, and sends the generated vote authentication number to the mobile phone number of the voter by SMS will be sent to Accordingly, when the voter enters the vote authentication number received through SMS through the voter terminal 110 and then clicks the vote authentication confirmation, the voter terminal 110 receives the vote authentication number and the vote authentication confirmation request information may be transmitted to the electronic voting server 140 . Accordingly, the electronic voting providing server 140 may verify whether or not the voter is legitimate by checking whether the voting authentication number received from the voter terminal 110 and the previously generated voting authentication number match.

다른 예를 들어, 상술한 단계 S205에서의 유권자 인증이 이메일을 통한 인증 방식인 경우, 전자 투표 제공 서버(140)에서는, 투표인증 창 정보를 유권자 단말기(110)로 제공해 주게 된다. 이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 투표인증 창 정보(또는, 인증번호받기를 입력하기 위한 클릭 창)를 도 5에 도시된 바와 같이 디스플레이해 줄 수 있다. 이에 따라, 유권자가 자기 자신의 이메일 주소를 입력 수단을 통해 입력한 다음에 인증번호받기를 클릭하게 되면, 유권자 단말기(110)에서는, 해당 입력받은 이메일 주소 및 인증번호받기 요청 정보를 암호화시켜 전자 투표 제공 서버(140)로 제공해 줄 수 있다. 그러면, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 이메일 주소 및 인증번호받기 요청 정보를 수신받아 투표인증번호를 랜덤하게 생성시키고, 해당 생성시킨 투표인증번호를 유권자의 이메일 주소로 메시지(메일)로 전송하게 된다. 이에, 유권자가 이메일을 통해 수신받은 투표인증번호를 유권자 단말기(110)를 통해 입력한 다음에 투표인증 확인을 클릭하게 되면, 유권자 단말기(110)에서는, 해당 입력받은 투표인증번호 및 투표인증 확인 요청 정보를 전자 투표 제공 서버(140)로 전송해 줄 수 있다. 이에 따라, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 수신되는 투표인증번호와 이전에 생성시킨 투표인증번호가 일치하는지를 확인하여 유권자가 정당한지의 여부를 인증해 줄 수 있다.For another example, if the voter authentication in step S205 described above is an authentication method through e-mail, the electronic voting providing server 140 provides the voting authentication window information to the voter terminal 110 . Accordingly, the voter terminal 110 may display the voting authentication window information (or a click window for inputting an authentication number) received from the electronic voting providing server 140 as shown in FIG. 5 . Accordingly, when the voter enters his/her own e-mail address through the input means and then clicks Receive Authentication Number, the voter terminal 110 encrypts the received e-mail address and the authentication number request information to receive an electronic voting It may be provided to the providing server 140 . Then, the electronic voting providing server 140 receives the email address and authentication number request information from the voter terminal 110 to randomly generate a voting authentication number, and sends the generated voting authentication number to the voter's email address as a message (e-mail) will be sent. Accordingly, when the voter enters the voting verification number received through the e-mail through the voter terminal 110 and then clicks the voting verification confirmation, the voter terminal 110 requests the received voting verification number and voting verification confirmation Information may be transmitted to the electronic voting providing server 140 . Accordingly, the electronic voting providing server 140 may verify whether or not the voter is legitimate by checking whether the voting authentication number received from the voter terminal 110 and the previously generated voting authentication number match.

상술한 바와 같은 단계 S205에서 유권자 인증을 수행한 후에, 전자 투표 제공 서버(140)에서는, 선거 리스트 확인 및 투표를 하기 위한 선거 정보를 데이터베이스로부터 판독하여 유권자 단말기(110)로 제공해 주게 된다. 이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 선거 정보(즉, 선거 리스트 확인 창 및 투표 창 정보)를 도 6 및 도 7에 도시된 바와 같이 디스플레이해 준다(S206).After the voter authentication is performed in step S205 as described above, the electronic voting providing server 140 reads the election information for checking the election list and voting from the database and provides it to the voter terminal 110 . Accordingly, the voter terminal 110 displays the election information (ie, the election list confirmation window and voting window information) received from the electronic voting providing server 140 as shown in FIGS. 6 and 7 (S206) .

상술한 바와 같은 단계 S206에서 디스플레이해 준 선거 정보에 있어서, 유권자가 선거할 리스트를 선택하여 투표시작을 클릭한 다음에 후보자를 선택하여 투표를 클릭하게 되면, 유권자 단말기(110)에서는, 해당 입력받은 유권자의 투표 값 정보를 암호화시켜 전자 투표 제공 서버(140)로 제공해 줌으로써, 이러한 온라인 전자투표 방식(또는, 모바일 전자투표 방식)에 의해 시간과 장소에 구애받지 않아 효율적이면서, 여러 지역에서 많은 인원(유권자)이 동시에 투표할 수 있어 비용이나 시간을 절감할 수 있다.In the election information displayed in step S206 as described above, when a voter selects a list to be elected and clicks start voting, then selects a candidate and clicks voting, the voter terminal 110 receives the input By encrypting the voter's vote value information and providing it to the electronic voting server 140, this online electronic voting method (or mobile electronic voting method) is efficient because it is not limited by time and place, and a large number of people ( voters) can vote at the same time, saving money and time.

예를 들어, 유권자 단말기(110)에서는, 유권자가 입력 수단을 통해 디스플레이된 소속학과 선서, 단과대학 선거, 총학생회장 선거의 리스트 중에서 하나를 선택하여 투표시작을 클릭하도록 해 줄 수 있다. 이에, 전자 투표 제공 서버(140)에서는, 해당 선택된 리스트에 해당하는 후보자 투표페이지를 유권자 단말기(110)를 통해 디스플레이시켜 줄 수 있다. 이때, 유권자 단말기(110)에서는, 유권자가 디스플레이된 후보자 투표페이지의 후보에 마우스를 올리면 희미한 도장 모양으로 디스플레이해 줄 수 있으며, 또한 유권자가 후보에 마우스를 올린 상태에서 클릭을 하게 되면 도장이 선명해지면서 선택되도록 할 수 있다. 그리고 유권자 단말기(110)에서는, 투표 결과에 기권으로 반영하기 위해서 기권을 클릭하도록 해 줄 수도 있으며, 또한 다른 선거 리스트에 대한 투표를 수행하기 위해서 다음 버튼을 클릭하도록 해 줄 수도 있다.For example, in the voter terminal 110, the voter may select one of the list of affiliated department oath, college election, and student council president election displayed through an input means and click start voting. Accordingly, the electronic voting providing server 140 may display the candidate voting page corresponding to the selected list through the voter terminal 110 . At this time, in the voter terminal 110, when the voter puts his/her mouse on the candidate on the displayed candidate voting page, it can be displayed in a faint stamp shape. It can be chosen as you go. And, in the voter terminal 110, it may be possible to click abstention in order to be reflected as abstention in the voting result, and also to click the next button to perform a vote for another election list.

예를 들어, 단일 후보인 경우에, 전자 투표 제공 서버(140)에서는, 찬성과 반대 중에 하나를 클릭하여 도장이 선명해지면서 선택한 후에 투표 완료를 클릭되도록 하기 위한 후보자 투표페이지를 유권자 단말기(110)를 통해 디스플레이시켜 줄 수도 있다.For example, in the case of a single candidate, in the electronic voting providing server 140, the voter terminal 110 displays a candidate voting page for clicking on voting completion after selecting one of the votes for and against by clicking one of the voters terminal 110 It can also be displayed through .

전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 투표 값 정보를 수신받아 복호화한 후에 복호화된 투표 값 정보를 기록 보관하지 않고 블록체인 서버(170)에 전송하여 투표 처리해 주게 된다. 이에, 블록체인 서버(170)에서는, 전자 투표 제공 서버(140)로부터 전송되는 투표 값 정보를 수신받으면, 해당 수신받은 투표 값 정보를 포함한 투표 블록을 생성해서 블록체인 네트워크(190) 상의 모든 저장장치(180)로 전송한 다음에, 저장장치(180)의 정보 상호 검증을 통해 검증 완료된 투표 블록을 체인에 결합하여 투표 완료해 준다. 그리고 저장장치(180)에서는, 블록체인 서버(170)로부터 전송되는 투표 값 정보를 서로 공유하고, 이를 대조해서 데이터 위조나 변조를 수행할 수 없도록 저장해 둔다(S207).The electronic voting server 140 receives and decodes the vote value information from the voter terminal 110, and then transmits the decoded vote value information to the block chain server 170 without recording and processing the vote. Accordingly, in the block chain server 170, upon receiving the voting value information transmitted from the electronic voting providing server 140, it generates a voting block including the received voting value information and all storage devices on the block chain network 190 After transmission to 180, the voting block verified through mutual verification of information in the storage device 180 is combined with the chain to complete voting. And in the storage device 180, the voting value information transmitted from the block chain server 170 is shared with each other and stored so that data forgery or falsification cannot be performed by collating this information (S207).

예를 들어, 블록체인 서버(170)에서는, 전자 투표 제공 서버(140)로부터 수신받은 투표 값 정보를 투표 블록에 담아 체인 형태로 연결시켜, 분산형 데이터 저장 기술을 이용하여 복수 개의 저장장치(180)에 동시에 이를 복제하여 저장해 줄 수 있다. 이때, 저장장치(180)에서는, 블록체인 서버(170)로부터 전송되는 투표 값 정보에 대한 상호 검증을 수행해서 해킹을 막도록 해 줄 수 있다.For example, in the block chain server 170, the voting value information received from the electronic voting providing server 140 is put in a voting block and connected in a chain form, and a plurality of storage devices 180 using a distributed data storage technology ) can be copied and saved at the same time. At this time, the storage device 180 may prevent hacking by performing mutual verification on the voting value information transmitted from the block chain server 170 .

상술한 단계 S207에서 투표 블록을 체인 결합하여 투표 완료한 후에, 전자 투표 제공 서버(140)에서는, 투표 완료를 알리기 위한 투표완료 정보를 데이터베이스로부터 판독하여 유권자 단말기(110)로 제공해 주게 된다. 이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 투표완료 정보를 도 8에 도시된 바와 같이 디스플레이해 준다(S208).After the voting block is chain-coupled in the above-described step S207 to complete the voting, the electronic voting server 140 reads the voting completion information for notifying the completion of the voting from the database and provides it to the voter terminal 110 . Accordingly, the voter terminal 110 displays the voting completion information received from the electronic voting server 140 as shown in FIG. 8 (S208).

예를 들어, 유권자 단말기(110)는 투표가 완료되는 경우에 "투표를 완료하였습니다."란 음성을 출력시켜 준 후에 자동으로 로그아웃시켜 줄 수 있으며, 또한 자동으로 선거인(투표자)의 투표한 시간, 인증번호 등을 로그로 기록시켜 줄 수도 있다.For example, the voter terminal 110 may automatically log out after outputting a voice saying "voting is complete" when voting is completed, and also automatically the time the elector (voter) voted , authentication number, etc. can be recorded as a log.

상술한 단계 S208과 같이 투표 종료 후에, 전자 투표 제공 서버(140)에서는, 기 설정해 둔 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 블록체인 서버(170)로 투표 값 정보를 요청하도록 한다. 이에, 블록체인 서버(170)에서는, 전자 투표 제공 서버(140)로부터 투표 값 정보를 요청받아 저장장치(180)에 저장해 둔 투표 값 정보를 전자 투표 제공 서버(140)로 전송해 주게 된다. 그러면, 전자 투표 제공 서버(140)에서는, 블록체인 서버(170)로부터 투표 값 정보를 수신받아 투표 결과를 집계하여 투표 정보(예를 들어, 선거별 투표율, 지역별 투표 진행률, 선거별 각 당선자 및 득표율, 상세집계보기를 통한 후보자별 집계 결과 정보 등)를 산출하여 데이터베이스에 등록해 준다(S209).After the end of voting as in step S208, the electronic voting server 140 waits until the preset voting completion time is reached, and when the voting completion time comes, the voting value information is sent to the block chain server 170 to request Accordingly, the block chain server 170 receives a request for voting value information from the electronic voting server 140 and transmits the voting value information stored in the storage device 180 to the electronic voting server 140 . Then, the electronic voting server 140 receives the voting value information from the block chain server 170, aggregates the voting results, and collects voting information (eg, voter turnout for each election, voting progress by region, and each winner and voter turnout for each election). , information on aggregation results for each candidate through detailed aggregation view, etc.) is calculated and registered in the database (S209).

상술한 단계 S209에서 투표 정보를 등록해 준 다음에, 관리자 단말기(130)에서는, 기 설정해 둔 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 관리자로부터의 복호화키를 입력받도록(또는, 다수의 개표자로부터 각 개표키를 입력받도록) 할 수 있으며, 이때 이전에 생성시킨 복호화키와 일치하는지를 확인하고(또는, 이전에 생성시킨 각 개표키와 일치하는지를 확인하고), 일치하는 경우에 개표 정보를 생성시켜 전자 투표 제공 서버(140)로 전송해 주게 된다. 이에, 전자 투표 제공 서버(140)에서는, 관리자 단말기(130)로부터 수신되는 개표 정보에 따라 결과보기 창 정보를 유권자 단말기(110)로 제공하게 된다.After registering the voting information in step S209 described above, the manager terminal 130 waits until the preset voting completion time arrives, and when the voting completion time arrives, the manager terminal 130 receives a decryption key from the manager. (or to receive each counting key from multiple voters), check whether it matches the previously generated decryption key (or check whether it matches each previously generated counting key), In this case, the ballot counting information is generated and transmitted to the electronic voting providing server 140 . Accordingly, the electronic voting server 140 provides the result view window information to the voter terminal 110 according to the ballot count information received from the manager terminal 130 .

그러면, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 결과보기 창 정보를 디스플레이해 준 다음에, 유권자의 결과보기 입력에 따라 결과보기 요청 정보를 전자 투표 제공 서버(140)로 전송해 주게 된다. 이에 따라, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 결과보기 요청 정보를 수신받아 데이터베이스에 등록된 투표 정보(예를 들어, 선거별 투표율, 지역별 투표 진행률, 선거별 각 당선자 및 득표율, 상세집계보기를 통한 후보자별 집계 결과 정보 등)를 유권자 단말기(110)로 제공해 주게 된다. 이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 투표 정보를 디스플레이해 준다(S210).Then, the voter terminal 110 displays the result view window information received from the electronic voting providing server 140 , and then transmits the result view request information to the electronic voting providing server 140 according to the voter's result view input. will send Accordingly, the electronic voting providing server 140 receives the result view request information from the voter terminal 110 and receives the voting information registered in the database (eg, voter turnout by election, voting progress by region, and each winner and voter turnout by election) , information on aggregate results for each candidate through detailed aggregate view) is provided to the voter terminal 110 . Accordingly, the voter terminal 110 displays the voting information received from the electronic voting providing server 140 (S210).

상술한 단계 S201 내지 S210을 수행하는 동안에, 미러링 백업 서버(150)에서는, 상술한 바와 같이 전자 투표 제공 서버(140)에서 처리하는 전자 투표 동작에 대해서 실시간으로 미러링 백업을 수행하여 전자 투표 제공 서버(140)와의 전자 투표 동작에 관한 동기화를 유지하게 되는데, 이때 만약에 전자 투표 제공 서버(140)의 부하가 기 설정된 부하 이상인 경우 등과 같이, 전자 투표 에러가 발생할 소지가 있는 경우를 감지하게 되면, 전자 투표 제공 서버(140)의 전자 투표 동작을 중지시키고 그 대신에 전자 투표 동작을 계속해서 제공해 주도록 한다.While performing the above-described steps S201 to S210, the mirroring backup server 150 performs a real-time mirroring backup for the electronic voting operation processed by the electronic voting server 140 as described above to provide the electronic voting server ( 140) and the synchronization of the electronic voting operation is maintained. At this time, if it is detected that there is a possibility that an electronic voting error may occur, such as when the load of the electronic voting providing server 140 is greater than or equal to a preset load, electronic voting Stop the electronic voting operation of the voting providing server 140 and instead continue to provide the electronic voting operation.

예를 들어, 미러링 백업 서버(150)는, 전자 투표 제공 서버(140)에서 이루어지는 선거 정보 등록 처리(S201), 유권자 정보 등록 처리(S202), 투표 준수 사항 디스플레이 처리(S203), 로그인 창 디스플레이 처리(S204), 유권자 인증 처리(S205), 선거 정보 디스플레이 처리(S206), 투표 블록 체인 결합 처리(S207), 투표완료 디스플레이 처리(S208), 투표 정보 등록 처리(S209), 투표 정보 디스플레이 처리(S210)를 실시간으로 동기화해 줄 수 있다.For example, mirroring backup server 150, election information registration processing (S201), voter information registration processing (S202), voting compliance display processing (S203), login window display processing made in the electronic voting providing server 140 (S203) (S204), voter authentication processing (S205), election information display processing (S206), voting block chain combination processing (S207), voting completion display processing (S208), voting information registration processing (S209), voting information display processing (S210) ) can be synchronized in real time.

도 9는 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 방법을 제2예로 설명하는 도면이며, 도 10은 도 9에 있는 등록 카드 출력을 예로 나타낸 도면이며, 도 11은 도 9에 있는 로그인 정보 및 투표인증번호 제공을 예로 나타낸 도면이다.9 is a diagram for explaining an electronic voting management method using a block chain according to an embodiment of the present invention as a second example, FIG. 10 is a diagram showing the registration card output in FIG. 9 as an example, and FIG. 11 is the login in FIG. It is a diagram showing the provision of information and voting authentication number as an example.

도 9 내지 도 11을 참조하면, 단계 S301 및 S302는, 상술한 단계 S201 및 S202와 그 구성이 유사하므로 그 설명을 생략한다.9 to 11 , steps S301 and S302 have similar configurations to steps S201 and S202 described above, and thus descriptions thereof will be omitted.

유권자가 미리 지정해 둔 선거구에서 지참한 신분증으로 본인 확인을 수행한 경우, 선거구에 직접 나와서 투표하도록 하기 위해 선거구에 설치된 투표용 단말기(120)에서는, 투표인증번호를 암호화하여 인쇄시켜 주거나, 투표인증번호를 랜덤하게 생성시키고 해당 생성시킨 투표인증번호를 암호화하여 등록된 카드(예를 들어, QR 코드, 바코드 카드)를 본인 확인된 유권자에게 도 10에 도시된 바와 같이 출력시켜 준다(S303).In the case where the voter has performed identification with the ID brought in the pre-designated constituency, the voting terminal 120 installed in the constituency installed in the constituency to directly come to the constituency to vote, encrypt and print the voting authentication number, or is randomly generated, and the generated voting authentication number is encrypted and a registered card (eg, QR code, barcode card) is output to the identified voter as shown in FIG. 10 (S303).

상술한 단계 S303에서 등록 카드를 출력해 준 후에, 본인 확인된 유권자가 인쇄된 투표인증번호나 출력된 등록 카드를 가지고 기표소에 입장하여, 입력 수단(예를 들어, 터치패널, 키패드 등)을 통해 로그인 정보(예를 들어, 주민번호, 학생번호 등) 및 투표인증번호를 입력하는 경우에, 투표용 단말기(120)에서는, 입력 수단을 통해 입력받은 유권자의 로그인 정보 및 투표인증번호를 도 11에 도시된 바와 같이 전자 투표 제공 서버(140)에 제공해 준다(S304).After outputting the registration card in the above-described step S303, a voter whose identity has been verified enters the voting booth with the printed voting authentication number or the printed registration card, and through input means (eg, touch panel, keypad, etc.) In the case of inputting login information (eg, resident number, student number, etc.) and voting authentication number, the voting terminal 120 displays the voter's login information and voting authentication number input through the input means in FIG. As shown, it is provided to the electronic voting server 140 (S304).

상술한 단계 S304에서 유권자의 로그인 정보 및 투표인증번호를 제공하게 되면, 전자 투표 제공 서버(140)에서는, 투표용 단말기(120)로부터 유권자의 로그인 정보 및 투표인증번호를 수신받고, 데이터베이스에 기 등록되어 있는 유권자 정보를 확인하여 투표 인증을 수행하게 된다(S305). 그런 후에, 단계 S306 내지 S310은, 상술한 단계 S206 내지 S210과 그 구성이 유사하므로 그 설명을 생략한다.When the login information and voting authentication number of the voter are provided in the above-described step S304, the electronic voting providing server 140 receives the voter's login information and the voting authentication number from the voting terminal 120, and pre-registers it in the database Voting authentication is performed by checking the registered voter information (S305). After that, steps S306 to S310 are similar in configuration to steps S206 to S210 described above, and thus descriptions thereof will be omitted.

상술한 단계 S301 내지 S310을 수행하는 동안에, 미러링 백업 서버(150)에서는, 상술한 바와 같이 전자 투표 제공 서버(140)에서 처리하는 전자 투표 동작에 대해서 실시간으로 미러링 백업을 수행하여 전자 투표 제공 서버(140)와의 전자 투표 동작에 관한 동기화를 유지하게 되는데, 이때 만약에 전자 투표 제공 서버(140)의 부하가 기 설정된 부하 이상인 경우 등과 같이, 전자 투표 에러가 발생할 소지가 있는 경우를 감지하게 되면, 전자 투표 제공 서버(140)의 전자 투표 동작을 중지시키고 그 대신에 전자 투표 동작을 계속해서 제공해 주도록 한다.While performing the above-described steps S301 to S310, the mirroring backup server 150 performs a real-time mirroring backup for the electronic voting operation processed by the electronic voting server 140 as described above to provide the electronic voting server ( 140) and the synchronization of the electronic voting operation is maintained. At this time, if it is detected that there is a possibility that an electronic voting error may occur, such as when the load of the electronic voting providing server 140 is greater than or equal to a preset load, electronic voting Stop the electronic voting operation of the voting providing server 140 and instead continue to provide the electronic voting operation.

예를 들어, 미러링 백업 서버(150)는, 전자 투표 제공 서버(140)에서 이루어지는 선거 정보 등록 처리(S301), 유권자 정보 등록 처리(S302), 등록 카드 출력 처리(S303), 로그인/투표인증번호 제공 처리(S304), 유권자 인증 처리(S305), 선거 정보 디스플레이 처리(S306), 투표 블록 체인 결합 처리(S307), 투표완료 디스플레이 처리(S308), 투표 정보 등록 처리(S309), 투표 정보 디스플레이 처리(S310)를 실시간으로 동기화해 줄 수 있다.For example, mirroring backup server 150, election information registration processing (S301), voter information registration processing (S302), registration card output processing (S303), login/voting authentication number made in the electronic voting providing server 140 Provision processing (S304), voter authentication processing (S305), election information display processing (S306), voting block chain combination processing (S307), voting completion display processing (S308), voting information registration processing (S309), voting information display processing (S310) may be synchronized in real time.

도 12는 본 발명의 실시 예에 따른 블록체인 이용 전자 투표 관리 방법을 제3예로 설명하는 도면이며, 도 13은 도 12에 있는 접속 코드 포함 등록 카드를 예로 나타낸 도면이며, 도 14는 도 12에 있는 모바일 투표 준수 사항 표시를 예로 나타낸 도면이며, 도 15는 도 12에 있는 로그인 창 표시를 예로 나타낸 도면이며, 도 16은 도 12에 있는 선거 리스트 확인 창 표시를 예로 나타낸 도면이며, 도 17은 도 12에 있는 투표 창 표시를 예로 나타낸 도면이며, 도 18은 도 12에 있는 투표완료 표시를 예로 나타낸 도면이다.12 is a view for explaining the electronic voting management method using a block chain according to an embodiment of the present invention as a third example, FIG. 13 is a view showing a registration card including an access code in FIG. 12 as an example, and FIG. It is a view showing as an example the display of mobile voting compliance matters, FIG. 15 is a view showing the login window display in FIG. 12 as an example, FIG. 16 is a view showing the election list confirmation window display in FIG. 12 as an example, and FIG. It is a view showing the voting window display in 12 as an example, and FIG. 18 is a view showing the voting completion display in FIG. 12 as an example.

도 12 내지 도 18을 참조하면, 단계 S401 및 S402는, 상술한 단계 S201 및 S202와 그 구성이 유사하므로 그 설명을 생략한다.12 to 18 , steps S401 and S402 are similar in configuration to steps S201 and S202 described above, and thus descriptions thereof will be omitted.

유권자가 미리 지정해 둔 투표소에서 지참한 신분증으로 본인 확인을 수행한 경우, 투표소에 직접 나와서 투표하도록 하기 위해 선거구에 설치된 투표용 단말기(120)에서는, 투표인증번호를 인쇄시켜 주거나, 투표인증번호를 랜덤하게 생성시키고 해당 생성시킨 투표인증번호를 암호화하여 등록된 카드(예를 들어, QR 코드, 바코드 카드)를 접속 코드(예를 들어, QR 코드, 바코드 등)와 함께 본인 확인된 유권자에게 도 13에 도시된 바와 같이 출력시켜 준다(S403).If the voter performs identification with the ID brought by the polling place designated in advance, the voting terminal 120 installed in the constituency to directly come to the polling place to vote, print the voting authentication number, or randomly 13, the registered card (e.g., QR code, barcode card) is sent to the voter who has been identified with the access code (e.g., QR code, barcode, etc.) by encrypting the generated voting authentication number. It outputs as shown (S403).

상술한 단계 S403에서 접속 코드를 포함한 등록 카드를 출력해 준 후에, 유권자가 카메라를 통해 등록 카드에 포함되어 있는 접속 코드를 촬영하게 되면, 유권자 단말기(110)에서는, 투표용 단말기(120)에서 인쇄시켜 준 투표인증번호나 출력시켜 준 등록 카드 중 접속 코드(예를 들어, QR 코드, 바코드 등)를 인식하여, 전자 투표 제공 서버(140)에서 제공해 주는 지정 선거 사이트에 접속하게 된다. 이에, 전자 투표 제공 서버(140)에서는, 지정 선거 사이트를 통해 접속된 유권자 단말기(110)(예를 들어, 유권자 단말기(110)의 어드레스, 고유 식별자 등)를 확인하여 모바일 투표 준수 사항(또는, 투표 절차에 대한 정보)을 해당 확인된 유권자 단말기(110)로 제공하게 된다.After outputting the registration card including the access code in step S403 described above, if the voter photographs the access code included in the registration card through the camera, the voter terminal 110 prints it from the voting terminal 120 By recognizing an access code (eg, QR code, barcode, etc.) among the voted authentication number or the printed registration card, it accesses the designated election site provided by the electronic voting server 140 . Accordingly, the electronic voting providing server 140 checks the voter terminal 110 (eg, the address of the voter terminal 110 , a unique identifier, etc.) accessed through the designated election site, and the mobile voting compliance matters (or, information on the voting procedure) is provided to the confirmed voter terminal 110 .

그러면, 유권자 단말기(110)에서는, 지정 선거 사이트를 통해 모바일 투표 준수 사항(또는, 투표 절차를 포함한 정보)을 제공받아 도 14에 도시된 바와 같이 디스플레이해 준다(S404).Then, the voter terminal 110 receives the mobile voting compliance information (or information including the voting procedure) through the designated election site and displays it as shown in FIG. 14 ( S404 ).

상술한 바와 같은 단계 S404에서 디스플레이해 준 모바일 투표 준수 사항에 있어서, 도 14에 도시된 바와 같은 모바일 투표 준수 사항에 대한 동의를 유권자가 입력 수단(예를 들어, 마우스 등에 의한 포인트)을 통해 클릭하게 되면, 유권자 단말기(110)에서는, 유권자의 동의 입력에 따라 모바일 투표 준수 사항에 대해 동의하였음을 알려주기 위한 동의 정보를 생성시켜 전자 투표 제공 서버(140)로 제공해 준다. 이에, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 수신되는 동의 정보를 확인하여 로그인 창 정보를 유권자 단말기(110)로 제공해 준다.In the mobile voting compliance matters displayed in step S404 as described above, the voter clicks the consent for the mobile voting compliance matters as shown in FIG. 14 through an input means (eg, a point by a mouse, etc.) When done, the voter terminal 110 generates consent information for informing that the voter agrees to the mobile voting requirements according to the voter's consent input, and provides it to the electronic voting providing server 140 . Accordingly, the electronic voting providing server 140 checks the consent information received from the voter terminal 110 and provides the login window information to the voter terminal 110 .

그러면, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 로그인 창 정보(또는, 후보자 공약보기를 입력하기 위한 클릭 창)를 도 15에 도시된 바와 같이 디스플레이해 준다(S405).Then, the voter terminal 110 displays the login window information (or the click window for inputting the candidate promise view) received from the electronic voting providing server 140 as shown in FIG. 15 ( S405 ).

상술한 바와 같은 단계 S405에서 디스플레이해 준 로그인 창에 있어서, 유권자가 자기 자신의 로그인 정보(예를 들어, 주민번호, 학생번호 등) 및 투표인증번호를 입력 수단(예를 들어, 터치패널, 키패드 등)을 통해 입력하거나, 유권자 단말기(110)가 접속 코드 인식을 통해 유권자의 투표인증번호를 자동 입력받게 되면, 유권자 단말기(110)에서는, 해당 입력받은 로그인 정보 및 투표인증번호를 전자 투표 제공 서버(140)로 제공해 준다.In the log-in window displayed in step S405 as described above, the voter inputs his/her own log-in information (eg, resident number, student number, etc.) and voting authentication number to input means (eg, touch panel, keypad etc.), or when the voter terminal 110 automatically receives the voter's voting authentication number through access code recognition, the voter terminal 110 transmits the inputted login information and voting authentication number to the electronic voting server (140) is provided.

예를 들어, 유권자 단말기(110)에서는, 유권자에 의해 입력된 학번 및 자동으로 입력된 투표인증번호를 인증확인 클릭을 통해 전자 투표 제공 서버(140)로 제공할 수 있으며, 또한 후보자 공약 보기를 클릭하는 경우에 전자 투표 제공 서버(140)로부터 후보자의 공약을 제공받아 보여 줄 수도 있다.For example, in the voter terminal 110, the student number input by the voter and the automatically input voting authentication number may be provided to the electronic voting server 140 by clicking the authentication confirmation button, and also clicking the candidate pledge view In this case, the candidate's promise may be provided and displayed from the electronic voting providing server 140 .

그러면, 전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 유권자의 로그인 정보 및 투표인증번호를 수신받고, 해당 수신받은 로그인 정보가 데이터베이스에 저장된 유권자 정보에 등록되어 있는지를 확인하고, 해당 확인된 유권자 정보를 이용하여 유권자 단말기(110)에 대해 투표 인증을 수행하도록 한다(S406).Then, the electronic voting providing server 140 receives the voter's login information and voting authentication number from the voter terminal 110, checks whether the received login information is registered in the voter information stored in the database, and confirms that Voting authentication is performed on the voter terminal 110 by using the registered voter information (S406).

상술한 바와 같은 단계 S406에서 투표 인증을 수행한 후에, 전자 투표 제공 서버(140)에서는, 선거 리스트 확인 및 투표를 하기 위한 선거 정보를 데이터베이스로부터 판독하여 유권자 단말기(110)로 제공해 주게 된다. 이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 선거 정보(즉, 선거 리스트 확인 창 및 투표 창 정보)를 도 16 및 도 17에 도시된 바와 같이 디스플레이해 준다(S407).After performing the voting authentication in step S406 as described above, the electronic voting providing server 140 reads the election information for checking the election list and voting from the database and provides it to the voter terminal 110 . Accordingly, the voter terminal 110 displays the election information (ie, the election list confirmation window and voting window information) received from the electronic voting server 140 as shown in FIGS. 16 and 17 ( S407 ). .

상술한 바와 같은 단계 S407에서 디스플레이해 준 선거 정보에 있어서, 유권자가 선거할 리스트를 선택하여 투표시작을 클릭한 다음에 후보자를 선택하여 투표를 클릭하게 되면, 유권자 단말기(110)에서는, 해당 입력받은 유권자의 투표 값 정보를 암호화시켜 전자 투표 제공 서버(140)로 제공해 준다.In the election information displayed in step S407 as described above, when a voter selects a list to be elected and clicks start voting, then selects a candidate and clicks voting, the voter terminal 110 receives the input The voter's vote value information is encrypted and provided to the electronic voting server 140 .

예를 들어, 유권자 단말기(110)에서는, 유권자가 입력 수단을 통해 디스플레이된 의학과회장 선서, 의과대학회장 선거, 총학생회장 선거의 리스트 중에서 하나를 선택하여 투표시작을 클릭하도록 해 줄 수 있다. 이에, 전자 투표 제공 서버(140)에서는, 선택된 리스트에 해당하는 후보자 투표페이지를 유권자 단말기(110)를 통해 디스플레이시켜 줄 수 있다. 이때, 유권자 단말기(110)에서는, 유권자가 디스플레이된 후보자 투표페이지의 후보에 마우스를 올리면 희미한 도장 모양으로 디스플레이해 줄 수 있으며, 또한 유권자가 후보에 마우스를 올린 상태에서 클릭을 하게 되면 도장이 선명해지면서 선택되도록 할 수 있다. 그리고 유권자 단말기(110)에서는, 투표 결과에 기권으로 반영하기 위해서 기권을 클릭하도록 해 줄 수도 있으며, 또한 다른 선거 리스트에 대한 투표를 수행하기 위해서 다음 버튼을 클릭하도록 해 줄 수도 있다.For example, in the voter terminal 110, the voter may select one from the list of the medical department president oath, the medical college president election, and the student council president election displayed through the input means and click start voting. Accordingly, the electronic voting providing server 140 may display a candidate voting page corresponding to the selected list through the voter terminal 110 . At this time, in the voter terminal 110, when the voter puts his/her mouse on the candidate on the displayed candidate voting page, it can be displayed in a faint stamp shape. It can be chosen as you go. And, in the voter terminal 110, it may be possible to click abstention in order to be reflected as abstention in the voting result, and also to click the next button to perform a vote for another election list.

전자 투표 제공 서버(140)에서는, 유권자 단말기(110)로부터 투표 값 정보를 수신받아 복호화한 후에 복호화된 투표 값 정보를 기록 보관하지 않고 블록체인 서버(170)에 전송하여 투표 처리해 주게 된다. 이에, 블록체인 서버(170)에서는, 전자 투표 제공 서버(140)로부터 전송되는 투표 값 정보를 수신받으면, 해당 수신받은 투표 값 정보를 포함한 투표 블록을 생성해서 블록체인 네트워크(190) 상의 모든 저장장치(180)로 전송한 다음에, 저장장치(180)의 정보 상호 검증을 통해 검증 완료된 투표 블록을 체인에 결합하여 투표 완료해 준다. 그리고 저장장치(180)에서는, 블록체인 서버(170)로부터 전송되는 투표 값 정보를 서로 공유하고, 이를 대조해서 데이터 위조나 변조를 수행할 수 없도록 저장해 둔다(S408).The electronic voting server 140 receives and decodes the vote value information from the voter terminal 110, and then transmits the decoded vote value information to the block chain server 170 without recording and processing the vote. Accordingly, in the block chain server 170, upon receiving the voting value information transmitted from the electronic voting providing server 140, it generates a voting block including the received voting value information and all storage devices on the block chain network 190 After transmission to 180, the voting block verified through mutual verification of information in the storage device 180 is combined with the chain to complete voting. And in the storage device 180, the voting value information transmitted from the block chain server 170 is shared with each other and stored so that data forgery or falsification cannot be performed by collating this information (S408).

상술한 단계 S408에서 투표 블록을 체인 결합하여 투표 완료한 후에, 전자 투표 제공 서버(140)에서는, 투표 완료를 알리기 위한 투표완료 정보를 데이터베이스로부터 판독하여 유권자 단말기(110)로 제공해 주게 된다. 이에, 유권자 단말기(110)에서는, 전자 투표 제공 서버(140)로부터 수신되는 투표완료 정보를 도 8에 도시된 바와 같이 디스플레이해 준다(S409).After the voting is completed by chaining the voting block in step S408 described above, the electronic voting providing server 140 reads the voting completion information for notifying the completion of voting from the database and provides it to the voter terminal 110 . Accordingly, in the voter terminal 110, the voting completion information received from the electronic voting providing server 140 is displayed as shown in FIG. 8 (S409).

상술한 단계 S409과 같이 투표 종료 후에, 단계 S410, S411는, 상술한 단계 S209, S210과 그 구성이 유사하므로 그 설명을 생략한다.After the end of voting as in step S409, steps S410 and S411 are similar in configuration to steps S209 and S210 described above, and thus descriptions thereof will be omitted.

상술한 단계 S401 내지 S411을 수행하는 동안에, 미러링 백업 서버(150)에서는, 상술한 바와 같이 전자 투표 제공 서버(140)에서 처리하는 전자 투표 동작에 대해서 실시간으로 미러링 백업을 수행하여 전자 투표 제공 서버(140)와의 전자 투표 동작에 관한 동기화를 유지하게 되는데, 이때 만약에 전자 투표 제공 서버(140)의 부하가 기 설정된 부하 이상인 경우 등과 같이, 전자 투표 에러가 발생할 소지가 있는 경우를 감지하게 되면, 전자 투표 제공 서버(140)의 전자 투표 동작을 중지시키고 그 대신에 전자 투표 동작을 계속해서 제공해 주도록 한다.While performing the above-described steps S401 to S411, the mirroring backup server 150 performs a real-time mirroring backup for the electronic voting operation processed by the electronic voting server 140 as described above to provide the electronic voting server ( 140) and the synchronization of the electronic voting operation is maintained. At this time, if it is detected that there is a possibility that an electronic voting error may occur, such as when the load of the electronic voting providing server 140 is greater than or equal to a preset load, electronic voting Stop the electronic voting operation of the voting providing server 140 and instead continue to provide the electronic voting operation.

예를 들어, 미러링 백업 서버(150)는, 전자 투표 제공 서버(140)에서 이루어지는 선거 정보 등록 처리(S401), 유권자 정보 등록 처리(S402), 등록 카드/접속 코트 출력 처리(S403), 투표 준수 사항 디스플레이 처리(S404), 로그인 창 디스플레이 처리(S405), 투표 인증 처리(S406), 선거 정보 디스플레이 처리(S407), 투표 블록 체인 결합 처리(S408), 투표완료 디스플레이 처리(S409), 투표 정보 등록 처리(S410), 투표 정보 디스플레이 처리(S411)를 실시간으로 동기화해 줄 수 있다.For example, mirroring backup server 150, election information registration processing (S401), voter information registration processing (S402), registration card / access coat output processing (S403), voting compliance made in the electronic voting providing server 140 (S403) Details display processing (S404), login window display processing (S405), voting authentication processing (S406), election information display processing (S407), voting block chain combination processing (S408), voting completion display processing (S409), voting information registration It is possible to synchronize the processing (S410) and the voting information display processing (S411) in real time.

이상, 본 발명의 실시 예는 상술한 장치 및/또는 운용방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시 예의 구성에 대응하는 기능을 실현하기 위한 프로그램, 그 프로그램이 기록된 기록 매체 등을 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시 예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다. 이상에서 본 발명의 실시 예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.Above, the embodiment of the present invention is not implemented only through the above-described apparatus and/or operation method, but through a program for realizing a function corresponding to the configuration of the embodiment of the present invention, a recording medium in which the program is recorded, etc. It may be implemented, and such an implementation can be easily implemented by an expert in the technical field to which the present invention pertains from the description of the above-described embodiments. Although the embodiments of the present invention have been described in detail above, the scope of the present invention is not limited thereto, and various modifications and improved forms of the present invention are also provided by those skilled in the art using the basic concept of the present invention as defined in the following claims. is within the scope of the right.

100: 블록체인 이용 전자 투표 관리 시스템
110: 유권자 단말기
120: 투표용 단말기
130: 관리자 단말기
140: 전자 투표 제공 서버
150: 미러링 백업 서버
160: 투표 네트워크
170: 블록체인 서버
180: 저장장치
190: 블록체인 네트워크
100: Electronic voting management system using blockchain
110: voter terminal
120: voting terminal
130: manager terminal
140: electronic voting server
150: mirrored backup server
160: voting network
170: Blockchain Server
180: storage device
190: Blockchain Network

Claims (5)

지정 선거 사이트에 접속하여 전자 투표 제공 서버로부터 온라인 투표 준수 사항을 제공받아 표시한 다음에 유권자의 동의 정보를 전자 투표 제공 서버로 제공하며, 전자 투표 제공 서버로부터 로그인 창 정보를 제공받아 표시한 다음에 유권자의 로그인 정보를 암호화시켜 전자 투표 제공 서버로 전송하며, 유권자 인증 후에 전자 투표 제공 서버로부터 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 암호화시켜 전자 투표 제공 서버로 전송하는 복수 개의 유권자 단말기; 투표인증번호를 암호화하여 인쇄하거나, 투표인증번호를 랜덤하게 생성시켜 암호화하여 등록된 카드를 출력하며, 유권자의 로그인 정보 및 투표인증번호를 입력받아 전자 투표 제공 서버로 제공하며, 전자 투표 제공 서버로부터 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 입력받아 암호화시켜 전자 투표 제공 서버로 전송하는 복수 개의 투표용 단말기; 선거 정보를 복호화키 또는 복수 개의 개표키와 함께 생성시켜, 복호화키를 관리자의 이메일 또는 핸드폰으로 전송하거나 각 개표키를 각각의 개표자의 이메일 또는 핸드폰으로 각각 전송하며, 선거 정보를 전자 투표 제공 서버로 제공하며, 유권자 정보를 암호화시켜 전자 투표 제공 서버로 제공하며, 후보자 정보의 최종 지정 및 투표 시작 정보를 생성시켜 전자 투표 제공 서버로 전송하는 관리자 단말기; 상기 관리자 단말기에서 제공한 선거 정보 및 유권자 정보를 등록하며, 상기 관리자 단말기에서 전송한 투표 시작 정보에 따라 지정 선거 사이트를 상기 유권자 단말기로 제공하며, 온라인 투표 준수 사항을 상기 유권자 단말기로 제공한 다음에, 동의 정보를 제공받아 로그인 창 정보를 상기 유권자 단말기로 제공하며, 상기 유권자 단말기에서 전송한 로그인 정보를 복호화한 후에 등록된 유권자 정보를 확인하여 유권자 인증을 수행하며, 선거 정보를 상기 유권자 단말기로 제공한 다음에 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 전송하여 투표 처리하며, 상기 투표용 단말기에서 제공한 유권자의 로그인 정보 및 투표인증번호를 등록된 유권자 정보와 확인하여 투표 인증을 수행한 다음에, 선거 정보를 상기 투표용 단말기로 제공한 후에 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 블록체인 서버로 전송하여 투표 처리하는 전자 투표 제공 서버; 상기 전자 투표 제공 서버의 전자 투표 처리에 대해 미러링 백업을 수행하여 상기 전자 투표 제공 서버와의 동기화를 유지하며, 상기 전자 투표 제공 서버의 전자 투표 에러 발생 시에 상기 전자 투표 제공 서버를 대신하는 미러링 백업 서버; 블록체인 서버로부터 투표 값 정보를 수신받아 서로 공유하고, 이를 대조해서 데이터 위조나 변조를 수행할 수 없도록 저장해 두는 복수 개의 저장장치; 및 상기 전자 투표 제공 서버에서 전송한 투표 값 정보를 포함한 투표 블록을 생성해서 블록체인 네트워크상에서 상기 저장장치로 전송한 다음에, 상기 저장장치의 정보 상호 검증을 통해 검증 완료된 투표 블록을 체인에 결합하여 투표 완료해 주는 블록체인 서버를 포함하되;
상기 전자 투표 제공 서버는, 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 상기 블록체인 서버로 투표 값 정보를 요청하며, 상기 블록체인 서버로부터 투표 값 정보를 수신받으며;
상기 블록체인 서버는, 상기 전자 투표 제공 서버로부터 수신받은 투표 값 정보를 투표 블록에 담아 체인 형태로 연결시켜, 분산형 데이터 저장 기술을 이용하여 상기 저장장치에 동시에 이를 복제하여 저장해 주는 것을 특징으로 하는 블록체인 이용 전자 투표 관리 시스템.
After accessing the designated election site, receiving and displaying the online voting compliance information from the electronic voting server, the consent information of the voters is provided to the electronic voting providing server, and after receiving and displaying the login window information from the electronic voting providing server A plurality of voters who encrypts voter login information and transmits it to the electronic voting server, receives the election information from the electronic voting server after voter authentication, displays it, and encrypts the voter’s vote value information and transmits it to the electronic voting server terminal; The voting authentication number is encrypted and printed, or the voting authentication number is randomly generated and encrypted to print the registered card, receives the voter's login information and voting authentication number and provides it to the electronic voting server, and from the electronic voting server A plurality of voting terminals for receiving and displaying the election information, then receiving the voter's vote value information, encrypting it, and transmitting it to the electronic voting server; Election information is generated together with a decryption key or a plurality of counting keys, and the decryption key is transmitted to the administrator's e-mail or mobile phone, or each ballot counting key is transmitted to each counting person's e-mail or mobile phone, respectively, and the election information is sent to the electronic voting server an administrator terminal that encrypts voter information and provides it to the electronic voting server, generates final designation of candidate information and voting start information and transmits it to the electronic voting server; Registers the election information and voter information provided by the manager terminal, provides a designated election site to the voter terminal according to the voting start information transmitted from the manager terminal, and provides online voting compliance matters to the voter terminal , receiving consent information, providing login window information to the voter terminal, decrypting the login information transmitted from the voter terminal, verifying registered voter information, performing voter authentication, and providing election information to the voter terminal After receiving the voting value information, decoding it and transmitting it without keeping a record to process the vote, verify the voter login information and voting authentication number provided by the voting terminal with the registered voter information E, after providing election information to the voting terminal, receiving and decoding the voting value information, and transmitting it to the block chain server without record keeping; A mirroring backup is performed for the electronic voting processing of the electronic voting server to maintain synchronization with the electronic voting server, and when an electronic voting error occurs in the electronic voting server, a mirroring backup that replaces the electronic voting server server; A plurality of storage devices that receive vote value information from the block chain server, share it, and store it so that data forgery or falsification cannot be performed by collating it; And after generating a voting block including the voting value information transmitted from the electronic voting server and transmitting it to the storage device on the blockchain network, the voting block verified through mutual verification of information in the storage device is combined with the chain. including a blockchain server that completes voting;
The electronic voting providing server is in a waiting state until the voting completion time, and when the voting completion time is reached, the electronic voting server requests the voting value information to the block chain server, and receives the voting value information from the block chain server;
The block chain server connects the voting value information received from the electronic voting server in a voting block in a chain form, and copies and stores it in the storage device using a distributed data storage technology at the same time. Electronic voting management system using blockchain.
제1항에 있어서, 상기 투표용 단말기는,
투표인증번호를 인쇄시켜 주거나, 등록 카드를 출력할 때에 접속 코드도 함께 포함시켜 출력하는 것을 특징으로 하는 블록체인 이용 전자 투표 관리 시스템.
According to claim 1, wherein the voting terminal,
An electronic voting management system using a block chain, characterized in that it prints out a voting authentication number or prints an access code together when printing a registration card.
제1항에 있어서, 상기 관리자 단말기는,
기 설정해 둔 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 관리자로부터 복호화키를 입력받거나 개표자로부터 개표키를 입력받도록 하는 것을 특징으로 하는 블록체인 이용 전자 투표 관리 시스템.
According to claim 1, wherein the manager terminal,
An electronic voting management system using a block chain, characterized in that it waits until a preset voting completion time, and receives a decryption key from an administrator or a vote counting key from a voter when the voting completion time comes.
제1항에 있어서, 상기 전자 투표 제공 서버는,
현재 진행 중인 투표에 대한 투표율을 산출하며, 산출한 투표율이 기 설정된 투표율보다 저조한 경우에, 투표하지 않은 유권자를 확인하여, 투표를 독려하는 문자 메시지를 생성시켜 확인된 유권자에 대응하는 유권자 단말기로 전송하는 것을 특징으로 하는 블록체인 이용 전자 투표 관리 시스템.
According to claim 1, wherein the electronic voting providing server,
It calculates the turnout for the current vote, and when the calculated turnout is lower than the preset turnout, checks the voters who have not voted, generates a text message encouraging voting, and transmits it to the voter terminal corresponding to the confirmed voter An electronic voting management system using a blockchain, characterized in that
관리자 단말기가 선거 정보를 복호화키 또는 복수 개의 개표키와 함께 생성시켜, 복호화키를 관리자의 이메일 또는 핸드폰으로 전송하거나 각 개표키를 각각의 개표자의 이메일 또는 핸드폰으로 각각 전송하며, 선거 정보를 제공하며, 유권자 정보를 암호화시켜 제공하며, 후보자 정보의 최종 지정 및 투표 시작 정보를 생성시켜 전송하는 단계; 전자 투표 제공 서버가 상기 관리자 단말기에서 제공한 선거 정보 및 유권자 정보를 등록하며, 상기 관리자 단말기에서 전송한 투표 시작 정보에 따라 지정 선거 사이트를 제공하고 온라인 투표 준수 사항을 제공하는 단계; 유권자 단말기가 상기 지정 선거 사이트에 접속하여 상기 온라인 투표 준수 사항을 제공받아 표시한 다음에 유권자의 동의 정보를 제공하는 단계; 상기 전자 투표 제공 서버가 동의 정보를 제공받아 로그인 창 정보를 상기 유권자 단말기로 제공하는 단계; 상기 유권자 단말기가 로그인 창 정보를 제공받아 표시한 다음에 유권자의 로그인 정보를 암호화시켜 전송하는 단계; 상기 전자 투표 제공 서버가 상기 유권자 단말기에서 전송한 로그인 정보를 복호화한 후에 등록된 유권자 정보를 확인하여 유권자 인증을 수행하며, 선거 정보를 상기 유권자 단말기로 제공하는 단계; 상기 유권자 단말기가 유권자 인증 후에 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 암호화시켜 전송하는 단계; 상기 전자 투표 제공 서버가 상기 유권자 단말기로부터 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 전송하여 투표 처리하는 단계; 투표용 단말기가 투표인증번호를 암호화하여 인쇄하거나, 투표인증번호를 랜덤하게 생성시켜 암호화하여 등록된 카드를 출력하며, 유권자의 로그인 정보 및 투표인증번호를 입력받아 제공하는 단계; 상기 전자 투표 제공 서버가 상기 투표용 단말기에서 제공한 유권자의 로그인 정보 및 투표인증번호를 등록된 유권자 정보와 확인하여 투표 인증을 수행하며, 선거 정보를 상기 투표용 단말기로 제공하는 단계; 상기 투표용 단말기가 유권자 인증 후에 선거 정보를 제공받아 표시한 다음에 유권자의 투표 값 정보를 암호화시켜 전송하는 단계; 상기 전자 투표 제공 서버가 상기 투표용 단말기로부터 투표 값 정보를 수신받아 복호화해서 기록 보관하지 않고 전송하여 투표 처리하는 단계; 미러링 백업 서버가 상기 전자 투표 제공 서버의 전자 투표 처리에 대해 미러링 백업을 수행하여 상기 전자 투표 제공 서버와의 동기화를 유지하며, 상기 전자 투표 제공 서버의 전자 투표 에러 발생 시에 상기 전자 투표 제공 서버를 대신하는 단계; 블록체인 서버가 상기 전자 투표 제공 서버에서 전송한 투표 값 정보를 포함한 투표 블록을 생성해서 블록체인 네트워크상에서 저장장치로 전송한 다음에, 상기 저장장치의 정보 상호 검증을 통해 검증 완료된 투표 블록을 체인에 결합하여 투표 완료해 주는 단계; 및 상기 저장장치가 상기 블록체인 서버로부터 투표 값 정보를 수신받아 서로 공유하고, 이를 대조해서 데이터 위조나 변조를 수행할 수 없도록 저장해 두는 단계를 포함하되;
상기 전자 투표 제공 서버는, 투표 완료 시간이 될 때까지 대기 상태로 있다가, 투표 완료 시간이 되면 상기 블록체인 서버로 투표 값 정보를 요청하며, 상기 블록체인 서버로부터 투표 값 정보를 수신받으며;
상기 블록체인 서버는, 상기 전자 투표 제공 서버로부터 수신받은 투표 값 정보를 투표 블록에 담아 체인 형태로 연결시켜, 분산형 데이터 저장 기술을 이용하여 상기 저장장치에 동시에 이를 복제하여 저장해 주는 것을 특징으로 하는 블록체인 이용 전자 투표 관리 방법.
The manager terminal generates election information together with a decryption key or a plurality of counting keys, and transmits the decryption key to the manager's e-mail or mobile phone, or transmits each counting key to each count's e-mail or mobile phone, respectively, and provides election information; , encrypting and providing voter information, generating and transmitting the final designation of candidate information and voting start information; Registering, by the electronic voting server, the election information and voter information provided by the manager terminal, providing a designated election site according to the voting start information transmitted from the manager terminal, and providing online voting compliance; providing, by a voter terminal, access to the designated election site, receiving and displaying the online voting compliance information, and then providing information on the consent of the voter; providing, by the electronic voting server, consent information, log-in window information to the voter terminal; receiving, by the voter terminal, log-in window information and displaying it, then encrypting and transmitting the log-in information of the voters; performing voter authentication by verifying registered voter information after the electronic voting providing server decrypts the login information transmitted from the voter terminal, and providing election information to the voter terminal; The voter terminal receives and displays election information after voter authentication, and then encrypts and transmits the voter's vote value information; processing, by the electronic voting server, receiving vote value information from the voter terminal, decoding it, and transmitting it without keeping a record; The voting terminal encrypts and prints the voting authentication number, or randomly generates and encrypts the voting authentication number to output a registered card, and receives and provides the voter's login information and voting authentication number; performing voting authentication by confirming, by the electronic voting server, the voter's login information and voting authentication number provided by the voting terminal with registered voter information, and providing election information to the voting terminal; The voting terminal receives and displays election information after voter authentication, then encrypts and transmits the voter's vote value information; processing, by the electronic voting server, receiving voting value information from the voting terminal, decoding it, and transmitting it without keeping a record; A mirroring backup server maintains synchronization with the electronic voting server by performing a mirroring backup for the electronic voting processing of the electronic voting server, and when an electronic voting error of the electronic voting server occurs, the electronic voting server instead of; The blockchain server creates a voting block including the voting value information transmitted from the electronic voting server and transmits it to the storage device on the blockchain network, and then transfers the verified voting block to the chain through mutual verification of information in the storage device. Combining the steps to complete voting; and storing, by the storage device, receiving voting value information from the block chain server, sharing it, and collating it so that data forgery or falsification cannot be performed;
The electronic voting providing server is in a waiting state until the voting completion time, and when the voting completion time is reached, the electronic voting server requests the voting value information to the block chain server, and receives the voting value information from the block chain server;
The block chain server connects the voting value information received from the electronic voting server in a voting block in a chain form, and copies and stores it in the storage device using a distributed data storage technology at the same time. How to manage electronic voting using blockchain.
KR1020210129374A 2021-09-30 2021-09-30 Electronic vote management system and method using block-chain KR102381028B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210129374A KR102381028B1 (en) 2021-09-30 2021-09-30 Electronic vote management system and method using block-chain
JP2022153286A JP7317195B2 (en) 2021-09-30 2022-09-27 Blockchain-based electronic voting management system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210129374A KR102381028B1 (en) 2021-09-30 2021-09-30 Electronic vote management system and method using block-chain

Publications (1)

Publication Number Publication Date
KR102381028B1 true KR102381028B1 (en) 2022-03-30

Family

ID=80948341

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210129374A KR102381028B1 (en) 2021-09-30 2021-09-30 Electronic vote management system and method using block-chain

Country Status (2)

Country Link
JP (1) JP7317195B2 (en)
KR (1) KR102381028B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101378285B1 (en) * 2014-01-21 2014-03-25 신철우 Electronic voting system and method
KR102169695B1 (en) * 2019-05-15 2020-10-23 김동영 A self-verifiable blockchain electronic voting management method
KR102186029B1 (en) 2019-12-20 2020-12-03 (주) 모로보기 Electronic voting system using blockchain and electronic voting method using blockchain
KR20210083457A (en) 2019-12-26 2021-07-07 동국대학교 산학협력단 Electronic vote record management system based on blockchain

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001243395A (en) 2000-02-28 2001-09-07 Ntt Advanced Technology Corp Electronic voting system for polling station system
JP2004165976A (en) 2002-11-13 2004-06-10 Japan Information Technology Co Ltd System, method, and program for timing encryption/decryption
KR20180074935A (en) * 2016-12-26 2018-07-04 김주한 Electronic voting ASP system using 2-channel authentication and method thereof
JP7029328B2 (en) 2017-07-11 2022-03-03 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Electronic voting system and control method
JP6911725B2 (en) 2017-11-20 2021-07-28 富士通株式会社 Electronic voting system, electronic voting method, and electronic voting program
US11488433B2 (en) 2018-01-11 2022-11-01 Mastercard International Incorporated Method and system for public elections on a moderated blockchain
JP6494004B1 (en) 2018-06-18 2019-04-03 Necソリューションイノベータ株式会社 Personal information management system, service providing system, method and program
KR20200026627A (en) * 2018-09-03 2020-03-11 주식회사 케이티 Online vote method using block chain and apparatus therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101378285B1 (en) * 2014-01-21 2014-03-25 신철우 Electronic voting system and method
KR102169695B1 (en) * 2019-05-15 2020-10-23 김동영 A self-verifiable blockchain electronic voting management method
KR102186029B1 (en) 2019-12-20 2020-12-03 (주) 모로보기 Electronic voting system using blockchain and electronic voting method using blockchain
KR20210083457A (en) 2019-12-26 2021-07-07 동국대학교 산학협력단 Electronic vote record management system based on blockchain

Also Published As

Publication number Publication date
JP7317195B2 (en) 2023-07-28
JP2023051818A (en) 2023-04-11

Similar Documents

Publication Publication Date Title
US11727226B2 (en) Digital identity system
US11967186B1 (en) Blockchain-based election system
US10153901B2 (en) System and method for verifying user identity in a virtual environment
US20190273607A1 (en) System for digital identity authentication and methods of use
KR101378285B1 (en) Electronic voting system and method
WO2019099486A1 (en) System for digital identity authentication and methods of use
US20180176017A1 (en) Digital Identity System
KR102120882B1 (en) Block chain based contest system and method for contesting
JP2010533344A (en) Identity authentication and protection access system, components, and methods
KR20090051147A (en) Internet settlement system
CN109509288A (en) Electronic voting system and control method
WO2019092046A1 (en) Secure electronic payment
Khelifi et al. M-Vote: a reliable and highly secure mobile voting system
Singh et al. Designing a blockchain-enabled methodology for secure online voting system
CN112907811A (en) Election system and voting method for cone block chain
Gentles et al. Biometric secured mobile voting
KR102381028B1 (en) Electronic vote management system and method using block-chain
Sharma et al. Blockchain based E-Voting
Chakraborty et al. Designing a biometric fingerprint scanner-based, secure and low-cost electronic voting machine for India
Krishnamoorthy et al. A Robust Blockchain Assisted Electronic Voting Mechanism with Enhanced Cyber Norms and Precautions
Rajeshwari Role of technology in the development of smart and secure public voting systems–a review of literatures
KR102308528B1 (en) Electronic voting system and Electronic voting method
Malik et al. Enhancing the Security of Online Voting System Using Defined Biometrics
Pasquinucci Web voting, security and cryptography
Khaleelullah et al. A Novel Blockchain based Decentralised Ballot System

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant