CN109934988B - 一种基于区块链的电子投票方法 - Google Patents
一种基于区块链的电子投票方法 Download PDFInfo
- Publication number
- CN109934988B CN109934988B CN201910117598.5A CN201910117598A CN109934988B CN 109934988 B CN109934988 B CN 109934988B CN 201910117598 A CN201910117598 A CN 201910117598A CN 109934988 B CN109934988 B CN 109934988B
- Authority
- CN
- China
- Prior art keywords
- voter
- voting
- trusted
- party
- authentication center
- 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
Links
Images
Abstract
本发明提出了一种基于区块链的电子投票方法,属于信息安全技术领域,由四个部分组成:认证中心,可信第三方,选民和区块链。由认证中心来完成选民的注册;通过选民,可信第三方和认证中心三者间的通信来完成投票权的声明和认证过程;利用区块链的公开性、不可篡改性等特点,保障整个投票过程和投票结果的公平,公正,公开。这个电子投票方案可以有效制约认证中心的权利,防止因认证中心的权利过大而篡改投票过程的问题。除此之外,还引入审计阶段,让每个选民可以审计投票结果及投票过程,提高结果的可信度。
Description
技术领域
本发明属于信息安全技术领域,具体涉及一种基于区块链的电子投票方法。
背景技术
近年来,随着比特币等数字货币的逐渐流行,其底层技术区块链也受到许多研究学者的关注。区块链的本质是一个公开透明的数据库账本,记录所有的交易记录。它的特点是在没有第三方中介机构的情况下,可以提供去中心化、不可篡改、公开透明的安全特性。
电子投票作为通常投票的电子化,利用先进的密码学技术和计算机网络技术,使选民可以在投票站或自己家中设置的计算机终端通过互联网进行投票,由计算机负责统计选票,不仅在组织工作、选票搜集与统计方面都节省了大量的人力物力,而且在一定程度上保证投票人的利益和投票结果的公正,所有这些优点使其取代传统的投票方式成为必然的趋势。
但现有的电子投票都是中心化的,而且容易受到网络攻击,存在篡改等各种风险,区块链的出现无疑为新的电子投票系统的出现提供了基础。
发明内容
本发明的目的在于提供一种可以有效优化当前电子投票系统的秘密投票、公开验证、追踪等问题的基于区块链的电子投票方法。
本发明的目的是这样实现的:
本发明提出了一种基于区块链的电子投票方法,包括选民、认证中心、可信第三方及区块链,主要包括以下步骤:
(1)准备阶段;选民产生属于自己的唯一秘密消息m,根据哈希算法得到消息的哈希值h(m);根据比特币协议,产生自己的公私钥对Pub/Pri和地址Addr;
(2)注册阶段;认证中心发起投票,选民登录后完成个人注册,并将自己的秘密消息的哈希值h(m)发送给认证中心;
(3)声明选票权;在选举前通过选民、可信第三方、认证中心三者之间的通信完成投票权的声明,确认选民的投票权;
(4)投票阶段;选民向候选人的地址发起交易,实现投票;
(5)计票阶段;候选人向可信第三方公开自己的私钥地址Pri,可信第三方查询其他人向候选人发起交易的次数,并进行计数,最终计数结果为各个候选人的得票数;
(6)审计阶段;完成计票后,可信第三方公开合法选民的秘密消息的哈希值h(m)和合法选民的地址Addr信息表,认证中心公开拥有的选民姓名和秘密消息的哈希值h(m)信息表,选民根据上述两个表格及自己的相关信息审计投票结果。
进一步的,所述的步骤(2)主要包括以下步骤:
(2.1)认证中心发起投票,根据有投票权的选民信息建立选民表,并为选民提供相应的用于身份验证的登录名;
(2.2)选民根据对应的登录名登录认证中心,完成个人注册,并向认证中心发送自己的秘密消息的哈希值h(m);
(2.3)认证中心接收秘密消息的哈希值h(m)后,建立对应的选民及其秘密消息哈希值的统计表。
进一步的,所述的步骤(3)主要包括以下步骤:
(3.1)选民发送秘密消息的哈希值h(m)给可信第三方;
(3.2)可信第三方询问认证中心h(m)是否被注册;
(3.3)认证中心返回结果,若结果为“是”,说明该选民是完成注册的拥有投票权的合法选民;若结果为“否”,则说明该选民没有在认证中心完成注册或者不是合法的选民;
(3.4)可信第三方认为选民为合法的选民后,要求选民发送自己的秘密消息m;
(3.5)选民发送秘密消息m给可信第三方;
(3.6)可信第三方验证秘密消息m的哈希值与之前认证通过的h(m)是否一致,如果一致则保存选民的地址。
进一步的,所述的步骤(5)包括以下计票规则:
(5.1)由一个交易发起方的地址向一个候选人发起的多次交易仅计为一票;
(5.2)若同一个交易发起方的地址向多名候选人发起交易,则该地址对应的所有选票都认定为无效。
进一步的,所述的步骤(6)主要包括以下步骤:
(6.1)可信第三方将自己拥有的合法选民的秘密消息的哈希值h(m)和合法选民的地址信息表对应关系打乱,进行随机排列,对外公开;
(6.2)认证中心公开拥有的选民姓名和秘密消息的哈希值h(m)信息表;
(6.3)选民根据上述两个公开的表以及自己的投票相关信息审计投票结果是否正确以及投票过程中是否存在欺诈行为。
本发明的有益效果在于:基于区块链的投票方法可以排除人为操纵的可能,其去中心化、分布式的网络结构适用于投票选举方案,投票中心不需要专门维护和管理整理投票系统和网络,保证了网络的透明性,也防止了恶意投票或篡改欺诈、欺骗选票的作弊行为,其匿名性特点可以隐藏投票者个人信息,保护个人隐私。投票者还可以对自己的投票情况进行验证、追踪。
附图说明
图1为本发明中基于区块链的电子投票方法的架构图;
图2为本发明中公钥生成比特币地址示意图;
图3为本发明中选民与认证中心的信息匹配图;
图4为本发明中声明投票权的过程图;
图5为本发明中审计阶段认证中心与可信第三方拥有的数据表格图。
具体实施方式
下面结合附图对本发明做进一步描述。
结合图1,本发明提出了一种基于区块链的电子投票方法,包括选民、认证中心、可信第三方及区块链,主要包括以下步骤:
步骤1准备阶段,选民产生属于自己的唯一秘密消息m,并根据SHA256算法得到消息的哈希值h(m);除了秘密消息外,选民还需根据比特币协议,产生自己的公私钥对Pub、Pri和地址Add,私钥为256位由0、1组成的随机数字串,公钥由私钥根据椭圆曲线算法计算得出,具体的由公钥产生比特币地址过程如图2所示。
步骤2注册阶段,认证中心在发起投票的时候,会把有投票权的选民建立一个选民表并为他们的帐户提供了一个用于身份验证的登录名。用户登录后,将自己的秘密消息的哈希值h(m)发送给认证中心,具体的信息匹配如图3所示。
步骤3声明选票权,为了再次确认选民的投票权,需要在选举前进行投票权的声明。具体过程如图4所示:
步骤3.1选民发送消息的哈希值h(m)给可信第三方;
步骤3.2可信第三方询问认证中心h(m)是否被注册;
步骤3.3认证中心返回结果,如果结果为“是”,说明该选民是完成注册的拥有投票权的合法选民;如果结果为“否”,则说明该选民没有在认证中心完成注册或者不是合法的选民;
步骤3.4当可信第三方认为选民为合法的选民后,会要求选民发送自己的秘密消息m;
步骤3.5选民发送秘密消息m给可信第三方;
步骤3.6可信第三方验证秘密消息m的哈希值是否与之前接收的h(m)一致,如果一致则保存选民的地址。
步骤4投票阶段,选民通过向候选人的地址发起交易计为一次投票。
步骤5计票阶段,候选人通过向可信第三方公开自己的私钥,由可信第三方查询其他人向候选人发起交易的次数来进行计数,最终公布各个候选人的得票数。查看候选人账户中的交易数即为候选人所得票数。但是要注意以下两种情况:第一,由一个选民向一位候选者发起多次交易仅记为一票;第二,有一个选民向多名候选人发起交易,这个选民的所有选票都被认为是无效的。
步骤6审计阶段,完成计票后,可信第三方公开合法选民的秘密消息的哈希值h(m)和合法选民的地址Addr信息表,认证中心公开拥有的选民姓名和秘密消息的哈希值h(m)表,表格如图5所示,由选民根据上述两个表格来对结果进行审计。具体如下:
步骤6.1可信第三方将自己拥有的合法选民的秘密消息的哈希值h(m)和合法选民的地址Addr信息表对应关系打乱,进行随机排列,对外公开;
步骤6.2认证中心公开拥有的选民姓名和秘密消息的哈希值h(m)信息表;
步骤6.3选民可以根据上述两个公开的表以及自己的投票相关信息来审计投票结果是否正确以及投票过程中是否存在欺诈行为。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于区块链的电子投票方法,包括选民、认证中心、可信第三方及区块链,其特征在于,主要包括以下步骤:
(1)准备阶段;选民产生属于自己的唯一秘密消息m,根据哈希算法得到消息的哈希值h(m);根据比特币协议,产生自己的公私钥对Pub/Pri和地址Addr;
(2)注册阶段;认证中心发起投票,选民登录后完成个人注册,并将自己的秘密消息的哈希值h(m)发送给认证中心;
(3)声明选票权;在选举前通过选民、可信第三方、认证中心三者之间的通信完成投票权的声明,确认选民的投票权;
(4)投票阶段;选民向候选人的地址发起交易,实现投票;
(5)计票阶段;候选人向可信第三方公开自己的私钥地址Pri,可信第三方查询其他人向候选人发起交易的次数,并进行计数,最终计数结果为各个候选人的得票数;
(6)审计阶段;完成计票后,可信第三方公开合法选民的秘密消息的哈希值h(m)和合法选民的地址Addr信息表,认证中心公开拥有的选民姓名和秘密消息的哈希值h(m)信息表,选民根据上述两个表格及自己的相关信息审计投票结果。
2.根据权利要求1所述的一种基于区块链的电子投票方法,其特征在于,所述的步骤(2)主要包括以下步骤:
(2.1)认证中心发起投票,根据有投票权的选民信息建立选民表,并为选民提供相应的用于身份验证的登录名;
(2.2)选民根据对应的登录名登录认证中心,完成个人注册,并向认证中心发送自己的秘密消息的哈希值h(m);
(2.3)认证中心接收秘密消息的哈希值h(m)后,建立对应的选民及其秘密消息哈希值的统计表。
3.根据权利要求1所述的一种基于区块链的电子投票方法,其特征在于,所述的步骤(3)主要包括以下步骤:
(3.1)选民发送秘密消息的哈希值h(m)给可信第三方;
(3.2)可信第三方询问认证中心h(m)是否被注册;
(3.3)认证中心返回结果,若结果为“是”,说明该选民是完成注册的拥有投票权的合法选民;若结果为“否”,则说明该选民没有在认证中心完成注册或者不是合法的选民;
(3.4)可信第三方认为选民为合法的选民后,要求选民发送自己的秘密消息m;
(3.5)选民发送秘密消息m给可信第三方;
(3.6)可信第三方验证秘密消息m的哈希值与之前认证通过的h(m)是否一致,如果一致则保存选民的地址。
4.根据权利要求1所述的一种基于区块链的电子投票方法,其特征在于,所述的步骤(5)包括以下计票规则:
(5.1)由一个交易发起方的地址向一个候选人发起的多次交易仅计为一票;
(5.2)若同一个交易发起方的地址向多名候选人发起交易,则该地址对应的所有选票都认定为无效。
5.根据权利要求1所述的一种基于区块链的电子投票方法,其特征在于,所述的步骤(6)主要包括以下步骤:
(6.1)可信第三方将自己拥有的合法选民的秘密消息的哈希值h(m)和合法选民的地址信息表对应关系打乱,进行随机排列,对外公开;
(6.2)认证中心公开拥有的选民姓名和秘密消息的哈希值h(m)信息表;
(6.3)选民根据上述两个公开的表以及自己的投票相关信息审计投票结果是否正确以及投票过程中是否存在欺诈行为。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910117598.5A CN109934988B (zh) | 2019-02-15 | 2019-02-15 | 一种基于区块链的电子投票方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910117598.5A CN109934988B (zh) | 2019-02-15 | 2019-02-15 | 一种基于区块链的电子投票方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109934988A CN109934988A (zh) | 2019-06-25 |
CN109934988B true CN109934988B (zh) | 2021-05-28 |
Family
ID=66985607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910117598.5A Active CN109934988B (zh) | 2019-02-15 | 2019-02-15 | 一种基于区块链的电子投票方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109934988B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110958120B (zh) * | 2019-12-05 | 2022-06-10 | 全链通有限公司 | 基于区块链的电子投票方法、设备及存储介质 |
CN111010431B (zh) * | 2019-12-05 | 2022-09-02 | 全链通有限公司 | 基于区块链的电子投票方法、设备及存储介质 |
CN111314095B (zh) * | 2019-12-05 | 2023-01-31 | 全链通有限公司 | 基于区块链的电子投票方法、设备及存储介质 |
CN111159683B (zh) * | 2020-04-03 | 2020-08-21 | 深圳壹账通智能科技有限公司 | 电子投票方法、装置、计算机和存储介质 |
CN114299655B (zh) * | 2020-09-23 | 2023-09-05 | 成都中科信息技术有限公司 | 一种电子投票系统及其工作方法 |
CN113066221B (zh) * | 2021-03-23 | 2022-11-11 | 函谷数巢品牌管理(广州)有限公司 | 网络投票方法和装置 |
CN115147975B (zh) * | 2022-05-19 | 2024-02-02 | 重庆移通学院 | 一种基于区块链的加密网络投票方法 |
CN115147976A (zh) * | 2022-06-28 | 2022-10-04 | 肖峻峰 | 一种基于区块链去中心化的投票的方法和系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016022864A2 (en) * | 2014-08-06 | 2016-02-11 | Blockchain Technologies Corporation | System and method for securely receiving and counting votes in an election |
US20170109955A1 (en) * | 2015-10-20 | 2017-04-20 | Follow My Vote, Inc. | Blockchain electronic voting system and method |
CN108109257A (zh) * | 2018-01-05 | 2018-06-01 | 杭州电子科技大学 | 一种基于区块链的匿名电子投票方法 |
CN108961526A (zh) * | 2018-06-13 | 2018-12-07 | 郑州云海信息技术有限公司 | 一种基于区块链技术的投票系统 |
CN108846942A (zh) * | 2018-06-29 | 2018-11-20 | 青岛大学 | 基于以太坊区块链的电子投票方法和系统 |
CN109189782A (zh) * | 2018-08-02 | 2019-01-11 | 哈尔滨工程大学 | 一种区块链商品交易查询中的索引方法 |
CN109286497B (zh) * | 2018-09-06 | 2021-04-09 | 贵阳信息技术研究院(中科院软件所贵阳分部) | 一种基于区块链的不记名投票和多条件计票的方法 |
CN109274505B (zh) * | 2018-11-22 | 2021-09-24 | 浙江工商大学 | 一种基于区块链技术的匿名电子选举方法 |
-
2019
- 2019-02-15 CN CN201910117598.5A patent/CN109934988B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109934988A (zh) | 2019-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109934988B (zh) | 一种基于区块链的电子投票方法 | |
CN109523683B (zh) | 一种基于区块链技术的不记名电子投票方法 | |
CN106878000B (zh) | 一种联盟链共识方法及系统 | |
CN109544331B (zh) | 基于区块链的供应链金融应用方法、装置、终端设备及存储介质 | |
CN110232764B (zh) | 基于区块链的匿名电子投票方法及系统 | |
CN108109257A (zh) | 一种基于区块链的匿名电子投票方法 | |
CN112789823B (zh) | 基于区块链的竞选网络系统及竞选方法 | |
CN112437938A (zh) | 用于区块链地址和所有者验证的系统和方法 | |
CN111066283A (zh) | 对区块链网络上实体提供的数据进行通信、存储和处理的系统和方法 | |
CN113239382A (zh) | 一种基于区块链智能合约的可信身份模型 | |
CN109274505A (zh) | 一种基于区块链技术的匿名电子选举方法 | |
CN111709749A (zh) | 一种具有条件隐私保护的可追踪区块链交易系统 | |
CN109547193A (zh) | 一种基于区块链且抗量子计算机攻击的电子投票方法 | |
CN113129518A (zh) | 电动车辆充电系统及其资源管理方法 | |
CN109242663A (zh) | 一种基于区块链技术的记账方法及系统 | |
Clarke et al. | E-voting in Estonia | |
Wei et al. | Blockchain-based electronic voting protocol | |
CN112291062B (zh) | 一种基于区块链的投票方法及装置 | |
CN110719168B (zh) | 一种基于区块链的分级匿名表决方法 | |
CN111404876A (zh) | 一种基于区块链的投票方法 | |
Pathak et al. | Blockchain based e-voting system | |
Kumar et al. | Secure electronic voting system using blockchain technology | |
US20220239502A1 (en) | System to Securely Issue and Count Electronic Ballots | |
Lin et al. | Blockchain-based complete self-tallying E-voting protocol | |
Pranitha et al. | Utilization of blockchain in e-voting system |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210420 Address after: Area A129, 4th floor, building 4, Baitai Industrial Park, Yazhou Bay science and Technology City, Yazhou District, Sanya City, Hainan Province, 572024 Applicant after: Nanhai innovation and development base of Sanya Harbin Engineering University Address before: 150001 Heilongjiang, Nangang District, Nantong street,, Harbin Engineering University, Department of Intellectual Property Office Applicant before: HARBIN ENGINEERING University |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |