温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
区块
电子
投票
技术研究
实现
南方
信 息 与 智 能 2023 NO.2 SCIENCE&TECHNOLOGY INFORMATION科技资讯SCIENCE&TECHNOLOGY INFORMATION科技资讯基于区块链的电子投票技术研究与实现胡南方 1 沈苏彬 2(1.南京邮电大学计算机学院;2.南京邮电大学通信与网络技术国家工程研究中心 江苏南京 210046)摘要:随着互联网、通信技术以及现代密码学技术的发展,电子投票逐渐得到了社会的关注。传统电子投票系统普遍采用中心化的管理方式,存在投票数据不公开透明、用户身份被泄露的风险。基于区块链具有去中心化、不可篡改和公开透明等特点,提出一种去中心化的电子投票方案,采用非对称加密技术实现区块链环境中用户身份真实性验证机制;设计基于以太坊Token的投票权认定方法,避免重复投票,保证选票的有效性和唯一性;使用环签名技术对选票进行加密保护,实现可审计性与隐私保护共存。设计和实现了基于以太坊平台的仿真实现方案,实验表明,该方法能够满足电子投票系统数据公开透明和隐私保护的需求。关键词:区块链 电子投票 去中心化 以太坊 智能合约中图分类号:TP309.2文献标识码:A 文章编号:1672-3791(2023)02-0005-09Research and Implementation of Electronic Voting Technology Based on BlockchainHU Nanfang1 SHEN Subin2(1.School of Computer Science and Technology,Nanjing University of Posts and Telecommunications;2.National Engineering Research Center on Communication and Networking,Nanjing University of Posts and Telecommunications,Nanjing,Jiangsu Province,210046 China)Abstract:With the development of Internet,communication technology and modern cryptography technology,electronic voting has gradually drawn the attention of the society.The traditional electronic voting system generally adopts a centralized management mode,and there is a risk that the voting data will not be open and transparent,and the users identity will be disclosed.Based on the characteristics of the blockchain,such as decentralization,tamper proof,openness and transparency,a decentralized electronic voting scheme is proposed,which uses asymmetric encryption technology to implement the authentication mechanism of user identity authenticity in the blockchain environment;The voting right recognition method based on Ethereum Token is designed to avoid repeated voting and ensure the validity and uniqueness of votes;The ring signature technology is used to encrypt and protect the ballot,realizing the coexistence of auditability and privacy protection.A simulation implementation scheme based on Ethereum platform is designed and implemented.Experiments show that the method can meet the requirements of data transparency and privacy protection in electronic voting systems.Key Words:Blockchain;Electronic voting;Decentralization;Ethereum;Smart contract进入信息化时代以来,电子投票作为一种新的投票方式,并逐渐得到了社会的重视和应用,成为现代民主活动的象征。电子投票(E-voting)是由CHAUM D1在1981年提出的,它是以互联网和通信技术为基础,DOI:10.16661/ki.1672-3791.2206-5042-1973作者简介:胡南方(1996),男,硕士,研究方向为区块链。沈苏彬(1963),男,博士,研究员,研究方向为物联网及其应用、未来网络及其应用。5 2023 NO.2科技资讯SCIENCE&TECHNOLOGY INFORMATION 信 息 与 智 能SCIENCE&TECHNOLOGY INFORMATION科技资讯利用现代密码学为安全保障,模拟传统的人工投票,来实现跨越空间的投票方式。电子投票可以解决传统人工投票方式需要在地理空间上集中的复杂难题,即使投票参与方分散在不同各地,依然可以通过网络在同一时间进行表决和投票。相对于传统的人工投票而言,电子投票的效率大大提升。电子投票旨在通过互联网提供一个安全、方便和高效的投票环境,然而,通过互联网投票也带来了一些弊端。目前,电子投票系统主要存在以下几个问题:投票过程无法做到公开透明,投票者可能会产生信任危机;投票数据采用中心化方式存储在中央数据库中,数据安全性无法得到保证;投票者在投票过程中可能会暴露自己的个人信息,存在隐私泄露的风险。随着比特币2等数字加密货币的兴起,区块链作为比特币的底层技术,受到了广泛的关注。区块链的本质是一个基于点对点网络的去中心化的网络公用账本3,通过建立一个全网共同维护且不可篡改的账本,存储网络中所有的交易记录。区块链技术具有去中心化、数据不可篡改、数据可溯源等特点,可以提高电子投票的可信度,是解决电子投票系统可信性需求的一种新的思路。1 相关工作分析区块链的本质是一个去中心化的公用账本数据库,数据库中存储的是一串按照时间先后顺序链接在一起的数据区块。区块的结构以比特币为例,每个区块一般包合区块头(Header)和区块体(Body)两部分,如图1所示。在区块头中,存储了前一区块的哈希值,通过这个值可以获取到前一区块信息,形如数据结构中指针的效果,将一个个区块连接起来,最终形成一个链状的结构。区块链也因此而得名。这样的链状结构可以保证存储在区块链中的数据都是可以追溯的。区块体中存储着该区块包含的所有交易,这些交易经验证后通过哈希函数的处理,成为Merkle树4的一个叶子结点,每两个叶子结点继续取哈希得到上一结点的值,最后的Merkle根值保存在区块头里面,同时通过数字签名技术为该区块打上时间戳5,保证交易按照一定的时间顺序排列。通过Merkle树存储的交易信息可以满足信息无法被篡改。在电子投票中使用这样的技术来存储投票数据,可以满足投票可溯源且不可更改,为电子投票提供了一个公开的存储方式和公平的环境。区块链采用点对点(Peer-to-Peer)的网络架构6。在电子投票的底层区块链采用点对点网络,能够实现对区块链节点的标识。由此,在区块链网络上通过该标识对区块链节点进行寻址,可以唯一确定一个区块链节点,即对应到唯一的投票人。另外,点对点网络中的节点均具有消息的收发功能,通过这个功能,投票人可以在区块链的节点间将自己的选票进行广播,从而完成投票的流程,另外还可以实现各个节点之间的状态同步,保证账本的一致性。区块链通过哈希函数(Hash Function)7与非对称加密算法8实现用户的身份标识和身份验证。共识机制9可以在没有中心节点的情况下保证各个诚实的节点记账的一致性。以太坊(Ethereum)10是一个通用的区块链平台,它具备图灵完备的智能合约执行能力,可以通过智能合约在以太坊平台上搭建去中心化的应用程序。目前已有一些研究对基于区块链的电子投票技术进行了分析。SAYYAD S F等人11调查了基于区块链的投票系统的特征,认为区块链技术能够弥补传统电图1 比特币区块结构图6信 息 与 智 能 2023 NO.2 SCIENCE&TECHNOLOGY INFORMATIONSCIENCE&TECHNOLOGY INFORMATION科技资讯科技资讯子投票系统存在的不足。KIM H R等人12分析了将区块链应用于在线投票系统时可能出现的制度和技术问题。CABUK U C等人13从技术和非技术两方面探究了在电子投票系统中使用区块链技术的可行性和适用性,其分析结果证实了区块链技术能够解决一些重要的安全问题,包括匿名性、机密性、完整性和不可否认性。在此基础上,一些研究人员提出了基于区块链的电子投票方案。ZHAO Z等人14提出了一种基于比特币的电子投票协议,该协议利用比特币账户可以自由转移数字货币的特点,以交易转账的方式来进行投票。TAKBATAKE Y等人15提出一种结合Zerocoin和比特币的电子投票方案,该方案基于比特币平台,针对比特币系统具有假名而不是匿名性的特点,使用Zerocoin来为投票系统提供匿名性。董友康等人16提出了一种基于联盟链的董事会电子投票协议,该协议使用智能合约结合数字证书,对投票者的身份进行合法性验证。另外,该方案利用盲签名技术对选票信息进行处理,保证了投票的匿名性。MCCORRY P等人17提出了一种基于以太坊区块链的电子投票方案,该方案设计了智能合约投票协议,实现自动计票。以上研究利用区块链技术解决了许多传统电子投票的难题,如利用区块链提供匿名性、设计智能合约实现自动计票、使用数字货币代表选票等,但区块链与电子投票的结合,还存在许多问题。(1)投票者在区块链中的身份标识和身份真实性验证问题。区块链可以为用户提供匿名,因此首先要实现的就是投票者在区块链中的身份标识。另外,电子投票系统要求在投票之前需要对投票者进行身份的合法性验证。因此,投票者如何在区块链环境中进行真实性身份验证也是重要的研究方面。(2)目前已有方案通过预设智能合约的方式,使电子投票系统实现自动计票。但是这样的计票方案,仅能验证选票的有效性,无法保证选票的唯一性,不能解决重复投票的问题。因此,需要设计一种计票方法,能够同时验证选票的有效性和唯一性。(3)审计性对于电子投票系统十分重要,开放的审计权限、让各方都能参与审计体现了投票结果的公开透明。但是在目前的电子投票系统中,开放可审计性与隐私保护是矛盾的。区块链数据公开透明的特点可以满足可审计性的需求,在此基础上应对保护投票者隐私的方法展开研究。2 区块链中投票者的身份真实性验证在基于区块链的电子投票系统中,为了保证选票的有效性,我们需要对投票者进行可信的身份验证,以实现对其所发布的选票信息进行基于其角色身份的唯一性和合法性验证。在区块链中,各参与方普遍采用匿名地址的方式来作为自己的身份标识,然而,电子投票系统要求投票者必须经过身份验证,才能获取投票资格。因此,每个参与者的虚拟身份需要与现实中的身份信息绑定,例如:身份