CN107833135A - 一种基于区块链的公平电子投票协议 - Google Patents
一种基于区块链的公平电子投票协议 Download PDFInfo
- Publication number
- CN107833135A CN107833135A CN201711040976.1A CN201711040976A CN107833135A CN 107833135 A CN107833135 A CN 107833135A CN 201711040976 A CN201711040976 A CN 201711040976A CN 107833135 A CN107833135 A CN 107833135A
- Authority
- CN
- China
- Prior art keywords
- voter
- candidate
- transaction
- ballot
- bit coin
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3218—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
- H04L9/3221—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Development Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Computing Systems (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明属于信息安全领域,提出一种基于区块链的公平电子投票协议。本发明使用区块链,门限签名方案,承诺机制,零知识证明等技术和密码学方法,基于时间承诺和支付押金的方式,提出一种基于区块链和素数的无可信第三方电子投票方案,可以支持多个候选者的投票情况。本发明由初始阶段,承诺阶段,投票阶段,审计阶段四个部分组成,每个投票者通过选择不同的与候选者唯一对应的素数来对不同候选者进行投票,投票者先支付一笔押金再进行投票,如果投票过程中有不诚实的行为,该投票者的押金会用于赔偿其他投票者,以此来保证投票过程的公平性。本发明可用于实现公平和安全的电子投票。
Description
技术领域
本发明属于信息安全领域,尤其涉及一种基于区块链的公平电子投票协议。
背景技术
比特币(Bitcoin)是现在最受欢迎的去中心化数字货币。区块链(blockchain)是比特 币的底层技术,提供可被公开验证的可信分布式账本。区块链最早是由比特币的创始人中本 聪(Satoshi)提出的,基于区块链的分布式应用研究目前已成为新趋势。比特币系统由它们 之间的地址和交易组成。一个比特币地址只是一个公钥pk的哈希值。比特币用户与公钥-私 钥对(sk,pk)相关联。Sigsk(m)表示使用sk对消息m进行签名,Verpk(m,σ)是指对于消息m所 做的签名σ是否能用公钥pk验证通过,相应地返回ture/false。一个比特币交易有一些输入, 输出和一个可选的锁定时间。假设与密钥对(pkA,skA)相关联的用户A要将10比特币传送给与 密钥对(pkB,skB)相关联的用户B,用户A产生交易TA。交易ID(TransactionID)是交易内 容的哈希值。交易中的每个输入都包含对前一个交易的引用和输入脚本input-script。每个 输出都包含一个转移值和输出脚本output-script。输入和输出脚本用于检查交易的有效性。 TA交易中的输出脚本表示TA中的10比特币被给予用户B。用户B可以使用 作为输入脚本创建TB交易,以提供自己的签名,如果验证通过,用户B就可以使 用这10比特币。一个交易也可以有一个锁定时间t,这意味着它必须在t时间之后才能生效。
一个(t,n)门限签名方案是指n个成员组成的群中,任何不少于t个成员合作就能产生签 名,而任何少于t个成员合作都无法伪造签名。
承诺机制是一个两方协议,包括承诺者和接受者。在承诺阶段,承诺者将自己的秘密消 息m以承诺值的方式发送给接收者,承诺者生成(c,k)←Commit(m),k是打开承诺c的密钥; 在打开阶段,承诺者将打开密钥k发送给接收者,接收者用密钥打开承诺得到原来的秘密消 息m←Open(c,k),并验证承诺的有效性,如果(c,k)是无效的,Open(c,k)返回⊥。
零知识证明在这里使用的是E.Ben-Sasson论文“Succinct non-interactivezero knowledge for a von neumann architecture”中的zk_SNARKS(zero-knowledgeSuccinct Non-interactive ARgument of Knowledge)。零知识证明是在不揭露其它信息的情况下,使 验证者相信某个论断是正确的。本发明中零知识证明是用来保证投票者投票和随机数的有效 性,同时不揭露具体的投票信息。
主流的电子投票方法主要是盲签名,混合网和同态加密方法,但是它们都需要一个可信 的第三方。2015年,Zhao等人在“How to vote privately using bitcoin”这篇文章中使 用时间承诺机制和比特币系统设计了无第三方的电子投票协议。它们包括两个部分,一个是 投票承诺,另一个是投票。他们使用“同步时间承诺”机制构造“联合交易”,并设计了比 特币投票问题的协议,其中有n个投票者,有两个候选者A和B,每个投票者只能选择投选A 或B。每个投票者先支付一笔押金再进行投票,如果投票过程中有不诚实的行为,该投票者 的押金会用于赔偿其他投票者,以此来保证投票过程的公平性。然而,现有的无第三方电子 投票方案并不能实现支持多个候选者的投票情况。
发明内容
基于时间承诺和支付押金的方式,本发明提出一种基于区块链和素数的无第三方电子投 票方案,可以支持多个候选者的投票情况。
本发明提供的协议具体如下。
本协议包括四个阶段:初始阶段,承诺阶段,投票阶段,审计阶段。
1.初始阶段
假设有n个投票者V1,...,Vn,k个候选者S1,...,Sk,以及投票组织机构RA。每个投票者Vi (i∈{1,...,n},n为大于等于1的自然数)必须在投票组织机构RA注册,所述注册是指每个 投票者Vi向投票组织机构RA提供身份证明IDi,并提供自己的投票地址(比特币公钥pki的 哈希值)。向投票组织机构注册过并验证过身份的投票者记为有效投票者,投票组织机构RA保 留有效投票者名单及其相对应的投票地址,如表1所示。
表1 投票地址
投票者 | 投票地址 |
V1 | 1DSrfJdB2AnWaFNgSbv3MZC2m74996JafV |
V2 | 1Cdid9KFAaatwczBwBttQcwXYCpvK8h7FK |
… | … |
Vn | … |
投票组织机构RA公布全部有效投票者的投票地址,以便每个人都可以验证每次投票的有 效性。投票组织机构RA还从奇素数集合P={3,5,7,11,…}里选取k个不同的奇素数平均分 配给k个候选者,使每个候选者与唯一的素数相关联。假设m是所述k个素数的最大值,定 义一个大于mn的以2为底的最小幂值作为参数M。然后,投票组织机构RA公布具有对应素 数和候选地址的候选者列表。所述候选者Sj(j∈{1,...,k},k为大于等于1的自然数)的候选 地址为与所述候选者Sj对应的比特币公钥pkj的哈希值;这样,可以通过选择不同的素数来 对不同候选者进行投票,如表2所示。
表2 候选者素数和比特币地址
候选者 | 素数 | 比特币地址 |
S1 | 3 | 1GdK9UzpHBzqzX2A9JFP3Di4weBwqgmoQA |
S2 | 5 | 1hvzSofGwT8cjb8JU7nBsCSfEVQX5u9CL |
… | … | … |
Sk | … | … |
2.承诺阶段
每个投票者Vi都有一张个人秘密选票Oi∈{3,5,7,...},Oi是Vi选择的某个候选者对应的素 数。Vi和其他投票者通过投票承诺协议合作生成Ri,并计算自己的投票在所有 投票者公布他们的之后,便可以计算结果并确定胜者。每个投票者都有zk_SNARKs的证明 和验证密钥,投票者按下列方式一起产生Ri并做出承诺。对于i∈{1,...,n},每个投票者Vi做如 下操作:
(1)对于每一个x∈{1,...,n},生成秘密随机数rix∈ZM,它们的乘积∏xrix=1(modM), 这可以通过生成前n-1个随机数再计算最后一个得出,其中ZM为从0到(M-1)范围内的整 数集合。Vi对rix进行检查,确保不含有候选人的素数因子。
(2)对于每一个x∈{1,...,n},生成承诺(cix,kix)←Commit(rix),其中kix是打开承诺cix的 密钥。
(3)使用zk_SNARKs生成零知识证明,证明Πxrix=1(mod M)。
(4)向所有其他投票者广播承诺和零知识证明。
(5)接受承诺并验证所有其他投票者的零知识证明。
(6)对于所有的x∈{1,...,n}\{i},发送打开密钥kix给Vx。符号Vx表示不同于投票者Vi的 其他投票者。
(7)对于所有的x∈{1,...,n}\{i},在接收到Vx发送的打开密钥kxi时,检查 rxi=Open(cxi,kxi)≠⊥。
(8)计算Ri←∏x rxi和并承诺(Ci,Ki)←Commit(Ri)和其中Ki,分别是相应的打开密钥。
(9)广播承诺Ci和
(10)使用zk_SNARKs生成和广播以下语句的零知识证明:
(a)Ri:=∏xrxi(mod M)。
(b)中的承诺值与Ci中的承诺值的商是出现在候选者素数集中的素数。
(11)接收并验证其他投票者的所有证明。
3.投票阶段
附图1显示了投票阶段和审计阶段的总体投票交易方案。
每个投票者Vi分别拥有(1+d)比特币,1比特币将被支付给获奖候选者,d比特币是押金。 我们假设d:=n-1,如果有人不诚实,他的押金将被其他n-1名参与者取走,作为补偿。时 间承诺协议可以保证以下三方面的性质:
-如果一个投票者公布了自己的投票,那么他可以收回d比特币押金。
-如果每个投票者都公布了自己的投票,那么乘积决定了获得n比特币的胜选者。
-如果至少有一个投票者没有公布自己的投票,那么最初打算给胜选者的n比特币将被 所有投票者赎回。对于不公布自己投票的每个投票者,其押金将用于赔偿。
投票协议的完整过程如下。
(1)初始化密钥
此阶段需要一个门限签名方案。我们假设至少有一半的投票者是诚实的。n个 投票者共同生成一个公共地址,每个投票者Vi都拥有群体公钥和他的私有密钥投票 者Vi还拥有自己的公私钥对(pki,ski),表示比特币系统中投票者Vi的地址对应的公钥和私钥。
(2)交易JOIN
假设参数t1,t2是在将来足够长的时间,至少为大于6个区块的将来时间,且t1<t2。每 个投票者运行以下协议:
(a)每个投票者共同生成一个交易JOIN(如图2所示):
-它有n个输入,其输入是在交易中投票者Vi拥有的(1+d)比特币。
-它有n+1个输出,
out-depositi,i∈{1,...,n}:每个都具有d比特币;要获得d比特币押金的要求为1)提 供打开密钥和可用Vi公钥pki验证的签名,或2)提供可用群体公钥验证的有效签名。
out-winner:具有n比特币,要获得n比特币的要求为1)提供所有打开密钥和可用 胜选者公钥pkw验证的签名,或2)提供可用群体公钥验证的有效签名。
(b)投票者们用自己的私钥ski依次签署JOIN,创建n个签名。
(c)对于i∈{1,...,n},每个投票者生成交易PAYi,它的输入是对应的out-depositi。PAYi交易使用门限方案签名。在t2时间之后,PAYi的输出脚本可以把Vi的押金分享给 其他诚实的投票者,如图3所示。
(d)每个投票者Vi验证上述步骤是否已经完成,把JOIN交易提交给区块链。
(e)如果JOIN在t1时间之后还没有出现在区块链上,任意投票者Vi可以通过提交一个 交易去使用中包含的(1+d)比特币,取回(1+d)比特币来终止整个协议。
4.审计阶段:
如图3所示,交易JOIN出现在区块链后,每个投票者Vi都可以通过提交一个CLAIMi交 易来赎回他的d比特币押金,要提供打开密钥来发布他的投票(如果一个投票者Vi在时 间t2之后还没有发布他的投票,其他投票者可以提交PAYi交易来赎回他的押金进行赔偿)。 如果所有投票者都提交了交易CLAIMi,则可以计算输出脚本中的函数 的定义为:候选者连续除以候选者Sj对应的素数直 至无法整除,期间所做除法的总次数;所述总次数等于候选者Sj赢得的票数,最后我们可以 获得每个候选者赢得的票数。函数返回值为票数最高者的公钥pkw,w取值为 1≤w≤k的整数,最后确定票数最高者为获胜候选者;并且可以通过交易Winner从 out-winner中兑换n比特币,交易Winner的输入是交易JOIN的out-winner中的n比特币, 输出是该获胜候选者的公钥地址。如果至少有一个投票者没有公布他的投票,则无法计算出 最终投票结果,原本给获胜者的n比特币将被所有投票者通过交易Redeem直接赎回。交易Redeem的输入是交易JOIN的out-winner中的n比特币,输出是所有投票者的公钥地址,每个投票者都能拿回原来给获胜者的1比特币,如图4所示。
本发明提出的投票协议有n个投票者和k个候选者,每个投票者将投选一个候选者。我 们设计的协议可以保证获得多数投票的候选者赢得比赛,同时不会披露个人投票信息。由于 区块链固有的性质,投票结果不能被篡改而且是公开透明的,因为区块链都是公开可验证的。
附图说明
图1本发明提出的投票交易整体框架图
图2交易JOIN示意图
图3交易CLAIMi和交易PAYi示意图
图4交易Winner和交易Redeem示意图
附图中JOIN、CLAIMi、PAYi、Winner、Redeem表示交易名称,v1、vn表示投票者, 1+d、d、1、n、n(1+d)表示比特币数额,in-scripti表示投票者Vi提供的输入脚本,out-depositi表示使用Vi押金的输出脚本,value表示输出的比特币数额,locktime表示锁定时间,Sigsk(m)表示使用sk对m进行签名,Verpk(σ)是指对于m所做的签名σ是否能用公钥pk验证通过, 相应地返回ture/false。
具体实施方式
实施例1
附图仅用于示例性说明,不能理解为对本专利的限制;对于本领域技术人员来说,附图 中某些公知结构及其说明可能省略是可以理解的。下面结合附图和实施例对本发明的技术方 案做进一步的说明。
假设有一个投票组织机构RA,6个投票者V1,...,V6,3个候选者S1,S2,S3,素数集合为 P={3,5,7},全局参数t1=1小时,t2=1.5小时。
1.初始阶段:6个投票者Vi(1≤i≤6)在RA注册,提供自己的身份证明IDi和投票地址;RA从奇素数集合P={3,5,7}中为3个候选者Sj(1≤j≤3)分配不同的素数,分别把3,5,7分配给S1,S2,S3;参数m是P中素数的最大值,即m=7;定义参数M=131072,M是大于76的2的最小幂数;投票组织机构RA公布具有对应素数和比特币地址的候选者列表;投票者通 过选择不同的素数来对不同候选者进行投票;
2.承诺阶段:每个投票者Vi拥有一张个人秘密选票Oi∈{3,5,7},Oi是与投票者Vi选择的 候选者相对应的素数;每个投票者Vi都有zk_SNARKs证明和验证密钥,Vi通过投票承诺协议 计算投票对于i∈{1,...,6},每个投票者Vi做如下操作:
(1)对于每一个x∈{1,...,6},Vi生成6个秘密随机数rix∈ZM,使其乘积等于1(modM); 可以通过生成前5个随机数再计算最后一个得出。Vi对rix进行检查,确保不含有候选者的素 数因子。
(2)对于每一个x∈{1,...,6},Vi生成承诺(cix,kix)←Commit(rix),其中kix是打开承诺cix的密钥;
(3)使用zk_SNARKs生成零知识证明,证明∏xrix=1(mod M);
(4)向所有其他5个投票者广播承诺和零知识证明;
(5)接受承诺并验证所有其他投票者的零知识证明;
(6)对于所有的x∈{1,...,6}\{i},发送打开密钥kix给其他5个投票者;
(7)对于所有的x∈{1,...,6}\{i},在接收到其他5个投票者发送的打开密钥kxi时,检查 rxi=Open(cxi,kxi)≠⊥;
(8)计算Ri←∏x rxi和并承诺(Ci,Ki)←Commit(Ri)和其中Ki,分别是相应的打开密钥;
假设V1选择投给S1候选者,则计算并且做出承诺C1和是相应的打开 密钥。假设V2选择投给S2候选者,则计算并且做出承诺C2和是相应的打开密钥。假设V3选择投给S3候选者,则计算并且做出承诺C3和是相应的打开密钥。假设V4选择投给S1候选者,则计算并且做出承诺C4和是相应的打开密钥。假设V5选择投给S1候选者,则计算并且做出承诺C5和是相应的打开密钥。假设V6选择投给S3候选者,则计算并且做出承诺C6和是相应的打开密钥。
(9)广播承诺Ci和
(10)使用zk_SNARKs生成和广播以下语句的零知识证明:
(a)Ri:=Пxrxi(mod M);
(b)中承诺值与Ci中承诺值的商是出现在所有候选者相对应的素数所构成的集合中 的;
(11)接收并验证其他5个投票者的所有证明;
3.投票阶段:
(1)初始化密钥:6个投票者使用门限签名方案共同生成公私钥,每个投票 者Vi拥有群体公钥和各自的私钥(pki,ski)表示比特币系统中Vi的地址;
(2)JOIN交易:
(a)所有投票者共同生成一个交易JOIN:JOIN有6个输入,每个都是输入Vi,i∈{1,...,6} 拥有的6比特币;交易JOIN有7个输出:
out-depositi,i∈{1,...,6}:每个都具有5比特币;以及
out-winner:具有6比特币;
(b)所有投票者使用自己的私钥ski依次签署JOIN;V1创建JOIN交易并签署,然后发给V2;V2验证有效后签署,然后再发给V3,依次发送直至V6也签署完毕,共创建了6个签名;
(c)对于i∈{1,...,6},每个投票者生成交易PAYi,PAYi的输入是对应的out-depositi; 如果投票者Vi没有诚实地公布自己的投票,在t2=1.5h时间之后,其他5个诚实的投票者可 以提交交易PAYi,PAYi的输出脚本可以把投票者Vi的押金分享给其他诚实的投票者;
(d)如果完成上述步骤,V6便将交易JOIN提交给区块链;
(e)如果交易JOIN在t1=1h时间之后还没有出现在区块链上,每个投票者Vi可以通过 提交一个交易使用取回自己的6比特币来终止整个协议。
4.审计阶段:JOIN出现在区块链后,投票者Vi通过提交一个CLAIMi交易来赎回他的5 比特币押金,要提供打开密钥来公布投票如果6个投票者都提交了交易CLAIMi公布 他们的投票则可以计算输出脚本中的的定义为: 连续除以Pi直至无法整除,期间所做除法的次数;最后函数f返回票数最高 者的公钥pkw,确定获胜候选者。计票过程:用6615连续除以对应 的素数Pi,直到无法整除,连续做除法的次数即为候选者得到的票数:S1的票数为3:6615 ÷3÷3÷3=245;S2的票数为1:6615÷5=1323;S3的票数为2:6615÷7÷7=135,所以获胜 候选者是S1,可以获得6比特币。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明 的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其 它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神 和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之 内。
Claims (8)
1.一种基于区块链技术的公平电子投票协议,包括:投票者Vi,i∈{1,...,n},和候选者Sj,j∈{1,...,k},其中n和k均为大于等于1的自然数;以及投票组织机构RA;其特征在于包括如下步骤:
S1.初始阶段具体为:投票者Vi在投票组织机构RA注册;所述投票者Vi的投票地址为与所述投票者Vi对应的比特币公钥pki的哈希值;投票组织机构RA选取任意k个不同奇素数并平均分配给k个候选者,使每个候选者与唯一的素数相关联,假设m是所述k个素数的最大值,定义一个大于mn的以2为底的最小幂数作为参数M;所述候选者Sj的候选地址为与所述候选者Sj对应的比特币公钥pkj的哈希值;投票者通过选择与候选者相对应的的素数来对不同候选者进行投票;
S2.承诺阶段具体为:每个投票者Vi都有一张个人秘密选票Oi∈{3,5,7,...},所述秘密选票Oi是所述投票者Vi选择的某个候选者对应的素数;投票者Vi和其他投票者通过投票承诺协议合作生成随机数Ri,并计算自己的投票所述投票承诺协议如下:
每个投票者都有zk_SNARKs证明和验证密钥,对于每个i∈{1,...,n},投票者Vi做如下操作:
(S2.1)对于每一个x∈{1,...,n},生成n个秘密随机数rix∈ZM,使其乘积等于1(modM),ZM为从0到(M-1)范围内的整数集合;Vi对rix进行检查,确保不含有候选人的素数因子;
(S2.2)对于每一个x∈{1,...,n},生成承诺(cix,kix)←Commit(rix),其中kix是打开承诺cix的密钥;
(S2.3)使用zk_SNARKs生成零知识证明,证明∏xrix=1(modM);
(S2.4)向所有其他投票者广播承诺和零知识证明;
(S2.5)接受承诺并验证所有其他投票者的零知识证明;
(S2.6)对于所有的x∈{1,...,n}\{i},发送打开密钥kix给Vx;符号Vx表示不同于投票者Vi的其他投票者;
(S2.7)对于所有的x∈{1,...,n}\{i},在接收到Vx发送的打开密钥kxi时,检查rxi=Open(cxi,kxi)≠⊥;
(S2.8)计算Ri←∏xrxi和并承诺(Ci,Ki)←Commit(Ri)和其中Ki,分别是相应的打开密钥;
(S2.9)广播承诺Ci和
(S2.10)使用zk_SNARKs生成和广播以下语句的零知识证明:
(S2.10a)Ri:=∏xrxi(modM);
(S2.10b)中承诺值与Ci中承诺值的商是出现在所有候选者相对应的素数所构成的集合中的;
(S2.11)接收并验证其他投票者的所有证明;
S3.投票阶段的具体过程如下:
(S3.1)假设至少有一半的投票者是诚实的,投票者Vi拥有群体公钥和各自的私钥(pki,ski)表示比特币系统中投票者Vi的地址对应的公钥和私钥;
(S3.2)假设t1,t2为大于6个区块的将来时间,且t1<t2;所有投票者共同运行以下协议:
(S3.2a)n个投票者共同生成一个交易JOIN;所述交易JOIN有n个输入,每个输入都分别对应于在交易中输入投票者Vi拥有的(1+d)比特币;所述交易JOIN有n+1个输出,包括对于每个投票者Vi都具有d比特币押金的out-depositi,i∈{1,...,n},以及具有n比特币的out-winner;
(S3.2b)投票者Vi使用自己的私钥ski依次签署交易JOIN;共创建了n个签名;
(S3.2c)对于i∈{1,...,n},每个投票者生成交易PAYi,所述交易PAYi的输入是对应的out-depositi;在t2时间之后,所述交易PAYi的输出脚本可以把投票者Vi的押金分享给其他诚实的投票者;
(S3.2d)投票者Vi完成上述步骤(S3.3a)(S3.3b)(S3.3c)的验证,便将所述交易JOIN交易提交给区块链;
S4.审计阶段具体过程为:交易JOIN出现在区块链后,投票者Vi通过提交一个交易CLAIMi来赎回他的d比特币押金,提供打开密钥来公布投票如果所有投票者都提交了交易CLAIMi,则计算输出脚本中的函数最后函数返回票数最高者的公钥pkw,w取值为1≤w≤k的整数,确定所述票数最高者为获胜候选者;并且通过交易Winner从out-winner中兑换n比特币,所述交易Winner的输入是交易JOIN的输出out-winner中的n比特币,输出是所述获胜候选者的公钥pkw地址;如果至少有一个投票者没有公布他的投票,则无法计算出最终投票结果,原本给获胜候选者的n比特币将被所有投票者通过交易Redeem直接赎回,所述交易Redeem的输入是所述交易JOIN的输出out–winner中的n比特币,输出是所有投票者的公钥地址,每个投票者都能拿回原来给获胜者的1比特币。
2.根据权利要求1所述的一种基于区块链的公平电子投票协议,其特征在于:所述步骤S1.中还包括所述投票组织机构RA保留有效投票者名单及其相对应的投票地址;所述投票组织机构RA公布与每个候选者有唯一对应关系的素数和候选地址的候选者列表。
3.根据权利要求1所述的一种基于区块链的公平电子投票协议,其特征在于:所述步骤(S3.2a)中所述输出out-depositi要获得d比特币押金的要求包括提供打开密钥和用投票者Vi公钥pki可验证通过的签名,或者提供群体公钥验证的有效签名。
4.根据权利要求1所述的一种基于区块链的公平电子投票协议,其特征在于:所述步骤(S3.2a)中所述输出out-winner要获得n比特币的要求包括提供所有打开密钥和使用获胜候选者的公钥pkw验证的签名,或提供使用群体公钥验证有效的签名。
5.根据权利要求1所述的一种基于区块链的公平电子投票协议,其特征在于:所述步骤S3.中所述交易PAYi使用门限签名方案签名。
6.根据权利要求1所述的一种基于区块链的公平电子投票协议,其特征在于:所述函数的定义为:连续除以与所述候选者Sj唯一对应的素数直至无法整除的运算过程中所做除法的总次数,所述总次数等于所述候选者Sj赢得的票数,获得所有候选者所得票数之后,函数返回值为票数最高者的公钥。
7.根据权利要求1所述的一种基于区块链的公平电子投票协议,其特征在于:所述协议的所述步骤S3.投票阶段的子步骤(S3.2)还进一步包括:(S3.2e)如果所述交易JOIN在t1时间之后还没有出现在区块链上,任意投票者Vi通过提交一个使用交易中包含的(1+d)比特币的交易,取回(1+d)比特币来终止整个协议。
8.根据权利要求1所述的一种基于区块链的公平电子投票协议,其特征在于:所述所述步骤S4.如果一个投票者Vi在时间t2之后还没有发布他的投票其他投票者通过提交PAYi交易来赎回投票者Vi的押金进行赔偿。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711040976.1A CN107833135A (zh) | 2017-10-30 | 2017-10-30 | 一种基于区块链的公平电子投票协议 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711040976.1A CN107833135A (zh) | 2017-10-30 | 2017-10-30 | 一种基于区块链的公平电子投票协议 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107833135A true CN107833135A (zh) | 2018-03-23 |
Family
ID=61650102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711040976.1A Pending CN107833135A (zh) | 2017-10-30 | 2017-10-30 | 一种基于区块链的公平电子投票协议 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107833135A (zh) |
Cited By (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108846289A (zh) * | 2018-06-08 | 2018-11-20 | 北京京东尚科信息技术有限公司 | 选举信息处理方法和处理系统及选举系统和存储介质 |
CN108933656A (zh) * | 2018-07-18 | 2018-12-04 | 京东方科技集团股份有限公司 | 在线作品投票方法及装置、计算机设备、可读存储介质 |
CN109104286A (zh) * | 2018-07-26 | 2018-12-28 | 杭州安恒信息技术股份有限公司 | 一种基于门限数字签名的共识的新区块生成方法 |
CN109118102A (zh) * | 2018-08-24 | 2019-01-01 | 安徽大学 | 一种公平的基于区块链的双向组合云资源分配方法及系统 |
CN109274505A (zh) * | 2018-11-22 | 2019-01-25 | 浙江工商大学 | 一种基于区块链技术的匿名电子选举方法 |
CN109547193A (zh) * | 2018-12-07 | 2019-03-29 | 焦少波 | 一种基于区块链且抗量子计算机攻击的电子投票方法 |
CN109544772A (zh) * | 2018-10-18 | 2019-03-29 | 杭州电子科技大学 | 一种安全高效的电子投票方法 |
CN109617690A (zh) * | 2018-10-26 | 2019-04-12 | 北京新唐思创教育科技有限公司 | 区块数据处理方法及计算机存储介质 |
CN109741511A (zh) * | 2018-12-26 | 2019-05-10 | 复旦大学 | 基于区块链和层次化确定性钱包的投票系统及其使用方法 |
CN109783057A (zh) * | 2018-12-03 | 2019-05-21 | 北京建筑大学 | 一种区块链上随机数生成方法及装置 |
CN109830029A (zh) * | 2019-01-18 | 2019-05-31 | 深圳智链物联科技有限公司 | 投票方法、装置、系统及服务器、计算机可读存储介质 |
CN109903059A (zh) * | 2019-02-27 | 2019-06-18 | 成都埃克森尔科技有限公司 | 一种基于区块链的数据公证方法 |
CN109919619A (zh) * | 2019-04-30 | 2019-06-21 | 中央财经大学 | 一种区块链交易中身份隐私保护方法 |
CN110071800A (zh) * | 2019-04-10 | 2019-07-30 | 苏州同济区块链研究院有限公司 | 一种基于区块链的公平安全电子投票协议方法 |
WO2019072261A3 (en) * | 2018-11-07 | 2019-09-12 | Alibaba Group Holding Limited | Regulating blockchain confidential transactions |
WO2019222939A1 (zh) * | 2018-05-23 | 2019-11-28 | Cheng Sheng Huo | 虚拟货币避险方法 |
CN110855443A (zh) * | 2019-10-29 | 2020-02-28 | 上海唯链信息科技有限公司 | 一种基于区块链和零知识证明的投票方法及装置 |
CN110867012A (zh) * | 2019-11-15 | 2020-03-06 | 哈尔滨工业大学(深圳) | 一种基于智能合约的去中心电子投票方法、装置、系统及存储介质 |
WO2020057302A1 (zh) * | 2018-09-20 | 2020-03-26 | 阿里巴巴集团控股有限公司 | 基于区块链的交易方法、装置和汇出方设备 |
CN111416709A (zh) * | 2020-03-18 | 2020-07-14 | 腾讯科技(深圳)有限公司 | 基于区块链系统的投票方法、装置、设备及存储介质 |
CN112291062A (zh) * | 2020-10-28 | 2021-01-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链的投票方法及装置 |
CN112581132A (zh) * | 2020-12-24 | 2021-03-30 | 华南理工大学 | 一种保证投票发起人权益的公平的区块链投票方法及系统 |
CN112597538A (zh) * | 2020-12-28 | 2021-04-02 | 上海万向区块链股份公司 | 一种基于区块链的可验证投票方法及系统 |
CN112668053A (zh) * | 2021-01-05 | 2021-04-16 | 上海能链众合科技有限公司 | 一种区块链基于伪随机公钥的加密方法 |
US11050549B2 (en) | 2018-09-30 | 2021-06-29 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
US11055709B2 (en) | 2018-11-07 | 2021-07-06 | Advanced New Technologies Co., Ltd. | Recovering encrypted transaction information in blockchain confidential transactions |
US11226952B2 (en) | 2018-07-27 | 2022-01-18 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain-based asset issuance |
CN114629660A (zh) * | 2022-04-21 | 2022-06-14 | 南方电网科学研究院有限责任公司 | 一种基于区块链的匿名可信投票方法、装置及相关设备 |
CN114978517A (zh) * | 2022-07-27 | 2022-08-30 | 西南石油大学 | 一种基于智能合约和分布式Elgamal算法的电子投票方法 |
US20230162182A1 (en) * | 2018-01-18 | 2023-05-25 | nChain Holdings Limited | Computer-implemented decision making system and method |
CN117061089A (zh) * | 2023-10-12 | 2023-11-14 | 腾讯科技(深圳)有限公司 | 一种投票管理方法、装置、设备及存储介质 |
CN112668053B (zh) * | 2021-01-05 | 2024-05-03 | 上海零数众合信息科技有限公司 | 一种区块链基于伪随机公钥的加密方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160300222A1 (en) * | 2015-04-07 | 2016-10-13 | Modernity Financial Holdings, Ltd. | Off network identity tracking in anonymous cryptocurrency exchange networks |
CN107113179A (zh) * | 2014-11-12 | 2017-08-29 | 亚伦.吉利 | 用于通信验证的多重编码 |
-
2017
- 2017-10-30 CN CN201711040976.1A patent/CN107833135A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107113179A (zh) * | 2014-11-12 | 2017-08-29 | 亚伦.吉利 | 用于通信验证的多重编码 |
US20160300222A1 (en) * | 2015-04-07 | 2016-10-13 | Modernity Financial Holdings, Ltd. | Off network identity tracking in anonymous cryptocurrency exchange networks |
Non-Patent Citations (2)
Title |
---|
AHMED KOSBA 等: "Hawk: The Blockchain Model of Cryptography and Privacy-Preserving Smart Contracts", 《2016 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP)》 * |
李舟军 等: "电子现金协议研究综述", 《计算机科学与探索》 * |
Cited By (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11943331B2 (en) * | 2018-01-18 | 2024-03-26 | Nchain Licensing Ag | Computer-implemented decision making system and method |
US20230162182A1 (en) * | 2018-01-18 | 2023-05-25 | nChain Holdings Limited | Computer-implemented decision making system and method |
WO2019222939A1 (zh) * | 2018-05-23 | 2019-11-28 | Cheng Sheng Huo | 虚拟货币避险方法 |
CN108846289A (zh) * | 2018-06-08 | 2018-11-20 | 北京京东尚科信息技术有限公司 | 选举信息处理方法和处理系统及选举系统和存储介质 |
US11495075B2 (en) | 2018-07-18 | 2022-11-08 | Beijing Boe Technology Development Co., Ltd. | Distributed voting system, method, apparatus, computer device and readable storage medium |
CN108933656A (zh) * | 2018-07-18 | 2018-12-04 | 京东方科技集团股份有限公司 | 在线作品投票方法及装置、计算机设备、可读存储介质 |
WO2020015635A1 (zh) * | 2018-07-18 | 2020-01-23 | 京东方科技集团股份有限公司 | 分布式投票系统、方法、装置、计算机设备及可读存储介质 |
CN109104286A (zh) * | 2018-07-26 | 2018-12-28 | 杭州安恒信息技术股份有限公司 | 一种基于门限数字签名的共识的新区块生成方法 |
CN109104286B (zh) * | 2018-07-26 | 2021-08-17 | 杭州安恒信息技术股份有限公司 | 一种基于门限数字签名的共识的新区块生成方法 |
US11226952B2 (en) | 2018-07-27 | 2022-01-18 | Advanced New Technologies Co., Ltd. | Method, apparatus and electronic device for blockchain-based asset issuance |
CN109118102A (zh) * | 2018-08-24 | 2019-01-01 | 安徽大学 | 一种公平的基于区块链的双向组合云资源分配方法及系统 |
CN109118102B (zh) * | 2018-08-24 | 2022-03-22 | 安徽大学 | 一种公平的基于区块链的双向组合云资源分配方法及系统 |
WO2020057302A1 (zh) * | 2018-09-20 | 2020-03-26 | 阿里巴巴集团控股有限公司 | 基于区块链的交易方法、装置和汇出方设备 |
US11032077B2 (en) | 2018-09-20 | 2021-06-08 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
US11050549B2 (en) | 2018-09-30 | 2021-06-29 | Advanced New Technologies Co., Ltd. | Blockchain-based transaction method and apparatus, and remitter device |
CN109544772A (zh) * | 2018-10-18 | 2019-03-29 | 杭州电子科技大学 | 一种安全高效的电子投票方法 |
CN109544772B (zh) * | 2018-10-18 | 2021-01-05 | 杭州电子科技大学 | 一种安全高效的电子投票方法 |
CN109617690B (zh) * | 2018-10-26 | 2021-04-09 | 北京新唐思创教育科技有限公司 | 区块数据处理方法及计算机存储介质 |
CN109617690A (zh) * | 2018-10-26 | 2019-04-12 | 北京新唐思创教育科技有限公司 | 区块数据处理方法及计算机存储介质 |
US10922421B2 (en) | 2018-11-07 | 2021-02-16 | Advanced New Technologies Co., Ltd. | Regulating blockchain confidential transactions |
US11232442B2 (en) | 2018-11-07 | 2022-01-25 | Advanced New Technologies Co., Ltd. | Recovering encrypted transaction information in blockchain confidential transactions |
US10678931B2 (en) | 2018-11-07 | 2020-06-09 | Alibaba Group Holding Limited | Regulating blockchain confidential transactions |
US11055709B2 (en) | 2018-11-07 | 2021-07-06 | Advanced New Technologies Co., Ltd. | Recovering encrypted transaction information in blockchain confidential transactions |
US11429962B2 (en) | 2018-11-07 | 2022-08-30 | Advanced New Technologies Co., Ltd. | Recovering encrypted transaction information in blockchain confidential transactions |
WO2019072261A3 (en) * | 2018-11-07 | 2019-09-12 | Alibaba Group Holding Limited | Regulating blockchain confidential transactions |
RU2720354C1 (ru) * | 2018-11-07 | 2020-04-29 | Алибаба Груп Холдинг Лимитед | Регулирование конфиденциальных блокчейн-транзакций |
CN109274505A (zh) * | 2018-11-22 | 2019-01-25 | 浙江工商大学 | 一种基于区块链技术的匿名电子选举方法 |
CN109274505B (zh) * | 2018-11-22 | 2021-09-24 | 浙江工商大学 | 一种基于区块链技术的匿名电子选举方法 |
CN109783057A (zh) * | 2018-12-03 | 2019-05-21 | 北京建筑大学 | 一种区块链上随机数生成方法及装置 |
CN109547193B (zh) * | 2018-12-07 | 2022-04-19 | 焦少波 | 一种基于区块链且抗量子计算机攻击的电子投票方法 |
CN109547193A (zh) * | 2018-12-07 | 2019-03-29 | 焦少波 | 一种基于区块链且抗量子计算机攻击的电子投票方法 |
CN109741511A (zh) * | 2018-12-26 | 2019-05-10 | 复旦大学 | 基于区块链和层次化确定性钱包的投票系统及其使用方法 |
CN109830029A (zh) * | 2019-01-18 | 2019-05-31 | 深圳智链物联科技有限公司 | 投票方法、装置、系统及服务器、计算机可读存储介质 |
CN109903059A (zh) * | 2019-02-27 | 2019-06-18 | 成都埃克森尔科技有限公司 | 一种基于区块链的数据公证方法 |
CN110071800A (zh) * | 2019-04-10 | 2019-07-30 | 苏州同济区块链研究院有限公司 | 一种基于区块链的公平安全电子投票协议方法 |
CN109919619A (zh) * | 2019-04-30 | 2019-06-21 | 中央财经大学 | 一种区块链交易中身份隐私保护方法 |
CN110855443A (zh) * | 2019-10-29 | 2020-02-28 | 上海唯链信息科技有限公司 | 一种基于区块链和零知识证明的投票方法及装置 |
CN110855443B (zh) * | 2019-10-29 | 2022-07-01 | 上海唯链信息科技有限公司 | 一种基于区块链和零知识证明的投票方法及装置 |
CN110867012A (zh) * | 2019-11-15 | 2020-03-06 | 哈尔滨工业大学(深圳) | 一种基于智能合约的去中心电子投票方法、装置、系统及存储介质 |
CN111416709A (zh) * | 2020-03-18 | 2020-07-14 | 腾讯科技(深圳)有限公司 | 基于区块链系统的投票方法、装置、设备及存储介质 |
CN112291062A (zh) * | 2020-10-28 | 2021-01-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链的投票方法及装置 |
CN112581132A (zh) * | 2020-12-24 | 2021-03-30 | 华南理工大学 | 一种保证投票发起人权益的公平的区块链投票方法及系统 |
CN112597538A (zh) * | 2020-12-28 | 2021-04-02 | 上海万向区块链股份公司 | 一种基于区块链的可验证投票方法及系统 |
CN112668053A (zh) * | 2021-01-05 | 2021-04-16 | 上海能链众合科技有限公司 | 一种区块链基于伪随机公钥的加密方法 |
CN112668053B (zh) * | 2021-01-05 | 2024-05-03 | 上海零数众合信息科技有限公司 | 一种区块链基于伪随机公钥的加密方法 |
CN114629660A (zh) * | 2022-04-21 | 2022-06-14 | 南方电网科学研究院有限责任公司 | 一种基于区块链的匿名可信投票方法、装置及相关设备 |
CN114629660B (zh) * | 2022-04-21 | 2024-03-08 | 南方电网科学研究院有限责任公司 | 一种基于区块链的匿名可信投票方法、装置及相关设备 |
CN114978517A (zh) * | 2022-07-27 | 2022-08-30 | 西南石油大学 | 一种基于智能合约和分布式Elgamal算法的电子投票方法 |
CN117061089A (zh) * | 2023-10-12 | 2023-11-14 | 腾讯科技(深圳)有限公司 | 一种投票管理方法、装置、设备及存储介质 |
CN117061089B (zh) * | 2023-10-12 | 2024-02-06 | 腾讯科技(深圳)有限公司 | 一种投票管理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107833135A (zh) | 一种基于区块链的公平电子投票协议 | |
Borge et al. | Proof-of-personhood: Redemocratizing permissionless cryptocurrencies | |
Sampigethaya et al. | A framework and taxonomy for comparison of electronic voting schemes | |
Panja et al. | A smart contract system for decentralized borda count voting | |
CN108109257A (zh) | 一种基于区块链的匿名电子投票方法 | |
Zaghloul et al. | d-BAME: distributed blockchain-based anonymous mobile electronic voting | |
Kumar et al. | A secure end-to-end verifiable internet-voting system using identity-based blind signature | |
Chen et al. | New receipt-free voting scheme using double-trapdoor commitment | |
Dossogne et al. | Blinded additively homomorphic encryption schemes for self-tallying voting | |
Nguyen Thi et al. | Enhanced security in internet voting protocol using blind signatures and dynamic ballots | |
Radwin et al. | An untraceable, universally verifiable voting scheme | |
Fatrah et al. | Proof of concept blockchain-based voting system | |
CN110719168B (zh) | 一种基于区块链的分级匿名表决方法 | |
Mookherji et al. | Blockchain-based e-voting protocols | |
Islam et al. | Blockchain Based New E-voting Protocol System without Trusted Tallying Authorities | |
Mohanty et al. | A secure multi authority electronic voting protocol based on blind signature | |
Wu et al. | Privacy-preserving voluntary-tallying leader election for internet of things | |
Blanton | Improved conditional e-payments | |
Fan et al. | An efficient multi-receipt mechanism for uncoercible anonymous electronic voting | |
Doost et al. | Analysis and Improvement of an E-voting System Based on Blockchain | |
Mu et al. | A fair electronic cash scheme | |
Lee et al. | Fair exchange of digital signatures using conditional signature | |
Carroll et al. | A secure and anonymous voter-controlled election scheme | |
Spadafora | A new blockchain-based secure e-voting protocol | |
Sri et al. | E-voting system using blockchain |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180323 |
|
WD01 | Invention patent application deemed withdrawn after publication |