CN109246175B - 电子投票系统和控制方法 - Google Patents

电子投票系统和控制方法 Download PDF

Info

Publication number
CN109246175B
CN109246175B CN201810713364.2A CN201810713364A CN109246175B CN 109246175 B CN109246175 B CN 109246175B CN 201810713364 A CN201810713364 A CN 201810713364A CN 109246175 B CN109246175 B CN 109246175B
Authority
CN
China
Prior art keywords
voting
authentication
data
servers
transaction data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810713364.2A
Other languages
English (en)
Other versions
CN109246175A (zh
Inventor
海上勇二
添田纯一郎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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
Priority claimed from JP2018057525A external-priority patent/JP7029328B2/ja
Application filed by Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Publication of CN109246175A publication Critical patent/CN109246175A/zh
Application granted granted Critical
Publication of CN109246175B publication Critical patent/CN109246175B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C13/00Voting apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
    • H04L63/0421Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3239Cryptographic 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 cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Time Recorders, Dirve Recorders, Access Control (AREA)
  • Power Engineering (AREA)

Abstract

提供一种电子投票系统和控制方法。电子投票系统中,认证服务器具备:认证处理部,其使用认证数据认证投票者,认证数据包含与投票者绑定的第一ID和投票者的认证信息;和第一同步部,其在多个认证服务器等中同步包含第一交易数据的第一区块链,第一交易数据示出投票者被认证这一情况,投票服务器具备:投票处理部,其从终端接收包含第二ID和投票信息的投票数据,第二ID与投票者投的票绑定并与第一ID相独立,投票信息表示票的投票内容;和第二同步部,其在多个投票服务器等中同步第二区块链,第二区块链包含投票数据包含的投票信息作为第二交易数据,终端向认证服务器发送认证数据,在认证成功后将投票数据发送给多个投票服务器中的一个投票服务器。

Description

电子投票系统和控制方法
技术领域
本公开涉及电子投票系统和控制方法。
背景技术
近年来,在一部分地方自治团体中进行了电子投票。在电子投票系统中,为了隐匿投票者的投票内容,需要不绑定(关联)投票者的认证信息和投票内容。
在专利文献1公开的电子投票系统中,通过向在投票者的认证中使用的通信终端发送参加投票券(ticket,凭证),通信终端匿名化地发送参加投票券,从而确保投票者的匿名性。
另外,电子投票系统也需要具备如下要件:系统的可靠性高及记录的投票内容不会被改变。在非专利文献1中,公开了为了实现系统的高可靠性及防止改变投票内容的而使用区块链。
在先技术文献
专利文献
专利文献1:日本特表2011-517825号公报
非专利文献
非专利文献1:“利用了区块链的分散台账的电子投票的集合智慧的结构”信息处理第57卷第12号第1204-1209页(“ブロックチェーンの分散台帳を利用した電子投票による集合知の構成”情報処理第57巻第12号pp.1204-1209)
非专利文献2:“隐私保护入门”6.1k-匿名化(第135-138页)、6.5l-多样性(第157-159页)(“プライバシー保護入門”6.1k-匿名化(pp.135-138)、6.5l-多様性(pp.157-159))
发明内容
发明要解决的问题
在电子投票系统中用区块链管理投票的情况下,存在如下问题:当公开包含投票结果的区块链时,会形成投票者与投票内容的绑定,不能实现秘密投票。
因此,本公开提供一种能够进行秘密投票的电子投票系统等。
用于解决问题的技术方案
本公开的一个技术方案涉及的电子投票系统是一种具备终端、多个认证服务器以及多个投票服务器的电子投票系统,所述多个认证服务器各自具备:认证处理部,其从所述终端接收认证数据,并使用接收到的所述认证数据认证所述投票者,所述认证数据包含与投票者绑定的第一ID和所述投票者的认证信息;第一存储部,其存储包含第一交易数据的第一区块链,所述第一交易数据表示通过所述认证处理部认证了所述投票者这一情况;以及第一同步部,其与所述多个认证服务器中的除去该认证服务器的一个以上的认证服务器进行所述第一存储部存储的所述第一区块链的同步,所述多个投票服务器各自具备:投票处理部,其从所述终端接收包含第二ID和投票信息的投票数据,所述第二ID与所述投票者投的票绑定并与所述第一ID相独立,所述投票信息表示所述票的投票内容;第二存储部,其存储第二区块链,所述第二区块链包含所述投票处理部接收到的所述投票数据包含的所述投票信息作为第二交易数据;以及第二同步部,其与所述多个投票服务器中的除去该投票服务器的一个以上的投票服务器进行所述第二存储部存储的所述第二区块链的同步,所述终端具备数据生成部,所述数据生成部生成所述认证数据,并将生成的所述认证数据发送给所述多个认证服务器中的一个认证服务器,所述数据生成部进一步通过向所述认证服务器发送所述认证数据,从而在通过所述一个认证服务器进行的认证成功后生成所述投票数据,并将生成的所述投票数据发送给所述多个投票服务器中的一个投票服务器。
此外,这些总括或具体的技术方案既可以用系统、方法、集成电路、计算机程序或计算机可读取的CD-ROM等记录介质来实现,也可以用系统、方法、集成电路、计算机程序或记录介质的任意组合来实现。
发明的效果
根据本公开,能够实现秘密投票。
附图说明
图1是示出实施方式中的电子投票系统的结构的示意图。
图2是示出区块链的数据结构的说明图。
图3是示出交易数据的数据结构的说明图。
图4是示出实施方式中的投票终端的结构的框图。
图5是示出实施方式中的认证服务器的结构的框图。
图6是示出实施方式中的投票服务器的结构的框图。
图7是示出实施方式中的电子投票系统的初始化处理的时序图。
图8是示出实施方式中的初始化处理中的认证币的所有者的说明图。
图9是示出实施方式中的初始化处理中的投票币的所有者的说明图。
图10是示出实施方式中的电子投票系统的投票处理的第一时序图。
图11是示出实施方式中的电子投票系统的投票处理的第二时序图。
图12是示出实施方式中的投票处理中的认证币的所有者的说明图。
图13是示出实施方式中的投票处理中的投票币的所有者的说明图。
图14是实施方式中的投票服务器的匿名化的基准的第一说明图。
图15是实施方式中的投票服务器的匿名化的基准的第二说明图。
图16是示出与实施方式中的一致性算法的执行可否相关的处理的流程图。
图17是示出实施方式中的电子投票系统的投票结束处理的流程图。
图18是示出利用实施方式中的投票服务器进行的投票结果的公开处理的时序图。
图19是示出在实施方式中的电子投票系统的投票中使用的投票终端的示意图。
图20是示出在实施方式中的电子投票系统的投票结果的公开中使用的终端的示意图。
具体实施方式
本公开的一个技术方案涉及的电子投票系统是一种具备终端、多个认证服务器以及多个投票服务器的电子投票系统,所述多个认证服务器中各自具备:认证处理部,其从所述终端接收认证数据,并使用接收到的所述认证数据认证所述投票者,所述认证数据包含与投票者绑定的第一ID和所述投票者的认证信息;第一存储部,其存储包含第一交易数据的第一区块链,所述第一交易数据表示通过所述认证处理部认证了所述投票者这一情况;以及第一同步部,其与所述多个认证服务器中的除去该认证服务器的一个以上的认证服务器进行所述第一存储部存储的所述第一区块链的同步,所述多个投票服务器各自具备:投票处理部,其从所述终端接收包含第二ID和投票信息的投票数据,所述第二ID与所述投票者投的票绑定并与所述第一ID相独立,所述投票信息表示所述票的投票内容;第二存储部,其存储第二区块链,所述第二区块链包含所述投票处理部接收到的所述投票数据包含的所述投票信息作为第二交易数据;以及第二同步部,其与所述多个投票服务器中的除去该投票服务器的一个以上的投票服务器进行所述第二存储部存储的所述第二区块链的同步,所述终端具备数据生成部,所述数据生成部生成所述认证数据,并将生成的所述认证数据发送给所述多个认证服务器中的一个认证服务器,所述数据生成部进一步通过向所述认证服务器发送所述认证数据,从而在通过所述一个认证服务器进行的认证成功后生成所述投票数据,并将生成的所述投票数据发送给所述多个投票服务器中的一个投票服务器。
根据上述技术方案,电子投票系统在是合法的投票者的认证、在认证后进行的投票中使用包含相互独立的ID的数据。由此,例如,即使在选举后公开认证的结果和投票内容的情况下,也能够使进行了该投票内容的投票的投票者不被确定。另外,通过分别用单独的区块链管理表示已被认证这一情况的数据和表示投票内容的数据,从而能够抑制各数据的篡改。因此,电子投票系统能够进行秘密投票。
例如,也可以是,多个投票服务器各自还具备:第二交易数据生成部,所述第二交易数据生成部在从所述终端接收到所述投票数据的情况下生成第二交易数据,所述第二交易数据表示接收到的所述投票数据包含的所述投票内容;和第二区块生成部,所述第二区块生成部生成第二区块并将生成的所述第二区块与所述第二区块链连接,所述第二区块包含所述第二交易数据生成部生成的一个以上的所述第二交易数据。
根据上述技术方案,电子投票系统将包含投票者的投票内容的数据存储于区块链。因此,电子投票系统能够在抑制由投票者投票的投票内容的篡改的同时,进行秘密投票。
例如,也可以是,所述第二交易数据生成部生成包含第三交易数据的第三区块并将生成的所述第三区块与所述第二区块链连接,所述第三交易数据表示所述认证处理部成为能够进行对多个选民中的每一个的认证的状态,生成包含第四交易数据的第四区块并将生成的所述第四区块与所述第二区块链连接,所述第四交易数据表示通过由所述多个认证服务器中的一个认证服务器认证所述投票者从而所述终端成为能够接受所述投票者的投票内容的输入的状态。
根据上述技术方案,电子投票系统基于投票者由认证服务器认证这一情况,使投票者进行投票内容的输入。因此,电子投票系统能在限制未被认证的投票者进行投票内容的输入的同时,进行秘密投票。
例如,也可以是,多个投票服务器各自还具备匿名化部,所述匿名化部判定所述第二交易数据生成部生成的一个以上的所述第二交易数据是否满足预先确定的匿名性的基准,在满足所述基准时使所述第二区块生成部生成所述第二区块并将其与所述第二区块链连接。
根据上述技术方案,电子投票系统抑制区块的生成,直到多个投票者的投票的内容汇集并满足隐匿化的基准。假如不满足匿名化的基准的多个投票内容存储于一个区块时,根据该区块包含的投票内容的不同,有时能够进行与认证的数据的对照,无法实现秘密投票。因此,电子投票系统通过以区块为单位隐匿化投票内容,从而能够进行秘密性更高的秘密投票。
例如,也可以是,即使在所述匿名化部判定为一个以上的所述第二交易数据不满足所述基准的情况下,所述第二区块生成部在超过了预定的投票期间的情况下也生成所述第二区块并将其与所述第二区块链连接。
根据上述技术方案,电子投票系统能够避免在不满足隐匿化的基准的状态下投票期间结束的情况下,投票内容在不存储于区块的状态下残存下来。因此,电子投票系统能在以区块为单位隐匿化投票内容的同时,避免投票内容不被保存而残存下来,能够进行秘密性更高的秘密投票。
例如,也可以是,所述认证处理部在接收到的所述认证数据包含的所述第一ID已经包含于所述第一区块链时,使认证失败并禁止利用所述终端发送所述投票数据。
根据上述技术方案,电子投票系统能够通过使用区块链技术,从而容易地判定投票者的认证中使用的ID是否已经被利用、即重复利用的有无。因此,电子投票系统能够在容易地抑制认证中使用的ID的重复利用的同时,进行秘密投票。
例如,也可以是,多个认证服务器各自还具备:第一数据生成部,其在所述终端的认证成功的情况下生成第一交易数据,所述第一交易数据表示所述终端的认证成功这一情况;和第一区块生成部,所述第一区块生成部生成第一区块并将生成的所述第一区块与所述第一区块链连接,所述第一区块包含所述第一数据生成部生成的所述第一交易数据。
根据上述技术方案,电子投票系统将表示投票者已被认证这一情况的数据存储于区块链。因此,电子投票系统能够在抑制投票者已被认证这一情况的篡改的同时,进行秘密投票。
例如,也可以是,所述投票处理部在接收到的所述投票数据包含的所述第二ID已经包含于所述第二区块链时废弃接收到的所述投票数据。
根据上述技术方案,电子投票系统能够通过使用区块链技术,从而容易地判定投票中使用的ID是否已经被利用、也即是重复利用的有无。因此,电子投票系统能够在容易地抑制投票中使用的ID的重复利用的同时,进行秘密投票。
另外,本公开的一个技术方案涉及的电子投票系统是一种具备多个认证服务器和多个投票服务器的电子投票系统,所述多个认证服务器各自具备:认证处理部,其从终端接收认证数据,并使用接收到的所述认证数据认证所述投票者,所述认证数据包含与投票者绑定的第一ID和所述投票者的认证信息;第一存储部,其存储包含第一交易数据的第一区块链,所述第一交易数据表示通过所述认证处理部认证了所述投票者这一情况;以及第一同步部,其与所述多个认证服务器中的除去该认证服务器的一个以上的认证服务器进行所述第一存储部存储的所述第一区块链的同步,所述多个投票服务器各自具备:投票处理部,其从所述终端接收包含第二ID和投票信息的投票数据,所述第二ID与所述投票者投的票绑定并与所述第一ID相独立,所述投票信息表示所述票的投票内容;第二存储部,其存储第二区块链,所述第二区块链包含所述投票处理部接收到的所述投票数据包含的所述投票信息作为第二交易数据;以及第二同步部,其与所述多个投票服务器中的除去该投票服务器的一个以上的投票服务器进行所述第二存储部存储的所述第二区块链的同步。
根据上述技术方案,电子投票系统能够使用不包含于电子投票系统的终端,与上述同样地进行秘密投票。
另外,本公开的一个技术方案涉及的投票服务器的控制方法是一种电子投票系统中的多个投票服务器中的一个投票服务器的控制方法,包括:从终端接收包含第二ID和投票信息的投票数据,所述第二ID与投票者投的票绑定并与第一ID相独立,所述第一ID与所述投票者绑定,所述投票信息表示所述票的投票内容,存储第二区块链,所述第二区块链包含接收到的所述投票数据包含的所述投票信息作为第二交易数据,与所述多个投票服务器中的除去所述一个投票服务器的一个以上的投票服务器进行存储的所述第二区块链的同步,在从所述终端接收到所述投票数据的情况下生成第二交易数据,所述第二交易数据表示接收到的所述投票数据包含的所述投票内容,生成第二区块并将生成的所述第二区块与所述第二区块链连接,所述第二区块包含生成的一个以上的所述第二交易数据,判定生成的一个以上的所述第二交易数据是否满足预先确定的匿名性的基准,在满足所述基准时生成所述第二区块并与所述第二区块链连接。
根据上述技术方案,投票服务器抑制区块的生成,直到多个投票者的投票的内容汇集并满足隐匿化的基准。假如不满足匿名化的基准的多个投票内容存储于一个区块时,根据该区块包含的投票内容的不同,有时能够通过使用该区块的生成时刻等从而进行与认证的数据的对照,无法实现秘密投票。因此,投票服务器通过以区块为单位隐匿化投票内容,从而能够进行秘密性更高的秘密投票。
另外,本公开的一个技术方案涉及的电子投票系统的控制方法是一种具备终端、多个认证服务器以及多个投票服务器的电子投票系统的控制方法,通过所述多个认证服务器分别,从所述终端接收认证数据,并使用接收到的所述认证数据认证所述投票者,所述认证数据包含与投票者绑定的第一ID和所述投票者的认证信息,存储包含第一交易数据的第一区块链,所述第一交易数据表示所述投票者已被认证这一情况,与所述多个认证服务器中的除去该认证服务器的一个以上的认证服务器进行存储的所述第一区块链的同步,通过所述多个投票服务器分别,从所述终端接收包含第二ID和投票信息的投票数据,所述第二ID与所述投票者投的票绑定并与所述第一ID相独立,所述投票信息表示所述票的投票内容,存储第二区块链,所述第二区块链包含接收到的所述投票数据包含的所述投票信息作为第二交易数据,与所述多个投票服务器中的除去该投票服务器的一个以上的投票服务器进行存储的所述第二区块链的同步,利用所述终端,生成所述认证数据,并将生成的所述认证数据发送给所述多个认证服务器中的一个认证服务器,通过向所述认证服务器发送所述认证数据,从而在利用所述一个认证服务器进行的认证成功后生成所述投票数据,并将生成的所述投票数据发送给所述多个投票服务器中的一个投票服务器。
由此,实现与上述电子投票系统同样的效果。
此外,这些总括或具体的技术方案既可以用系统、方法、集成电路、计算机程序或计算机可读取的CD-ROM等记录介质来实现,也可以用系统、方法、集成电路、计算机程序或记录介质的任意组合来实现。
以下,参照附图,具体地说明实施方式。
此外,以下说明的实施方式均为示出总括或具体的例子的实施方式。以下实施方式示出的数值、形状、材料、构成要素、构成要素的配置位置以及连接方式、步骤、步骤的顺序等均为一例,并不意图限定本公开。另外,关于以下实施方式的构成要素中的、在表示最上位概念的独立权利要求中没有记载的构成要素,作为任意的构成要素进行说明。
(实施方式)
在本实施方式中,说明能够进行秘密投票的电子投票系统。
1.系统结构
电子投票系统是使投票者使用投票终端进行电子投票的系统。电子投票系统在投票终端与认证服务器之间进行与投票相关的认证处理,其后,在投票终端与投票服务器之间进行投票处理。也将电子投票系统受理投票者的投票的期间称为投票期间。此外,也将利用电子投票系统投票的人称为“投票者”,与此相对,将具有能够投票的权利的人称为选民。
以下,参照附图说明电子投票系统。
1.1电子投票系统10的整体结构
图1是示出本实施方式涉及的电子投票系统10的结构的图。电子投票系统10具备投票终端100a、101a、102a、100b、101b、102b、100c、101c及102c(也称为投票终端100a等)、认证服务器200a、200b及200c(也称为认证服务器200a等)以及投票服务器300a、300b及300c(也称为投票服务器300a等),并用网络N将它们连接。
认证服务器200a等进行投票者是否合法的认证,并管理表示已被认证的投票者的信息。认证服务器200a在上述认证及信息的管理中利用了公知的区块链技术。即,认证服务器200a利用区块链管理虚拟交易(transaction)的对象的交易历史。在此,作为虚拟交易对象,使用币(也称为认证币)来进行说明,但虚拟交易对象不限定于币(coin)。另外,多个认证服务器200a等通过共享收存有认证币的交易历史的区块链并相互承认,从而防止交易历史的篡改。认证币利用认证服务器200a等生成并提供给投票终端100a等。当投票者的认证成功时,从投票终端100a向认证服务器200a提供认证币。也将认证币的授受称为认证交易。认证币是没有实体的虚拟币,其交易历史利用认证服务器200a等进行管理。认证币具有可唯一地识别该认证币的ID(识别符)。认证币的ID与分配给选民的ID一对一地绑定。也将认证币的ID称为认证ID。
投票服务器300a等管理投票者的投票内容。投票服务器300a在投票内容的管理中利用了公知的区块链技术。即,投票服务器300a利用区块链管理虚拟交易对象的交易历史。在此,作为虚拟交易对象,使用币(也称为投票币)来进行说明,但虚拟交易对象不限定于币。另外,多个投票服务器300a等通过共享收存有投票币的交易历史的区块链并相互承认,从而防止交易历史的篡改。投票币利用投票服务器300a来生成,并经由认证服务器200a提供给投票终端100a等。也将投票币的授受称为投票交易,从投票终端100a向候选人提供投票币相当于选举中的投票。投票币是没有实体的虚拟币,其交易历史利用投票服务器300a等进行管理。并且,在投票者投票时,被从投票终端100a提供给候选人。候选人最终获得的投票币的个数成为电子投票中的候选人的得票数。投票币相当于以往的选举中的投票用纸。投票币具有可唯一地识别该投票币的ID(识别符)。投票币的ID与投票者投的票一对一地绑定。也将投票币的ID称为投票ID。
认证币的ID与投票币的ID相互独立。
电子投票系统10例如划分为三个子系统A、B及C。此外,子系统的数量不限于3,可以是2以上的任意数量。
电子投票系统10利用多个认证服务器200a等和多个投票服务器300a等使处理分散并且进行信息共享,从而能够在市镇村、省或全国规模的选举中使用。另外,通过在多个认证服务器200a彼此及多个投票服务器300a彼此中进行区块链技术中的相互的承认,从而防止交易历史的篡改。
例如,在投票者使用设置于投票站的投票终端100a进行投票的事例中,按投票站设置认证服务器200a和投票服务器300a。在该情况下,子系统A、B及C各自与投票站对应地设置。例如,在日本的全国规模的选举中,子系统的数量可成为数万个左右。
另外,投票者在自己家等地方经由网络进行投票的事例中,认证服务器200a和投票服务器300a可以按选民的属性(性别、居住地、职业等)设置。在该情况下,子系统A、B及C各自与选民的属性分别对应地设置。
图2是示出区块链的数据结构的说明图。
区块链是在链(chain)上连接作为其记录单位的区块而成的。各个区块具有多个交易数据和最近的区块(紧接着的前一区块)的哈希值。具体而言,在区块B2中包含其前面的区块B1的哈希值。而且,根据区块B2包含的多个交易数据和区块B1的哈希值运算得到的哈希值作为区块B2的哈希值包含在区块B3中。这样,通过一边包含前面的区块的内容作为哈希值一边将区块连接为链状,从而有效地防止符合规则的交易数据的篡改。
假如变更过去的交易数据时,区块的哈希值成为与变更前不同的值,为了将篡改后的区块伪装成正确的区块,必须重新制作以下的全部区块,该作业在现实中是非常困难的。
各交易数据示出币的新生成及授受。该币相当于认证币及投票币。
图3是示出交易数据的数据结构的第一说明图。
图3所示的交易数据是示出从保持者向提供目标提供币这一情况的交易数据D1的一例。交易数据D1包含:表示保持者的地址P1、表示提供目标的地址P2以及通过用保持者的签名密钥对地址P1及P2的哈希值进行签名而生成的电子签名P3。此外,在生成新的币时也生成交易数据。生成新的币时的交易数据的地址P1成为空白栏。
以下,按顺序说明投票终端100a、认证服务器200a及投票服务器300a。此外,关于其他投票终端、其他认证服务器及其他投票服务器,同样的说明也成立。
1.2投票终端100a的结构
投票终端100a是从投票者接受投票者的认证信息及投票内容的输入并显示各种信息的终端。投票终端100a既可以是投票者拥有的移动终端(具体而言是移动电话终端、智能手机以及个人计算机),也可以是安装于投票站的终端。
图4是示出本实施方式涉及的投票终端100a的结构的框图。投票终端100b及100c也是同样的结构。投票终端100a具备显示部111、输入部112、交易数据生成部113以及通信部114。投票终端100a可通过处理器使用存储器执行预定程序而实现。
显示部111是显示投票时的画面的显示装置。在仅称为“画面”的情况下,含义是显示在液晶显示器或有机EL(Electro-Luminescence)显示器等显示装置上的用图像映出的画面。以下也是同样的。
输入部112从投票者受理投票时的认证信息的输入及投票内容的输入。
交易数据生成部113生成用于投票者的认证的认证数据、用于投票者的投票的投票数据。另外,交易数据生成部113生成用于伴随着认证的认证币授受的认证交易数据、用于伴随着投票者的投票的投票币授受的投票交易数据。认证数据包含认证信息和投票终端100a的电子签名(也简称为“签名”),所述认证信息包含投票者本人固有的认证ID。电子签名是用签名密钥对认证信息的哈希值进行签名而生成的。认证交易数据是表示从投票终端100a向认证服务器200a提供认证币的交易的交易数据。也将认证交易数据称为第一交易数据。
另外,投票数据包含电子投票中的投票内容和投票终端100a的签名。具体而言,投票内容是表示作为投票目标的候选人的信息或者表示信任或不信任等的信息。投票交易数据是表示向候选人提供从认证服务器200a提供的投票币的交易的交易数据。也将投票交易数据称为第二交易数据。
交易数据生成部113生成认证数据并将生成的认证数据发送给认证服务器200a。另外,交易数据生成部113通过向认证服务器200a发送认证数据,从而在利用认证服务器200a的认证成功后生成投票数据,并将生成的投票数据发送给投票服务器300a。
此外,利用投票终端100a的签名生成所需的签名密钥既可以由投票终端100a预先保持,也可以在接受投票者的认证信息的输入时从认证服务器200a取得。
通信部114是进行与认证服务器200a及投票服务器300a各自的通信的通信接口。该通信可以利用TLS(Transport Layer Security)来实现。在该情况下,TLS通信用的加密密钥可以由通信部114保持。
1.3认证服务器200a的结构
图5是示出本实施方式中的认证服务器200a的结构的框图。认证服务器200b及200c也是同样的结构。认证服务器200a具备画面数据生成部211、交易数据验证部212、交易数据生成部213、区块生成部214、同步部215、存储部216以及通信部217。认证服务器200a等可通过处理器使用存储器执行预定程序而实现。
当从投票终端100a有为了认证的访问时,画面数据生成部211生成用于描绘认证用的画面的画面数据。具体而言,画面数据生成部211生成画面数据,所述画面数据用于在投票终端100a描绘用于从投票者接受认证信息的输入的画面。
交易数据验证部212在从投票终端100a接收认证交易数据时验证接收到的认证交易数据。交易数据验证部212在从投票终端100a接收认证交易数据时,验证接收到的认证交易数据包含的签名是否合法,另外,验证认证信息是否合法。在认证信息的合法性的验证中,验证是否是利用电子投票系统10事先发行的认证信息,另外,验证在投票期间中一个认证信息是否被使用两次以上等。一个认证信息是否被使用两次以上是通过参照存储部216,根据在存储部216中是否存储有利用该一个认证信息的认证的交易来确认的。交易数据验证部212在验证处理后判定为认证信息合法的情况下将认证交易数据存储于存储部216。另外,合法的认证交易数据被利用同步部215向其他认证服务器200b及200c发送并同步。
另外,交易数据验证部212在从投票服务器300a接收投票交易数据时,验证投票交易数据包含的签名是否合法。
交易数据生成部213生成认证交易涉及的认证交易数据。交易数据生成部213在初始化处理中生成认证交易数据,所述认证交易数据新生成与选民的人数相同的个数的认证币。在该时间点的认证币的所有者是每个选民。
另外,交易数据生成部213生成将从投票服务器300a提供的投票币提供给投票终端100a的投票交易数据。交易数据生成部213相当于第一交易数据生成部。
区块生成部214在多个认证服务器200a之间执行一致性算法。一致性算法既可以使用被称为PBFT(Practical Byzantine Fault Tolerance)的一致性算法,也可以使用其他公知的一致性算法。区块生成部214在关于一个以上的认证交易通过一致性算法形成了一致意见的情况下,生成包含认证交易数据的区块,并存储于存储部216。并且,区块生成部214将生成的区块与存储于存储部216的区块链连接。区块生成部214相当于第一区块生成部。
同步部215在多个认证服务器200a之间进行区块链的区块的同步及认证交易数据的同步。在多个认证服务器200a之间,通过对等网络(peer topeer)进行区块链的区块的同步。例如,当从投票终端100a接收认证交易数据并利用交易数据验证部212验证认证交易数据的合法性时,同步部215通过向其他认证服务器200b及200c发送认证交易数据的副本,从而使完成验证的认证交易数据存储于其他认证服务器200b及200c的存储部216。另外,如果同步部215从其他认证服务器200b及200c接收到认证交易数据,则将接收到的认证交易数据存储于存储部216。
存储部216是存储认证交易数据和区块链的区块的存储装置。也将存储部216存储的区块链称为第一区块链。
通信部217是进行与投票终端100a及投票服务器300a各自的通信的通信接口。该通信可以利用TLS来进行。在该情况下,TLS通信用的加密密钥可以由通信部217保持。
此外,交易数据验证部212和交易数据生成部213相当于从投票终端100a接收认证数据并使用接收到的认证数据认证投票者的认证处理部212A,所述认证数据包含与投票者绑定的认证ID(即第一ID)和投票者的认证信息。
1.4投票服务器300a的结构
图6是示出本实施方式中的投票服务器300a的结构的框图。投票服务器300b及300c也是同样的结构。投票服务器300a具备画面数据生成部311、候选人DB(数据库)312、交易数据验证部313、交易数据生成部314、匿名化部315、区块生成部316、同步部317、存储部318以及通信部319。投票服务器300a可通过处理器使用存储器执行预定程序而实现。
当从投票终端100a有为了投票的访问时,画面数据生成部311生成画面数据,所述画面数据是用于描绘投票用的画面的绘图数据。具体而言,画面数据生成部311从候选人DB312取得与候选人相关的信息并生成画面数据,所述画面数据是用于描绘画面的绘图数据,所述画面显示在投票终端100a上且用于接受投票者的投票信息的输入。
候选人DB312是存储有与候选人相关的信息的数据库。在候选人DB312中至少存储有确定候选人的信息。具体而言,在候选人DB312中存储有表示候选人的姓名的字符串作为确定候选人的信息,并且也可以存储有表示该候选人的面部照片的图像等。
交易数据验证部313在从投票终端100a接收投票交易数据时验证接收到的投票交易数据。交易数据验证部313验证投票交易数据包含的签名是否合法,另外,验证投票信息是否合法。在投票信息的合法性的验证中,验证是否是利用电子投票系统10事先发行的投票信息,另外,验证在投票期间中一个投票信息是否被使用两次以上等。一个投票信息是否被使用两次以上是通过参照存储部318,根据在存储部318中是否存储有该一个投票信息来确认的。交易数据验证部313在验证处理后判定为投票信息合法的情况下将投票交易数据记录于存储部318。另外,合法的投票交易数据被利用同步部317向其他投票服务器300b及300c发送并同步。
交易数据生成部314生成投票交易涉及的投票交易数据。交易数据生成部314在初始化处理中生成投票交易数据,所述投票交易数据新生成与选民的人数相同的个数的投票币。在该时间点的投票币的所有者是投票服务器300a。接着,交易数据生成部314生成向认证服务器200a提供投票币的投票交易数据(相当于第三交易数据)。在生成的投票交易数据中,包含表示作为提供目标的投票币的所有者的信息(也即是,表示认证服务器200a的信息)和投票服务器300a的签名。在生成向认证服务器200a提供投票币的投票交易数据的时间点,投票币的所有者成为认证服务器200a。交易数据生成部314相当于第二交易数据生成部。
匿名化部315判定记录于存储部318的投票交易数据的匿名性。匿名化部315判定投票交易数据是否满足与匿名化相关的预定基准,所述投票交易数据记录于存储部318且尚未包含于区块链。在判定为投票交易数据满足匿名化的基准的情况下,匿名化部315使区块生成部316生成区块。匿名化的基准基于选民数和候选人的人数预先确定。匿名化的基准例如是k-匿名性的k=3及l-多样性的l=2以上等。在非专利文献2中记载了k-匿名性及l-多样性。即使在不满足匿名化的基准的情况下,在过了投票期间的结束时刻的情况下,即,超过了投票期间的情况下,匿名化部315也向区块生成部316发送区块生成的请求。此外,“匿名化的基准”也可称为“匿名性的基准”。
区块生成部316在多个投票服务器300a等之间执行一致性算法。区块生成部316根据来自匿名化部315的一致性算法的执行请求,在多个投票服务器300a等之间执行一致性算法。一致性算法既可以使用PBFT,也可以使用其他公知的一致性算法。关于满足匿名化的基准的投票交易数据,在用一致性算法形成了一致意见的情况下,生成包含投票交易数据的区块,并存储于存储部318。并且,区块生成部316将生成的区块与存储于存储部318的区块链相连接。区块生成部316相当于第二区块生成部。
另外,区块生成部316生成区块(相当于第三区块)并将生成的区块与区块链相连接,所述区块包含向认证服务器200a提供投票币的投票交易数据(第三交易数据)。第三交易数据是表示认证处理部212A(交易数据验证部212)成为能够进行对多个选民各自的认证的状态的交易数据。
另外,区块生成部316生成区块(相当于第四区块)并将生成的第四区块与第二区块链相连接,所述区块包含从认证服务器200a向投票终端100a提供投票币的投票交易数据(第四交易数据)。第四交易数据是表示通过利用认证服务器200a认证投票者从而投票终端100a成为能够接受投票者的投票内容的输入的状态的交易数据。
同步部317在多个投票服务器300a等之间进行区块链的区块的同步及投票交易数据的同步。在多个投票服务器300a之间,通过对等网络(peer to peer)进行区块链的区块的同步。例如,当从投票终端100a接收投票交易数据并利用交易数据验证部313验证投票交易数据的合法性后,同步部317向其他投票服务器300b及300c发送投票交易数据的副本,并使完成验证的投票交易数据存储于其他投票服务器300b及300c的存储部318。另外,如果同步部317从其他投票服务器300b及300c接收到投票交易数据,则将接收到的投票交易数据存储于存储部318。
存储部318是存储投票交易数据和区块链的区块的存储装置。也将存储部318存储的区块链称为第二区块链。
通信部319是进行与投票终端100a及认证服务器200a各自的通信的通信接口。该通信可以利用TLS来进行。在该情况下,TLS通信用的加密密钥可以由通信部319保持。
此外,交易数据验证部313和交易数据生成部314相当于从投票终端100a接收包含投票ID(即第二ID)和投票信息的投票数据的投票处理部313A,所述投票ID与投票者投的票绑定并与认证ID相独立,所述投票信息表示票的投票内容。
1.5投票终端与服务器间的投票时序
以下,说明电子投票系统10的处理。在此,说明如下处理:在投票终端100a等与认证服务器200a等之间使用认证币进行投票者的认证,并且在投票终端100a等与投票服务器300a等之间使用投票币进行投票。此时,为了仅向认证完成的投票者许可投票,投票币经由认证服务器200a提供给投票终端100a。
以下,按顺序说明初始化处理、投票处理、结束处理及投票结果的公开处理。
<初始化处理>
图7是示出本实施方式中的电子投票系统10的初始化处理的时序图。图8及图9是分别示出本实施方式中的初始化处理中的认证币及投票币的所有者的说明图。认证币及投票币的所有者分别利用认证服务器200a等及投票服务器300a等进行管理。
图7所示的初始化处理是对于使用电子投票系统10的一次选举事先执行一次的处理。
在步骤S101中,认证服务器200a执行认证初始化处理。认证初始化处理生成认证交易数据,并生成包含生成的认证交易数据的区块,所述认证交易数据用于生成认证币,所述认证币具有事先分发给选民的ID(也称为选民ID)作为认证ID。在该阶段中,认证币的所有者是利用该选民ID识别的选民(参照图8)。
在步骤S102中,投票服务器300a执行投票初始化处理。投票初始化处理生成投票交易数据,并生成包含生成的投票交易数据的区块,所述投票交易数据生成与选民的人数相同的个数的投票币。在该阶段中,全部投票币的所有者是投票服务器300a(参照图9的(a))。投票币的ID是能够唯一地识别每个投票币的字符串或值,且全部不同。投票币的ID可以是随机选择的字符串或值。通过投票币的ID为全部不同的字符串或值,从而在参照区块链时能够确认相同的投票币是否被重复利用。
在步骤S103中,投票服务器300a生成投票交易数据,并生成包含生成的投票交易数据的区块,所述投票交易数据向认证服务器200c提供在步骤S102中生成的投票币。另外,将生成的投票交易数据发送给认证服务器200c。此外,以投票币的提供目标为认证服务器200c的情况为例进行说明,但投票币的提供目标可以是其他认证服务器200a或200b。在该阶段中,表示提供给认证服务器200c的投票币的所有者的信息变更为认证服务器200c(参照图9的(b))。
在步骤S104中,认证服务器200c在与其他认证服务器200a及200b之间进行同步处理。在同步处理中,认证服务器200c利用同步部215将接收到的投票交易数据发送给其他认证服务器200a及200b。认证服务器200a及200b的同步部215存储从认证服务器200c的同步部215接收到的投票交易数据。
<投票处理>
图10及图11是示出本实施方式中的电子投票系统10的投票处理的时序图。图12及图13是分别示出本实施方式中的投票处理中的认证币及投票币的所有者的说明图。
图10及图11所示的投票处理是一名投票者进行一次投票时执行一次的处理,在一次选举中,执行与投票者的人数相同的次数的处理。
在步骤S201中,投票终端100a访问认证服务器200a。该访问例如是向认证服务器200a提供的Web站点的Web访问,可使用HTTP(Hypertext Transfer Protocol)或HTTPS(HTTP over SSL(Secure Sockets Layer)/TLS(Transport Layer Security))等。
在步骤S202中,认证服务器200a响应于在步骤S201中的访问,生成用于取得投票者的选民ID的认证画面的画面数据,并发送给投票终端100a。
在步骤S203中,投票终端100a基于在步骤S202中发送来的画面数据显示认证画面,并接受包含投票者的选民ID的认证信息的输入。投票者辨识显示于投票终端100a的认证画面,并在投票终端100a中输入事先分发的选民ID。投票者既可以手工输入选民ID,也可以通过利用投票终端100a读取记录有选民ID的条形码或二维码从而进行输入。
在步骤S204中,投票终端100a使用在步骤S203中输入的选民ID作为认证ID并生成认证交易数据。
在步骤S205中,投票终端100a向认证服务器200a发送在步骤S204中生成的认证交易数据。在此,将向认证服务器200a发送认证交易数据的情况作为例子进行说明,但也可以向其他认证服务器200b及200c发送。认证服务器200a接收发送来的认证交易数据。
在步骤S206中,认证服务器200a进行在步骤S205中从投票终端100a接收到的认证交易数据的验证。在认证交易数据的验证中,参照存储于存储部216的认证交易数据的区块链,判定从投票终端100a接收到的认证交易数据包含的选民ID是否已经存储于该区块链。在判定为选民ID没有存储于该区块链的情况下,设为认证交易数据的验证成功,在判定为已经存储的情况下,设为认证交易数据的验证失败。
在上述步骤S206中认证交易数据的验证失败的情况下,认证服务器200a进行错误处理(未图示)。在错误处理中,例如向投票终端100a通知错误消息。错误消息可以包含“不是选民”或“由于已经认证完成,所以不能利用相同的选民ID”等消息。另外,在错误处理中,禁止以后利用投票终端100a进行投票数据的发送等投票处理。
在上述步骤S206中认证交易数据的验证成功的情况下,进入步骤S207。
在步骤S207中,认证服务器200a向其他认证服务器200b及200c发送认证交易数据的副本。认证服务器200b及200c验证接收到的认证交易数据。
在步骤S208中,认证服务器200a、200b及200c执行一致性算法。通过执行一致性算法,接收到的认证交易数据是合法交易这一情况被进行验证。认证服务器200a、200b及200c进行包含验证完成的认证交易数据的区块的生成。由此,由于生成了包含认证完成的选民ID的区块,所以即使此后接收到包含相同的选民ID的认证交易数据,也能够通过参照区块链从而判断是同一选民ID的重复利用。在该阶段中,具有进行了认证的选民的选民ID的认证币的所有者变更为认证服务器200a(参照图12)。
在步骤S209中,认证服务器200a生成投票交易数据并将生成的投票交易数据发送给投票终端100a及投票服务器300a,所述投票交易数据向在步骤S205中发送认证交易数据的投票终端100a提供投票币。
在步骤S210中,认证服务器200a将生成的投票交易数据的副本发送给其他认证服务器200b及200c,取得投票交易数据的同步。认证服务器200a、200b及200c将生成的投票交易数据涉及的投票币记录为已利用。
在步骤S211中,投票服务器300a进行在步骤S209中从认证服务器200a接收到的投票交易数据的验证。在投票交易数据的验证中,参照存储于存储部318的投票交易数据的区块链,判定从认证服务器200a接收到的投票交易数据包含的投票ID是否已经存储于该区块链。在判定为投票ID没有存储于该区块链的情况下,设为投票交易数据的验证成功,在判定为已经存储的情况下,设为投票交易数据的验证失败。
在上述步骤S211中投票交易数据的验证失败的情况下,投票服务器300a进行错误处理(未图示)。在错误处理中,例如向投票终端100a通知错误消息。错误消息可以包含“由于已经投票完成,所以不能利用相同的ID”等消息。另外,在错误处理中,禁止以后利用投票终端100a进行投票数据的发送等投票处理。
在步骤S212中,投票服务器300a向其他投票服务器300b及300c发送投票交易数据的副本。投票服务器300b及300c验证接收到的投票交易数据。
在步骤S213中,投票服务器300a、300b及300c执行一致性算法。通过执行一致性算法,接收到的投票交易数据是合法交易这一情况被进行验证。投票服务器300a、300b及300c进行包含验证完成的投票交易数据的区块的生成。在该阶段中,向在步骤S206中认证交易数据的验证成功的投票者提供的投票币的所有者变更为投票终端100a(参照图13的(a))。
在步骤S221中,投票终端100a访问投票服务器300a。该访问例如是向投票服务器300a提供的Web站点的Web访问,可使用HTTP或HTTPS等。
在步骤S222中,投票服务器300a响应于在步骤S221中的访问,生成用于投票者的投票的投票画面的画面数据,并发送给投票终端100a。此时,投票服务器300a参照候选人DB312,生成包含候选人的一览的画面数据。该投票画面是投票者为了选择作为投票目标的候选人而阅览的画面。
在步骤S223中,投票终端100a基于在步骤S222中发送来的画面数据显示投票画面,并接受示出作为投票目标的候选人的信息的输入。投票者辨识显示于投票终端100a的投票画面,并输入投票信息,所述投票信息是表示作为投票目标的候选人的信息。投票者既可以通过操作显示于显示装置的画面从而输入投票信息,也可以通过手工输入作为投票目标的候选人的姓名等信息从而输入投票信息。当投票终端100a从投票者接受投票信息的输入后,生成包含投票信息的投票交易数据,所述投票信息表示作为投票目标的候选人。这是向作为投票目标的候选人提供投票币的投票交易数据。投票终端100a将生成的投票交易数据发送给投票服务器300a。
在步骤S224中,投票服务器300a进行在步骤S223中从投票终端100a接收到的投票交易数据的验证。在投票交易数据的验证中,参照存储于存储部318的投票交易数据的区块链,判定从投票终端100a接收到的投票交易数据包含的投票ID是否已经存储于该区块链。在判定为投票ID没有存储于该区块链的情况下,设为投票交易数据的验证成功,在判定为已经存储的情况下,设为投票交易数据的验证失败。
在上述步骤S224中投票交易数据的验证失败的情况下,投票服务器300a进行错误处理(未图示)。在错误处理中,例如向投票终端100a通知错误消息。错误消息可以包含“由于已经投票完成,所以不能利用相同的投票ID”等消息。
在上述步骤S224中投票交易数据的验证成功的情况下,进入步骤S225。
在步骤S225中,投票服务器300a向其他投票服务器300b及300c发送投票交易数据的副本。投票服务器300b及300c验证接收到的投票交易数据并存储于存储部318。
在步骤S226中,投票服务器300a、300b及300c执行一致性算法。通过执行一致性算法,接收到的投票交易数据是合法交易这一情况被进行验证。在验证为接收到的投票交易数据是合法交易的情况下,进行包含验证过的投票交易数据的区块的生成。由此,由于生成了包含投票完成的投票ID的区块,所以即使此后接收到包含相同的投票ID的投票交易数据,也能够通过参照区块链从而判断是同一投票ID的重复利用。在该阶段中,在投票者的投票中使用的投票币的所有者变更为候选人X,所述候选人X是作为投票目标的候选人(参照图13的(b))。
此外,步骤S226的一致性算法的执行可以不是每次都进行,而是仅在预定条件成立的情况下进行。预定条件例如是区块包含的投票交易数据满足匿名化的基准这样的条件。以下对此进行说明。
首先,说明匿名化的基准。
图14及图15是实施方式中的投票服务器300a的匿名化的基准的说明图。
在此,作为匿名化的基准的一例,说明k-匿名化的k=2及l-多样性的l=3。
图14示出在某时间点记录于存储部318且尚未包含于区块链的投票交易数据。该投票交易数据示出向候选人X提供投票ID为101的投票币,也就是说,投票者向候选人X投票。
在多个投票交易数据不满足匿名化的基准的时间点,利用区块生成部316生成了包含该多个投票交易数据的区块的情况下,可确定投票者的投票目标。这是由于,能够参看存储有认证交易数据的区块链和存储有投票交易数据的区块链这两方的恶意者能够从存储有认证交易数据的区块链确定选民,并且能够从该相同时刻的存储有投票交易数据的区块链确定投票目标。
因此,当将包含图14所示的1件投票交易数据的区块包含于区块链时,可确定投票者及该投票者的投票目标。
图15示出存储有7件投票交易数据的状态,所述投票交易数据记录于存储部318且尚未包含于区块链。此时,投票ID101至107的投票交易数据示出向候选人X进行3件的投票、向候选人Y进行2件的投票以及向候选人Z进行2件的投票的情况。该7件投票交易数据满足匿名化的基准k-匿名化的k=2及l-多样性的l=3。
因此,即使参看存储有认证交易数据的区块链并确定投票者,在相同时刻的存储有投票交易数据的区块链中也存在多个投票币,不能根据投票币确定投票者。因此,不能进行哪个投票者投票给哪个候选人的锁定,也即是,不能确定投票者的投票目标。
图16是示出与本实施方式中的一致性算法的执行可否相关的处理的流程图。图16所示的一连串处理是图11中的步骤SA包含的处理。此外,图16所示的一连串处理可以由投票服务器300a、300b及300c中的至少一个执行。
如图16所示,在步骤S231中,匿名化部315判定投票交易数据是否满足与匿名化相关的预定基准,所述投票交易数据记录于存储部318且尚未包含于区块链。
然后,在步骤S231中判定为上述投票交易数据满足匿名化的基准的情况下(在步骤S231中为“是”),在步骤S226中,利用投票服务器300a、300b及300c执行一致性算法。
另一方面,在判定为上述投票交易数据不满足匿名化的基准的情况下(在步骤S231中为否),不执行一致性算法,结束投票处理。在该情况下,当对与该投票处理中的投票者不同的投票者进行的投票处理中判定为满足匿名化的基准时(在步骤S231中为“是”),执行一致性算法,并利用区块生成部316进行区块生成。
由此,满足匿名化的基准的多个投票交易数据包含于一个区块。因此,即使在公开了一个区块的内容的情况下,也无法确定哪个投票者投票给哪个候选人,也即是,具有隐匿的优点。
<结束处理>
图17是示出本实施方式中的电子投票系统10的投票结束处理的流程图。图17所示的一连串处理可以由投票服务器300a、300b及300c中的至少一个执行。
如图17所示,在步骤S301中,区块生成部316判定是否超过了投票期间。在判定为超过了投票期间的情况下(在步骤S301中为“是”),进入步骤S302,在判定为没有超过投票期间的情况下(在步骤S301中为“否”),再次执行步骤S301。也即是,区块生成部316在步骤S301取等待状态直到超过投票期间。
在步骤S302中,生成包含记录于存储部318且尚未包含于区块链的投票交易数据的区块,并将生成的区块与区块链连接。此外,此时,也可以是,即使在记录于存储部318且尚未包含于区块链的投票交易数据不满足匿名化的基准的情况下,也生成区块并将其与区块链相连接。
在步骤S303中,投票服务器300a、300b及300c执行一致性算法。该处理的内容与步骤S226相同。
由此,投票服务器300a等能够将全部投票交易数据与区块链相连接。
<投票结果的公开处理>
图18是示出利用实施方式中的投票服务器300a进行的投票结果的公开处理的时序图。
图18所示的一连串处理是在从终端110向投票服务器300a进行为了投票结果的公开的访问的情况下进行的处理。该访问例如是向投票服务器300a提供的Web站点的Web访问,可使用HTTP或HTTPS等。此外,访问投票服务器300a的终端110既可以是投票终端100a,也可以是其他终端。
此外,在此,将投票服务器300a接受上述访问的情况作为例子进行说明,但在其他投票服务器300b或300c接受上述访问的情况下也同样如此。
在步骤S401中,投票服务器300a的画面数据生成部311判定当前时间点是否是容许公开投票结果的期间内。也将容许公开投票结果的期间称为公开期间。公开期间例如是投票期间的结束后的期间,即投票截止的时间点之后的期间。在步骤S401中判定为是公开期间内的情况下(在步骤S401中为“是”),进入步骤S402,在不是的情况下(在步骤S401中为“否”),进入步骤S411。
在步骤S402中,画面数据生成部311取得存储有投票交易数据的区块链,所述投票交易数据存储于存储部318。
在步骤S403中,画面数据生成部311基于在步骤S402中取得的区块链包含的信息,生成示出投票结果的画面的画面数据。然后,画面数据生成部311向终端发送生成的画面数据,并在终端显示示出投票结果的画面。
在步骤S411中,画面数据生成部311进行错误处理。在错误处理中,例如向终端通知错误消息。错误消息可以包含“由于还不是公开期间,所以不能公开投票结果”等消息。
以下,说明在电子投票系统10的投票中使用的投票终端100a的画面及在投票结果的公开中使用的终端的画面的例子。
图19是示出在本实施方式中的电子投票系统10的投票中使用的投票终端100a的示意图。
图19所示的投票终端100a显示用于选择作为投票目标的候选人的画面并向投票者出示。
图19所示的画面包含图像401,所述图像401示出对投票者催促投票的消息。另外,包含表示候选人的姓名及面部照片的图像402、表示向候选人投票的按钮的图像403。当投票者对图像403即投票按钮进行操作时,输入部112接受与该投票按钮关联的、向候选人投票这样的投票内容。
图20是示出在本实施方式中的电子投票系统10的投票结果的公开中使用的终端110的示意图。
图20所示的终端110显示用于公开投票结果的画面并向投票者出示。
图20所示的画面包含示出消息的图像411,所述消息示出显示于该画面的内容为投票结果。另外,包含表示候选人的姓名及面部照片的图像412、表示候选人的得票数的图像413。另外,得票数最多的候选人的图像412利用表示当选的框的图像414包围。
终端110能够利用这样的画面出示投票结果。
1.6实施方式的效果
本实施方式的电子投票系统在是合法的投票者的认证、在认证后进行的投票中使用包含独立的ID的数据。由此,例如,即使在选举后公开认证的结果和投票内容的情况下,也能够使进行了该投票内容的投票的投票者不被确定。另外,通过将表示已被认证这一情况的数据和表示投票内容的数据分别存储于单独的区块链,从而能够抑制各数据的篡改。因此,电子投票系统能够进行秘密投票。
另外,电子投票系统将包含投票者的投票内容的数据存储于区块链。因此,电子投票系统能够在抑制由投票者投票的投票内容的篡改的同时,进行秘密投票。
另外,电子投票系统能够基于投票者已由认证服务器进行了认证这一情况,使投票者进行投票内容的输入。因此,电子投票系统能够在限制未被认证的投票者进行投票内容的输入的同时,进行秘密投票。
另外,电子投票系统抑制区块的生成,直到多个投票者的投票的内容汇集并满足隐匿化的基准。假如不满足匿名化的基准的多个投票内容存储于一个区块时,根据该区块包含的投票内容的不同,有时能够通过使用该区块的生成时刻的一致性等信息从而进行与认证的数据的对照,无法实现秘密投票。因此,电子投票系统通过以区块为单位对投票内容进行隐匿化,从而能够进行秘密性更高的秘密投票。
另外,电子投票系统能够避免在不满足隐匿化的基准的状态下投票期间结束的情况下,投票内容成为不储存于区块的状态而残存下来。因此,电子投票系统能够在以区块为单位隐匿化投票内容的同时,避免投票内容不被保存而残存下来,能够进行秘密性更高的秘密投票。
另外,电子投票系统能够通过使用区块链技术,从而容易地判定投票者的认证中使用的ID是否已经被利用、也即是重复利用的有无。因此,电子投票系统能够在容易地抑制认证中使用的ID的重复利用的同时,进行秘密投票。
另外,电子投票系统将表示投票者已被认证这一情况的数据存储于区块链。因此,电子投票系统能够在抑制投票者已被认证这一情况的篡改的同时,进行秘密投票。
另外,电子投票系统能够通过使用区块链技术,从而容易地判定投票中使用的ID是否已经被利用、也即是重复利用的有无。因此,电子投票系统能够在容易地抑制投票中使用的ID的重复利用的同时,进行秘密投票。
2.其他变形例
此外,基于上述实施方式说明了本公开,但本公开当然不限定于上述各实施方式。以下情况也包括在本公开中。
(1)在上述实施方式中,将认证服务器和投票服务器设为不同的装置进行说明,也可以将认证服务器和投票服务器设为同一装置。
(2)在上述实施方式中,通过认证币及投票币的提供从而实现认证及投票,但使用币作为虚拟交易对象的一例,虚拟交易对象不限定于币。
(3)在上述实施方式中,在判断为满足匿名化的基准的情况下生成区块,但也可以在即使投票数超过选民的一定比例也不满足匿名化的基准的情况下生成区块。由此,即使在投票结果产生显著的偏倚的情况下,也能够通过生成区块从而防止投票结果的篡改。
(4)在上述实施方式中,从认证服务器向投票终端进行投票币的提供,但也可以将向投票终端提供投票币的投票交易发送给投票服务器。另外,也可以在投票服务器中从认证服务器接收投票交易并进行投票交易的验证。由此,关于向投票终端的投票币的提供,也可以用区块链进行管理。
(5)在上述实施方式中,基于来自投票终端的访问进行投票结果的公开,但不限定于此,只要是能够访问投票服务器的终端即可。另外,也可以设为投票服务器公开包含投票交易的区块链。
(6)在上述实施方式中,以选举的电子投票为一例进行说明,但不限定于此,也可应用于投票或问卷调查。例如,通过利用于股东大会的决议或问卷调查,从而能够防止决议或问卷调查结果的篡改。
(7)具体而言,上述实施方式中的各装置是由微处理器、ROM、RAM、硬盘单元、显示器单元、键盘、鼠标等构成的计算机系统。在所述RAM或硬盘单元中记录有计算机程序。通过所述微处理器按照所述计算机程序工作,从而各装置达成其功能。在此,计算机程序是为了达成预定功能而组合多条命令代码而构成的,所述命令代码表示对计算机的指令。
(8)构成上述实施方式中的各装置的构成要素的一部分或全部可以由一个系统LSI(Large Scale Integration:大规模集成电路)构成。系统LSI是将多个构成部集成在一个芯片上制造而成的超多功能LSI,具体而言,是包含微处理器、ROM以及RAM等而构成的计算机系统。在所述RAM中记录有计算机程序。通过所述微处理器按照所述计算机程序工作,从而系统LSI实现其功能。
另外,构成上述各装置的构成要素的各部分既可以单独地形成为单芯片,也可以形成为包含一部分或全部的单芯片。
另外,在此,设为系统LSI,但根据集成度的不同,有时也称为IC、LSI、超大规模LSI以及甚大规模LSI。另外,集成电路化的方法不限于LSI,也可以以专用电路或通用处理器来实现。在LSI制造后,也可以利用可编程的FPGA(Field Programmable Gate Array:现场可编程门阵列)、利用能够将LSI内部的电路单元的连接、设定重新构建的可重构处理器。
进一步地,如果因半导体技术的进步、或派生的其他技术而出现代替LSI的集成电路化的技术,当然也可以使用该技术进行功能块的集成化。也有可能应用生物技术等。
(9)构成上述各装置的构成要素的一部分或全部可以由可拆装于各装置的IC卡或单个模块构成。所述IC卡或所述模块是由微处理器、ROM以及RAM等构成的计算机系统。所述IC卡或所述模块也可以包括上述超多功能LSI。通过微处理器按照计算机程序工作,所述IC卡或所述模块达成其功能。该IC卡或该模块也可以具有防篡改性。
(10)本公开也可以是上述示出的方法。另外,既可以是利用计算机实现这些方法的计算机程序,也可以是由所述计算机程序构成的数字信号。
另外,本公开也可以将所述计算机程序或所述数字信号记录于计算机可读的记录介质,例如软盘、硬盘、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray(注册商标)Disc)以及半导体存储器等。另外,也可以是记录在这些记录介质中的所述数字信号。
另外,本公开也可以经由电通信线路、无线或有线通信线、以互联网为代表的网络以及数据广播等输送所述计算机程序或所述数字信号。
另外,本公开可以是具备微处理器和存储器的计算机系统,所述存储器记录有上述计算机程序,所述微处理器按照所述计算机程序工作。
另外,也可以将所述程序或所述数字信号记录于所述记录介质并移送,或经由所述网络等移送所述程序或所述数字信号,由此利用其他独立的计算机系统实施。
(11)也可以将上述实施方式和上述变形例分别组合。
此外,本实施方式的电子投票系统也可以如以下方式记载,但不限定于该记载。
(a)一种由投票终端、多个认证服务器以及多个投票服务器构成的电子投票系统,其特征在于,所述投票终端包括生成区块链的交易的第一交易生成部,所述第一交易生成部在根据选民的ID生成认证交易后将其发送给认证服务器,在根据从所述认证服务器转让投票权的第一投票交易生成第二投票交易后将其发送给投票服务器,所述多个认证服务器包括:当从所述投票终端接收所述认证交易时进行认证交易的验证的第一交易验证部、生成区块链的交易的第二交易生成部以及进行区块生成的第一区块生成部,所述交易验证部当接收到所述认证交易时验证在区块链中是否存在两个以上的所述认证交易包含的ID,在有两个以上的情况下判断为重复使用,所述第二交易生成部当在所述交易验证部中所述认证交易的验证成功时,根据从所述投票服务器接收到的第三投票交易生成所述第一投票交易并向投票终端进行发送,在所述多个投票服务器中,包括当从所述投票终端接收到所述第二投票交易时进行交易的验证的第二交易验证部、生成区块链的交易的第三交易生成部以及进行区块生成的第二区块生成部,所述第二交易验证部当从所述投票终端接收到所述第二投票交易时,验证在区块链中是否存在两个以上的所述第二投票交易所包含的投票权,在有两个以上的情况下判断为重复使用,所述第三交易生成部生成投票权的第三投票交易并发送给所述认证服务器。
(b)根据(a)所述的电子投票系统,其特征在于,所述多个投票服务器还包括匿名化部,所述匿名化部在生成区块链的区块时判断是否满足预先确定的匿名化的基准,所述匿名化部在判断为多个所述第二投票交易满足预先确定的匿名化的基准的情况下,向第二区块生成部请求区块生成。
(c)根据(b)所述的电子投票系统,其特征在于,所述多个投票服务器的所述匿名化部进一步即使在不满足匿名化的基准的情况下,当判断为过了投票期间时,也向第二区块生成部请求区块生成。
由此,在投票终端与认证服务器间进行是否是选民的认证,在是选民的情况下,认证服务器将从投票服务器转让的投票权转让给投票终端。在投票终端中能够使用转让的投票权进行投票。在投票服务器中,通过进行投票权是否被重复利用的验证,从而即使没有选民的信息也能够防止非法的投票。另外,投票服务器通过在投票交易中使用区块链,从而也能够防止投票结果的篡改。并且,通过在区块的生成中使用匿名化,从而即使有能够参看认证交易的区块链的非法者,由于与认证交易相同时刻的投票交易被匿名化而进行了区块生成,所以也能够防止投票内容的锁定(检索),能够构建安全的电子投票系统。
以上,基于实施方式说明了一个或多个技术方案涉及的电子投票系统等,但本公开不限定于该实施方式。只要不脱离本公开的宗旨,对本实施方式实施本领域的技术人员能够想到的各种变形而得到实施方式、将不同的实施方式中的构成要素组合而构建的实施方式均包括在一个或多个技术方案的范围内。
产业上的可利用性
本公开涉及的电子投票系统能够实现秘密投票。

