如何检查用户是否投票但无法看到为谁投票?

How to check if an user voted but to be impossible to see for whom?

区块链投票系统

当前系统的工作原理

问题

新系统如何运作

问题

https://gist.github.com/moldcraft/e2eb508e10b9ae7e70d1

  1. 选民发表他们希望如何投票的声明。

  2. 选民盲选,将盲选附在身份证明上并签名。

  3. 中央机关接收盲选并验证签名。如果签名正确,则中央机关签署blinded

  4. 选民揭开签名的选票并将其上传到存储库或匿名添加到区块链。

  5. 中央机构必须能够为每一张非盲选票产生一张签名的盲选票。那么如果收集到中央机关签名的5万张选票,中央机关必须能够拿出5万张选民签名的盲选票。

签名的盲选票显示了谁投票了。公开投票显示每个候选人或提案获得了多少票。无法将盲选票映射到非盲选票,因此无法判断谁投了什么票。