全同态加密是一种可以对密文进行任意计算的密码系统,可以在加密状态下对数据进行操作,以避免数据泄露。全同态加密技术的应用范围非常广泛,下面我们就来了解一下全同态加密技术在电子投票系统中的应用。

全同态加密在电子投票系统中的应用

基于全同态加密的电子投票系统由PKI、发起人、计票人、投票人、公告牌等六个主要的功能角色构成。其中,除了发起投票的发起人之外,只需要保证管理公钥PKI安全可信,就可以满足投票系统保密性和公开可验证的要求。

  • PKI:用作系统初始化的实体验证,发放各个实体的公私钥数据,并将公钥公开发布;从发起人处获得同态加密公钥,签名验证后公开发布。
  • 发起人:用作同态公私钥的生成——同态加密公钥交给PKI模块公开发布用于选票加密;密文计票结束后可以从公告牌获得密文数据,利用同态加密私钥解密后得到投票结果。
  • 投票人:用作选票密文的生成,同时生成对应的数字签名交给计票人;投票成功后,从计票人处获得投票成功的回执。
  • 计票人:验证来自投票人模块的选票合法性,将合法选票发布到公告牌,同时生成投票成功的回执发回投票人;进行同态密文加法,将最新的密文和发布到公告牌。
  • 公告牌:实时展示投票进程——展示由计票人所发布的选票数据与同态密文和数据,以及相关的数字签名。
  • 监票人:实时监督公告牌所展示的选票和数字签名的合法性;利用同态公钥计算同态密文和,与计票人的计算结果相比较。

在此过程中,除了用于投票实体验证的PKI,以及生成并保管全同态私钥的投票发起人,其余四个模块都可以在不可信的环境中运行。公告牌模块的公示作用可以使得保障了公开性,而监票人模块可以对选举进行公开的验证和监督,一旦造假会被立刻发现。

全同态加密技术

应用流程

  1. 发起人提供候选人名单,同时生成全同态加密的公私钥。将名单和全同态加密公钥进行签名后发给PKI。
  2. PKI验证签名有效性以后,投票人和计票人会经由PKI验证其合法性,通过后将全同态加密公钥分发给投票人和计票人。
  3. 投票人根据数据格式生成选票数据,采用全同态加密后发给计票人。
  4. 计票人收到选票以后,验证选票的合法性,通过后对投票人发放该张选票的接收回执。
  5. 计票人将对选票进行密文统计,统计后对选票进行签名,然后将新的密文统计结果和选票放入公告牌中。
  6. 监票人可以从PKI中获得全同态加密的公钥,通过公告牌实时获取投票的统计结果,对选票进行实时的审计检查。而每个投票人可以在投票后,通过公告牌看到自己的选票,检验自己的选票是否被统计。
  7. 最后,投票发起人可以从公告牌中读取选票的密文统计数据,使用第一步生成的全同态私钥解密以后获得投票结果。

全同态加密技术

在整个运行过程中,选票的经过加密后,在系统运行过程中始终以密文信息保存,明文信息不会出现在服务器上。同时,引入了监票人机制,监票人可以通过公开的信息完成监票工作。这样,任何对投票过程有怀疑的第三方都可以参与到选票的审计监票过程中,进一步保障投票的公平性。

免责声明:素材源于网络,如有侵权,请联系删稿。