[发明专利]一种基于区块链和零知识证明的投票方法及装置有效
申请号: | 201911039149.X | 申请日: | 2019-10-29 |
公开(公告)号: | CN110855443B | 公开(公告)日: | 2022-07-01 |
发明(设计)人: | 周子衡 | 申请(专利权)人: | 上海唯链信息科技有限公司 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;G07C13/00 |
代理公司: | 北京德和衡律师事务所 11405 | 代理人: | 李颖 |
地址: | 200001 上海市长宁*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 知识 证明 投票 方法 装置 | ||
1.一种基于区块链和零知识证明的投票方法,其特征在于,所述方法包括:
步骤S101:区块链中设置投票发起方I、验证方A、W名投票方Pi,所述投票发起方I设置投票规则及投票选项;所述验证方A生成投票公钥和投票私钥,并公布所述投票公钥,其中1≤i≤W;
步骤S102:所述W名投票方中的每一个Pi进行投票,利用第一零知识证明ZKP1对所述每一个投票方Pi的每个投票选项结果证明;利用第二零知识证明ZKP2对所述每一个投票方Pi的所有投票选项结果证明;
步骤S103:所述验证方A计算每个投票选项的总得票数,利用第三零知识证明ZKP3对所述每个投票选项的总得票数结果证明;
其中,所述验证方生成投票公钥gk和投票私钥k,并公布所述投票公钥gk;由投票方Pi选择N个随机数作为该投票方Pi的私钥,记为投票方Pi对每个投票选项进行投票,与该投票选项对应的投票结果为为0表示未选中该选项,为1表示对选中该选项,Pi计算所述利用第二零知识证明ZKP2对所述每一个投票方Pi的所有投票选项结果证明,具体包括:
Pi计算ZKPi,ZKPi即为第二零知识证明ZKP2,用于证明每一个投票方Pi的所有投票选项结果的有效性,
所述ZKPi的计算方式为:
令h=gk,并且
如果即定项选择,由投票方对M个投票选项进行了投票,等价于证明αi=loghYi/gM,令k=αi,Xn=Y/gM,由Pi基于h,αi,Yi并使用非交互零知识证明协议来生成证据,进行验证;
如果即不定项选择,允许投票方对小于或等于M个投票选项进行投票,投票方Pi需证明[αi=loghYi/g0]∨[αi=loghYi/g1]∨…∨[αi=loghYi/gM],令k=Δi,Xn=Yi/gM,由Pi基于h,αi,Yi并使用非交互零知识证明协议来生成证据,进行验证。
2.如权利要求1所述的基于区块链和零知识证明的投票方法,其特征在于,所述投票发起方I设置投票规则、投票选项、投票时间段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海唯链信息科技有限公司,未经上海唯链信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911039149.X/1.html,转载请声明来源钻瓜专利网。