一种可验证的后量子电子投票系统及其实现方法技术方案

技术编号:18840252 阅读:32 留言:0更新日期:2018-09-05 08:24
本发明专利技术公开了一种可验证的后量子电子投票系统及其实现方法,该系统包括认证中心、用户端、验证服务器、计票服务器、验证程序、以及公告板;所述认证中心对用户的身份进行验证,为每一位合法的用户生成身份ID并对其进行签名;所述用户端向认证中心证明自己的身份,接收身份ID签名,对自己的选票进行加密,并将选票密文与身份ID签名发送给验证服务器;所述验证服务器包括两台服务器,由这两台服务器共同完成对选票合法性的验证和同态计票工作;所述计票服务器对部分同态计票密文进行解密,并将其发布在公告板上;所述验证程序验证计票服务器是否进行了正确计票。本发明专利技术系统及其实现方法能够有效抵抗量子计算机的攻击,同时具有很高的运算效率。

A verifiable post quantum electronic voting system and its implementation method

The invention discloses a verifiable post-quantum electronic voting system and its implementation method, which comprises an authentication center, a client, a verification server, a counting server, a verification program, and a bulletin board; the authentication center verifies the identity of a user, generates an identity ID for each legitimate user and enters it The client verifies its identity to the authentication center, receives the ID signature, encrypts the ballot, and sends the ballot ciphertext and ID signature to the authentication server. The authentication server comprises two servers, which together verify and homomorphize the validity of the ballot. The counting server decrypts part of the homomorphic counting ciphertext and publishes it on the bulletin board. The verification program verifies that the counting server has counted the tickets correctly. The invention system and its implementation method can effectively resist the attack of a quantum computer and have high operation efficiency.

【技术实现步骤摘要】
一种可验证的后量子电子投票系统及其实现方法
本专利技术涉及信息安全
,特别涉及一种可验证的后量子电子投票系统及其实现方法。
技术介绍
随着信息技术的飞速发展与普及,越来越多的需求能够通过互联网来实现,其中一项就是网络投票。有数据表明,网络投票的方便快捷,能够提高民众的积极性与参与度,在一定程度上有利于促进民主化进程。除此之外,网络投票还具有成本低、人为错误率低、记票效率高等优点,已渐渐为人们所接受,部分国家和地区也正在尝试使用网络投票系统进行一些选举。网络投票在给人们带来极大便利的同时,也面临着诸多挑战。随着人们权利意识的不断提高,如何通过密码学的技术来保护用户的隐私、如何在加密的状态下对选票内容的合法性进行验证以及如何保证计票结果的正确性都是需要解决的日益严峻的问题。另一方面,量子计算机的出现,引发了人们对传统密码学方案安全性深深的担忧。在这样的背景下,后量子密码学应运而生,而基于格理论的密码学(格密码)是后量子密码的一个很好的备选方案。其中,基于LWE的密码系统可以被规约到最坏情况下的格问题,是可证明安全的,并且拥有相对较高的性能,因此成为了研究的重点。而现有的网络投票方案本文档来自技高网...

【技术保护点】
1.一种可验证的后量子电子投票系统,其特征在于,包括认证中心、用户端、验证服务器、计票服务器、验证程序、以及公告板;所述认证中心,用于对用户的身份进行验证,为每一位合法的用户生成身份ID并对其进行签名;所述认证中心包括身份ID生成模块和签名模块,并设有签名用的公私钥对;所述用户端,向认证中心证明自己的身份,接收身份ID签名,对自己的选票进行加密,并将选票密文与身份ID签名发送给验证服务器;所述用户端包括选票明文生成模块和加密模块;当开始进行投票时,用户首先将自身的身份凭证发送给所述认证中心,认证通过之后得到自己的身份ID签名;之后用所述加密模块对自己的选票内容使用算法进行加密,再将加密后的选票...

【技术特征摘要】
1.一种可验证的后量子电子投票系统,其特征在于,包括认证中心、用户端、验证服务器、计票服务器、验证程序、以及公告板;所述认证中心,用于对用户的身份进行验证,为每一位合法的用户生成身份ID并对其进行签名;所述认证中心包括身份ID生成模块和签名模块,并设有签名用的公私钥对;所述用户端,向认证中心证明自己的身份,接收身份ID签名,对自己的选票进行加密,并将选票密文与身份ID签名发送给验证服务器;所述用户端包括选票明文生成模块和加密模块;当开始进行投票时,用户首先将自身的身份凭证发送给所述认证中心,认证通过之后得到自己的身份ID签名;之后用所述加密模块对自己的选票内容使用算法进行加密,再将加密后的选票内容连同自己的身份ID签名一起发送给验证服务器;所述验证服务器,包括两台服务器:验证服务器A和验证服务器B,所述两台服务器相互交互,共同完成对选票合法性的验证和同态计票工作;所述验证服务器A包括签名验证模块、合法性验证模块A和同态计票模块;验证服务器B包括合法性验证模块B和存储系统私钥的第一可信存储模块;所述计票服务器,用于对部分同态计票密文进行解密,并将解密结果发布在公告板上;在投票结束之后,计票服务器还将接受验证程序的验证请求;所述计票服务器包括解密模块、验证响应模块和存储系统私钥的第二可信存储模块;所述验证程序,用于验证计票服务器是否进行了正确计票,即对部分同态计票的密文结果进行了正确的解密;所述验证程序包括加密模块和同态运算模块;所述公告板,用于发布部分同态计票密文和部分同态计票结果。2.根据权利要求1所述的可验证的后量子电子投票系统,其特征在于,所述合法性验证模块A,用于选票合法性验证的预处理阶段,该模块包含两个部件:随机向量生成部件和密文位累加部件;其中随机向量生成部件用于生成一个由随机数组成的向量;密文位累加部件用于对选票的密文进行按位同态累加以及随机化同态累加操作;在完成对选票密文的预处理阶段之后,再将处理后的中间数据发送给验证服务器B;此外,所述合法性验证模块A在得到验证服务器B返回的最终验证结果之后,将通过验证的选票传给同态计票模块,而没有通过验证的选票将会被丢弃,同时该选票对应的身份ID签名会被记录到黑名单中;所述同态计票模块用于对一组固定数量的合法选票进行同态加法运算,并将运算结果发送给公告板进行显示。3.根据权利要求1所述的可验证的后量子电子投票系统,其特征在于,所述系统的加密和解密选用LWE算法进行处理;所述合法性验证模块B包括一个解密部件,该解密部件用于对合法性验证模块A发过来的数据进行解密;所述验证程序的同态运算模块还包含一个随机数生成部件,该随机数生成部件用于生成随机数。4.根据权利要求1所述的可验证的后量子电子投票系统的投票方法,其特征在于,包括下述步骤:S1、系统初始化步骤,该步骤具体为:S11、选择并生成公共参数;S12、根据公共参数,生成签名所用的公私钥对和系统公私钥对;S13、认证中心生成所有合法选民的身份信息;S14、选民获得系统公钥,计票服务器与验证服务器B共享系统私钥,验证服务器A获得签名公钥;S15、验证服务器B生成一个压缩后的系统私钥;S2、选民注册步骤,该步骤具体为:S21、向认证中心发送自己的身份信息;S22、认证中心对收到的用户身份信息进行验证,对验证通过的用户分配身份ID;S23、认证中心使用签名私钥对身份ID进行签名;S24、用户接收身份ID签名;S3、用户投票步骤,该步骤具体为:S31、用户做出自己的投票选择,生成选票明文;S32、使用系统公钥对自己的选择进行加密;S33、将选票密文与身份ID签名封装成选票,发送给验证服务器A;S4、身份验证步骤,该步骤具体为:S41、验证服务器A使用签名公钥对用户发送过来的身份ID签名进行验证;S42、若验证通过,则进行选票合法性验证,若验证不通过,则将该选票直接丢弃;S5、选票合法性验证步骤,该步骤具体为:S51、验证服务器A调用随机向量生成部件生成一个随机向量;S52、对选票进行预处理:验证服务器A调用密文位累加部件对选票的密文进行按位同态累加以及随机化同态累加操作;S53、将经过预处理后的数据发送给验证服务器B;S54、验证服务器B收到验证服务器A发来的数据之后,利用这些数据进行一次常规解密与随机化解密,并对解密结果进行判断;S55、将判断结果返回给验证服务器A;S56、验证服务器A根据验证服务器B返回的验证结果对选票进行处理;若验证通过,则进行下一步的计票工作;若验证不通过,则将该选票丢弃,并将对应的身份ID签名放入黑名单中;S6、部分同态计票步骤,该步骤具体为:S61、验证服务器A根据系统生成的参数,对一组固定数量的合法选票进行同态加法运算,并将生成的部分同态计票密文发送给计票服务器进行解密,同时发送给公告板进行公示;S62、将已经进行过部分同态计票的单张选票删除,以进一步保护用户的隐私;S63、重复步骤S61和步骤S62直到投票过程结束;S7、计票步骤,该步骤具体为:S71、计票服务器收到部分同态计票密文之后,使用第二可信存储模块中的私钥对其进行解密,并将结果发送给公告板进行公示,在解密的时候,通过纠错码机制来降低LWE算法解密中引入的误差;S72、对每一组部分同态计票结果进行累加,公布最终投票结果;S8、计票结果验证步骤,该步骤具体为:S81、验证程序从公告板上读取部分同态计票结果,并使用系统公钥对其进行加密,之后将加密结果传递给同态运算模块;S82、同态运算模块读取公告板上发布的部分同态计票密文,并将接收到的加密结果与上述密文进行同态相减运算,并将运算结果发送给计票服务器;S83、读取计票服务器返回的解密结果并进行第一步验证,所述第一步验证为判断该解密结果是否为0;S84、若第一步验证通过,则进行第二步验证:调用同态运算模块中的随机数生成部件生成随机数,并将该随机数与步骤S82中同态相减运算的结果进行处理之后再次发送给计票服务器,读取计票服务器返回的结果并进行验证;S85、若第二步验证通过,则初步判定计票结果正确;S86、根据本次投票的安全性需求,对每一组选票进行多轮验证,即反复执行步骤S81~S85;S87、对每一组部分同态计票密文和部分同态计票结果都进行步骤S81~步骤S86,直到每一组都验证完成。5.根据权利要求4所述的可验证的后量子电子投票系统的实现方法,其特征在于,所述系统初始化步骤S1中,各分步骤具体为:S11、选择并生成公共参数:选择LWE加密系统参数n、l、q、α、以及同态计票上限VHommax,其中n是LWE加密系统的安全参数;l是选票明文字符串的长度,代表候选人的数量;q表示模数,由于同态...

【专利技术属性】
技术研发人员:吴宸唐韶华
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1