[发明专利]基于区块链的电子投票系统及方法有效
申请号: | 202110629318.6 | 申请日: | 2021-06-04 |
公开(公告)号: | CN113381991B | 公开(公告)日: | 2022-12-13 |
发明(设计)人: | 杨旸;詹永华;薛文溢 | 申请(专利权)人: | 福州大学 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L9/32;H04L9/30;G07C13/00 |
代理公司: | 福州元创专利商标代理有限公司 35100 | 代理人: | 陈鼎桂;蔡学俊 |
地址: | 350108 福建省福州市*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 电子 投票 系统 方法 | ||
1.一种基于区块链的电子投票系统,其特征在于,所述系统包括候选人单元、投票人单元、选举组织方和区块链平台;所述选举组织方对每个投票人的身份进行认证,验证其是否具有投票资格;所述投票人在选举系统中登记后进行投票;所述区块链平台用于保证已提交的数据不会被删除或篡改;所述系统采用分布式ElGamal密码系统,在所述ElGamal密码系统中,E(m)是消息m的密文,E(m1+m2)可以由E(m1)·E(m2)计算得出;令为一个循环群,其中g是阶为素数p的群的生成元;p表示集合{0,1,…,p-1},表示p\0={1,…,p-1};假设系统中有n个用户,每个用户都有一个私钥/公钥对该分布式系统的公钥消息m被加密为E(m)=(c1,c2)=(gr,gm·PKr),其中解密时,每个用户需要计算一个部分解密值并将其广播;最终每个用户都能计算出
2.一种基于区块链的电子投票系统的投票方法,其特征在于,包括以下步骤:
预先定义一个固定参数P,设定每一张选票中的评分之和必须等于P;
投票人以安全参数1κ作为输入,生成其私钥/公钥对(Xi,Yi);
以投票人的私钥Xi和候选人的身份作为输入,生成为投票的所需私钥/公钥对(xi,j,yi,j);
投票人首先要为每个候选人分配一个评分pi,j,其中0≤pi,j≤P且nc为候选人的数量,并以投票人的私钥Xi、对所有候选人的评分和所有候选人的公钥为输入,生成承诺Ci和零知识证明
在投票阶段,输入所有选票通过计票后,输出选举结果其中Pj是候选人所得到的总评分;
所述投票人生成密钥,具体如下:投票人以安全参数1κ作为输入,随机选取私钥计算公钥
以自己的私钥Xi和候选人的身份为输入,随机选取计算私钥公钥
投票人还应该向登记自己的真实身份和公钥,如果具备投票资格,对的公钥进行签名,生成然后,发布到区块链上;
所述生成承诺Ci和零知识证明具体如下:为每个候选人分配一个评分pi,j,并满足0≤pi,j≤P,以私钥Xi、评分和公钥为输入,生成承诺Ci和相应的零知识证明首先计算然后选取随机数为每个pi,j计算Ci,j=(ζi,j,ηi,j),其中于是的承诺为
为每个生成一个零知识证明以证明的承诺(ζi,j,ηi,j)中的评分值pi,j满足区间要求
中的表达式表明所有可能的pi,j值都会出现在中;
然后,通过零知识证明以证明评分集合满足
当时,可以推导出
令最后,将Ci和发布到区块链上。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州大学,未经福州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110629318.6/1.html,转载请声明来源钻瓜专利网。