在线政府选举系统 - 有可能吗?

信息安全 密码学 网络服务器 政府 电子投票
2021-08-13 00:25:45

我来自保加利亚,目前这里的一些团体正在宣传全民公决的想法,关于建立在线政府选举系统的可能性。这个想法是人们应该能够使用互联网为选举投票。

我担心的一个问题是,在发起人的网站上,没有关于如何管理、托管和保护该系统的详细信息。我偶然发现了互联网上的一些文件,这些文件表明此类原型系统迄今为止已被成功入侵,这是一种非常不安全的选举机制。然而,人们坚持认为,有一种方法可以使系统足够安全,并且没有问题。

您认为使用我们拥有的当前技术(例如现代密码算法、数字签名、SSL 或某些专有协议)今天可以实现这样的系统吗?还是在未来?

一个拥有足够高预算的政府是否有可能让超级计算机按照他们的意愿破坏、操纵和破坏系统?

4个回答

不知道如何建立一个可验证安全和可审计的互联网投票系统。Ron Rivest,图灵奖得主和 RSA 的 R,曾将互联网投票比作酒后驾车:这是你无法安全进行的事情。

(通过互联网投票,我的意思是从不受选举当局控制的客户端计算机通过互联网投票,包括通过互联网以电子方式返回已投票的选票。)

反对互联网投票的论点有点复杂,但您可以在以下文章中找到详细信息:

不要错过最后一篇论文。这是对互联网投票系统的完全史诗般的黑客攻击。

理想情况下,在线投票系统应该具备哪些属性?

  1. 安全的

    • 每个选民只能投票一次
    • 投票机构不能添加或删除选票而不被抓住
  2. 隐私/匿名

    其他人(包括州政府)无法找到您投票的内容。

  3. 你不应该能够向其他人证明你是如何投票的,以防止买票或在胁迫下投票

  4. 特洛伊木马不应该能够改变投票

  5. 该过程应该由非专家理解/验证

我们能实现什么?

5) 非专家验证
对于在线系统来说是非常没有希望的。所需的加密货币太复杂了。但我不认为这是一个必不可少的属性。

4) 木马
我想不出在木马存在的情况下保持系统安全的方法。可以简单地尝试不拥有它们。例如,通过使用 live-cd。想不出在木马存在的情况下保持系统安全的方法。

在理想的世界中,我们至少可以实现一个提供 1)安全性和 2)匿名性的系统,不确定 3)。但是实现一个实现 1) 和 2) 的系统在实践中已经很烦人了。

如何构建这样一个系统的草图

您需要能够使用 TOR 或类似工具与投票服务器进行匿名通信。

然后,您需要将投票权与实际投票权分开。盲签名原则上允许这样做。但它们需要两个步骤:

  1. 将您的非匿名投票授权变成投票
  2. 将投票发送到投票收集服务器。

您需要小心避免允许将这两个步骤关联起来的侧信道攻击,例如通过时序或 IP。

最后,所有收到的选票列表都会被公布,允许每个选民验证他的选票是否被计算在内,并且所有选民的名单也会公布,因此非选民可以验证没有人以他们的名义投票,并且有票数不比选民多。大量选民和非选民需要对此进行验证,以确保系统安全。

此方案不提供 3),我不确定是否可以添加此属性。

如果您想避免所有对匿名的旁道攻击,即使在实践中构建这个系统似乎也很有挑战性。例如,需要在第 1 步和第 2 步之间设置足够的延迟,并且您可能需要一个慢速转发匿名器来避免流量分析。

结论

在我看来,实现一个在线投票系统甚至接近传统的纸质系统所提供的功能实际上是不可能的。所以我建议在重要的选举中使用好的旧纸,但也可以使用在线投票不太重要的选票。

我认为德国高等法院很好地解决了这个问题:

可验证性

德国宪法法院裁定任何类型的投票设备:

投票设备的使用 [...] 只有在投票和计票的基本步骤能够在没有专业知识的情况下得到可靠验证的情况下才符合宪法要求

该判决的动机是针对传统投票计算机的一个案例,但该裁决更为笼统:这些投票计算机由键盘和显示器组成。选民按下他或她选择的政党的键。投票将被显示,选民必须确认。

但选民无法验证他选择并在屏幕上看到的政党是他的选票被计入的政党。政府试图争辩说,投票计算机已经过官方机构的验证并被密封以防止操纵。

但法院说得很清楚,“专家验证”还不够好,不能满足民主选举的要求。

注意:无论是使用外国投票计算机还是选民拥有的计算机进行投票都没有区别:人们也无法验证自己的计算机是否正常工作这已经从了解开源投票软件开始,但当然这一直到硬件中的微码

匿名性和不可证明性

该裁决仅涉及非专家的可验证性。当然,任何解决这个问题的办法,都不能违背民主选举的其他要求。

例如,可以通过发布包含地址和投票的所有选民的完整列表来验证投票。但是民主选举需要匿名来保护选民,并且需要不可证明来防止卖票。

有一些聪明的概念是不将信息发布给所有人看,但仍然允许选民验证他的投票。但是这些概念并不容易被普通人理解,因为它背后的数学很复杂。所以我们回到了第一方。

而且它们不能同时满足不可证明性和可证明性但如果他们不允许某人证明,他的选票没有按应有的方式计算,很可能会有很多人在每次选举后称其为欺诈。

tl; dr:对于重要的选举,互联网投票现在肯定是一个坏主意。

我们中的许多人认为安全的 Internet 投票是IT 安全中尚未解决的重大问题之一这是因为对匿名性透明度的要求都非常具有挑战性它还结合了保护客户端服务器的巨大挑战,并且需要处理拒绝服务它在 DESSEC:设计安全系统工程竞赛中被提名为值得X 奖。

解决服务器问题的一大进步来自同态加密的最新进展,它实现了近乎奇迹:您可以在云中公开存储加密的投票选票,并允许公众将它们相加以确认每个选票的票数候选人,并检查他们自己的投票是否确实包含在总数中,而没有可以证明他们如何向第三方投票的收据。请参阅Helios 投票系统以获得出色的实施和解释。它适用于低风险的选举。但即使是作者本·阿迪达(Ben Adida)也政府选举是你不想通过互联网进行的事情,” 引用 计算机 病毒 破坏 投票 的 可能性 和恐吓 选民的 可能性.

客户问题更难处理,但确实是许多人正在努力的一个有价值的目标鉴于 Internet的当前架构,拒绝服务问题非常棘手。

2012 年 10 月 CACM在美国的互联网投票是对该主题的一个很好的概述。

本·阿迪达(Ben Adida)在 2012 年就该主题制作了一段有价值的视频,我的投票在哪里?.

所以现在对于重要的选举来说,互联网投票肯定是个坏主意。荷兰在线投票的经验可以作为一个教训,以及如何对选民进行有关事实的教育。他们的Rijnland Internet Election System (RIES) 存在很大的安全漏洞,在使用了几年后于 2008 年被废弃。请参阅荷兰的电子投票:从早期采用到早期废除

另请参阅有关此问题的上一个问题:安全 Internet 轮询 - IT 安全