一种基于区块链的电子投票方法

文档序号:30579855发布日期:2022-06-29 11:34阅读:来源:国知局

技术特征:
1.一种基于区块链的电子投票方法,其特征在于,包括以下步骤:步骤1:网络初始化系统参数,并将参数公开在区块链上;步骤2:用户在注册机构进行身份注册;步骤3:用户生成自己的选票,并对选票进行加密;步骤4:投票时间截至之后,各方都可以验证计票结果。2.根据权利要求1所述的基于区块链的电子投票方法,其特征在于:步骤1具体为:选取2个素数p、q,g是的生成元,g
q
modp=1;每个投票者v
i
生成两对公私钥为(x
i
,x
i
),(y
i
,y
i
),其中h为密码哈希函数,h:{0,1}
*

{0,1}
256
(sha-256);注册机构设置并公布投票的截止时间为t
end
。3.根据权利要求1所述的基于区块链的电子投票方法,其特征在于:步骤2具体为:所有投票者在登记注册阶段,通过提交自己的身份证明文件给注册机构,从而在系统中进行登记并获取通过认证的证书cert
i
;成功注册的投票者v
i
将上传自己的两个公钥x
i
,y
i
到区块链数据库中,注册机构将其cert
i
存入数据库中。4.根据权利要求1-3所述的基于区块链的电子投票方法,其特征在于:步骤3具体为:步骤3.1:每个投票者v
i
计算步骤3.2:设投票者v
i
给候选者c
j
的分数为为了生成的承诺,v
i
选取随机数计算做出承诺其中并生成证明的值为0或者1,最后对分数进行加密,计算其中具体的零知识证明过程如下,在此我们将改为p
i
进行举例;步骤3.3:每个投票者v
i
生成自己的选票p
i
{p
i,0
,...,p
i,k
}(共有k个候选人)后,其中第一个将选票传到链上的投票者v1,为自己的选票p1生成相应的h(p1),并且将该值传到链上,还有其身份证明cert
i
,在这之后的投票者v
i
将其生成的选票p
i
和cert
i
传到链上。5.根据权利要求4所述的基于区块链的电子投票方法,其特征在于:步骤4具体为:步骤4.1:认证投票者v
i
,通过每个投票者v
i
自己的cert
i
,注册机构通过对比数据库中的cert
i
认证其身份。再对其选票验证(除第一个上传选票的投票者),只有通过两个验证,才可以认为该选票是有效的,可以将其加入到区块链数据库中;步骤4.2:在投票截止时间t
end
之后,智能合约要求第一个投票者上传其加密后的选票,并验证其哈希值是否与之前上传的哈希值相同,验证任何人都可以计算最后通过shanks’baby-step giant-step算法求出满足的s
j
即候选者c
j
的总分数。

技术总结
本发明提出了一种基于区块链的电子投票方法,属于信息安全技术领域,该方法包括以下步骤:步骤1:网络初始化系统参数,并将参数公开在区块链上;步骤2:用户在注册机构进行身份注册;步骤3:用户生成自己的选票,并对选票进行加密;步骤4:投票时间截至之后,各方都可以验证计票结果;本发明主要针对自计票电子投票方案中,适应性问题会导致不公平的问题,利用智能合约和哈希函数简单高效的解决了该问题,并利用区块链实现电子投票方案中公开透明性,在保证投票方案安全公平的同时,还高效的解决了自计票方案中适应性的问题。了自计票方案中适应性的问题。了自计票方案中适应性的问题。


技术研发人员:周敏 王化群
受保护的技术使用者:南京邮电大学
技术研发日:2022.03.18
技术公布日:2022/6/28
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1