双因素认证

内容


双因素认证 (2FA) 要求选民在访问其选票前使用两种不同的认证因素验证身份。通过将选民知道的东西(如密码)与他们拥有的东西(如手机)相结合,2FA显著降低了未经授权访问的风险,并增强了在线投票的完整性。

什么是双因素认证?

双因素认证是一种要求用户提供两种不同类型凭据来验证身份的安全机制。与只需一个密码的单因素认证不同,2FA确保即使一个因素被破坏,没有第二个因素攻击者也无法访问。

三种认证因素

认证因素分为三类:

  • 知识: 选民知道的东西——密码、PINs、安全问题
  • 物品: 选民拥有的东西——手机、硬件令牌、智能卡
  • 固有特性: 选民本身的东西——生物数据,如指纹或人脸识别

真正的2FA结合了来自两个不同类别的因素。使用两个密码,例如,不是2FA,因为两者都是知识因素。

为什么2FA对在线投票重要

在线投票在身份验证方面面临独特的挑战。与可以由选举工作人员检查照片ID的现场投票相比,数字投票必须远程验证身份。2FA为凭据盗窃和账户共享提供了强大的保护,确保只有授权选民才能访问并提交其选票。这直接支持选民认证方法的完整性。

投票常见的2FA方法

多种2FA方法非常适合在线投票:

  • 短信代码: 向注册的选民手机号码发送一次性代码
  • 电子邮件验证: 将限时代码或链接发送到选民的电子邮件地址
  • 认证器应用: 由Google Authenticator等应用生成的基于时间的一次性密码(TOTP)
  • 推送通知: 将批准请求发送到注册的移动设备
  • 硬件令牌: 生成一次性代码的物理设备
NemoVote支持与Google、Microsoft和自定义SAML/OIDC提供商的单点登录(SSO),允许组织利用其现有的身份基础设施,包括所有现有的MFA策略。

在投票流程中实施2FA

将2FA集成到投票过程中需要仔细的规划:

  1. 选民注册: 在注册过程中收集和验证第二因素的联系信息(电话号码、电子邮件)
  2. 选前测试: 允许选民在投票前测试其2FA设置
  3. 认证过程: 在投票日提供清晰的分步验证过程
  4. 会话管理: 在整个投票过程中维护已认证的会话

安全性与可访问性之间的平衡

虽然2FA增加了安全性,但也可能对某些选民造成障碍。组织必须考虑到可能没有智能手机、技术水平较低或者短信传递不可靠情况下的选民。提供多种2FA选项和清晰的说明有助于确保安全措施不会无意中将合格选民排除在无障碍投票之外。

2FA与选民隐私

第二个认证因素——特别是电话号码或生物数据——是受数据保护法规约束的个人信息。组织必须确保2FA数据在获准情况下收集,仅用于认证目的,安全存储,并在投票后删除,并按照GDPR要求进行处理。

备用和恢复选项

组织必须为选民无法完成2FA的情况做计划,如电话丢失或号码更改。有效的备用策略包括预注册的备用代码,通过选民支持渠道的替代验证,由选举管理员进行身份验证和限时的替代认证方法。

2FA与SSO结合

对于使用身份管理系统的组织,将2FA与单点登录 (SSO)结合提供了无缝而安全的体验。选民通过其组织现有的身份提供商进行验证,该提供商已经实施2FA,从而无需单独的投票相关凭据。

投票中2FA的最佳实践

为了在在线投票中有效实施2FA,组织应选择适合其选民群体的2FA方法,在投票前提供明确的设置指南,提供多个第二因素选项以实现包容性,为有认证问题的选民设立支持渠道,并在投票前彻底测试整个认证流程。