Claims (11)

1.一种电子投票系统,具备终端、多个认证服务器以及多个投票服务器,
所述多个认证服务器各自具备:
认证处理部,其从所述终端接收认证数据,并使用接收到的所述认证数据认证投票者,所述认证数据包含与所述投票者绑定的第一ID和所述投票者的认证信息;
第一存储部,其存储包含第一交易数据的第一区块链,所述第一交易数据表示通过所述认证处理部认证了所述投票者这一情况;以及
第一同步部,其与所述多个认证服务器中的除去该认证服务器的一个以上的认证服务器进行所述第一存储部存储的所述第一区块链的同步,
所述多个投票服务器各自具备:
投票处理部,其从所述终端接收包含第二ID和投票信息的投票数据,所述第二ID与所述投票者投的票绑定并与所述第一ID相独立,所述投票信息表示所述票的投票内容;
第二存储部,其存储第二区块链,所述第二区块链包含所述投票处理部接收到的所述投票数据包含的所述投票信息来作为第二交易数据;以及
第二同步部,其与所述多个投票服务器中的除去该投票服务器的一个以上的投票服务器进行所述第二存储部存储的所述第二区块链的同步,
所述终端具备数据生成部,所述数据生成部生成所述认证数据,并将生成的所述认证数据发送给所述多个认证服务器中的一个认证服务器,
所述数据生成部进一步通过向所述认证服务器发送所述认证数据,从而在通过所述一个认证服务器进行的认证成功后生成所述投票数据,并将生成的所述投票数据发送给所述多个投票服务器中的一个投票服务器。
2.根据权利要求1所述的电子投票系统,
多个投票服务器各自还具备:
第二交易数据生成部,其在从所述终端接收到所述投票数据的情况下,生成表示接收到的所述投票数据包含的所述投票内容的第二交易数据;和
第二区块生成部,其生成第二区块并将生成的所述第二区块与所述第二区块链连接,所述第二区块包含所述第二交易数据生成部生成的一个以上的所述第二交易数据。
3.根据权利要求2所述的电子投票系统,
所述第二交易数据生成部,
生成包含第三交易数据的第三区块并将生成的所述第三区块与所述第二区块链连接,所述第三交易数据表示所述认证处理部成为能够进行对多个选民中的每一个的认证的状态,
生成包含第四交易数据的第四区块并将生成的所述第四区块与所述第二区块链连接,所述第四交易数据表示通过由所述多个认证服务器中的一个认证服务器认证了所述投票者、从而所述终端成为能够接受所述投票者的投票内容的输入的状态。
4.根据权利要求2所述的电子投票系统,
多个投票服务器各自还具备匿名化部,所述匿名化部判定所述第二交易数据生成部生成的一个以上的所述第二交易数据是否满足预先确定的匿名性的基准,在满足所述基准时使所述第二区块生成部生成所述第二区块并将其与所述第二区块链连接。
5.根据权利要求4所述的电子投票系统,
即使在所述匿名化部判定为一个以上的所述第二交易数据不满足所述基准的情况下,所述第二区块生成部在超过了预定的投票期间的情况下也生成所述第二区块并将其与所述第二区块链连接。
6.根据权利要求1所述的电子投票系统,
所述认证处理部在接收到的所述认证数据包含的所述第一ID已经包含于所述第一区块链时,使认证失败并禁止通过所述终端发送所述投票数据。
7.根据权利要求1所述的电子投票系统,
多个认证服务器各自还具备:
第一数据生成部,其在所述终端的认证成功的情况下生成表示所述终端的认证成功这一情况的第一交易数据;和
第一区块生成部,其生成包含所述第一数据生成部生成的所述第一交易数据的第一区块,并将生成的所述第一区块与所述第一区块链连接。
8.根据权利要求1所述的电子投票系统,
所述投票处理部在接收到的所述投票数据包含的所述第二ID已经包含于所述第二区块链时,废弃接收到的所述投票数据。
9.一种电子投票系统,具备多个认证服务器和多个投票服务器,
所述多个认证服务器各自具备:
认证处理部,其从终端接收认证数据,并使用接收到的所述认证数据认证投票者,所述认证数据包含与所述投票者绑定的第一ID和所述投票者的认证信息;
第一存储部,其存储包含第一交易数据的第一区块链,所述第一交易数据表示通过所述认证处理部认证了所述投票者这一情况;以及
第一同步部,其与所述多个认证服务器中的除去该认证服务器的一个以上的认证服务器进行所述第一存储部存储的所述第一区块链的同步,
所述多个投票服务器各自具备:
投票处理部,其从所述终端接收所述终端在通过一个所述认证服务器进行的认证成功后生成的包含第二ID和投票信息的投票数据,所述第二ID与所述投票者投的票绑定并与所述第一ID相独立,所述投票信息表示所述票的投票内容;
第二存储部,其存储第二区块链,所述第二区块链包含所述投票处理部接收到的所述投票数据包含的所述投票信息来作为第二交易数据;以及
第二同步部,其与所述多个投票服务器中的除去该投票服务器的一个以上的投票服务器进行所述第二存储部存储的所述第二区块链的同步。
10.一种控制方法,是电子投票系统中的多个投票服务器中的一个投票服务器的控制方法,包括:
从终端接收所述终端在通过多个认证服务器中的一个认证服务器进行的认证成功后生成的包含第二ID和投票信息的投票数据,所述第二ID与投票者投的票绑定并与第一ID相独立,所述第一ID与所述投票者绑定并用于通过所述一个认证服务器对所述终端进行认证,所述投票信息表示所述票的投票内容,
存储第二区块链,所述第二区块链包含接收到的所述投票数据所包含的所述投票信息来作为第二交易数据,
与所述多个投票服务器中的除去所述一个投票服务器的一个以上的投票服务器进行存储的所述第二区块链的同步,
在从所述终端接收到所述投票数据的情况下生成第二交易数据,所述第二交易数据表示接收到的所述投票数据包含的所述投票内容,
生成包含所生成的一个以上的所述第二交易数据的第二区块,并将生成的所述第二区块与所述第二区块链连接,
判定所生成的一个以上的所述第二交易数据是否满足预先确定的匿名性的基准,在满足所述基准时生成所述第二区块并将其与所述第二区块链连接。
11.一种控制方法,是具备终端、多个认证服务器以及多个投票服务器的电子投票系统的控制方法,包括:
通过所述多个认证服务器分别,
从所述终端接收认证数据,并使用接收到的所述认证数据认证投票者,所述认证数据包含与所述投票者绑定的第一ID和所述投票者的认证信息,
存储包含第一交易数据的第一区块链,所述第一交易数据表示所述投票者已被认证这一情况,
与所述多个认证服务器中的除去该认证服务器的一个以上认证服务器进行存储的所述第一区块链的同步,
通过所述多个投票服务器分别,
从所述终端接收包含第二ID和投票信息的投票数据,所述第二ID与所述投票者投的票绑定并与所述第一ID相独立,所述投票信息表示所述票的投票内容,
存储第二区块链,所述第二区块链包含接收到的所述投票数据包含的所述投票信息来作为第二交易数据,
与所述多个投票服务器中的除去该投票服务器的一个以上的投票服务器进行存储的所述第二区块链的同步,
通过所述终端,
生成所述认证数据,并将生成的所述认证数据发送给所述多个认证服务器中的一个认证服务器,
通过向所述认证服务器发送所述认证数据,从而在通过所述一个认证服务器进行的认证成功后生成所述投票数据,并将生成的所述投票数据发送给所述多个投票服务器中的一个投票服务器。
CN201810713364.2A 2017-07-11 2018-07-03 电子投票系统和控制方法 Active CN109246175B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762531159P 2017-07-11 2017-07-11
US62/531159 2017-07-11
JP2018057525A JP7029328B2 (ja) 2017-07-11 2018-03-26 電子投票システム、及び、制御方法
JP2018-057525 2018-03-26

