KR101234745B1 - 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체 - Google Patents

유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체 Download PDF

Info

Publication number
KR101234745B1
KR101234745B1 KR1020100090209A KR20100090209A KR101234745B1 KR 101234745 B1 KR101234745 B1 KR 101234745B1 KR 1020100090209 A KR1020100090209 A KR 1020100090209A KR 20100090209 A KR20100090209 A KR 20100090209A KR 101234745 B1 KR101234745 B1 KR 101234745B1
Authority
KR
South Korea
Prior art keywords
voter
information
authentication
server
terminal
Prior art date
Application number
KR1020100090209A
Other languages
English (en)
Other versions
KR20120028160A (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 KR1020100090209A priority Critical patent/KR101234745B1/ko
Publication of KR20120028160A publication Critical patent/KR20120028160A/ko
Application granted granted Critical
Publication of KR101234745B1 publication Critical patent/KR101234745B1/ko

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
    • G06Q50/265Personal security, identity or safety
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • 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

Landscapes

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

Abstract

본 발명은 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체에 있어서, 특히 투표를 하는 유권자의 개인정보 보호를 강화하여 개인정보가 외부로 노출되는 것을 미연에 방지토록 하는 것을 특징으로 하는 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체에 관한 것으로,
투표를 의뢰하는 유권자로부터 투표 데이터를 입력받아 투표를 하기 위한 유권자 단말(160)과, 상기 유권자 단말로부터 투표의뢰 정보를 입력받고 인증절차에 따라 유권자의 유효성을 인증받아 데이터를 저장하는 유권자 등록 서버(100)와, 상기 유권자 등록서버와 연결되어 유권자의 유효성을 인증하는 외부 인증서버(145)와, 상기 유권자 단말로부터 투표값 서명 요청이 입력되면 은닉된 투표값에 서명을 하여 리턴하는 투표서버(170)와, 유권자 단말기로부터 비트위임 정보로 암호화된 투표값과 서명값을 입력받아 개표가 이루어지도록 하는 개표서버(180)를 포함하여 이루어지는 것이 특징이다.

Description

유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체{An Electron Vote System for an Individual Information Protection and an Electron Vote Method and Program Keeping Medium}
본 발명은 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체에 관한 것으로, 특히 투표를 하는 유권자의 개인정보 보호를 강화하여 개인정보가 외부로 노출되는 것을 미연에 방지토록 하는 것을 특징으로 하는 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체에 관한 것이다.
민주주의가 발전하고 다수결의 원칙이 의사결정의 중요한 수단으로 자리매김함으로 인해, 국가원수를 선출하는 것에서부터 각급 학교의 반장을 선출하거나, 또는 국가정책을 결정하는 것에서부터 각급 학교의 정책을 결정하는 등 다양한 분야에 투표가 적용되고 있다.
최근 정보통신 인프라의 비약적인 발전으로 인해, 종래 오프라인 방식으로 이루어지던 투표는 점차적으로 정보통신 기술을 기반으로 하는 전자투표로 이전되고 있으며, 국회에서도 상기 전자투표에 대한 논의가 활발히 이루어지고 있으며, 향후 입법화될 것으로 예상된다.
그러나, 현재의 전자투표 시스템은 인증기관에 인증하는 과정에서 해킹으로 유권자의 개인 정보가 누출될 염려가 높은 문제가 있었다.
본 발명은 상기와 같은 문제점을 해결코자 하는 것으로, 유권자 정보로부터 민감한 개인정보를 분리하여 인증토록함으로서 개인정보가 외부로 빠져나가는 것을 미연에 방지토록 하는데 그 목적이 있다.
상기 목적을 달성하기 위한 수단으로,
본 발명은 투표를 의뢰하는 유권자로부터 투표 데이터를 입력받아 투표를 하기 위한 유권자 단말(160)과, 상기 유권자 단말로부터 투표의뢰 정보를 입력받고 인증절차에 따라 유권자의 유효성을 인증받아 데이터를 저장하는 유권자 등록 서버(100)와, 상기 유권자 등록서버와 연결되어 유권자의 유효성을 인증하는 외부 인증서버(145)와, 상기 유권자 단말로부터 투표값 서명 요청이 입력되면 은닉된 투표값에 서명을 하여 리턴하는 투표서버(170)와, 유권자 단말기로부터 비트위임 정보로 암호화된 투표값과 서명값을 입력받아 개표가 이루어지도록 하는 개표서버(180)를 포함하여 이루어지고;
상기 외부 인증서버(145)는,
상기 유권자 단말과 연결되어 유권자의 본인확인을 인증하되 주민등록번호 또는 사업자 등록번호는 인정서버 해쉬함수 값으로만 저장한 상태에서 본인확인을 인증하기 위한 외부인증기관(145a) 또는 공인인증기관(145b)과; 상기 유권자 단말과 연결되어 유권자의 본인확인을 인증하되 주민등록번호 또는 사업자 등록번호 정보에 대한 해쉬함수값만 저장하고, 패스워드 정보는 시스템에 저장하지 않는 도전응답(challenge-response)기법을 이용하는 자체인증기관(145c)으로 이루어지며;
상기 유권자 정보등록 서버(100)는,
소정의 유권자 단말(160)이 상기 인터페이스부(105)를 통해 상기 유권자 정보등록 서버(100)에 접속시, 상기 인터페이스부(105)와 연동하여 상기 유권자 단말(160)에서 소정의 유권자 정보를 입력(또는 선택)하여 전송하도록 하는 소정의 유권자 등록 인터페이스 화면을 생성(또는 추출)하여 제공하는 인터페이스 제공부(110)와; 상기 인터페이스부(105)와 연동하여 상기 유권자 단말(160)에서 상기 유권자 등록 인터페이스 화면을 통해 입력(또는 선택)하여 전송하는 유권자 정보를 수신하는 정보 수신부(115)와; 상기 수신된 유권자 정보에 포함된 정보구성을 확인하는 정보 확인부(120)와; 적어도 하나 이상의 외부 인증서버(145)를 통해 상기 확인된 유권자 정보의 유효성을 인증하는 유권자 인증부(125)와; 유권자가 전자투표 운용 시스템을 통해 투표하는 것을 인증하기 위한 소정의 전자투표 인증정보를 확인/생성하는 전자투표 인증정보 처리부(130)와; 상기 확인/생성된 전자투표 인증정보를 소정의 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하거나, 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등)에 저장하는 전자투표 인증정보 제공부(135)와; 상기 전자투표 인증정보와 상기 유권자 정보(또는 유권자 고유코드)를 연계 처리하여 유권자 등록정보 D/B(155)에 저장하는 정보 저장부(140)를 포함하여 이루어지는 것이 특징이다.
또한, 본 발명의 상기 유권자 단말은, TCP/IP(Transmission Control Protocol/Internet Protocol) 기반의 유선 네트워크(예컨대, ADSL(Asymmetric Digital Subscriber Line)/VDSL(Very high-data rate Digital Subscriber Line) 또는 케이블 통신망)를 통해 상기 유권자 정보등록 서버(100)와 통신 연결되는 데스크탑 컴퓨터 또는 노트북을 포함하는 유선 단말을 적어도 하나 이상 포함하여 이루어지거나, 또는 WCDMA(Wideband Code Division Multiple Access) 기반의 이동 통신망에 연결되는 이동 통신단말, 또는 IEEE 802.16x 기반의 초고속 무선 인터넷에 연결되는 휴대 인터넷 단말, 또는 DataTAC/Mobitex 기반의 무선 데이터 통신망에 연결되는 무선 데이터 통신 단말을 적어도 하나 이상 포함하는 무선 단말을 적어도 하나 이상 포함하여 이루어지는 것이 특징이다.
또한, 본 발명의 상기 자체 인증기관은, 자체인증기관의 인증 프로토콜을 초기화하는 프로그램 코드로서, (a) 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 정렬하되 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 전송하는 프로그램 코드와; (b) 자체인증기관이 자신이 지원하는 대칭키 알고리즘/해쉬함수 중에서 알고리즘을 선택하되 유권자 인증부가 보내준 CHIPER_SPEC에서 가장 상위에 있는 알고리즘을 선택하여 유권자 단말기로 전송하는 프로그램 코드와; (c) 유권자 단말기가 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed와 Hs = H(H(P || seed))를 계산하는 프로그램 코드와; (d) 유권자 단말기가 식별정보(ID)와 H(H(P || seed)), seed만을 서버에 전송하는 프로그램 코드로 이루어지고, 자체인증기관의 인증 프로토콜을 인증하는 프로그램 코드로서, (e) 유권자 단말기가 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하는 프로그램 코드와; (f) 자체인증기관이 임의의 난수 R을 생성하는 프로그램 코드와;
(g) 자체인증기관에 seed와 Hs 을 이용하여 seed || R XOR H(H(Hs))을 계산하되 도전응답(challenge-response) 기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하는 프로그램 코드와; (h) 유권자 단말기가 전송된 seed와 알고 있는 패스워드정보를 이용하여 H(H(Hs))를 계산하여 H(H(Hs)) XOR seed || R XOR H(H(Hs)) 계산하여 R를 획득하는 프로그램 코드와; i) 유권자 단말기가 자체인증기관에 H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed))을 도전(challenge)에 대한 응답(Response) 값으로 전송하는 프로그램 코드와;
(j) 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R)) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || Seed) || ER(newSeed || H(P || newSeed))를 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 계산하여 자체인증기관에 미리 저장되어 있는 Hs와 H(P || Seed)의 해쉬값인 H(H(P || Seed))와 같은지 확인하여 유권자 단말기로부터 요청된 유권자를 인증하는 프로그램 코드와; (k) 자체인증기관이 식별정보(ID)에 해당하는 seed과 유권자 단말기가 보내온 H(P || newSeed)의 해쉬값 H(H(P || newSeed))으로 업데이트하는 프로그램 코드를 포함하는 것이 특징이다.
또한, 본 발명의 동작단계는, 정보등록 시스템 상의 단말은 상기 네트워크 수단을 통해 상기 서버에 접속하여 전자투표 운용을 위한 통신채널을 연결하는 단계(200)와; 상기와 같이 단말과 서버 사이에 전자투표 운용을 위한 통신채널이 연결되면, 상기 단말은 상기 통신채널을 통해 상기 서버로 상기 전자투표 운용을 위한 유권자 등록 인터페이스 화면을 요청하는 단계(205)와; 이에 대응하여 상기 서버는 상기 단말에서 상기 유권자 정보를 입력(또는 선택)하기 위한 사용자 인터페이스를 포함하는 유권자등록 인터페이스 화면을 생성(또는 추출)하는 단계(210)와; 상기 생성(또는 추출)된 유권자 등록 인터페이스 화면을 상기 통신채널을 통해 상기 단말로 전송하는 단계(215)와; 이후, 상기 단말은 상기 유권자 정보를 입력(또는 선택)하기 위한 상기 사용자 인터페이스를 통해 상기 유권자 정보가 입력(또는 선택)하도록 처리하는 단계(220)와; 상기 단말에서 상기 유권자 정보가 입력(또는 선택)되는가를 확인하는 단계(225)와; 상기 단말이 상기 통신채널을 통해 상기 서버로 상기 유권자 정보를 전송하는 단계(230)와; 이에 대응하여 상기 서버는 소정의 외부 인증서버(145)와 연동하여 상기 유권자 정보에 대한 유효성을 확인하는 단계(235)와; 상기 유권자 정보에 포함된 투표 주관기관 정보에 대한 유효성이 인증되는가를 확인하는 단계(240)와; 상기 서버는 상기 유권자 정보에 대응하는 소정의 유권자 고유코드를 생성하는 단계(245)와; 상기 생성된 유권자 고유코드와 상기 수신된 유권자 정보를 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하는 단계(250)로 이루어지는 것이 특징이다.
또한, 본 발명의 상기 유권자 정보에 대한 유효성을 확인하는 단계(235)는, (a) 전자투표를 하기위해 유권자 인증부와, 투표서버와, 개표서버의 데이터를 초기화하는 전자투표 초기화단계와; (b) 유권자 인증부와 자체인증기관과 공인인증기관 및 외부인증기관을 접속하여 본인확인을 위한 인증절차를 하는 인증단계와; (b') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 프로토콜을 운용하는 자체인증기관 인증 프로토콜 초기화 단계와; (b'') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 자체인증기관 인증 프로토콜을 운영하는 자체인증기관 인증 프로토콜 인증 단계와; (c) 본인인증이 완료되면 투표서버와 통신하여 특정후보에 투표를 하는 투표단계 및; (d) 투표가 마무리되면 투표결과를 개표하는 개표단계로 이루어지는 것이 특징이다.
또한, 본 발명의 상기 전자투표 초기화단계(a)는, (a-1) 외부 투표의뢰기관으로부터 유권자 인증부, 투표서버 및, 개표서버의 비밀키와 공개키를 발급(ad,ae)(cd,ce)(td,te)받는 단계와; (a-2) 개표서버의 비밀키를 분할(F(x) = a0 + a1x + a2x2 + a3x3 + .. + ak -1xk -1 s.t (i,f(i)) where i=1,…,n 여기서 비밀키 조각 t1,t2,…tn = SecSplit(td))하는 단계와; (a-3) 유권자 식별자 정보를 포함 유권자명부와 인증방법를 등록하는 단계로 이루어지며;
상기 인증단계(b)는,
(b-1) 유권자 단말기와 유권자 인증부가 디피-헬먼(Diffie-Hellman)방식에 의해 세션키(va)를 생성하는 단계와;
(b-2) 유권자 단말기가 유권자 인증부에 유권자 식별번호(Vi)를 Eva(Vi)를 통해 전송하는 단계와;
(b-3) 유권자 인증부가 Dva(Eva(Vi)) = Vi를 통해서 유권자 식별정보를 구하는 단계와;
(b-4) 유권자 인증부가 유권자명부에서 개인식별번호 Vi를 검색하는 단계와;
(b-5) 개인식별번호 Vi를 찾은후 유권자 인증부가 인증방법에 따라 인증절차에 들어가는 단계와;
(b-5-1-1) 유권자 인증부의 인증방법이 공인인증기관 방식이면, 주민등록번호/사업자번호, 공인인증서 식별정보(Rvalue), 서명데이터를 추가적으로 유권자 단말기에 요청하는 단계와;
(b-5-1-2) 유권자 단말기는 유권자 인증부에 주민등록번호/사업자번호, 공인인증서 식별정보, 서명데이터를 전송하는 단계와;
(b-5-1-3) 유권자 인증부가 공인인증기관에 상기 데이터를 전송하여 공인인증기관에서 검증이 성공하면 인증서버 타임스탬프(Ts)를 Sa = Signad(Ts)를 통해 인증서버의 개인키로 전자서명하는 단계와;
(b-5-2-1) 유권자 인증부의 인증방법이 외부인증기관 방식이면, 유권자 인증부와 외부인증기관사이에 디피-헬먼(Diffie-Hellman) 방식에 의해 세션키(ea)를 생성하는 단계와;
(b-5-2-2) 유권자 단말기가 추가인증 정보와 유권자 인증부의 서명을 연접하여 SEea(Secret || Signad(Secret))를 통해 전송하는 단계와;
(b-5-2-3) 외부인증기관에서 추가정보와 서명값을 복호화하여 얻고(SDea(SEea(Secret || Signad(Secret)) )= Secret || Signad(Secret)), 유권자 인증부의 서명을 확인하고 추가인증 정보를 외부 정보장치에 검색하며, 인증이 성공되면 유권자 인증부에 SUCCESS를 전송하고 유권자 인증부는 개인키로 전자서명을 유권자에게 전송하는(Sa = Signad(Ts), SEva(Sa)) 단계와;
(b-5-3-1) 유권자 인증부의 인증방법이 자체인증기관이면, 자체인증기관 인증 프로토콜에 따라서 인증하는 단계와;
(b-5-3-2) 유권자 인증부에 SUCCESS를 전송하면 Sa = Signad(Ts)를 전송하는(SEva(Sa)) 단계로 이루어지고;
상기 자체인증기관 인증 프로토콜 초기화 단계(b')는,
(b'-1) 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 정렬하되 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 전송하는 단계와;
(b'-2) 자체인증기관은 자신이 지원하는 대칭키 알고리즘/해쉬함수 중에서 알고리즘을 선택하되 유권자 인증부가 보내준 CHIPER_SPEC에서 가장 상위에 있는 알고리즘을 선택하여 유권자 단말기로 전송하는 단계와;
(b'-3) 유권자 단말기가 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed값과 Hs = H(H(P || seed)) 를 계산하는 단계와;
(b'-4) 유권자 단말기가 식별정보(ID)와 H(H(P || seed)), seed만을 서버에 전송하는 단계로 이루어지며;
상기 자체인증기관 인증 프로토콜을 인증하는 단계(b'')는,
(b''-1) 유권자 단말기가 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하는 단계와;
(b''-2) 자체인증기관이 임의의 난수 R을 생성하는 단계와;
(b''-3) 자체인증기관이 seed || R XOR H(H(Hs))을 계산하되 도전응답(challenge-response)기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하는 단계와;
(b''-4) 유권자 단말기는 H(H(Hs))을 계산하고 H(H(Hs)) XOR seed || R XOR H(H(Hs))를 계산하여 R을 획득하는 단계와;
(b''-5) 유권자 단말기는 response = H(H(Hs || R)) XOR H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하여 자체인증기관에 전송하는 단계와;
(b''-6) 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R )) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 자체인증기관에 저장되어 있는 Hs와 H(P || Seed)의 해쉬값인 H(H(P || Seed))와 같은지 확인하여 유권자 단말기로부터 요청된 유권자를 인증하는 단계와;
(b''-7) 자체인증기관이 식별정보(ID)에 해당하는 seed와 H(P || seed)를 newSeed와 H(P || newSeed)의 해쉬값 H(H(P || newSeed))로 업데이트하는 단계로 이루어지고;
상기 투표단계(c)는,
(c-1) 유권자 단말기가 자신의 투표 값에 은닉계수를 계산하여 은닉투표 값을 생성B = vj*bkce (mod n)하는 단계와;
(c-2) 유권자 단말기가 은닉투표 값과 서명값 Sa를 연접(SEvc(B || Sa))하여 투표서버로 전송하는 단계와;
(c-3) 투표서버가 은닉투표값과 서명값을 복호화(SDvc(SEvc(B || Sa) = B || Sa)하는 단계와;
(c-4) 투표서버가 인증서버의 공개키로 서명값을 검증(Verifyae(Sa))하는 단계와;
(c-5) 검증이 성공하면 투표서버가 은닉투표 값에 대해서 전자서명을 하고 유권자에게 전송 Bcd (mod n)하는 단계와;
(c-6) 유권자 단말기가 은닉계수를 제거하여 투표서버의 전자서명을 얻는 Bcd/bk (mod n)= (vj*bkce)cd/bk (mod n)= vjcd (mod n) = Sc 단계와;
(c-7) 유권자 단말기가 비트위임정보인 랜덤정수(R1,R2)와 위임정보인 b를 이용하여 H(R1,R2,b) || R1를 생성하는 단계와;
(c-8) 유권자 단말기가 최종 투표 데이터를 생성 (v = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 단계와;
(c-9) 유권자 단말기가 개표서버의 공개키로 최종 투표데이터를 암호화하여 전송(Ete(v) = Ete(vj || Ts || Sa || Sc || H(R1,R2,b)||R1))하는 단계와;
(c-10) 유권자 단말기가 개표서버에 최종 투표데이터와 검증 데이터를 연접하여 전송(SEvt (Ete(v) || Sa || Sc), SDvt(SEvt(Ete(v) || Sa || Sc))하는 단계로 이루어지며;
상기 개표단계(d)는,
(d-1) 개표서버가 개표관리위원회의 개표키 조각을 받아서 개표 비밀키를 복원(td = SecAdd(t1,t2,…tk))하는 단계와;
(d-2) 개표서버가 저장된 투표데이터를 복호화 (Dtd (Ete(v)) = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 단계와;
(d-3) 개표서버가 Sa, Sc를 검증하고, vj를 집계하고 검증부분인 H(R1,R2,b) || R1 분리하여 공표하는 단계 및;
(e) 유권자 단말기가 H(R1,R2,b) || R1를 개표서버에 전송하여 검색하는 단계로 이루어짐이 특징이다.
또한, 본 발명은, 유권자 등록정보용 프로그램을 컴퓨터가 액세스 할 수 있도록 부호화시켜 저장한 컴퓨터 판독 가능한 기록매체에 있어서, (a) 전자투표를 하기위해 유권자 인증부와, 투표서버와, 개표서버 및 자체 인증기관의 데이터를 초기화하는 전자투표 초기화 프로세스와;
(b) 유권자 인증부와 자체인증기관과 공인인증기관 및 외부인증기관을 접속하여 본인확인을 위한 인증절차를 하는 인증 프로세스와;
(b') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 프로토콜을 운용하는 자체인증기관 인증 프로토콜 초기화 프로세스와;
(b'') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 자체인증기관 인증 프로토콜을 운영하는 자체인증기관 인증 프로토콜 인증 프로세스와;
(c) 본인인증이 완료되면 투표서버와 통신하여 특정후보에 투표를 하는 투표프로세스 및;
(d) 투표가 마무리되면 투표결과를 개표하는 개표 프로세스로 이루어지고;
상기 전자투표 초기화 프로세스(a)는,
(a-1) 외부 투표의뢰기관으로부터 인증서버, 투표서버 및, 개표서버의 비밀키와 공개키를 발급(ad,ae)(cd,ce)(td,te)받는 프로세스와;
(a-2) 개표서버의 비밀키를 분할(F(x) = a0 + a1x + a2x2 + a3x3 + .. + ak -1xk -1 s.t (i,f(i)) where i=1,…,n 여기서 비밀키 조각 t1,t2,…tn = SecSplit(td))하는 프로세스와;
(a-3) 유권자 식별자 정보를 포함 유권자명부와 인증방법를 등록하는 프로세스로 이루어지며;
상기 인증 프로세스(b)는,
(b-1) 유권자 단말기와 인증서버가 디피-헬먼(Diffie-Hellman)방식에 의해 세션키(va)를 생성하는 프로세스와;
(b-2) 유권자 단말기가 인증서버에 유권자 식별번호(Vi)를 Eva(Vi)를 통해 전송하는 프로세스와;
(b-3) 인증서버가 Dva(Eva(Vi)) = Vi를 통해서 유권자 식별정보를 구하는 프로세스와;
(b-4) 인증서버가 유권자명부에서 개인식별번호 Vi를 검색하는 프로세스와;
(b-5) 개인식별번호 Vi를 찾은후 인증서버가 인증방법에 따라 인증절차에 들어가는 프로세스와;
(b-5-1-1) 인증서버의 인증방법이 공인인증기관 방식이면, 주민등록번호/사업자번호, 공인인증서 식별정보(Rvalue), 서명데이터를 추가적으로 유권자 단말기에 요청하는 프로세스와;
(b-5-1-2) 유권자 단말기는 인증서버에 주민등록번호/사업자번호, 공인인증서 식별정보, 서명데이터를 전송하는 프로세스와;
(b-5-1-3) 유권자 인증부가 공인인증기관에 상기 데이터를 전송하여 공인인증기관에서 검증이 성공하면 인증서버 타임스탬프(Ts)를 Sa = Signad(Ts)를 통해 인증서버의 개인키로 전자서명하는 프로세스와;
(b-5-2-1) 유권자 인증부의 인증방법이 외부인증기관 방식이면, 유권자 인증부와 외부인증기관사이에 디피-헬먼(Diffie-Hellman) 방식에 의해 세션키(ea)를 생성하는 프로세스와;
(b-5-2-2) 유권자 단말기가 추가인증 정보와 유권자 인증부의 서명을 연접하여 SEea(Secret || Signad(Secret))를 통해 전송하는 프로세스와;
(b-5-2-3) 외부인증기관에서 추가정보와 서명값을 복호화하여 얻고(SDea(SEea(Secret || Signad(Secret)) )= Secret || Signad(Secret)), 유권자 인증부의 서명을 확인하고 추가인증 정보를 외부 정보장치에 검색하며, 인증이 성공되면 유권자 인증부에 SUCCESS를 전송하고 유권자 인증부는 개인키로 전자서명을 투표자에게 전송하는(Sa = Signad(Ts), SEva(Sa)) 프로세스와;
(b-5-3-1) 유권자 인증부의 인증방법이 자체인증기관이면, 자체인증기관 인증 프로토콜에 따라서 인증하는 프로세스와;
(b-5-3-2) 유권자 인증부에 SUCCESS를 전송하면 Sa = Signad(Ts)를 전송하는(SEva(Sa)) 프로세스로 이루어지고;
상기 자체인증기관 인증 프로토콜 초기화 프로세스(b')는,
(b'-1) 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 정렬하되 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 전송하는 프로세스와;
(b'-2) 자체인증기관은 자신이 지원하는 대칭키 알고리즘/해쉬함수 중에서 알고리즘을 선택하되 유권자 인증부가 보내준 CHIPER_SPEC에서 가장 상위에 있는 알고리즘을 선택하여 유권자 단말기로 전송하는 프로세스와;
(b'-3) 유권자 단말기가 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed값과 Hs = H(H(P || seed)) 를 계산하는 프로세스와;
(b'-4) 유권자 단말기가 식별정보(ID)와 H(H(P || seed)), seed만을 유권자 인증부에 전송하는 프로세스로 이루어지며;
상기 자체인증기관 인증 프로토콜을 인증하는 프로세스(b'')는,
(b''-1) 유표자 단말기가 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하는 프로세스와;
(b''-2) 자체인증기관이 임의의 난수 R을 생성하는 프로세스와;
(b''-3) 자체인증기관이 seed || R XOR H(H(Hs))을 계산하되 도전응답(challenge-response)기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하는 프로세스와;
(b''-4) 유권자 단말기는 H(H(Hs))을 계산하고 H(H(Hs)) XOR seed || R XOR H(H(Hs))를 계산하여 R을 획득하는 프로세스와;
(b''-5) 유권자 단말기는 response = H(H(Hs || R)) XOR H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하여 자체인증기관에 전송하는 프로세스와;
(b''-6) 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R )) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 자체인증기관에 저장되어 있는 Hs와 H(P || Seed)의 해쉬값인 H(H(P || Seed))와 같은지 확인하여 투표자 단말기로부터 요청된 투표자를 인증하는 프로세스와;
(b''-7) 자체인증기관이 식별정보(ID)에 해당하는 seed와 H(P || seed)를 newSeed와 H(P || newSeed)의 해쉬값 H(H(P || newSeed))로 업데이트하는 프로세스로 이루어지고;
상기 투표 프로세스(c)는,
(c-1) 유권자 단말기가 자신의 투표 값에 은닉계수를 계산하여 은닉투표 값을 생성B = vj*bkce (mod n)하는 프로세스와;
(c-2) 유권자 단말기가 은닉투표 값과 서명값 Sa를 연접(SEvc(B || Sa))하여 투표서버로 전송하는 프로세스와;
(c-3) 투표서버가 은닉투표값과 서명값을 복호화(SDvc(SEvc(B || Sa) = B || Sa)하는 프로세스와;
(c-4) 투표서버가 유권자 인증부의 공개키로 서명값을 검증(Verifyae(Sa))하는 프로세스와;
(c-5) 검증이 성공하면 투표서버가 은닉투표 값에 대해서 전자서명을 하고 유권자에게 전송 Bcd (mod n)하는 프로세스와;
(c-6) 유권자 단말기가 은닉계수를 제거하여 투표서버의 전자서명을 얻는 Bcd/bk (mod n) = (vj*bkce)cd/bk (mod n)= vjcd (mod n) = Sc 프로세스와;
(c-7) 유권자 단말기가 비트위임정보인 랜덤정수(R1,R2)와 위임정보인 b를 이용하여 H(R1,R2,b) || R1를 생성하는 프로세스와;
(c-8) 유권자 단말기가 최종 투표 데이터를 생성 (v = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 프로세스와;
(c-9) 유권자 단말기가 개표서버의 공개키로 최종 투표데이터를 암호화하여 전송(Ete(v) = Ete(vj || Ts || Sa || Sc || H(R1,R2,b)||R1))하는 프로세스와;
(c-10) 유권자 단말기가 개표서버에 최종 투표데이터와 검증 데이터를 연접하여 전송(SEvt (Ete(v) || Sa || Sc), SDvt(SEvt(Ete(v) || Sa || Sc))하는 프로세스로 이루어지며;
상기 개표 프로세스(d)는,
(d-1) 개표서버가 개표관리위원회의 개표키 조각을 받아서 개표 비밀키를 복원(td = SecAdd(t1,t2,…tk))하는 프로세스와;
(d-2) 개표서버가 저장된 투표데이터를 복호화 (Dtd (Ete(v)) = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 프로세스와;
(d-3) 개표서버가 Sa, Sc를 검증하고, vj를 집계하고 검증부분인 H(R1,R2,b) || R1 분리하여 공표하는 프로세스 및;
(e) 유권자 단말기가 H(R1,R2,b) || R1를 개표서버에 전송하여 검색하는 프로세스로 이루어진 것이 특징이다.
상술한 바와 같이 본 발명은 유권자 정보로부터 민감한 개인정보를 분리하여 인증토록함으로서 개인정보가 외부로 빠져나가는 것을 미연에 방지하는 효과가 있다.
도 1은 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 유권자 정보등록 시스템을 도시한 도면.
도 2는 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 유권자 정보등록 과정을 도시한 도면.
도 3은 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 4는 본 발명의 다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 5는 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 6은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 7은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 8은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
이하 첨부된 외부 인증서버과 설명을 참조하여 본 발명의 바람직한 실시예에 대한 동작 원리를 상세히 설명한다. 다만, 하기에 도시되는 외부 인증서버과 후술되는 설명은 본 발명의 특징을 효과적으로 설명하기 위한 여러 가지 방법 중에서 바람직한 실시 방법에 대한 것이며, 본 발명이 하기의 외부 인증서버과 설명만으로 한정되는 것은 아니다.
또한, 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명에서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
또한, 이하 실시되는 본 발명의 바람직한 실시예는 본 발명을 이루는 기술적 구성요소를 효율적으로 설명하기 위해 각각의 시스템 기능구성에 이미 구비되어 있거나, 또는 본 발명이 속하는 기술분야에서 통상적으로 구비되는 시스템 기능구성은 가능한 생략하고, 본 발명을 위해 추가적으로 구비되어야 하는 기능구성을 위주로 설명한다.
만약 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 하기에 도시하지 않고 생략된 기능구성 중에서 종래에 이미 사용되고 있는 구성요소의 기능을 용이하게 이해할 수 있을 것이며, 또한 상기와 같이 생략된 구성요소와 본 발명을 위해 추가된 구성요소 사이의 관계도 명백하게 이해할 수 있을 것이다.
또한, 이하 실시예는 본 발명의 핵심적인 기술적 특징을 효율적으로 설명하기 위해 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 명백하게 이해할 수 있도록 용어를 적절하게 변형하여 사용할 것이나, 이에 의해 본 발명이 한정되는 것은 결코 아니다.
결과적으로, 본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하 실시예는 진보적인 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 하나의 수단일 뿐이다.
도 1은 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 유권자 정보등록 시스템을 도시한 도면.
도 2는 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 유권자 정보등록 과정을 도시한 도면.
도 3은 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 4는 본 발명의 다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 5는 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 6은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 7은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면.
도 8은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면으로서,
먼저, 본 발명은 투표를 의뢰하는 유권자로부터 투표 데이터를 입력받아 투표를 하기 위한 유권자 단말(160)과, 상기 유권자 단말로부터 투표의뢰 정보를 입력받고 인증절차에 따라 유권자의 유효성을 인증받아 데이터를 저장하는 유권자 등록 서버(100)와, 상기 유권자 등록서버와 연결되어 유권자의 유효성을 인증하는 외부 인증서버(145)와, 상기 유권자 단말로부터 투표값 서명 요청이 입력되면 은닉된 투표값에 서명을 하여 리턴하는 투표서버(170)와, 유권자 단말기로부터 비트위임 정보로 암호화된 투표값과 서명값을 입력받아 개표가 이루어지도록 하는 개표서버(180)를 포함하여 이루어진다.
상기 유권자 단말(160)은 소정의 네트워크 수단을 통해 전자투표 시스템에 접속하여 전자투표 운용을 위한 유권자 정보를 제공하여 상기 전자투표 시스템 상의 유권자 등록정보 D/B(155)에 저장하는 시스템 구성에 대한 것으로서, 구체적으로 상기 유권자 정보를 적어도 하나 이상의 외부 인증서버(145)를 통해 인증하는 바람직한 유권자 정보등록 시스템 구성을 도시한 외부 인증서버이다.
이하, 본 외부 인증서버 1에 도시된 유권자 정보등록 시스템 상에서 상기 유권자 단말(160)로부터 제공되는 유권자 정보를 상기 유권자 등록정보 D/B(155)에 저장하기 위한 적어도 하나 이상의 수단 또는 기능구성에 대응하는 구성요소를 편의상 "유권자 정보등록 서버(100)"라고 한다.
본 발명의 실시 방법을 따르는 본 외부 인증서버 1을 참조하면, 본 발명에 따른 전자투표 운용을 위한 유권자 정보등록 시스템은, 소정의 네트워크 수단에 연결된 적어도 하나 이상의 유권자 단말(160)과, 상기 유권자 단말(160)에서 전송하는 유권자 정보를 저장하는 유권자 등록정보 D/B(155), 및 상기 유권자 단말(160)과 소정의 네트워크 수단을 통해 연결되며, 상기 네트워크 수단을 통해 전송되는 유권자 정보를 수신하여 상기 유권자 등록정보D/B(155)에 저장하는 유권자 정보등록 서버(100)를 포함하여 이루어지는 것을 특징으로 한다.
상기 유권자 단말(160)은 TCP/IP(Transmission Control Protocol/Internet Protocol) 기반의 유선 네트워크(예컨대, ADSL(Asymmetric Digital Subscriber Line)/VDSL(Very high-data rate Digital Subscriber Line) 또는 케이블 통신망)를 통해 상기 유권자 정보등록 서버(100)와 통신 연결되는 데스크탑 컴퓨터 또는 노트북을 포함하는 유선 단말을 적어도 하나 이상 포함하여 이루어지거나, 또는 WCDMA(Wideband Code Division Multiple Access) 기반의 이동 통신망에 연결되는 이동 통신단말, 또는 IEEE 802.16x 기반의 초고속 무선 인터넷에 연결되는 휴대 인터넷 단말, 또는 DataTAC/Mobitex 기반의 무선 데이터 통신망에 연결되는 무선 데이터 통신단말을 적어도 하나 이상 포함하는 무선 단말을 적어도 하나 이상 포함하여 이루어지는 것을 특징으로 하며, 상기 유권자 단말(160)은 상기 유권자 정보등록 서버(100)에서 제공하는 적어도 하나 이상의 유권자 등록 인터페이스 화면을 출력하고, 상기 유권자 등록 인터페이스 화면을 통해 적어도 하나 이상의 정보를 입력 또는 선택하여 상기 유권자 정보등록 서버(100)로 전송하기 위한 기능 구성(예컨대, 브라우져 프로그램과 통신기능)이 구비되어 있는 것이 바람직하다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 적어도 하나 이상의 유선 단말 또는 무선 단말에 대응하는 상기 유권자 단말(160)의 특징을 용이하게 유추할 수 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
본 발명의 실시 방법에 따라 상기 유권자 단말(160)이 유선 단말인 경우, 상기 네트워크 수단은 상기 TCP/IP기반의 유선 네트워크를 포함하여 이루어지며, 상기 유권자 단말(160)이 무선 단말인 경우, 상기 네트워크 수단은 상기 WCDMA 기반의 이동 통신망, 또는 IEEE 802.16x 기반의 초고속 무선 인터넷, 또는 DataTAC/Mobitex 기반의 무선 데이터 통신망을 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명에 따른 전자투표 시스템 상에 구비되는 상기 유권자 등록정보 D/B(155)는 상기 유권자 단말(160)로부터 전송되는 유권자 정보를 저장하는 것을 특징으로 하며, 상기 유권자 정보에는 소정의 유권자 고유코드가 할당 및 연결 처리되어 저장하는 것을 특징으로 한다.
여기서, 상기 유권자 고유코드는 상기 유권자 등록정보 D/B(155)에 저장되는 상기 유권자 정보와 다른 유권자에 대응하는 유권자 정보를 식별하기 위한 고유코드로서, 중복되지 않은 고유한 코드값을 포함하여 이루어지는 것을 특징으로 한다.
또한, 상기 유권자 정보는 본 발명에 따른 전자투표 운용 시스템을 통해 상기 투표에서 참정권을 행사하는(투표하는) 유권자 개인정보(예컨대, 유권자 성명 또는 주민등록번호 등)를 포함하여 이루어지는 것을 특징으로 한다.
본 발명의 실시 방법에 따라 상기 유권자 정보를 적어도 하나 이상의 외부 인증서버(145)를 통해 인증하는 경우, 상기 유권자 정보는 상기 외부 인증서버(145)를 통해 상기 유권자 정보를 인증하기 위한 외부인증번호를 더 포함하여 이루어지는 것을 특징으로 한다.
본 발명의 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 국회의원 선거, 대통령 선거, 지방자치단체 의원 선거, 지방자치단체장 선거, 기초단체 의원 선거, 기초단체장 선거 등을 적어도 하나 이상 포함하거나, 또는 국민투표를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 소정의 전자정부서버(예컨대, 전체국민의 주민등록정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 유권자의 주민등록번호를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
즉, 상기 외부 인증서버(145)는 유권자의 본인확인을 인증하되 주민등록번호 또는 사업자 등록번호는 인정서버 해쉬함수 값으로만 저장한 상태에서 본인확인을 인증하기 위한 외부인증기관(145a) 또는 공인인증기관(145b)과; 유권자의 본인확인을 인증하되 주민등록번호 또는 사업자 등록번호 정보에 대한 해쉬함수값만 저장하고 패스워드 정보는 시스템에 저장하지 않는 도전응답(challenge-response)기법을 이용하는 자체인증기관(145c)을 포함하여 이루어진다.
상기 자체 인증기관(145c)은, 자체인증기관의 인증 프로토콜을 초기화하는 프로그램 코드로서, (a) 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 정렬하되 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 전송하는 프로그램 코드와; (b) 자체인증기관이 자신이 지원하는 대칭키 알고리즘/해쉬함수 중에서 알고리즘을 선택하되 유권자 인증부가 보내준 CHIPER_SPEC에서 가장 상위에 있는 알고리즘을 선택하여 유권자 단말기로 전송하는 프로그램 코드와; (c) 유권자 단말이 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed와 Hs = H(H(P || seed))를 계산하는 프로그램 코드와; (d) 유권자 단말이 식별정보(ID)와 H(H(P || seed)), seed만을 서버에 전송하는 프로그램 코드로 이루어진다.
그리고, 자체인증기관(145)은, 인증 프로토콜을 인증하는 프로그램 코드로서, (e) 유권자 단말이 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하는 프로그램 코드와; (f) 자체인증기관이 임의의 난수 R을 생성하는 프로그램 코드와; (g) 자체인증기관에 저장되어 있는 seed와 Hs 을 이용하여 seed || R XOR H(H(Hs))을 계산하되 도전응답 (challenge-response) 기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하는 프로그램 코드와; (h) 유권자 단말기가 전송된 seed와 알고 있는 패스워드정보를 이용하여 H(H(Hs))를 계산하여 H(H(Hs) XOR seed || R XOR H(H(Hs)) 계산하여 R를 획득하는 프로그램 코드와; (i) 유권자 단말이 자체인증기관에 H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed))을 도전(challenge)에 대한 응답(Response) 값으로 전송하는 프로그램 코드와; (j) 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R)) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || Seed) || ER(newSeed || H(P || newSeed))를 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 계산하여 자체인증기관에 미리 저장되어 있는 Hs와 H(P || Seed)의 해쉬값인 H(H(P || Seed))와 같은지 확인하여 유권자 단말로부터 요청된 유권자를 인증하는 프로그램 코드와; (k) 자체인증기관이 식별정보(ID)에 해당하는 seed과 유권자 단말이 보내온 H(P || newSeed)의 해쉬값 H(H(P || newSeed))으로 업데이트하는 프로그램 코드를 갖는다.
본 발명의 다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 기업(또는 법인)의 주주 총회 또는 임시총회를 통한 적어도 하나 이상의 안건투표를 포함하거나, 또는 임원(이사) 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 상기 기업(또는 법인)의 임원(또는 사원) 정보 서버(예컨대, 상기 기업(또는 법인)의 임원(또는 사원) 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 임원(또는 사원)의 주민등록번호 또는 사원번호(또는 임원번호)를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 기업(또는 법인)의 노조총회 또는 임시총회를 통한 적어도 하나 이상의 안건투표를 포함하거나, 또는 노조임원 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 노조 정보 서버(예컨대, 상기 기업(또는 법인)의 노조 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 노조 임원/회원의 주민등록번호 또는 사원번호(또는 임원번호)를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 단체(또는 협회)의 총회 또는 임시총회를 통한 적어도 하나 이상의 안건투표를 포함하거나, 또는 단체(또는 협회) 임원 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 상기 단체(또는 협회)의 임원(또는 직원/회원) 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 단체(또는 협회) 임원(또는 직원/회원)의 주민등록번호 또는 직원번호(또는 회원번호)를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 학교의 학생투표를 포함하거나, 또는 상기 학교의 회장 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 학교정보 서버(예컨대, 특정 학교의 교사/학생 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 학교 교사/학생의 주민등록번호 또는 학번을 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 학교의 학급/반 투표를 포함하거나, 또는 상기 학교의 학급 반장 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 학교정보 서버(예컨대, 특정 학교의 교사/학생 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 학교 교사/학생의 주민등록번호 또는 학번을 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 상기 실시예 이외에도 다양한 형태의 외부 인증서버(145)와 이에 대응하는 외부인증정보에 대한 다양한 실시예를 유추할 수 있을 것이며, 본 발명은 상기 유추되는 실시예를 모두 포함하여 이루어진다.
상기 유권자 정보에 대응하는 투표에 상관없이 상기 외부 인증서버(145)가 이동통신사 서버(예컨대, 이동 통신상의 가입자 관리 서버)라면, 상기 외부인증정보는 상기 유권자의 휴대폰 번호를 포함하는 유권자 소유 무선단말 고유정보를 포함하여 이루어지는 것이 바람직하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따르면, 상기 유권자 정보등록 서버(100)는 상기 유권자 단말(160)과 네트워크 수단에 대응하는 웹 인터페이스를 제공하기 위해, 상기 네트워크 수단을 통해 상기 유권자 단말(160)과 소정의 통신채널을 연결 및 관리하는 인터페이스부(105)를 구비하여 이루어지는 것을 특징으로 하며, 이에 의해 상기 유권자 정보등록 서버(100)는 상기 유권자 단말(160)과 유선 네트워크 또는 무선 네트워크를 통해 통신 연결되는 웹서버의 기능을 구비한다.
본 발명의 일 실시 방법에 따라 상기 유권자 단말(160)이 TCP/IP 기반의 유선 네트워크를 통해 통신채널이 연결되는 유선 단말인 경우, 상기 인터페이스부(105)는 상기 유권자 단말(160)과 HTTP(Hyper-Text Transfer Protocol) 프로토콜을 기반으로 소정의 통신채널을 연결하고, 상기 통신채널을 통해 상기 유권자 단말(160)로 HTML(Hyper-Text Markup Language) 호환 문서 형태의 유권자 등록 인터페이스 화면 또는 정보 제공 화면을 전송하여 출력하고, 상기 유권자 단말(160)로부터 상기 유권자 등록 인터페이스 화면을 통해 입력(또는 선택)된 소정의 유권자 정보를 수신 처리하는 기능을 수행하는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따라 상기 유권자 단말(160)이 WCDMA 기반의 무선 네트워크를 통해 통신채널이 연결되는 무선 단말인 경우, 상기 인터페이스부(105)는 상기 유권자 단말(160)과 WAP(Wireless Application Protocol) 또는 ME(Mobile Explorer) 프로토콜을 기반으로 소정의 통신채널을 연결하고, 상기 통신채널을 통해 상기 유권자 단말(160)로 WML(Wireless Markup Language) 또는 HTML 호환 문서 형태의 유권자 등록 인터페이스 화면 또는 정보 제공 화면을 전송하여 출력하고, 상기 유권자 단말(160)로부터 상기 유권자 등록 인터페이스 화면에 대응하는 소정의 유권자 정보를 수신 처리하는 기능을 수행하는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 단말(160)이 IEEE 802.16x 기반의 무선 네트워크를 통해 통신채널이 연결되는 무선 단말인 경우, 상기 인터페이스부(105)는 상기 유권자 단말(160)과 상기 IEEE 802.16x 규격에 대응하는 무선 프로토콜을 기반으로 소정의 통신채널을 연결하고, 상기 통신채널을 통해 상기 유권자 단말(160)로 소정의 유권자 등록 인터페이스 화면 또는 정보 제공 화면을 전송하여 출력하고, 상기 유권자 단말(160)로부터 상기 유권자 등록 인터페이스 화면에 대응하는 소정의 유권자 정보를 수신 처리하는 기능을 수행하는 것이 바람직하며, 또는 상기 유권자 단말(160)이 DataTAC/Mobitex 기반의 무선 네트워크를 통해 통신채널이 연결되는 무선 단말인 경우, 상기 인터페이스부(105)는 상기 유권자 단말(160)과 상기 DataTAC/Mobitex 규격에 대응하는 무선 프로토콜을 기반으로 소정의 통신채널을 연결하고, 상기 통신채널을 통해 상기 유권자 단말(160)로 소정의 유권자 등록 인터페이스 화면 또는 정보 제공 화면을 전송하여 출력하고, 상기 유권자 단말(160)로부터 상기 유권자 등록 인터페이스 화면에 대응하는 소정의 유권자 정보를 수신처리하는 기능을 수행하는 것이 바람직하다.
외부 인증서버 1을 참조하면, 상기 유권자 정보등록 서버(100)는 소정의 유권자 단말(160)이 상기 인터페이스부(105)를 통해 상기 유권자 정보등록 서버(100)에 접속시, 상기 인터페이스부(105)와 연동하여 상기 유권자 단말(160)에서 소정의 유권자 정보를 입력(또는 선택)하여 전송하도록 하는 소정의 유권자 등록 인터페이스 화면을 생성(또는 추출)하여 제공하는 인터페이스 제공부(110)와, 상기 인터페이스부(105)와 연동하여 상기 유권자 단말(160)에서 상기 유권자 등록 인터페이스 화면을 통해 입력(또는 선택)하여 전송하는 유권자 정보를 수신하는 정보 수신부(115)와, 상기 수신된 유권자 정보에 포함된 정보구성을 확인하는 정보 확인부(120)와, 적어도 하나 이상의 외부 인증서버(145)를 통해 상기 확인된 유권자 정보의 유효성을 인증하는 유권자 인증부(125)와, 상기 유권자 정보의 유효성이 인증되면, 상기 수신된 유권자 정보에 대응하는 소정의 유권자 고유코드를 생성하고, 상기 유권자 고유코드와 상기 수신된 유권자 정보를 상기 유권자 등록정보 D/B(155)에 저장하는 정보 저장부(140)를 구비하여 이루어지는 것을 특징으로 한다.
상기 인터페이스 제공부(110)는 소정의 유권자 단말(160)이 상기 인터페이스부(105)를 통해 상기 유권자 정보등록 서버(100)에 접속시, 상기 유권자 단말(160)에 구비된 기능구성(예컨대, 유권자 단말(160)에 구비된 브라우져 프로그램)에 대응하여 소정의 유권자 정보를 입력(또는 선택)하여 상기 네트워크 수단을 통해 상기 유권자 정보등록 서버(100)로 전송할 수 있는 소정의 유권자 등록 인터페이스 화면을 생성하거나, 또는 소정의 데이터베이스(도시생략)로부터 추출하고, 상기 인터페이스부(105)와 연동하여 상기 생성(또는 추출)된 유권자 등록 인터페이스 화면을 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하는 것을 특징으로 한다.
여기서, 상기 유권자 등록 인터페이스 화면은 상기 유권자 단말(160)에서 적어도 하나 이상의 유권자 개인정보를 입력(또는 선택)하기 위한 사용자 인터페이스를 포함하여 이루어지는 것을 특징으로 하며, 당업자의 의도에 따라 상기 유권자가 현장투표 또는 온라인 투표 중 적어도 하나 이상의 전자투표 방식을 통해 투표할 것인지 입력(또는 선택)하는 전자투표 방식 정보를 입력(또는 선택)하기 위한 사용자 인터페이스, 또는 상기 유권자 단말(160)에서 상기 유권자 정보등록 서버(100)로 소정의 전자투표 인증정보가 제공되는 경우, 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용시스템을 통해 투표 권한을 인증하는 소정의 전자투표 인증정보를 입력(또는 선택)하기 위한 사용자 인터페이스를 포함하여 이루어지는 것이 바람직하다.
본 발명의 실시 방법에 따르면, 상기 유권자 정보에 포함되어 상기 유권자 단말(160)에서 상기 유권자 정보등록 서버(100)로 전송되는 상기 전자투표 인증정보는, 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하기 위한 ID/PW 정보, 또는 외부인증정보, 또는 금융계좌 정보, 또는 카드 정보, 또는 상기 유권자 단말(160)(또는 유권자 소유 이동식 매체)에 구비된 공인인증서 정보 등을 적어도 하나 이상 포함하여 이루어지는 것이 가능하며, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 상기 실시예 이외에도 상기 유권자 단말(160)에서 상기 유권자 정보등록 서버(100)로 제공되는 다양한 형태의 전자투표 인증정보를 유추할 수 있을 것이며, 본 발명은 상기 유추되는 실시예를 모두 포함하여 이루어진다.
상기 유권자 등록 인터페이스 화면을 제공받은 상기 유권자 단말(160)은 상기 유권자 등록 인터페이스 화면을 기반으로 소정의 유권자 정보를 입력(또는 선택)하며, 상기 입력(또는 선택)된 상기 유권자 정보를 상기 네트워크 수단을 통해 상기 유권자 정보등록 서버(100)로 전송한다.
상기 정보 수신부(115)는 상기 유권자 단말(160)에서 상기 유권자 등록 인터페이스 화면을 통해 소정의 유권자 정보를 입력(또는 선택)하여 상기 네트워크 수단을 통해 전송시, 상기 인터페이스부(105)와 연동하여 상기 유권자 정보를 수신하는 것을 특징으로 하며, 상기 수신된 유권자 정보는 상기 정보 확인부(120)로 제공된다.
상기 정보 확인부(120)는 상기 수신된 유권자 정보로부터 소정의 본 발명에 따른 전자투표 운용 시스템을 통해 상기 투표에서 참정권을 행사하는(투표하는) 유권자 개인정보와 소정의 외부인증정보를 확인 및 추출하는 것을 특징으로 하며, 상기 확인된 유권자 개인정보와 외부인증정보를 상기 유권자 인증부(125)로 제공한다.
상기 유권자 인증부(125)는 소정의 통신수단을 통해 상기 외부인증정보에 대응하는 소정의 외부 인증서버(145)에 접근하고, 상기 외부인증정보에 대응하여 상기 외부 인증서버(145)에 구비된 소정의 유권자 개인정보와 상기 정보 확인부(120)에 의해 확인된 유권자 개인정보를 비교 및 인증함으로써, 상기 유권자 정보에 대한 유효성을 인증하는 것을 특징으로 한다.
상기 유권자 인증부(125)에 의해 상기 유권자 정보에 대한 유효성이 인증되면, 상기 정보 저장부(140)는 상기 정보 수신부(115)를 통해 수신된 상기 유권자 정보에 대응하는 소정의 유권자 고유코드를 생성하고, 상기 생성된 유권자 고유코드와 상기 유권자 정보를 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하는 것을 특징으로 한다.
본 발명의 실시 방법에 따르면, 상기 정보 저장부(140)가 상기 유권자 고유코드와 상기 유권자 정보를 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하는 과정에서, 상기 유권자 단말(160)로부터 소정의 전자투표 방식 정보가 제공된 경우, 상기 정보 저장부(140)는 상기 전자투표 방식 정보를 상기 유권자 정보(또는 유권자 고유코드)와 더 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하는 것이 바람직하다.
도면 1을 참조하면, 상기 유권자 정보등록 서버(100)는 상기 유권자가 본 발명에 따른 전자투표 운용 시스템을 통해 투표하는 것을 인증하기 위한 소정의 전자투표 인증정보를 확인/생성하는 전자투표 인증정보 처리부(130)와, 상기 확인/생성된 전자투표 인증정보를 소정의 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하는 전자투표 인증정보 제공부(135)를 구비하여 이루어지는 것을 특징으로 하며, 상기 정보 저장부(140)는 상기 전자투표 인증정보와 상기 유권자 정보(또는 유권자 고유코드)를 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하는 것을 특징으로 한다.
상기 정보 수신부(115)에 의해 소정의 유권자 정보가 수신되거나, 또는 상기 유권자 인증부(125)에 의해 상기 유권자 정보에 대한 유효성이 인증되거나, 또는 상기 정보 저장부(140)에 의해 사익 유권자 정보가 소정의 유권자 고유코드와 연계 처리되어 상기 유권자 등록정보 D/B(155)에 저장되면, 상기 전자투표 인증정보 처리부(130)는 상기 유권자가 본 발명에 따른 전자투표 운용 시스템을 통해 투표하는 것을 인증하기 위한 소정의 전자투표 인증정보를 확인/생성하는 것을 특징으로 한다.
본 발명의 실시 방법에 따라 상기 전자투표 인증정보 처리부(130)에서 확인되는 상기 전자투표 인증정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하는 정보로서, 상기 유권자 단말(160)로부터 제공되는 ID/PW 정보, 또는 외부인증정보, 또는 금융계좌 정보, 또는 카드 정보, 또는 상기 유권자 단말(160)(또는 유권자 소유 이동식 매체)에 구비된 공인인증서 정보를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
여기서, 상기 전자투표 인증정보에 포함되는 상기 ID/PW 정보는 상기 유권자가 상기 투표를 위해 본발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표권한을 인증하기 위해 등록한 ID/PW 정보를 포함하여 이루어지는 것이 바람직하며, 상기 전자투표 인증정보 처리부(130)는 상기 유권자 단말(160)로부터 제공된 상기 ID/PW 정보를 본 발명에 따라 상기 유권자의 전자투표권한을 인증하기 위한 상기 전자투표 인증정보 확인한다.
당업자의 의도에 따라, 상기 전자투표 인증정보에 포함되는 상기 ID/PW 정보 중 상기 ID정보는 상기 유권자 메일계정 형태로 이루어지는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
또한, 상기 전자투표 인증정보에 포함되는 상기 외부인증정보는 정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하는 것이 적어도 하나 이상의 외부 인증서버(145)와 연계 처리되어 운용되는 경우, 상기 외부 인증서버(145)를 통해 본 발명에 따른 전자투표를 위한 상기 유권자의 권한을 인증하기 위해 상기 유권자가 등록한 인증정보를 포함하여 이루어지는 것이 바람직하며, 상기 전자투표 인증정보 처리부(130)는 상기 유권자단말(160)로부터 제공된 상기 외부인증정보를 본 발명에 따라 상기 유권자의 전자투표 권한을 인증하기 위한 상기 전자투표 인증정보 확인한다.
또한, 상기 전자투표 인증정보에 포함되는 상기 금융계좌 정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하는 것이 적어도 하나 이상의 금융시스템과 연계 처리되어 운용되는 경우, 상기 금융시스템을 통해 본 발명에 따른 전자투표를 위한 상기 유권자의 권한을 인증하기 위해 상기 유권자가 등록한 계좌정보를 포함하여 이루어지는 것이 바람직하며, 상기 전자투표 인증정보 처리부(130)는 상기 유권자 단말(160)로부터 제공된 상기 금융계좌 정보를 본 발명에 따라 상기 유권자의 전자투표 권한을 인증하기 위한 상기 전자투표인증정보 확인한다.
또한, 상기 전자투표 인증정보에 포함되는 상기 카드 정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하는 것이 적어도 하나 이상의 카드시스템과 연계 처리되어 운용되는 경우, 상기 카드시스템을 통해 본 발명에 따른 전자투표를 위한 상기 유권자의 권한을 인증하기 위해 상기 유권자가 등록한 카드정보를 포함하여 이루어지는 것이 바람직하며, 상기 전자투표 인증정보 처리부(130)는 상기 유권자 단말(160)로부터 제공된 상기 카드 정보를 본 발명에 따라 상기 유권자의 전자투표 권한을 인증하기 위한 상기 전자투표 인증정보 확인한다.
또한, 상기 전자투표 인증정보 중 상기 유권자 단말(160)(또는 유권자 소유 이동식 매체)에 구비된 공인인증서 정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하기 위해 상기 유권자 단말(160)(또는 유권자 소유 이동식 매체)에 구비된 공인인증서에 대응하는 정보를 등록한 것을 포함하여 이루어지는 것이 바람직하며, 상기 전자투표 인증정보 처리부(130)는 상기 유권자 단말(160)로부터 제공된 상기 유권자 단말(160)(또는 유권자 소유 이동식 매체)에 구비된 공인인증서 정보를 본 발명에 따라 상기 유권자의 전자투표 권한을 인증하기 위한 상기 전자투표 인증정보 확인한다.
본 발명의 다른 실시 방법에 따르면, 상기 유권자 단말(160)(또는 유권자 소유 이동식 매체)에 구비된 공인인증서는 상기와 같은 전자투표 인증정보 등록없이 사용하는 것이 가능하며, 이 경우 상기 유권자 단말(160)에서 상기 공인인증서 정보를 제공하여 등록하는 과정이 생략되어도 무방하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명의 실시 방법에 따라 상기 전자투표 인증정보 처리부(130)에서 생성되는 상기 전자투표 인증정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하는 정보로서, 전자투표용 공인인증서 정보 또는 OTP(One Time Password) 정보를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
여기서, 상기 전자투표 인증정보에 포함되는 상기 전자투표용 공인인증서 정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하기 위해 상기 전자투표 인증정보 처리부(130)가 생성한 공인인증서를 포함하여 이루어지는 것이 바람직하다.
본 발명의 일 실시 방법에 따르면, 상기 전자투표용 공인인증서는 상기 전자투표 인증정보 제공부(135)를 통해 상기 유권자 단말(160)로 제공되어, 상기 유권자 단말(160)에 구비된 소정의 저장장치에 저장되는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 전자투표용 공인인증서는 상기 전자투표 인증정보 제공부(135)를 통해 상기 유권자 단말(160)로 제공되어, 상기 유권자 단말(160)과 연계된 유권자 소유 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등)에 저장되는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따르면, 상기 전자투표용 공인인증서는 상기 전자투표 인증정보 제공부(135)를 통해 소정의 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등)에 저장되어 상기 유권자에게 배송(또는 제공)되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
또한, 상기 전자투표 인증정보에 포함되는 상기 OTP 정보는 상기 유권자가 상기 투표를 위해 본 발명에 따른 전자투표 운용 시스템에 접근 권한, 또는 상기 전자투표 운용 시스템을 통해 투표 권한을 인증하기 위해 상기 전자투표 인증정보 처리부(130)가 생성한 OTP 생성기(또는 상기 전자투표 인증정보처리부(130)가 소정의 OTP 생성기 제공 서버로부터 제공받은 OTP 생성기)를 포함하여 이루어지는 것이 바람직하다.
본 발명의 일 실시 방법에 따르면, 상기 OTP 생성기가 유권자 단말(160) 탑재용 프로그램 형태로 구성된 경우, 상기 OTP 생성기는 상기 전자투표 인증정보 제공부(135)를 통해 상기 유권자 단말(160)로 제공되어, 상기 유권자 단말(160)에 구비된 소정의 기록매체에 기록되는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 OTP 생성기가 유권자 소유 이동식 매체(예컨대, USB(Universal Serial Bus) 메모리, IC(Integrated Circuit)카드 등)용 프로그램 형태로 구성된 경우, 상기 OTP 생성기는 상기 전자투표 인증정보 제공부(135)를 통해 상기 유권자 단말(160)로 제공되어, 상기 유권자단말(160)과 연계된 유권자 소유 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등)에 저장되는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따르면, 상기 OTP 생성기가 물리적인 장치(예컨대, 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등))로 구성된 경우, 상기 OTP 생성기는 상기 전자투표 인증정보 제공부(135)를 통해 상기 유권자에게 배송(또는 제공)되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
상기 전자투표 인증정보 제공부(135)는 상기 확인/생성된 전자투표 인증정보를 소정의 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하는 것을 특징으로 한다.
만약 상기 전자투표 인증정보가 전자투표 인증정보 처리부(130)에서 확인된 상기 ID/PW 정보를 포함하는 경우, 상기 전자투표 인증정보 제공부(135)는 상기 전자투표 인증정보로 확인된 상기 ID/PW 정보를 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하여 확인시키는 것이 바람직하다.
또는, 상기 전자투표 인증정보가 전자투표 인증정보 처리부(130)에서 확인된 상기 외부인증정보를 포함하는 경우, 상기 전자투표 인증정보 제공부(135)는 상기 전자투표 인증정보로 확인된 상기 외부인증정보를 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하여 확인시키는 것이 바람직하다.
또는, 상기 전자투표 인증정보가 전자투표 인증정보 처리부(130)에서 확인된 상기 금융계좌 정보를 포함하는 경우, 상기 전자투표 인증정보 제공부(135)는 상기 전자투표 인증정보로 확인된 상기 금융계좌 정보를 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하여 확인시키는 것이 바람직하다.
또는, 상기 전자투표 인증정보가 전자투표 인증정보 처리부(130)에서 확인된 상기 카드 정보를 포함하는 경우, 상기 전자투표 인증정보 제공부(135)는 상기 전자투표 인증정보로 확인된 상기 카드 정보를 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하여 확인시키는 것이 바람직하다.
또는, 상기 전자투표 인증정보가 전자투표 인증정보 처리부(130)에서 확인된 상기 유권자 단말(160)(또는 유권자 소유 이동식 매체)에 구비된 공인인증서 정보를 포함하는 경우, 상기 전자투표 인증정보 제공부(135)는 상기 전자투표 인증정보로 확인된 상기 공인인증서 정보를 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하여 확인시키는 것이 바람직하다.
또는, 상기 전자투표 인증정보가 전자투표 인증정보 처리부(130)에서 생성/등록한 상기 전자투표용 공인인증서를 포함하는 경우, 상기 전자투표 인증정보 제공부(135)는 상기 전자투표 인증정보로 확인된 상기 전자투표용 공인인증서 정보를 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하거나, 또는 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등)에 저장하여 상기 유권자에게 배송(또는 제공)되는 것이 바람직하다.
또는, 상기 전자투표 인증정보가 전자투표 인증정보 처리부(130)에서 생성/등록한 상기 OTP 생성기를 포함하는 경우, 상기 전자투표 인증정보 제공부(135)는 상기 전자투표 인증정보로 확인된 상기 OTP 생성기를 상기 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하거나, 또는 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등)에 저장하여 상기 유권자에게 배송(또는 제공)되는 것이 바람직하다.
상기 전자투표 인증정보 처리부(130)에 의해 적어도 하나 이상의 전자투표 인증정보가 확인/생성되거나 또는 상기 전자투표 인증정보 제공부(135)에 의해 적어도 하나 이상의 전자투표 인증정보가 상기 유권자에게 제공되면, 상기 정보 저장부(140)는 상기 전자투표 인증정보와 상기 유권자 정보(또는 유권자 고유코드)를 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하는 것을 특징으로 한다.
본 발명의 실시 방법에 따르면, 상기 유권자 등록정보 D/B(155)에 저장된 상기 전자투표 인증정보는 본 발명에 따른 전자투표 운용 과정에서 상기 유권자를 인증하는 수단으로 이용된다.
도면 2는 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 유권자 정보등록 과정을 도시한 도면이다.
보다 상세하게 본 도면 2는 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 단말(160)이 소정의 네트워크 수단을 통해 상기 유권자 정보등록 서버(100)로 전자투표 운용을 위한 유권자 정보를 전송하면, 상기 유권자 정보등록 서버(100)에서 상기 유권자 정보를 소정의 유권자 고유코드와 연계 처리하여 유권자 등록정보 D/B(155)에 저장하는 과정에 대한 것으로서, 구체적으로 상기 유권자 정보를 적어도 하나 이상의 외부 인증서버(145)를 통해 인증하는 바람직한 유권자 정보등록 과정을 도시한 도면이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면 2를 참조 또는 변형하여 전자투표 운용을 위한 유권자 정보등록 과정에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면 1에 도시된 실시 방법만으로 한정되지 아니한다.
이하, 본 도면 2에서 상기 도면 1에 도시된 정보등록 시스템 상의 유권자 정보등록 서버(100)를 편의상 "서버"라고 하고, 상기 도면 1에 도시된 정보등록 시스템 상의 유권자 단말(160)을 편의상 "단말"이라고 한다.
도면12를 참조하면, 상기 도면 1에 도시된 정보등록 시스템 상의 단말은 상기 네트워크 수단을 통해 상기 서버에 접속하여 전자투표 운용을 위한 통신채널을 연결한다(200).
상기와 같이 단말과 서버 사이에 전자투표 운용을 위한 통신채널이 연결되면, 상기 단말은 상기 통신채널을 통해 상기 서버로 상기 전자투표 운용을 위한 유권자 등록 인터페이스 화면을 요청하고(205), 이에 대응하여 상기 서버는 상기 단말에서 상기 유권자 정보를 입력(또는 선택)하기 위한 사용자 인터페이스를 포함하는 유권자등록 인터페이스 화면을 생성(또는 추출)하고(210), 상기 생성(또는 추출)된 유권자 등록 인터페이스 화면을 상기 통신채널을 통해 상기 단말로 전송한다(215).
이후, 상기 단말은 상기 유권자 정보를 입력(또는 선택)하기 위한 상기 사용자 인터페이스를 통해 상기 유권자 정보가 입력(또는 선택)하도록 처리한다(220).
본 발명의 실시 방법에 따라 상기 유권자 정보를 적어도 하나 이상의 외부 인증서버(145)를 통해 인증하는 경우, 상기 유권자 정보는 상기 외부 인증서버(145)를 통해 상기 유권자 정보를 인증하기 위한 외부인증번호를 더 포함하여 이루어지는 것을 특징으로 한다.
본 발명의 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 국회의원 선거, 대통령 선거, 지방자치단체 의원 선거, 지방자치단체장 선거, 기초단체 의원 선거, 기초단체장 선거 등을 적어도 하나 이상 포함하거나, 또는 국민투표를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 소정의 전자정부서버(예컨대, 전체국민의 주민등록정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 유권자의 주민등록번호를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 기업(또는 법인)의 주주총회 또는 임시총회를 통한 적어도 하나 이상의 안건투표를 포함하거나, 또는 임원(이사) 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 상기 기업(또는 법인)의 임원(또는 사원) 정보 서버(예컨대, 상기 기업(또는 법인)의 임원(또는 사원) 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 임원(또는 사원)의 주민등록번호 또는 사원번호(또는 임원번호)를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 기업(또는 법인)의 노조총회 또는 임시총회를 통한 적어도 하나 이상의 안건투표를 포함하거나, 또는 노조임원 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 노조 정보 서버(예컨대, 상기 기업(또는 법인)의 노조 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 노조 임원/회원의 주민등록번호 또는 사원번호(또는 임원번호)를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 단체(또는 협회)의 총회 또는 임시총회를 통한 적어도 하나 이상의 안건투표를 포함하거나, 또는 단체(또는 협회) 임원 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 상기 단체(또는 협회)의 임원(또는 직원/회원) 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 단체(또는 협회) 임원(또는 직원/회원)의 주민등록번호 또는 직원번호(또는 회원번호)를 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 학교의 학생투표를 포함하거나, 또는 상기 학교의 회장 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 학교정보 서버(예컨대, 특정 학교의 교사/학생 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 학교 교사/학생의 주민등록번호 또는 학번을 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명의 또다른 일 실시 방법에 따라 상기 유권자 정보에 대응하는 투표가 학교의 학급/반 투표를 포함하거나, 또는 상기 학교의 학급 반장 선거를 포함하여 이루어지며, 이 때 상기 유권자 정보를 인증하는 외부 인증서버(145)가 학교정보 서버(예컨대, 특정 학교의 교사/학생 정보를 저장/관리하는 서버)라면, 상기 외부인증정보는 상기 학교 교사/학생의 주민등록번호 또는 학번을 적어도 하나 이상 포함하여 이루어지는 것이 바람직하다.
본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 상기 실시예 이외에도 다양한 형태의 외부 인증서버(145)와 이에 대응하는 외부인증정보에 대한 다양한 실시예를 유추할 수 있을 것이며, 본 발명은 상기 유추되는 실시예를 모두 포함하여 이루어진다.
만약 상기 단말에서 상기 유권자 정보가 입력(또는 선택)되면(225), 상기 단말은 상기 통신채널을 통해 상기 서버로 상기 유권자 정보를 전송하며(230), 이에 대응하여 상기 서버는 소정의 외부 인증서버(145)와 연동하여 상기 유권자 정보에 대한 유효성을 확인한다(235).
본 발명의 실시 방법에 따르면, 상기 서버는 상기 수신된 유권자 정보로부터 소정의 본 발명에 따른 전자투표운용 시스템을 통해 상기 투표에서 참정권을 행사하는(투표하는) 유권자 개인정보와 소정의 외부인증정보를 확인 및 추출하고, 소정의 통신수단을 통해 상기 유권자 정보에 포함된 외부인증정보에 대응하는 소정의 외부 인증서버(145)에 접근하고, 상기 외부인증정보에 대응하여 상기 외부 인증서버(145)에 구비된 소정의 유권자 개인정보와 상기 정보 확인부(120)에 의해 확인된 유권자 개인정보를 비교 및 인증함으로써, 상기 유권자 정보에 대한 유효성을 인증하는 것이 바람직하다.
만약 상기 유권자 정보에 포함된 투표 주관기관 정보에 대한 유효성이 인증되면(240), 상기 서버는 상기 유권자 정보에 대응하는 소정의 유권자 고유코드를 생성하고(245), 상기 생성된 유권자 고유코드와 상기 수신된 유권자 정보를 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장한다(250).
도면 3은 본 발명의 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면이다.
보다 상세하게 본 도면 3은 상기 도면 1에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)에서 소정의 전자투표 인증정보를 확인/생성하여 제공하는 과정에 대한 것으로서, 구체적으로 상기 전자투표 인증정보를 상기 유권자 정보등록 서버(100)에 대응하는 소정의 회원가입 시스템(도시생략)을 통해 등록하는 바람직한 전자투표 인증정보 등록과정을 도시한 도면이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면 3을 참조 또는 변형하여 전자투표 운용을 위한 전자투표 인증정보 등록 과정에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면 1에 도시된 실시 방법만으로 한정되지 아니한다.
이하, 본 도면 3에서 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)를 편의상 "서버"라고 하고, 상기 도면12에 도시된 유권자 정보등록 시스템 상의 유권자 단말(160)을 편의상 "단말"이라고 한다.
도면 1을 참조하면, 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 서버는 상기 단말로부터 상기 전자투표 인증정보 등록을 위한 소정의 ID/PW 정보가 수신되었는지 확인한다(300).
본 발명의 일 실시 방법에 따르면, 상기 ID/PW 정보는 상기 도면 2에 도시된 유권자 정보등록 과정 상의 후보자등록 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 ID/PW 정보는 상기 도면 2에 도시된 유권자 정보등록 과정 이외에 별도의 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
만약 상기 단말로부터 상기 ID/PW 정보가 수신된 것이 확인되면(305), 상기 서버는 상기 서버에 대응하는 회원가입 시스템과 연계하여 상기 ID/PW 정보를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인한다(310).
만약 상기 ID/PW 정보가 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인되면(315), 상기 서버는 상기 ID/PW 정보를 상기 도면 2를 통해 등록된 유권자 정보(또는 유권자 고유코드)와 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하고(320), 상기 전자투표 인증정보로 처리된 상기 ID/PW 정보를 상기 유권자에게 제공한다(325).
본 발명의 일 실시 방법에 따르면, 상기 서버는 상기 네트워크 수단을 통해 상기 전자투표 인증정보로 처리된 상기 ID/PW 정보를 상기 유권자 단말(160)로 제공하는 것이 바람직하다.
도면 4는 본 발명의 다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면이다.
보다 상세하게 본 도면 4는 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)에서 소정의 전자투표 인증정보를 확인/생성하여 제공하는 과정에 대한 것으로서, 구체적으로 상기 전자투표 인증정보를 소정의 외부 인증서버(145)를 통해 등록하는 바람직한 전자투표 인증정보 등록과정을 도시한 도면이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면 4를 참조 또는 변형하여 전자투표 운용을 위한 전자투표 인증정보 등록 과정에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면 1에 도시된 실시 방법만으로 한정되지 아니한다.
이하, 본 도면 4에서 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)를 편의상 "서버"라고 하고, 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 단말(160)을 편의상 "단말"이라고 한다.
도면12를 참조하면, 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 서버는 상기 단말로부터 상기 전자투표 인증정보 등록을 위한 소정의 외부인증정보가 수신되었는지 확인한다(400).
본 발명의 일 실시 방법에 따르면, 상기 외부인증정보는 상기 도면 2에 도시된 유권자 정보등록 과정 상의 후보자 등록 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 외부인증정보는 상기 도면 2에 도시된 유권자 정보등록 과정 이외에 별도의 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
만약 상기 단말로부터 상기 외부인증정보가 수신된 것이 확인되면(405), 상기 서버는 상기 외부인증정보에 대응하는 외부 인증서버(145)와 연계하여 상기 외부인증정보를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인한다(410).
본 발명의 실시 방법에 따르면, 상기 서버는 상기 단말로부터 수신된 외부인증정보와 상기 외부 인증서버(145)에서 상기 유권자에 대응하여 구비된 외부인증정보를 비교함으로써, 상기 외부인증정보를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인하는 것이 바람직하다.
만약 상기 외부인증정보가 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인되면(415), 상기 서버는 상기 외부인증정보를 상기 도면 2를 통해 등록된 유권자 정보(또는 유권자 고유코드)와 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하고(420), 상기 전자투표 인증정보로 처리된 상기 외부인증정보를 상기 유권자에게 제공한다(425).
본 발명의 일 실시 방법에 따르면, 상기 서버는 상기 네트워크 수단을 통해 상기 전자투표 인증정보로 처리된 상기 외부인증정보를 상기 유권자 단말(160)로 제공하는 것이 바람직하다.
인증이 마무리되면 상기 유권자 단말로부터 투표값 서명 요청이 입력받아 은닉된 투표값을 투표서버가 서명을 하여 리턴하고, 유권자 단말로부터 비트위임 정보로 암호화된 투표값과 서명값을 입력받아 개표서버를 통해 투표하고 키분할 방법으로 개표가 이루어지도록 하며, 상기 개표이후 개표를 검증한다.
상기 전자투표 초기화단계(a)는, 외부 투표의뢰기관으로부터 투표서버 및, 개표서버의 비밀키와 공개키를 발급(ad,ae)(cd,ce)(td,te)받고, 개표서버의 비밀키를 분할(F(x) = a0 + a1x + a2x2 + a3x3 + .. + ak -1xk -1 s.t (i,f(i)) where i=1,…,n 여기서 비밀키 조각 t1,t2,…tn = SecSplit(td))하며, 유권자 식별자 정보를 포함 유권자명부와 인증방법를 등록한다.
상기 인증단계(b)는, 유권자 단말기와 유권자 인증부가 디피-헬먼(Diffie-Hellman)방식에 의해 세션키(va)를 생성하고, 유권자 단말기가 유권자 인증부에 유권자 식별번호(Vi)를 Eva(Vi)를 통해 전송하며, 유권자 인증부가 Dva(Eva(Vi)) = Vi를 통해서 유권자 식별정보를 구하고, 유권자 인증부가 유권자명부에서 개인식별번호 Vi를 검색하며, 개인식별번호 Vi를 찾은후 유권자 인증부가 인증방법에 따라 인증절차에 들어가서 이루어진다.
이때, 유권자 인증부의 인증방법이 공인인증기관 방식이면, 주민등록번호/사업자번호, 공인 인증서 식별정보(Rvalue), 공인인증서 서명데이터를 추가적으로 유권자 단말기에 요청하고, 유권자 단말기를 통해 주민등록번호/사업자번호, 공인 인증서 식별정보, 서명데이터를 전송하며, 공인인증기관에서 검증이 성공하면 인증서버 타임스탬프(Ts)를 Sa = Signad(Ts)를 통해 유권자 인증부의 개인키로 전자서명한다.
그리고, 유권자 인증부의 인증방법이 외부인증기관 방식이면, 유권자 인증부와 외부인증기관사이에 디피-헬먼(Diffie-Hellman) 방식에 의해 세션키(ea)를 생성하고, 유권자 단말기가 추가인증 정보와 유권자 인증부의 서명을 연접하여 SEea(Secret || Signad(Secret))를 통해 전송하며, 외부인증기관에서 추가정보와 서명값을 SDea(SEea(Secret || Signad(Secret)) )= Secret || Signad(Secret)를 이용하여 복호화하여 얻고, 인증서버의 서명을 확인하고 추가인증 정보를 외부 정보장치에 검색하며, 인증이 성공되면 유권자 인증부에 SUCCESS를 전송하고 유권자 인증부는 Sa = Signad(Ts), SEva(Sa)를 통해 개인키로 전자서명을 유권자에게 전송한다.
그리고, 유권자 인증부의 인증방법이 자체인증기관이면, 자체인증기관 인증 프로토콜에 따라서 인증하고, 유권자 인증부에 SUCCESS를 전송하면 Sa = Signad(Ts)를 SEva(Sa)를 통해 전송한다.
상기 자체인증기관의 인증 프로토콜을 초기화하는 단계(b')는, 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 보내고, 자체인증기관이 자신이 지원하는 대칭키 알고리즘/해쉬함수중 유권자 인증부가 보내준 CHIPER_SPEC중 가장 상위에 있는 알고리즘을 선택하며, 유권자 단말기가 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed와 Hs = H(H(P || seed))를 계산하고, 유권자 단말기가 식별정보(ID)와 H(H(P || seed)), seed만을 서버에 전송하여 이루어진다.
그리고, 자체인증기관 인증 프로토콜을 인증하는 단계(b'')는, 유권자 단말기가 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하고, 자체인증기관이 임의의 난수 R을 생성하며, 자체인증서버가 저장되어 있는 seed과 Hs 을 이용하여 seed || R XOR H(H(Hs))을 계산하되 도전응답(challenge-response) 기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하며, 유권자 단말기가 H(H(Hs))를 계산하고 H(H(Hs)) XOR seed || R XOR H(H(Hs))를 계산하여 R을 획득하고, 유권자 단말기가 자체인증기관에 H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed))을 도전(challenge)에 대한 응답(Response) 값으로 전송하고, 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R)) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || seed) || ER(newSeed || H(P || newSeed))을 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 미리 저장되어 있는 Hs 와 (H(P || seed))의 해쉬값인 H(H(P || seed))와 비교하여 유권자 단말기로부터 요청된 유권자를 인증하며, 자체인증기관이 식별정보(ID)에 해당하는 newSeed과 H(H(P || newSeed)) 으로 업데이트하는 과정으로 이루어진다.
상기와 같이 유권자 본인인증이 마무리되면 유권자 단말기를 통해 투표서버에서 투표내용을 입력받는 동작이 이루어진다.
이하에서 투표과정을 설명하면 다음과 같다.
본 발명의 투표단계(c)는, 먼저, 유권자 단말기가 자신의 투표 값에 은닉계수를 계산하여 은닉투표 값을 생성B = vj*bkce (mod n)하고, 유권자 단말기가 은닉투표 값과 서명값 Sa 연접(SEvc(B || Sa))하여 투표서버로 전송한다.
그리고, 투표서버가 은닉투표값과 서명값을 복호화(SDvc(SEvc(B || Sa) = B || Sa)하고, 투표서버가 인증서버의 공개키로 서명값을 검증(Verifyae(Sa))하며, 검증이 성공하면 투표서버가 은닉투표 값에 대해서 전자서명을 하고 유권자에게 전송 Bcd (mod n)하고, 유권자 단말기가 은닉계수를 제거하여 투표서버의 전자서명을 얻는다. Bcd/bk (mod n) = (vj*bkce)cd/bk (mod n) = vjcd (mod n) = Sc
그리고, 유권자 단말기가 비트위임정보인 랜덤정수(R1,R2)와 위임정보인 b를 이용하여 H(R1,R2,b) || R1를 생성하고, 유권자 단말기가 최종 투표 데이터를 생성 (v = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하며, 유권자 단말기가 개표서버의 공개키로 최종 투표데이터를 암호화하여 전송(Ete(v) = Ete(vj || Ts || Sa || Sc || H(R1,R2,b)||R1))하고, 유권자 단말기가 개표서버에 최종 투표데이터와 검증 데이터를 연접하여 전송(SEvt(Ete(v) || Sa || Sc), SDvt(SEvt (Ete(v) || Sa || Sc))하여 투표과정을 마친다.
상기와 같이 투표과정을 마치면 개표단계를 진행한다.
본 발명의 전자투표 개표단계(d)는 개표서버가 개표관리위원회의 개표키 조각을 받아서 개표 비밀키를 복원(td = SecAdd(t1,t2,…tk))하고, 개표서버가 저장된 투표데이터를 복호화 (Dtd (Ete(v)) = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하며, 개표서버가 Sa, Sc를 검증하고, vj를 집계하고 검증정보인 H(R1,R2,b) || R1 분리하여 공표하는 과정으로 이루어진다.
또한, 개표과정이 마무리되면, 유권자가 투표한 사실관계를 확인할 수 있는바, 개표 검증단계(e)는, 유권자 단말이 H(R1,R2,b) || R1를 개표서버에 전송하여 검색한다.
도면 5는 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면이다.
보다 상세하게 본 도면 5는 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)에서 소정의 전자투표 인증정보를 확인/생성하여 제공하는 과정에 대한 것으로서, 구체적으로 상기 전자투표 인증정보를 소정의 금융시스템을 통해 등록하는 바람직한 전자투표 인증정보 등록과정을 도시한 도면이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면 5를 참조 또는 변형하여 전자투표 운용을 위한 전자투표 인증정보 등록 과정에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면 1에 도시된 실시 방법만으로 한정되지 아니한다.
이하, 본 도면 5에서 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)를 편의상 "서버"라고 하고, 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 단말(160)을 편의상 "단말"이라고 한다.
도면 1을 참조하면, 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 서버는 상기 단말로부터 상기 전자투표 인증정보 등록을 위한 소정의 금융계좌 정보가 수신되었는지 확인한다(500).
본 발명의 일 실시 방법에 따르면, 상기 금융계좌 정보는 상기 도면 2에 도시된 유권자 정보등록 과정 상의 후보자 등록 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 금융계좌 정보는 상기 도면 2에 도시된 유권자 정보등록 과정 이외에 별도의 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
만약 상기 단말로부터 상기 금융계좌 정보가 수신된 것이 확인되면(505), 상기 서버는 상기 금융계좌 정보에 대응하는 금융시스템과 연계하여 상기 금융계좌 정보를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인한다(510).
본 발명의 실시 방법에 따르면, 상기 서버는 상기 단말로부터 수신된 금융계좌 정보와 상기 금융시스템에서 상기 유권자에 대응하여 구비된 금융계좌 정보를 비교함으로써, 상기 금융계좌 정보를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인하는 것이 바람직하다.
만약 상기 금융계좌 정보가 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인되면(515), 상기 서버는 상기 금융계좌 정보를 상기 도면 2를 통해 등록된 유권자 정보(또는 유권자 고유코드)와 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하고(520), 상기 전자투표 인증정보로 처리된 상기 금융계좌 정보를 상기 유권자에게 제공한다(525).
본 발명의 일 실시 방법에 따르면, 상기 서버는 상기 네트워크 수단을 통해 상기 전자투표 인증정보로 처리된 상기 금융계좌 정보를 상기 유권자 단말(160)로 제공하는 것이 바람직하다.
도면 6은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면이다.
보다 상세하게 본 도면 6은 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)에서 소정의 전자투표 인증정보를 확인/생성하여 제공하는 과정에 대한 것으로서, 구체적으로 상기 전자투표 인증정보를 소정의 카드사 서버를 통해 등록하는 바람직한 전자투표 인증정보 등록과정을 도시한 도면이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면 6을 참조 또는 변형하여 전자투표 운용을 위한 전자투표 인증정보 등록 과정에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면 1에 도시된 실시 방법만으로 한정되지 아니한다.
이하, 본 도면 6에서 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)를 편의상 "서버"라고 하고, 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 단말(160)을 편의상 "단말"이라고 한다.
도면 1을 참조하면, 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 서버는 상기 단말로부터 상기 전자투표 인증정보 등록을 위한 소정의 카드 정보가 수신되었는지 확인한다(600).
본 발명의 일 실시 방법에 따르면, 상기 카드 정보는 상기 도면 2에 도시된 유권자 정보등록 과정 상의 후보자 등록 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 카드 정보는 상기 도면 2에 도시된 유권자 정보등록 과정 이외에 별도의 인터페이스 화면을 통해 상기 단말로부터 수신되는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
만약 상기 단말로부터 상기 카드 정보가 수신된 것이 확인되면(605), 상기 서버는 상기 카드 정보에 대응하는 카드사 서버와 연계하여 상기 카드 정보를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인한다(610).
본 발명의 실시 방법에 따르면, 상기 서버는 상기 단말로부터 수신된 카드 정보와 상기 카드사 서버에서 상기 유권자에 대응하여 구비된 카드 정보를 비교함으로써, 상기 카드 정보를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인하는 것이 바람직하다.
만약 상기 카드 정보가 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인되면(615), 상기 서버는 상기 카드 정보를 상기 도면 2를 통해 등록된 유권자 정보(또는 유권자 고유코드)와 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하고(620), 상기 전자투표 인증정보로 처리된 상기 카드 정보를 상기 유권자에게 제공한다(625).
본 발명의 일 실시 방법에 따르면, 상기 서버는 상기 네트워크 수단을 통해 상기 전자투표 인증정보로 처리된 상기 카드 정보를 상기 유권자 단말(160)로 제공하는 것이 바람직하다.
도면 7은 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면이다.
보다 상세하게 본 도면 7은 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)에서 소정의 전자투표 인증정보를 확인/생성하여 제공하는 과정에 대한 것으로서, 구체적으로 소정의 전자투표용 공인인증서를 상기 전자투표 인증정보로 등록하는 바람직한 전자투표 인증정보 등록과정을 도시한 도면이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면 7을 참조 또는 변형하여 전자투표 운용을 위한 전자투표 인증정보 등록 과정에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면 1에 도시된 실시 방법만으로 한정되지 아니한다.
이하, 본 도면 7에서 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)를 편의상 "서버"라고 하고, 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 단말(160)을 편의상 "단말"이라고 한다.
도면 1을 참조하면, 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 서버는 상기 유권자 정보를 기반으로 소정의 전자투표용 공인인증서를 생성 및 소정의 인증서 시스템(도시생략)에 등록한다(700).
본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 상기 전자투표용 공인인증서에 대응하는 공인인증서 및 상기 공인인증서에 대응하는 인증서 시스템에 대한 상세한 기술적 특징을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
만약 상기 전자투표용 공인인증서의 생성 및 등록과정이 완료되면(705), 상기 서버는 상기 전자투표용 공인인증서에 대응하는 인증서 시스템(도시생략)과 연계하여 상기 전자투표용 공인인증서를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인한다(710).
만약 상기 전자투표용 공인인증서가 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인되면(715), 상기 서버는 상기 전자투표용 공인인증서를 상기 도면 2를 통해 등록된 유권자 정보 또는 유권자 고유코드와 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하고(720), 상기 전자투표 인증정보로 처리된 상기 전자투표용 공인인증서를 상기 유권자에게 제공한다(725).
본 발명의 일 실시 방법에 따르면, 상기 서버는 상기 네트워크 수단을 통해 상기 전자투표 인증정보로 처리된 상기 전자투표용 공인인증서를 상기 유권자 단말(160)로 제공하는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 서버는 상기 전자투표 인증정보로 처리된 상기 전자투표용 공인인증서를 소정의 이동식 매체에 저장하여 상기 유권자 단말(160)로 배송하는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
유권자 단말(160)는 본 발명의 또다른 일 실시 방법에 따른 전자투표 운용을 위한 전자투표 인증정보 등록 과정을 도시한 도면이다.
보다 상세하게 본 도면 8은 상기 도면 1에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)에서 소정의 전자투표 인증정보를 확인/생성하여 제공하는 과정에 대한 것으로서, 구체적으로 소정의 OTP 생성기를 상기 전자투표 인증정보로 등록하는 바람직한 전자투표 인증정보 등록과정을 도시한 도면이다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 본 도면 8을 참조 또는 변형하여 전자투표 운용을 위한 전자투표 인증정보 등록 과정에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하며, 본 도면 1에 도시된 실시 방법만으로 한정되지 아니한다.
이하, 본 도면 8에서 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 정보등록 서버(100)를 편의상 "서버"라고 하고, 상기 도면 1에 도시된 유권자 정보등록 시스템 상의 유권자 단말(160)을 편의상 "단말"이라고 한다.
도면 1을 참조하면, 상기 도면 2에 도시된 유권자 정보등록 과정을 통해 유권자 등록정보 D/B(155)에 상기 유권자 정보가 등록된 후, 상기 서버는 상기 유권자 정보를 기반으로 소정의 OTP 생성기를 생성 및 소정의 OTP 시스템(도시생략)에 등록(예컨대, 상기 OTP 생성기에 대응하는 OTP 인증 기능을 OTP 시스템에 등록)한다(800).
본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 적어도 하나 이상의 OTP 생성기 및 OTP 시스템에 대한 상세한 기술적 특징을 기 숙지하고 있을 것이므로, 이에 대한 상세한 설명은 편의상 생략한다.
만약 상기 OTP 생성기의 생성 및 등록과정이 완료되면(805), 상기 서버는 상기 OTP 생성기에 대응하는 OTP 시스템(도시생략)과 연계하여 상기 OTP 생성기를 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인한다(810).
만약 상기 OTP 생성기가 본 발명에 따른 전자투표의 유권자 인증을 위한 전자투표 인증정보로 확인되면(815), 상기 서버는 상기 OTP 생성기를 상기 도면 2를 통해 등록된 유권자 정보(또는 유권자 고유코드)와 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하고(820), 상기 전자투표 인증정보로 처리된 상기 OTP 생성기를 상기 유권자에게 제공한다(825).
본 발명의 일 실시 방법에 따르면, 상기 서버는 상기 네트워크 수단을 통해 상기 전자투표 인증정보로 처리된 상기 OTP 생성기를 상기 유권자 단말(160)로 제공하는 것이 바람직하다.
본 발명의 다른 일 실시 방법에 따르면, 상기 서버는 상기 전자투표 인증정보로 처리된 상기 OTP 생성기를 소정의 이동식 매체에 저장하여 상기 유권자 단말(160)로 배송하는 것이 가능하며, 이에 의해 본 발명이 한정되지 아니한다.
본 발명에 따르면, 국가원수를 선출하는 것에서부터 각급 학교의 반장을 선출하는 전자투표, 또는 국가정책을 결정하는 것에서부터 각급 학교의 정책을 결정하는 전자투표에 있어서, 상기 선거(또는 투표)를 주관하는 기관이 상기 선거(또는 투표) 정책에 따라 적어도 하나 이상의 유권자를 인증 및 등록하고, 상기 유권자에게 유효한 투표권을 부여함으로써, 편리하고 신뢰할 수 있는 전자투표 서비스가 제공되도록 하는 이점이 있다.
100: 유권자 등록서버
105: 인터페이스부
110: 인터페이스 제공부
115: 정보 수신부
120: 정보 확인부
125: 유권자 인증부
130: 전자투표 인증정보 처리부
135: 전자투표 인증정보 제공부
140: 정보 저장부
145: 외부 인증서버
145a: 외부인증기관
145b: 공인인증기관
145c: 자체인증기관
155: 유권자 등록정보 D/B
160: 유권자 단말

Claims (5)

  1. 투표를 의뢰하는 유권자로부터 투표 데이터를 입력받아 투표를 하기 위한 유권자 단말(160)과, 상기 유권자 단말로부터 투표의뢰 정보를 입력받고 인증절차에 따라 유권자의 유효성을 인증받아 데이터를 저장하는 유권자 등록 서버(100)와, 상기 유권자 등록서버와 연결되어 유권자의 유효성을 인증하는 외부 인증서버(145)와, 상기 유권자 단말로부터 투표값 서명 요청이 입력되면 은닉된 투표값에 서명을 하여 리턴하는 투표서버(170)와, 유권자 단말기로부터 비트위임 정보로 암호화된 투표값과 서명값을 입력받아 개표가 이루어지도록 하는 개표서버(180)를 포함하여 이루어지고;
    상기 외부 인증서버(145)는,
    상기 유권자 단말과 연결되어 유권자의 본인확인을 인증하되 주민등록번호 또는 사업자 등록번호는 인정서버 해쉬함수 값으로만 저장한 상태에서 본인확인을 인증하기 위한 외부인증기관(145a) 또는 공인인증기관(145b)과; 상기 유권자 단말과 연결되어 유권자의 본인확인을 인증하되 주민등록번호 또는 사업자 등록번호 정보에 대한 해쉬함수값만 저장하고, 패스워드 정보는 시스템에 저장하지 않는 도전응답(challenge-response)기법을 이용하는 자체인증기관(145c)으로 이루어지며;
    상기 유권자 정보등록 서버(100)는,
    소정의 유권자 단말(160)이 인터페이스부(105)를 통해 상기 유권자 정보등록 서버(100)에 접속시, 상기 인터페이스부(105)와 연동하여 상기 유권자 단말(160)에서 소정의 유권자 정보를 입력(또는 선택)하여 전송하도록 하는 소정의 유권자 등록 인터페이스 화면을 생성(또는 추출)하여 제공하는 인터페이스 제공부(110)와; 상기 인터페이스부(105)와 연동하여 상기 유권자 단말(160)에서 상기 유권자 등록 인터페이스 화면을 통해 입력(또는 선택)하여 전송하는 유권자 정보를 수신하는 정보 수신부(115)와; 상기 수신된 유권자 정보에 포함된 정보구성을 확인하는 정보 확인부(120)와; 적어도 하나 이상의 외부 인증서버(145)를 통해 상기 확인된 유권자 정보의 유효성을 인증하는 유권자 인증부(125)와; 유권자가 전자투표 운용 시스템을 통해 투표하는 것을 인증하기 위한 소정의 전자투표 인증정보를 확인/생성하는 전자투표 인증정보 처리부(130)와; 상기 확인/생성된 전자투표 인증정보를 소정의 네트워크 수단을 통해 상기 유권자 단말(160)로 제공하거나, 이동식 매체(예컨대, IC칩, IC카드, USB장치, RFID태그, 데이터 저장 장치 등)에 저장하는 전자투표 인증정보 제공부(135)와; 상기 전자투표 인증정보와 상기 유권자 정보(또는 유권자 고유코드)를 연계 처리하여 유권자 등록정보 D/B(155)에 저장하는 정보 저장부(140)를 포함하여 이루어지는 것을 특징으로 하는 유권자 개인정보 보호용 전자투표 시스템.
  2. 제 1 항에 있어서,
    상기 유권자 단말은 TCP/IP(Transmission Control Protocol/Internet Protocol) 기반의 유선 네트워크(예컨대, ADSL(Asymmetric Digital Subscriber Line)/VDSL(Very high-data rate Digital Subscriber Line) 또는 케이블 통신망)를 통해 상기 유권자 정보등록 서버(100)와 통신 연결되는 데스크탑 컴퓨터 또는 노트북을 포함하는 유선 단말을 적어도 하나 이상 포함하여 이루어지거나, 또는 WCDMA(Wideband Code Division Multiple Access) 기반의 이동 통신망에 연결되는 이동 통신단말, 또는 IEEE 802.16x 기반의 초고속 무선 인터넷에 연결되는 휴대 인터넷 단말, 또는 DataTAC/Mobitex 기반의 무선 데이터 통신망에 연결되는 무선 데이터 통신 단말을 적어도 하나 이상 포함하는 무선 단말을 적어도 하나 이상 포함하여 이루어지는 것을 특징으로 하는 유권자 개인정보 보호용 전자투표 시스템.
  3. 제 1 항에 있어서,
    상기 자체 인증기관은,
    자체인증기관의 인증 프로토콜을 초기화하는 프로그램 코드로서,
    (a) 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 정렬하되 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 전송하는 프로그램 코드와;
    (b) 자체인증기관이 자신이 지원하는 대칭키 알고리즘/해쉬함수 중에서 알고리즘을 선택하되 유권자 인증부가 보내준 CHIPER_SPEC에서 가장 상위에 있는 알고리즘을 선택하여 유권자 단말기로 전송하는 프로그램 코드와;
    (c) 유권자 단말기가 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed와 Hs = H(H(P || seed))를 계산하는 프로그램 코드와;
    (d) 유권자 단말기가 식별정보(ID)와 H(H(P || seed)), seed만을 서버에 전송하는 프로그램 코드로 이루어지고,
    자체인증기관의 인증 프로토콜을 인증하는 프로그램 코드로서,
    (e) 유권자 단말기가 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하는 프로그램 코드와;
    (f) 자체인증기관이 임의의 난수 R을 생성하는 프로그램 코드와;
    (g) 자체인증기관에 seed와 Hs 을 이용하여 seed || R XOR H(H(Hs))을 계산하되 도전응답(challenge-response) 기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하는 프로그램 코드와;
    (h) 유권자 단말기가 전송된 seed와 알고 있는 패스워드정보를 이용하여 H(H(Hs))를 계산하여 H(H(Hs)) XOR seed || R XOR H(H(Hs)) 계산하여 R를 획득하는 프로그램 코드와;
    (i) 유권자 단말기가 상기 선택한 대칭키 알고리즘을 이용하여 자체인증기관에 H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed))을 도전(challenge)에 대한 응답(Response) 값으로 전송하는 프로그램 코드와;
    (j) 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R)) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || Seed) || ER(newSeed || H(P || newSeed))를 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 계산하여 자체인증기관에 미리 저장되어 있는 Hs와 H(P || Seed)의 해쉬값인 H(H(P || Seed))와 같은지 확인하여 유권자 단말기로부터 요청된 유권자를 인증하는 프로그램 코드와;
    (k) 자체인증기관이 식별정보(ID)에 해당하는 seed과 유권자 단말기가 보내온 H(P || newSeed)의 해쉬값 H(H(P || newSeed))으로 업데이트하는 프로그램 코드를 포함하는 것을 특징으로 하는 유권자 개인정보 보호용 전자투표 시스템.
  4. 정보등록 시스템 상의 단말은 네트워크 수단을 통해 상기 서버에 접속하여 전자투표 운용을 위한 통신채널을 연결하는 단계(200)와;
    상기와 같이 단말과 서버 사이에 전자투표 운용을 위한 통신채널이 연결되면, 상기 단말은 상기 통신채널을 통해 상기 서버로 상기 전자투표 운용을 위한 유권자 등록 인터페이스 화면을 요청하는 단계(205)와;
    이에 대응하여 상기 서버는 상기 단말에서 상기 유권자 정보를 입력(또는 선택)하기 위한 사용자 인터페이스를 포함하는 유권자등록 인터페이스 화면을 생성(또는 추출)하는 단계(210)와;
    상기 생성(또는 추출)된 유권자 등록 인터페이스 화면을 상기 통신채널을 통해 상기 단말로 전송하는 단계(215)와;
    이후, 상기 단말은 상기 유권자 정보를 입력(또는 선택)하기 위한 상기 사용자 인터페이스를 통해 상기 유권자 정보가 입력(또는 선택)하도록 처리하는 단계(220)와;
    상기 단말에서 상기 유권자 정보가 입력(또는 선택)되는가를 확인하는 단계(225)와;
    상기 단말이 상기 통신채널을 통해 상기 서버로 상기 유권자 정보를 전송하는 단계(230)와;
    이에 대응하여 상기 서버는 소정의 외부 인증서버(145)와 연동하여 상기 유권자 정보에 대한 유효성을 확인하는 단계(235)와;
    상기 유권자 정보에 포함된 투표 주관기관 정보에 대한 유효성이 인증되는가를 확인하는 단계(240)와;
    상기 서버는 상기 유권자 정보에 대응하는 소정의 유권자 고유코드를 생성하는 단계(245)와;
    상기 생성된 유권자 고유코드와 상기 수신된 유권자 정보를 연계 처리하여 상기 유권자 등록정보 D/B(155)에 저장하는 단계(250)로 이루어지고;

    상기 유권자 정보에 대한 유효성을 확인하는 단계(235)는,
    (a) 전자투표를 하기위해 유권자 인증부와, 투표서버와, 개표서버의 데이터를 초기화하는 전자투표 초기화단계와;
    (b) 유권자 인증부와 자체인증기관과 공인인증기관 및 외부인증기관을 접속하여 본인확인을 위한 인증절차를 하는 인증단계와;
    (b') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 프로토콜을 운용하는 자체인증기관 인증 프로토콜 초기화 단계와;
    (b'') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 자체인증기관 인증 프로토콜을 운영하는 자체인증기관 인증 프로토콜 인증 단계와;
    (c) 본인인증이 완료되면 투표서버와 통신하여 특정후보에 투표를 하는 투표단계 및;
    (d) 투표가 마무리되면 투표결과를 개표하는 개표단계로 이루어지고;

    상기 전자투표 초기화단계(a)는,
    (a-1) 외부 투표의뢰기관으로부터 유권자 인증부, 투표서버 및, 개표서버의 비밀키와 공개키를 발급(ad,ae)(cd,ce)(td,te)받는 단계와;
    (a-2) 개표서버의 비밀키를 분할(F(x) = a0 + a1x + a2x2 + a3x3 + .. + ak-1xk-1 s.t (i,f(i)) where i=1,…,n 여기서 비밀키 조각 t1,t2,…tn = SecSplit(td))하는 단계와;
    (a-3) 유권자 식별자 정보를 포함 유권자명부와 인증방법를 등록하는 단계로 이루어지며;

    상기 인증단계(b)는,
    (b-1) 유권자 단말기와 유권자 인증부가 디피-헬먼(Diffie-Hellman)방식에 의해 세션키(va)를 생성하는 단계와;
    (b-2) 유권자 단말기가 유권자 인증부에 유권자 식별번호(Vi)를 Eva(Vi)를 통해 전송하는 단계와;
    (b-3) 유권자 인증부가 Dva(Eva(Vi)) = Vi를 통해서 유권자 식별정보를 구하는 단계와;
    (b-4) 유권자 인증부가 유권자명부에서 개인식별번호 Vi를 검색하는 단계와;
    (b-5) 개인식별번호 Vi를 찾은후 유권자 인증부가 인증방법에 따라 인증절차에 들어가는 단계와;
    (b-5-1-1) 유권자 인증부의 인증방법이 공인인증기관 방식이면, 주민등록번호/사업자번호, 공인인증서 식별정보(Rvalue), 서명데이터를 추가적으로 유권자 단말기에 요청하는 단계와;
    (b-5-1-2) 유권자 단말기는 유권자 인증부에 주민등록번호/사업자번호, 공인인증서 식별정보, 서명데이터를 전송하는 단계와;
    (b-5-1-3) 유권자 인증부가 공인인증기관에 상기 데이터를 전송하여 공인인증기관에서 검증이 성공하면 인증서버 타임스탬프(Ts)를 Sa = Signad(Ts)를 통해 인증서버의 개인키로 전자서명하는 단계와;
    (b-5-2-1) 유권자 인증부의 인증방법이 외부인증기관 방식이면, 유권자 인증부와 외부인증기관사이에 디피-헬먼(Diffie-Hellman) 방식에 의해 세션키(ea)를 생성하는 단계와;
    (b-5-2-2) 유권자 단말기가 추가인증 정보와 유권자 인증부의 서명을 연접하여 SEea(Secret || Signad(Secret))를 통해 전송하는 단계와;
    (b-5-2-3) 외부인증기관에서 추가정보와 서명값을 복호화하여 얻고(SDea(SEea(Secret || Signad(Secret)) )= Secret || Signad(Secret)), 유권자 인증부의 서명을 확인하고 추가인증 정보를 외부 정보장치에 검색하며, 인증이 성공되면 유권자 인증부에 SUCCESS를 전송하고 유권자 인증부는 개인키로 전자서명을 유권자에게 전송하는(Sa = Signad(Ts), SEva(Sa)) 단계와;
    (b-5-3-1) 유권자 인증부의 인증방법이 자체인증기관이면, 자체인증기관 인증 프로토콜에 따라서 인증하는 단계와;
    (b-5-3-2) 유권자 인증부에 SUCCESS를 전송하면 Sa = Signad(Ts)를 전송하는(SEva(Sa)) 단계로 이루어지고;

    상기 자체인증기관 인증 프로토콜 초기화 단계(b')는,
    (b'-1) 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 정렬하되 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 전송하는 단계와;
    (b'-2) 자체인증기관은 자신이 지원하는 대칭키 알고리즘/해쉬함수 중에서 알고리즘을 선택하되 유권자 인증부가 보내준 CHIPER_SPEC에서 가장 상위에 있는 알고리즘을 선택하여 유권자 단말기로 전송하는 단계와;
    (b'-3) 유권자 단말기가 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed값과 Hs = H(H(P || seed)) 를 계산하는 단계와;
    (b'-4) 유권자 단말기가 식별정보(ID)와 H(H(P || seed)), seed만을 서버에 전송하는 단계로 이루어지며;

    상기 자체인증기관 인증 프로토콜을 인증하는 단계(b'')는,
    (b''-1) 유권자 단말기가 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하는 단계와;
    (b''-2) 자체인증기관이 임의의 난수 R을 생성하는 단계와;
    (b''-3) 자체인증기관이 seed || R XOR H(H(Hs))을 계산하되 도전응답(challenge-response)기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하는 단계와;
    (b''-4) 유권자 단말기는 H(H(Hs))을 계산하고 H(H(Hs)) XOR seed || R XOR H(H(Hs))를 계산하여 R을 획득하는 단계와;
    (b''-5) 유권자 단말기는 상기 선택한 대칭키 알고리즘을 이용하여 response = H(H(Hs || R)) XOR H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하여 자체인증기관에 전송하는 단계와;
    (b''-6) 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R )) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 자체인증기관에 저장되어 있는 Hs와 H(P || Seed)의 해쉬값인 H(H(P || Seed))와 같은지 확인하여 유권자 단말기로부터 요청된 유권자를 인증하는 단계와;
    (b''-7) 자체인증기관이 식별정보(ID)에 해당하는 seed와 H(P || seed)를 newSeed와 H(P || newSeed)의 해쉬값 H(H(P || newSeed))로 업데이트하는 단계로 이루어지고;

    상기 투표단계(c)는,
    (c-1) 유권자 단말기가 자신의 투표 값에 은닉계수를 계산하여 은닉투표 값을 생성B = vj*bkce (mod n)하는 단계와;
    (c-2) 유권자 단말기가 은닉투표 값과 서명값 Sa를 연접(SEvc(B || Sa))하여 투표서버로 전송하는 단계와;
    (c-3) 투표서버가 은닉투표값과 서명값을 복호화(SDvc(SEvc(B || Sa) = B || Sa)하는 단계와;
    (c-4) 투표서버가 인증서버의 공개키로 서명값을 검증(Verifyae(Sa))하는 단계와;
    (c-5) 검증이 성공하면 투표서버가 은닉투표 값에 대해서 전자서명을 하고 유권자에게 전송 Bcd (mod n)하는 단계와;
    (c-6) 유권자 단말기가 은닉계수를 제거하여 투표서버의 전자서명을 얻는 (Bcd/bk ( mod n) = (vj*bkce)cd/bk (mod n) = vjcd (mod n) = Sc) 단계와;
    (c-7) 유권자 단말기가 비트위임정보인 랜덤정수(R1,R2)와 위임정보 b를 이용하여 H(R1,R2,b) || R1를 생성하는 단계와;
    (c-8) 유권자 단말기가 최종 투표 데이터를 생성 (v = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 단계와;
    (c-9) 유권자 단말기가 개표서버의 공개키로 최종 투표데이터를 암호화하여 전송(Ete(v) = Ete(vj || Ts || Sa || Sc || H(R1,R2,b)||R1))하는 단계와;
    (c-10) 유권자 단말기가 개표서버에 최종 투표데이터와 검증 데이터를 연접하여 전송(SEvt(Ete(v) || Sa || Sc), SDvt(SEvt(Ete(v) || Sa || Sc))하는 단계로 이루어지며;

    상기 개표단계(d)는,
    (d-1) 개표서버가 개표관리위원회의 개표키 조각을 받아서 개표 비밀키를 복원(td = SecAdd(t1,t2,…tk))하는 단계와;
    (d-2) 개표서버가 저장된 투표데이터를 복호화 (Dtd (Ete(v)) = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 단계와;
    (d-3) 개표서버가 Sa, Sc를 검증하고, vj를 집계하고, 검증부분인 H(R1,R2,b) || R1 분리하여 공표하는 단계 및;
    (e) 유권자 단말기가 H(R1,R2,b) || R1를 개표서버에 전송하여 검색하는 단계로 이루어진것을 특징으로 하는 유권자 개인정보 보호용 전자투표 방법.
  5. 유권자 등록정보용 프로그램을 컴퓨터가 액세스 할 수 있도록 부호화시켜 저장한 컴퓨터 판독 가능한 기록매체에 있어서,
    (a) 전자투표를 하기위해 유권자 인증부와, 투표서버와, 개표서버 및 자체 인증기관의 데이터를 초기화하는 전자투표 초기화 프로세스와;
    (b) 유권자 인증부와 자체인증기관과 공인인증기관 및 외부인증기관을 접속하여 본인확인을 위한 인증절차를 하는 인증 프로세스와;
    (b') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 프로토콜을 운용하는 자체인증기관 인증 프로토콜 초기화 프로세스와;
    (b'') 공인절차 중에서 자체인증기관을 통하여 인증을 하기위해 자체인증기관 인증 프로토콜을 운영하는 자체인증기관 인증 프로토콜 인증 프로세스와;
    (c) 본인인증이 완료되면 투표서버와 통신하여 특정후보에 투표를 하는 투표프로세스 및;
    (d) 투표가 마무리되면 투표결과를 개표하는 개표 프로세스로 이루어지고;

    상기 전자투표 초기화 프로세스(a)는,
    (a-1) 외부 투표의뢰기관으로부터 인증서버, 투표서버 및, 개표서버의 비밀키와 공개키를 발급(ad,ae)(cd,ce)(td,te)받는 프로세스와;
    (a-2) 개표서버의 비밀키를 분할(F(x) = a0 + a1x + a2x2 + a3x3 + .. + ak-1xk-1 s.t (i,f(i)) where i=1,…,n 여기서 비밀키 조각 t1,t2,…tn = SecSplit(td))하는 프로세스와;
    (a-3) 유권자 식별자 정보를 포함 유권자명부와 인증방법를 등록하는 프로세스로 이루어지며;

    상기 인증 프로세스(b)는,
    (b-1) 유권자 단말기와 인증서버가 디피-헬먼(Diffie-Hellman)방식에 의해 세션키(va)를 생성하는 프로세스와;
    (b-2) 유권자 단말기가 인증서버에 유권자 식별번호(Vi)를 Eva(Vi)를 통해 전송하는 프로세스와;
    (b-3) 인증서버가 Dva(Eva(Vi)) = Vi를 통해서 유권자 식별정보를 구하는 프로세스와;
    (b-4) 인증서버가 유권자명부에서 개인식별번호 Vi를 검색하는 프로세스와;
    (b-5) 개인식별번호 Vi를 찾은후 인증서버가 인증방법에 따라 인증절차에 들어가는 프로세스와;
    (b-5-1-1) 인증서버의 인증방법이 공인인증기관 방식이면, 주민등록번호/사업자번호, 인증서 식별정보(Rvalue), 공인인증서 서명데이터를 추가적으로 유권자 단말기에 요청하는 프로세스와;
    (b-5-1-2) 유권자 단말기는 인증서버에 주민등록번호/사업자번호, 인증서 식별정보, 서명데이터를 전송하는 프로세스와;
    (b-5-1-3) 유권자 인증부가 공인인증기관에 상기 데이터를 전송하여 공인인증기관에서 검증이 성공하면 인증서버 타임스탬프(Ts)를 Sa = Signad(Ts)를 통해 인증서버의 개인키로 전자서명하는 프로세스와;
    (b-5-2-1) 유권자 인증부의 인증방법이 외부인증기관 방식이면, 유권자 인증부와 외부인증기관사이에 디피-헬먼(Diffie-Hellman) 방식에 의해 세션키(ea)를 생성하는 프로세스와;
    (b-5-2-2) 유권자 단말기가 추가인증 정보와 유권자 인증부의 서명을 연접하여 SEea(Secret || Signad(Secret))를 통해 전송하는 프로세스와;
    (b-5-2-3) 외부인증기관에서 추가정보와 서명값을 복호화하여 얻고(SDea(SEea(Secret || Signad(Secret)) )= Secret || Signad(Secret)), 유권자 인증부의 서명을 확인하고 추가인증 정보를 외부 정보장치에 검색하며, 인증이 성공되면 유권자 인증부에 SUCCESS를 전송하고 유권자 인증부는 개인키로 전자서명을 투표자에게 전송하는(Sa = Signad(Ts), SEva(Sa)) 프로세스와;
    (b-5-3-1) 유권자 인증부의 인증방법이 자체인증기관이면, 자체인증기관 인증 프로토콜에 따라서 인증하는 프로세스와;
    (b-5-3-2) 유권자 인증부에 SUCCESS를 전송하면 Sa = Signad(Ts)를 전송하는(SEva(Sa)) 프로세스로 이루어지고;

    상기 자체인증기관 인증 프로토콜 초기화 프로세스(b')는,
    (b'-1) 유권자 인증부가 지원하는 대칭키 알고리즘/해쉬함수들을 정렬하되 키 길이가 작은 순으로 정렬한 CHIPER_SPEC을 자체인증기관에게 전송하는 프로세스와;
    (b'-2) 자체인증기관은 자신이 지원하는 대칭키 알고리즘/해쉬함수 중에서 알고리즘을 선택하되 유권자 인증부가 보내준 CHIPER_SPEC에서 가장 상위에 있는 알고리즘을 선택하여 유권자 단말기로 전송하는 프로세스와;
    (b'-3) 유권자 단말기가 패스워드 정보(P)를 상기 선택한 해쉬알고리즘을 이용하여 임의의 seed값과 Hs = H(H(P || seed)) 를 계산하는 프로세스와;
    (b'-4) 유권자 단말기가 식별정보(ID)와 H(H(P || seed)), seed만을 유권자 인증부에 전송하는 프로세스로 이루어지며;

    상기 자체인증기관 인증 프로토콜을 인증하는 프로세스(b'')는,
    (b''-1) 유표자 단말기가 식별정보(ID)을 가지고 자체인증기관에 인증요청을 하는 프로세스와;
    (b''-2) 자체인증기관이 임의의 난수 R을 생성하는 프로세스와;
    (b''-3) 자체인증기관이 seed || R XOR H(H(Hs))을 계산하되 도전응답(challenge-response)기법을 이용하여 도전(challenge)으로 유권자 단말기에 전송하는 프로세스와;
    (b''-4) 유권자 단말기는 H(H(Hs))을 계산하고 H(H(Hs)) XOR seed || R XOR H(H(Hs))를 계산하여 R을 획득하는 프로세스와;
    (b''-5) 유권자 단말기는 상기 선택한 대칭키 알고리즘을 이용하여 response = H(H(Hs || R)) XOR H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하여 자체인증기관에 전송하는 프로세스와;
    (b''-6) 자체인증기관이 H(H(Hs || R)) XOR response = H(H(Hs || R )) XOR H(H(Hs || R)) XOR H(P || seed) || ER(newSeed || H(P || newSeed)) = H(P || Seed) || ER(newSeed || H(P || newSeed))을 계산하고 DR(ER(newSeed || H(P || newSeed)))를 복호화 하여 자체인증기관에 저장되어 있는 Hs와 H(P || Seed)의 해쉬값인 H(H(P || Seed))와 같은지 확인하여 투표자 단말기로부터 요청된 투표자를 인증하는 프로세스와;
    (b''-7) 자체인증기관이 식별정보(ID)에 해당하는 seed와 H(P || seed)를 newSeed와 H(P || newSeed)에 한번 더 해쉬하여 H(H(P || newSeed))로 업데이트하는 프로세스로 이루어지고;

    상기 투표 프로세스(c)는,
    (c-1) 유권자 단말기가 자신의 투표 값에 은닉계수를 계산하여 은닉투표 값을 생성B = vj*bkce (mod n)하는 프로세스와;
    (c-2) 유권자 단말기가 은닉투표 값과 서명값 Sa를 연접(SEvc(B || Sa))하여 투표서버로 전송하는 프로세스와;
    (c-3) 투표서버가 은닉투표값과 서명값을 복호화(SDvc(SEvc(B || Sa) = B || Sa)하는 프로세스와;
    (c-4) 투표서버가 유권자 인증부의 공개키로 서명값을 검증(Verifyae(Sa))하는 프로세스와;
    (c-5) 검증이 성공하면 투표서버가 은닉투표 값에 대해서 전자서명을 하고 유권자에게 전송 Bcd (mod n)하는 프로세스와;
    (c-6) 유권자 단말기가 은닉계수를 제거하여 투표서버의 전자서명을 얻는 (Bcd/bk (mod n) = (vj*bkce)cd/bk (mod n) = vjcd (mod n) = Sc) 프로세스와;
    (c-7) 유권자 단말기가 비트위임정보인 랜덤정수(R1,R2)와 위임정보 b를 이용하여 H(R1,R2,b) || R1를 생성하는 프로세스와;
    (c-8) 유권자 단말기가 최종 투표 데이터를 생성 (v = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 프로세스와;
    (c-9) 유권자 단말기가 개표서버의 공개키로 최종 투표데이터를 암호화하여 전송(Ete(v) = Ete(vj || Ts || Sa || Sc || H(R1,R2,b)||R1))하는 프로세스와;
    (c-10) 유권자 단말기가 개표서버에 최종 투표데이터와 검증 데이터를 연접하여 전송(SEvt(Ete(v) || Sa || Sc), SDvt(SEvt(Ete(v) || Sa || Sc))하는 프로세스로 이루어지며;

    상기 개표 프로세스(d)는,
    (d-1) 개표서버가 개표관리위원회의 개표키 조각을 받아서 개표 비밀키를 복원(td = SecAdd(t1,t2,…tk))하는 프로세스와;
    (d-2) 개표서버가 저장된 투표데이터를 복호화 (Dtd (Ete(v)) = vj || Ts || Sa || Sc || H(R1,R2,b) || R1)하는 프로세스와;
    (d-3) 개표서버가 Sa, Sc를 검증하고, vj를 집계하고, 검증부분인 H(R1,R2,b) || R1 분리하여 공표하는 프로세스 및;
    (e) 유권자 단말기가 H(R1,R2,b) || R1를 개표서버에 전송하여 검색하는 프로세스로 이루어진 것을 특징으로 하는 컴퓨터 판독 가능한 저장매체.
KR1020100090209A 2010-09-14 2010-09-14 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체 KR101234745B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100090209A KR101234745B1 (ko) 2010-09-14 2010-09-14 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100090209A KR101234745B1 (ko) 2010-09-14 2010-09-14 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체

Publications (2)

Publication Number Publication Date
KR20120028160A KR20120028160A (ko) 2012-03-22
KR101234745B1 true KR101234745B1 (ko) 2013-02-19

Family

ID=46133159

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100090209A KR101234745B1 (ko) 2010-09-14 2010-09-14 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체

Country Status (1)

Country Link
KR (1) KR101234745B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102479174B1 (ko) * 2022-07-05 2022-12-20 (주)링크허브 보안 전자 서명 관리 시스템 및 그 방법

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5084965B1 (ja) * 2012-05-07 2012-11-28 英資 鈴木 政策選択システム
KR101378285B1 (ko) * 2014-01-21 2014-03-25 신철우 전자 투표 시스템 및 방법
GB201713800D0 (en) * 2017-08-29 2017-10-11 Nchain Holdings Ltd Computer-implemented system and method
JP2019049925A (ja) * 2017-09-12 2019-03-28 富士ゼロックス株式会社 情報処理装置及びプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020048178A (ko) * 2000-12-16 2002-06-22 이계철 전자 투표 시스템 및 그 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020048178A (ko) * 2000-12-16 2002-06-22 이계철 전자 투표 시스템 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102479174B1 (ko) * 2022-07-05 2022-12-20 (주)링크허브 보안 전자 서명 관리 시스템 및 그 방법

Also Published As

Publication number Publication date
KR20120028160A (ko) 2012-03-22

Similar Documents

Publication Publication Date Title
US7694330B2 (en) Personal authentication device and system and method thereof
KR100848314B1 (ko) 무선 단말기를 이용한 전자투표 장치 및 방법
US20230297657A1 (en) Dynamic enrollment using biometric tokenization
EP2053777A1 (en) A certification method, system, and device
CN104125199B (zh) 一种基于属性的匿名认证方法及系统
CN103679436A (zh) 一种基于生物信息识别的电子合同保全系统和方法
US20200084039A1 (en) Method and system for electronic voting with biometric identification
US20050021954A1 (en) Personal authentication device and system and method thereof
KR101234745B1 (ko) 유권자 개인정보 보호용 전자투표 시스템과 방법 및 그 프로그램 소스를 저장한 저장매체
US11038675B2 (en) Electronic voting using secure electronic identity device
JP4857657B2 (ja) アクセス管理システム、および、アクセス管理方法
US11444784B2 (en) System and method for generation and verification of a subject's identity based on the subject's association with an organization
CN108667801A (zh) 一种物联网接入身份安全认证方法及系统
KR100912532B1 (ko) 신뢰 컴퓨팅 환경에서 각 참여자가 상호 보증 기능을 갖는인터넷 전자투표 방법 및 시스템
KR101133183B1 (ko) 개인정보 보호를 강화한 전자투표방법
CN106533681A (zh) 一种支持部分出示的属性证明方法与系统
CN112383401A (zh) 一种提供身份鉴别服务的用户名生成方法及系统
WO2023036143A1 (zh) 去中心化零信任身份核实认证系统及方法
Budurushi et al. Smart cards in electronic voting: lessons learned from applications in legally-binding elections and approaches proposed in scientific papers
KR101139898B1 (ko) 전자투표 방법
KR101167647B1 (ko) 전자투표 시스템
WO2002049311A2 (en) Pseudonym credentialing system
US20140245412A1 (en) Linking credentials in a trust mechanism
KR101116339B1 (ko) 개인정보 보호를 강화한 전자투표장치
KR20020048178A (ko) 전자 투표 시스템 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee