俄罗斯联邦CEC远程电子投票系统概述

2020年8月31日,根据俄罗斯联邦中央选举委员会的命令,对使用区块链技术的远程电子投票系统(以下称为DEG)进行了公开测试。



为了熟悉新的电子投票系统并了解区块链技术在其中扮演的角色以及使用了哪些其他组件,我们正在开始一系列专门针对系统中使用的主要技术解决方案的出版物。我们建议从顺序开始-对系统的要求和过程中参与者的功能



系统要求



适用于任何投票系统的基本要求通常与传统的面对面投票和远程电子投票相同,并由2002年6月12日的联邦法律第67-FZ号(于2020年7月31日修订)确定。选举权和参加俄罗斯联邦公民的公民投票的权利”。



  1. 选举和全民投票是秘密的,不包括对公民意愿表达进行任何控制的可能性(第7条)。
  2. 投票的可能性应仅提供给在该投票中具有积极选举权的人。
  3. 一位投票者-一票,不允许“双重”投票。
  4. 投票过程应对选民和观察员开放且透明。
  5. 必须确保投票的一致性。
  6. 在完成投票之前,应该不可能计算出小计。


因此,我们有三个参与者:一个投票者,一个选举委员会和一个观察员,他们之间的互动顺序已经确定。也可以选出第四个参与者-在该领土上进行公民登记的机构(首先是内务部以及其他行政机关),因为积极的选举权与公民身份和登记地点有关。



所有这些参与者都相互交流。



交互协议



考虑一下传统的投票站的投票过程,该投票站配有投票箱和纸质选票。通常,简化形式如下:投票者来到投票站并出示身份证件(护照)。区域选举委员会在该区域工作,该委员会的成员检查选民的身份及其在较早编制的选民名单中的存在。如果找到选民,则委员会成员向该选民发出选票,然后选民签字接受选票。之后,选民进入投票站,填写选票,然后放入投票箱。为了确保严格遵守所有程序,观察员(候选人的代表,公共观察机构)都在注视着这一切。投票结束后,选举委员会应在观察员在场的情况下进行点票并确定投票结果。



在传统投票系统中进行投票所必需的属性由组织措施和参与者互动的既定程序提供:检查选民护照,投票的个人签名,使用投票亭和密封投票箱,计票程序等。



对于作为远程电子投票系统的信息系统,此交互过程称为协议。由于与我们的所有互动都变得数字化,因此可以将该协议视为一种算法,该算法由系统的各个组件实现,并且由用户执行一系列组织和技术措施。



数字交互对实现的算法有一定的要求。让我们看一下在信息系统方面在传统站点上执行的操作,以及如何在我们正在考虑的DEG系统中实施该操作。



让我们马上说,区块链技术并不是解决所有问题的“灵丹妙药”。为了创建这样的系统,有必要开发负责不同任务的大量软件和硬件组件,并将它们与单个过程和协议相连接。但是同时,所有这些组件都与区块链平台进行交互。



系统组成



从技术角度来看,DEG系统是一个软件和硬件复合体(以下简称PTC),它结合了一组组件以确保在单个信息环境中选举过程中参与者的交互。



下图显示了DEG PTC系统的组件和参与者的交互方案。可点击









远程投票程序



现在,让我们详细考虑远程电子投票的过程及其由DEG软件和硬件组合的组件实现的情况。



根据远程电子投票程序,为了被纳入远程电子投票的参与者列表,投票者必须在国家服务门户网站上提交申请。同时,只有具有已确认帐户并已成功与选民登记册匹配的用户才能提交这样的申请,这些选民是GAS“ Vybory”系统公投的参与者。收到申请后,俄罗斯的CEC再次检查选民数据,并将其上传到“选民名单”组件PTK DEG。上传过程伴随着在区块链中记录唯一标识符。选举委员会的成员和观察员可以使用位于选举委员会所在地的特殊AWP查看清单。



当选民访问投票站时,将进行选民身份验证(与护照数据进行比较)并在选民名单中进行识别,并检查该选民之前是否未收到投票。这是重要的一点-无法确定选民是否将收到的选票投到了选票箱中,仅凭选票已经提前发行这一事实就无法确定。对于PTK DEG,选民的访问是用户对DEG Portal的吸引力-该站点位于vybory.gov.ru。与传统区域一样,该站点包含有关正在进行的竞选活动的信息材料,有关候选人的信息以及其他信息。为了执行标识和认证,使用了State Services Portal的ESIA。因此,既可以在提交申请时也可以在参与投票时保留通用标识方案。