Publications (2)

Publication Number Publication Date
CN109246175A CN109246175A (zh) 2019-01-18
CN109246175B true CN109246175B (zh) 2022-11-29

Family

ID=62874691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810713364.2A Active CN109246175B (zh) 2017-07-11 2018-07-03 电子投票系统和控制方法

Country Status (2)

Country Link
US (2) US10783733B2 (zh)
CN (1) CN109246175B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11100743B1 (en) * 2017-12-30 2021-08-24 S&S Crypto Technologies Blockchain-based election system
US10445965B2 (en) * 2018-01-29 2019-10-15 Accenture Global Solutions Limited Blockchain-based cryptologic ballot organization
US11216538B2 (en) * 2018-07-04 2022-01-04 Panasonic Intellectual Property Corporation Of America Management system, server, management method, and program
US10681049B2 (en) * 2018-07-16 2020-06-09 Cisco Technology, Inc. Authentication, authorization and accounting in managed cloud computing services
US10979225B1 (en) * 2018-11-15 2021-04-13 Amazon Technologies, Inc. Secure and anonymous electronic polling
US11251966B2 (en) * 2019-06-28 2022-02-15 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
CN112003703B (zh) 2019-06-28 2023-08-22 创新先进技术有限公司 一种跨链发送可认证消息的方法和装置
US11356282B2 (en) 2019-06-28 2022-06-07 Advanced New Technologies Co., Ltd. Sending cross-chain authenticatable messages
CN110853651B (zh) * 2019-11-13 2021-06-01 支付宝(杭州)信息技术有限公司 投票内容验证方法及其系统
CN112819627A (zh) * 2021-02-01 2021-05-18 杭州复杂美科技有限公司 区块链投票方法、计算机设备和存储介质
CN115147976A (zh) * 2022-06-28 2022-10-04 肖峻峰 一种基于区块链去中心化的投票的方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102007506A (zh) * 2008-04-17 2011-04-06 阿尔卡特朗讯公司 电子投票的方法,用于执行该方法的解码器,以及包括用于执行该方法的投票服务器的网络
JP2011107841A (ja) * 2009-11-13 2011-06-02 Kanagawa Univ 電子投票システム
CN105704117A (zh) * 2015-12-29 2016-06-22 金华鸿正科技有限公司 互联网在线投票系统
CN106209947A (zh) * 2015-05-07 2016-12-07 中兴通讯股份有限公司 一种去中心化自治组织的数据处理方法及系统

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2738934B1 (fr) * 1995-09-15 1997-11-28 Thomson Multimedia Sa Systeme de comptabilisation anonyme d'informations a des fins statistiques, notamment pour des operations de vote electronique ou de releves periodiques de consommation
NL1023861C2 (nl) * 2003-07-08 2005-03-14 Pieter Gerard Maclaine Pont Systeem en werkwijze voor een elektronische verkiezing.
US7497377B2 (en) * 2005-04-26 2009-03-03 David Watson Electronic poll register system for elections
US20060289638A1 (en) * 2005-06-27 2006-12-28 Schilling Donald L Voting verification system and method
KR100848314B1 (ko) * 2006-11-06 2008-07-24 한국전자통신연구원 무선 단말기를 이용한 전자투표 장치 및 방법
JP6007969B2 (ja) * 2012-02-17 2016-10-19 日本電気株式会社 匿名化装置及び匿名化方法
US10572684B2 (en) * 2013-11-01 2020-02-25 Anonos Inc. Systems and methods for enforcing centralized privacy controls in de-centralized systems
US9332018B2 (en) * 2014-04-03 2016-05-03 Prote. Us Converged Systems Corporation Method and system for secure authentication
US9836908B2 (en) * 2014-07-25 2017-12-05 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
US20170048235A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Captcha and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
US20170046689A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Voting and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
US20170048209A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Crypto Key Recovery and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
US20170017954A1 (en) * 2015-07-14 2017-01-19 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
US20170048234A1 (en) * 2015-07-14 2017-02-16 Fmr Llc Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
KR101637854B1 (ko) * 2015-10-16 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
US20170109955A1 (en) * 2015-10-20 2017-04-20 Follow My Vote, Inc. Blockchain electronic voting system and method
EP3754901A1 (en) * 2016-02-23 2020-12-23 Nchain Holdings Limited Blockchain implemented counting system and method for use in secure voting and distribution
US10546296B2 (en) * 2016-04-13 2020-01-28 Paypal, Inc. Public ledger authentication system
US10937069B2 (en) * 2016-04-13 2021-03-02 Paypal, Inc. Public ledger authentication system
AU2017263465B9 (en) * 2016-05-11 2021-01-28 Nasdaq, Inc. Application framework using blockchain-based asset ownership
RU2765241C2 (ru) * 2016-06-29 2022-01-27 Конинклейке Филипс Н.В. Ориентированная на заболевание геномная анонимизация
US10628608B2 (en) * 2016-06-29 2020-04-21 Sap Se Anonymization techniques to protect data
US10476879B2 (en) * 2017-07-26 2019-11-12 International Business Machines Corporation Blockchain authentication via hard/soft token verification
US10818121B2 (en) * 2017-09-15 2020-10-27 Panasonic Intellectual Property Corporation Of America Electronic voting system and control method
EP3457622B1 (en) * 2017-09-15 2024-03-06 Panasonic Intellectual Property Corporation of America Electronic voting system
US10818122B2 (en) * 2017-09-15 2020-10-27 Panasonic Intellectual Property Corporation Of America Electronic voting system and control method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102007506A (zh) * 2008-04-17 2011-04-06 阿尔卡特朗讯公司 电子投票的方法,用于执行该方法的解码器,以及包括用于执行该方法的投票服务器的网络
JP2011107841A (ja) * 2009-11-13 2011-06-02 Kanagawa Univ 電子投票システム
CN106209947A (zh) * 2015-05-07 2016-12-07 中兴通讯股份有限公司 一种去中心化自治组织的数据处理方法及系统
CN105704117A (zh) * 2015-12-29 2016-06-22 金华鸿正科技有限公司 互联网在线投票系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
An anonymous electronic voting protocol for voting over the Internet;Indrajit Ray;《Proceedings Third International Workshop on Advanced Issues of E-commerce and Web-Based Information Systems. WECWIS 2001》;20020807;全文 *
基于区块链的电子投票选举系统研究分析;张昕伟;《计算机技术与应用》;20171130;第43卷(第11期);132-135 *

