{"title":"基于区块链的匿名电子投票系统设计与实现","authors":"Yi Li, Yuzhao Li, Tao Hong, Zhihua Chen","doi":"10.1109/BMSB58369.2023.10211580","DOIUrl":null,"url":null,"abstract":"This article aims to design and implement an anonymous electronic voting system based on blockchain. The system solves the problem of privacy protection by applying one-time ring signatures and hidden address, which were presented by Nicolas van Saberhagen in his CryptoNote. Ring signature can make the verifier only verify the legitimacy of the vote and cannot infer who sent the vote, which protects the privacy of the voter. The key image generated by one-time ring signature is used to eliminate the problem of repeated voting and ensure the principle of one person, one vote. The hidden address technology generates an anonymous address through the candidate's public key and thus encrypts the content and direction of the ballot, and only after the election is over can the candidate disclose his private key to verify the specific candidate. In addition, blockchain technology solves the problem of fairness and impartiality, and the nature of blockchain itself makes each ballot transparent and open as well as tamper-proof during the voting process. Finally, the Hyperledger Fabric platform was used and smart contracts were written in Go language, and the RuoYi framework was used for the front and back-end design of the system to implement the described voting system.","PeriodicalId":13080,"journal":{"name":"IEEE international Symposium on Broadband Multimedia Systems and Broadcasting","volume":"14 1","pages":"1-6"},"PeriodicalIF":0.0000,"publicationDate":"2023-06-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Design and Implementation of Blockchain-based Anonymous Electronic Voting System\",\"authors\":\"Yi Li, Yuzhao Li, Tao Hong, Zhihua Chen\",\"doi\":\"10.1109/BMSB58369.2023.10211580\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This article aims to design and implement an anonymous electronic voting system based on blockchain. The system solves the problem of privacy protection by applying one-time ring signatures and hidden address, which were presented by Nicolas van Saberhagen in his CryptoNote. Ring signature can make the verifier only verify the legitimacy of the vote and cannot infer who sent the vote, which protects the privacy of the voter. The key image generated by one-time ring signature is used to eliminate the problem of repeated voting and ensure the principle of one person, one vote. The hidden address technology generates an anonymous address through the candidate's public key and thus encrypts the content and direction of the ballot, and only after the election is over can the candidate disclose his private key to verify the specific candidate. In addition, blockchain technology solves the problem of fairness and impartiality, and the nature of blockchain itself makes each ballot transparent and open as well as tamper-proof during the voting process. Finally, the Hyperledger Fabric platform was used and smart contracts were written in Go language, and the RuoYi framework was used for the front and back-end design of the system to implement the described voting system.\",\"PeriodicalId\":13080,\"journal\":{\"name\":\"IEEE international Symposium on Broadband Multimedia Systems and Broadcasting\",\"volume\":\"14 1\",\"pages\":\"1-6\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-06-14\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"IEEE international Symposium on Broadband Multimedia Systems and Broadcasting\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/BMSB58369.2023.10211580\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE international Symposium on Broadband Multimedia Systems and Broadcasting","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/BMSB58369.2023.10211580","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
摘要
本文旨在设计和实现一个基于区块链的匿名电子投票系统。该系统采用Nicolas van Saberhagen在其CryptoNote中提出的一次性环签名和隐藏地址来解决隐私保护问题。戒指签名可以使验证者只验证投票的合法性,而不能推断是谁发送了投票,保护了选民的隐私。利用一次性环签名生成的密钥图像,消除了重复投票的问题,保证了一人一票的原则。隐藏地址技术通过候选人的公钥生成一个匿名地址,从而对选票的内容和方向进行加密,只有在选举结束后,候选人才能公开自己的私钥来验证具体的候选人。此外,区块链技术解决了公平和公正的问题,区块链本身的性质使得每一张选票在投票过程中都是透明和公开的,并且是防篡改的。最后,使用Hyperledger Fabric平台,使用Go语言编写智能合约,并使用若易框架进行系统的前端和后端设计,实现所描述的投票系统。
Design and Implementation of Blockchain-based Anonymous Electronic Voting System
This article aims to design and implement an anonymous electronic voting system based on blockchain. The system solves the problem of privacy protection by applying one-time ring signatures and hidden address, which were presented by Nicolas van Saberhagen in his CryptoNote. Ring signature can make the verifier only verify the legitimacy of the vote and cannot infer who sent the vote, which protects the privacy of the voter. The key image generated by one-time ring signature is used to eliminate the problem of repeated voting and ensure the principle of one person, one vote. The hidden address technology generates an anonymous address through the candidate's public key and thus encrypts the content and direction of the ballot, and only after the election is over can the candidate disclose his private key to verify the specific candidate. In addition, blockchain technology solves the problem of fairness and impartiality, and the nature of blockchain itself makes each ballot transparent and open as well as tamper-proof during the voting process. Finally, the Hyperledger Fabric platform was used and smart contracts were written in Go language, and the RuoYi framework was used for the front and back-end design of the system to implement the described voting system.