此后,匿名化过程开始-给选票者一张不包含任何识别标记的选票:它没有号码,与签发它的选票者无关。当投票站配备有电子投票系统时,考虑该选项很有趣-在这种情况下,匿名执行如下:不要求纸质投票,而是要求选民从纸堆中选择任何带有条形码的卡,然后他将使用该卡接近投票设备。该卡不包含有关选民的任何信息,仅包含确定在出示此类卡时设备应提供哪张选票的代码。通过完全数字化互动,主要任务是实现这种匿名化算法,以便一方面建立任何用户标识数据都是不可能的,而另一方面,只能提供机会向列表中先前标识的用户投票。为了解决该问题,DEG软件和硬件联合体使用在专业环境中称为“盲电子签名”的加密算法。我们将在以下出版物中详细讨论它,并发布源代码,您还可以使用关键字-“秘密投票的加密协议”或“盲目签名”从Internet上的出版物中收集其他信息。我们将在以下出版物中详细描述它,并发布源代码,您还可以使用关键字-“秘密投票的加密协议”或“盲目签名”从Internet上的出版物中收集其他信息。我们将在以下出版物中详细描述它,并发布源代码,您还可以使用关键字-“秘密投票的加密协议”或“盲目签名”从Internet上的出版物中收集其他信息。



然后,选民在无法看到所做选择的地方(封闭的展位)填写选票-如果选民在我们的信息系统中进行远程投票,那么唯一的地方就是用户的个人设备。为此,首先将用户转移到另一个域-匿名区域。在继续之前,您可以打开VPN连接并更改IP地址。该域是显示新闻简报和处理用户选择的地方。最初在用户设备上执行的源代码是打开的-您可以在浏览器中看到它。



做出选择后,将使用特殊的加密方案在用户设备上对选票进行加密,并将其发送并记录在“分布式存储和投票计数”组件中建立在区块链平台上



该协议最重要的特征之一是无法在协议完成之前找出投票结果。在传统区域中,这是通过密封投票箱并由观察员进行监视来确保的。在数字通信中,最好的解决方案是加密选民的选择。使用的加密算法排除了在投票完成之前披露结果的可能性。为此,使用具有两个密钥的方案:所有参与者都知道的一个(公共)密钥用于加密语音。无法使用相同的密钥解密,您需要第二个(专用)密钥。另一方面,私钥在选举参与者(选举委员会成员,公共会议厅,计数服务器操作员等)之间共享,使得私钥的每个单独部分都无用。只有在收集到私钥后,才能开始解密。在所考虑的系统中,密钥共享过程包括几个阶段:在系统内部共享密钥的一部分,在系统外部共享密钥以及生成公共公用密钥。在以下出版物中,我们将详细显示加密过程和使用加密密钥的过程。



收集并加载密钥后,将计算总数,以将其进一步固定在区块链中并随后发布。正在考虑的系统的一个特征是使用同态加密技术。我们将在以后的出版物中详细描述该算法,并讨论为什么该技术被广泛用于创建投票系统。现在,我们将注意到它的主要特征:记帐系统中记录的加密选票无需解密就可以组合在一起,这样解密后的组合密文的结果将成为选票中每个选项的总和。在这种情况下,系统当然会实现这种计算的正确性的数学证明,这些证明也记录在会计系统中,并可由观察员检查。



下面是投票过程的示意图。可点击









区块链平台



现在,我们已经分析了实现远程电子投票系统的主要特征,我们将回答我们从哪个问题开始-区块链技术在其中扮演什么角色,解决什么任务?



在已实施的远程投票系统中,区块链技术解决了一定范围的问题。



  • 基本任务是确保投票框架内的信息不变,首先是选民的投票。
  • 确保执行的透明性和以智能合约形式实现的程序代码的不变性。
  • , : , , , .
  • , , .
  • , , .


因此,我们看到,不使用这种技术,实际上不可能在投票系统中获得必要的属性以及对其的信任。



智能合约的使用丰富了所使用的区块链平台的功能。智能合约会使用加密的选票检查每笔交易,以检查电子和“盲”签名的真实性,并对填充加密的选票的正确性进行基本检查。



同时,在经过考虑的远程电子投票系统中,“分布式投票存储和计数”组件不仅限于区块链节点。对于每个节点,可以部署单独的服务器来实现投票协议的基本加密功能-计数服务器。



计数服务器



这些是分散的组件,提供了分布式生成投票加密密钥以及解密和计算投票结果的过程。他们的任务包括:



  • 提供部分选票加密密钥的分布式生成。密钥生成过程将在以下文章中讨论;
  • 检查加密选票的正确性(不解密);
  • 以加密形式处理选票以形成最终密文;
  • 最终结果的分布式解密。


密码协议执行的每个阶段都记录在区块链平台中,并可由观察者检查其正确性。



为了在投票过程的各个阶段为系统提供必要的属性,使用了以下加密算法:



  • 电子签名;
  • 选民公钥的盲签名;
  • 椭圆曲线上的El Gamal加密方案;
  • 零知识证明;
  • DKG(分布式密钥生成)Pedersen 91;
  • Shamir的私钥共享协议。


密码服务将在以下文章中详细讨论。



结果



让我们总结一下考虑远程电子投票系统的一些中间结果。我们简要描述了该过程和实现该过程的主要组件,还确定了实现任何投票系统所需属性的方法:



  • . . , .
  • . , , . « » .
  • . , . .
  • . . -.
  • . , .
  • . , « ».



All Articles