Also Published As

Publication number Publication date
US20190019367A1 (en) 2019-01-17
US20200380810A1 (en) 2020-12-03
US11749047B2 (en) 2023-09-05
CN109246175A (zh) 2019-01-18
US10783733B2 (en) 2020-09-22

Similar Documents

Publication Publication Date Title
CN109246175B (zh) 电子投票系统和控制方法
JP7253085B2 (ja) 電子投票システム、装置、制御方法、及び、プログラム
CN109509287B (zh) 电子投票系统以及控制方法
CN109509288B (zh) 电子投票系统和控制方法
US20220255737A1 (en) Methods and systems for recovering data using dynamic passwords
US11170092B1 (en) Document authentication certification with blockchain and distributed ledger techniques
US11757643B2 (en) System and method for authenticating user identity
CN108701276B (zh) 用于管理数字身份的系统和方法
CA2947086C (en) System and method for secure voting
JP7064947B2 (ja) 電子投票システム、及び、制御方法
JP7029328B2 (ja) 電子投票システム、及び、制御方法
CN111066283A (zh) 对区块链网络上实体提供的数据进行通信、存储和处理的系统和方法
JP7064950B2 (ja) 電子投票システム、及び、制御方法
US20230232222A1 (en) User terminal, authentication terminal, registration terminal, management system and program
CN113487321A (zh) 基于区块链钱包的身份识别与验证方法及系统
Dash et al. Artificial intelligence models for blockchain-based intelligent networks systems: Concepts, methodologies, tools, and applications
EP3457622B1 (en) Electronic voting system
Balamurugan et al. A Blockchain Based Certificate Authentication System
Lobanchykova et al. Study of Cyber Security Approaches in Organizing Digital Voting
Hasan et al. Voting System Based On Blockchain

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant