MIT 报告:区块链潜力无限,但是不适合选举投票

尽管最终选举结果仍然未出,但是关于如何用区块链优化、简化投票流程的提议涌现,最鲜明的提议者是币安的 CEO 赵长鹏,以及维塔利克·布特林(Vitalik Buterin)。布特林补充说,尽管目前存在技术挑战,但对基于区块链的移动端投票应用 “在方向上是 100% 正确的”。

  

然而,麻省理工学院的一份新报告强烈反驳了基于区块链的电子投票的想法,主要依据是它会增加更多的网络安全漏洞,不能满足政治选举中投票的独特需求,它带来的问题多于它能解决的问题。
  
该报告的作者包括:麻省理工学院计算机科学与人工智能实验室(CSAIL)教授、RSA 加密技术的发明者之一罗恩·里维斯特(Ron Rivest)、迈克尔·斯佩克特(Michael Specter)、Sunoo Park 以及麻省理工学院数字货币计划(DCI)主任尼哈·纳鲁拉(Neha Narula)。这篇论文将于本月晚些时候发表在《网络安全杂志》上。
  
RSA 加密技术的发明者之一里维斯特在一个博客帖子中说:“我还没有看到一个区块链系统,可以让我相信它可以处理实际生活场景中的相关计数问题,更不用说总统选举。”
为什么网上投票不像数字银行
 
这份报告承认人们希望投票过程更快、更有效的愿望,但反驳了这样一种观点,即仅仅因为我们现在通过网络的方式购物或者办理银行业务,就意味着选举也应该以同样的方式进行。
 
原因之一是这些日常生活系统具有 “更高的故障容差”。 例如,如果出现问题,如信用卡欺诈,你可以冻结银行卡,甚至银行可能会赔偿你的损失。但是在选举方面,如果选票被改变或者没有提交,几乎没有什么补救措施,特别是考虑到当这些错误行为发生时,在线投票系统可能并不总是能够识别到。
  
另一个原因是匿名性,或者至少使你的投票方式与身份分离,是任何选举过程的一个重要组成部分。虽然银行或商店可以给你一张收据,证明你做了一些事情来侦查或防止舞弊。对于投票来说,没有这样的收据。
 
里维斯特说: “对于选举来说,没有任何保障或追索权来防止民主的失败。在一场妥协的选举之后,没有任何办法‘让选民重新团结起来’。”
 
网络安全的问题还有很多。
 
网络投票中的网络安全问题
 
在线投票的一个问题是,它容易受到攻击,这种攻击是可扩展的,也是不可检测的。
  
根据这份报告,在规模方面,一个零日安卓漏洞在 2012 年只花费了 6 万美元。零日漏洞是一种已知的安全缺陷,但补丁尚未提供。
作者估计,测试和武器化这样一个漏洞将增加两个数量级的相关成本,这意味着一个选举漏洞可能花费 600 万美元。虽然这个数字看起来很大,但对于一个民族国家的对手来说,这个数字微乎其微,尤其是与 2016 年美国总统大选花费的大约 7.68 亿美元相比。这使得针对选举制度的可扩展攻击具有吸引力,因为它能让你物有所值。
 
这种攻击也可能无法察觉,导致大量选票被利用。这在一定程度上与供应商和设备的数量有关。
 
报告中写道:“投票系统缺陷可能由投票软件供应商、硬件供应商、制造商或任何为这些组织维护或提供代码的第三方引入。选民使用手机投票不仅取决于手机供应商,还取决于为手机提供驱动程序的硬件公司、基频处理器、投票软件中第三方代码的作者、物理设备的制造商、以及手机投票所依赖的网络或任何其他系统。”
对于非假设性问题,没有具体的解决方案
即使像加密这样的重要工具也不能提供具体的解决方案。虽然加密确实提供了一些保护,但它并不能防止系统漏洞。另外,实现它是困难的,更不用说,系统中存在大量漏洞,导致加密协议遭到破坏的例子。
 
这些担忧不仅仅是假设。报告指出,例如,在格鲁吉亚和马里兰州使用的投票站只有电子投票设备,此前已被证明是易受攻击的,而在华盛顿特区、爱沙尼亚和瑞士等国家的互联网投票系统被发现容易出现严重故障。
 
相比之下,邮寄选票等屡试不爽的方法使得对选票的大规模攻击难以轻松进行,因为存在大量的摩擦点,比如需要实际接触选票。
 
当被问及美国是否可以从其他国家学到在线投票的经验时,麻省理工学院计算机科学与人工智能实验室的一位发言人说:“没有一个是可取的。在可预见的未来,考虑到计算机安全状况和政治选举的高风险,在线投票系统将遭受重大漏洞。”
呼吁区块链投票的论据以及为什么它们不行
 
该报告列出了区块链支持者所持的一些论点。包括 “代币即选票”,”使用许可链”,并采用零知识的证明秘密投票。
代币即选票
 
代币即选票是报告中认为有问题的一种模式。其中,一个已登记的投票人有一个由投票当局创建的公钥/私钥对,每个投票人将他们的公钥发送到投票注册中心。
  
报告说:“然后,选民登记处给每个公钥发送一枚代币。为了投票,每个用户将他们的代币发送给他们选择的候选人身上。经过一段时间,每个人都可以查看每个候选人的所获得的代币总数,获得代币最多的获选人胜出。”
 
这里的问题是,它不提供无记名投票。所有的投票都在一条公链上。它也依赖于用户能够在特定的时间范围内在区块链上申领他们的投票代币,这些都可以通过分布式拒绝服务攻击进行破坏,使网络不可用。
 
对手可能会推高公链的交易费用,进一步阻碍 “投票” 或者区块链网络可能说到破坏,如果大多数的矿工或验证者串通,进行分叉的话。
  
最后,它依赖于私钥管理,这东西取决于用户本身,而且正如加密货币所显示的那样,人们无法妥善处理好私钥管理。
许可链
 
报告质疑的另一个建议是使用许可链。许可链由内部链节点成员决定谁可以成为加入该网络。通常还有一个控制层,控制参与者有权执行哪些操作。
 
就像用代币投票一样,这种策略的使用仍然会受到私钥管理漏洞的影响。此外,为了保证投票的保密性,许可参数还让用户无法通过阅读链上数据来验证他们的投票计数。
  
许可链也可能运行在更少数量的服务器上,其中大多数运行相同的操作系统,这意味着更容易被破坏。
零知识证明
麻省理工学院审查的最后一个建议是使用零知识证明(ZKPs)。ZKPs 是一种加密技术,允许网络上的应用程序和用户等双方相互验证信息,而无需共享与此信息相关的基础数据。这似乎有助于缓解保密和公开验证投票之间的冲突。
  
但报告指出,除了 ZKPs 中的潜在漏洞和加密过程的可靠性外,它也消除逼迫选举或买票。
 
此外,报告认为:“零知识证明是为拥有秘密信息的一方保密而设计的,他们通常不会阻止该方自愿透露信息。”
  
然而,对于任何类似这样的数字过程,最后也是最根本的担忧是,它们依赖于各种供应商、硬件和软件,所有这些都给投票过程增加了额外的复杂性和可能的漏洞。
  
麻省理工学院计算机科学与人工智能实验室的一位发言人说:“最大的问题是,基于区块链的方法要求选民使用软件,其中一个漏洞可以神不知鬼不觉地改变他们所看到的东西。例如,向他们显示他们的选票是投给某个候选人的,而实际上不是。对于那些无所谓极少量结果是否被修改或者被修改了也不影响全局的场景,区块链对于这些场景来说,就已经成熟。”
 
这份报告还强调,选举的利害关系不仅仅是赔钱,如果这些在线投票工具在加密货币方面遭到破坏,情况就会如此。
区块链潜力无限,只是不适合实际投票
 
这份报告指出,他们没有解决区块链中的投票问题,比如 EOS 用户的超级节点选举,或者 Augur 用户使用 REP 对合同结果进行投票。这些可能会满足选举的某些方面,但是不能很好地映射到政治选举制度上,并且会留下许多无法解释的弱点。
  
这份报告也承认,它关注的是投票,而不是像选民登记管理或审计这样的领域。
  
总而言之,报告指出区块链和在线投票并不能解决基本的安全问题;相反,它们带来的漏洞比目前的面对面投票和邮寄投票系统更多。
  
里维斯特在博客中说:“如果投票完全是基于软件的,那么一个恶意的系统就可以欺骗投票者关于投票的记录方式”。民主以及选民的意愿不能取决于某些软件是否正确地记录了选民的选择。”