【技术实现步骤摘要】
一种基于理想格的区块链匿名投票技术
[0001]本专利技术涉及一种基于理想格的区块链匿名投票技术,属于区块链隐私保护
技术介绍
[0002]随着互联网技术的发展,电子投票系统在实际场景中有着广泛的应用。电子匿名投票系统需要满足7个标准,分别是合法性、唯一性、匿名性、公正性、完整性、准确性和可验证性。然而,这7个标准很难同时实现甚至是相互矛盾,比如公开透明和匿名性。此外,传统的电子投票需要第三方可信管理机构。因此,投票的真实性依赖于中心化机构的可信真实性。
[0003]为了解决传统的电子投票依赖可信第三方的技术问题,在区块链上部署依靠智能合约的匿名电子投票系统逐渐受到关注。智能合约可以视作一个公正的第三方机构来进行投票项目的项目管理。区块链技术因其具有去中心化和去信任的特性,可以实现电子投票在不需要可信第三方的情况下实现的公开可验证。然而,随着量子计算机的发展,以传统密码学为基础的区块链系统受到了威胁。因此,基于区块链的匿名投票系统也面临隐私泄露的问题。
[0004]综上所述,为了解决在量子环境下基于区块链匿名投票的隐私安全性问题,必须寻找一种抗量子安全的基于区块链的匿名投票技术。
技术实现思路
[0005]本专利技术的目的是针对现有的电子投票系统存在依赖可信第三方、不抗量子攻击等缺陷,为解决在量子环境下基于区块链匿名投票的隐私安全性问题,创造性地提出一种基于理想格的区块链匿名投票技术。本专利技术采用基于理想格的环签名技术,使其与区块链中的匿名投票应用场景进行结合。
[ ...
【技术保护点】
【技术特征摘要】
1.一种基于理想格的区块链匿名投票技术,其特征在于,包括以下步骤:步骤1:投票项目注册;用户对投票项目进行初始化,注册投票项目信息,智能合约对项目信息产生相关安全参数;步骤2:投票者登记;参与投票的用户根据链上的申请投票项目信息,在区块链登记相关的个人信息;智能合约生成一个投票者的唯一标识;步骤3:投票准备;获得唯一标识的投票者在投票前,要进行必要的准备工作,包括获得若干个投票者的公钥,以及投票项目的相关信息;步骤4:投票;投票者采用同态加密将投票内容进行加密,采用基于理想格的环签名技术对加密的投票内容进行签名;步骤5:计票准备;智能合约收集区块链上的选票,进行投票者唯一标识和环签名的认证,对加密的投票内容进行同态相加;步骤6:计票验证;智能合约公开同态加密私钥,使用解密算法对区块链中每条投票信息进行解密得到每个投票结果,对于总的投票结果进行解密得到总投票结果;区块链中的任何用户均自能够行计算每张选票的结果来与投票结果进行验证。2.如权利要求1所述的一种基于理想格的区块链匿名投票技术,其特征在于,步骤1包括以下步骤:步骤1.1:用户向智能合约发起注册请求,并提供项目信息,包括候选者列表(c1,c2,...c
n
)、投票规则、时间节点,其中c
n
表示第n个候选者,时间节点包括公开注册时间Tc和公开投票时间Tv;步骤1.2:智能合约接收生成专属于此项目的公私钥对(IDsk,IDpk),保留公钥IDpk,将私钥IDsk和相关项目信息公示到区块链中,相关项目信息包括候选者列表、投票规则、时间节点;步骤2包括以下步骤:步骤2.1:参与投票的区块链用户在公开注册时间内,向智能合约提交注册申请;步骤2.2:智能合约收到投票者的注册申请之后,产生投票者的公私钥对(usk,upk),其中usk为投票者的私钥,upk为投票者的公钥;步骤2.3:智能合约使用项目公钥IDpk、投票者公钥upk和随机数r,生成一个唯一的标识token作为投票者的唯一标识;步骤2.4:智能合约将产生的投票者的私钥和投票者唯一标识token,通过可信信道发送给投票者;步骤3包括以下步骤:步骤3.1:投票者在投票前,在区块链中选择k个参与投票项目ID的投票者的公钥upk,k个参与项目ID投票者作为环签名的诱饵用户,k≥2;
步骤3.2:投票者在区块链中获得项目相关信息,包括项目ID的候选人列表(c1,c2,...c
n
)、时间节点中的公开投票时间Tv和投票规则;步骤4包括以下步骤:步骤4.1:投票者按照项目ID的投票规则对,生成投票内容M;步骤4.2:投票者使用同态加密对投票内容M进行加密,得到加密的投票内容ME;步骤4.3:投票者对加密投票内容ME进行环签名;本方法中,使用基于理想格的环签名方式;步骤4.4:投票者将加密后的消息ME、环签名e、项目标识、时间戳和投票者唯一标识token,一起公开到区块链上;步骤5包括以下步骤:步骤5.1:对投票者唯一标识token进行验证,只记录每个token对应的第一次投票;区块链的任何用户,都能够验证投票者的环签名的有效性;步骤5.2:验证投票之后,将投票的消息进行同态相加。3.如权利要求2所述的一种基于理想格的区块链匿名投票技术,其特征在于,步骤1中,产生项目公私钥对(IDsk,IDpk)的过程如下:令主密钥生成Setup(1
n
);输入包括:模q多项式商环上的n*m矩阵A,模q多项式商环上的可逆n*n矩阵H,高斯分布D,q、n、m均是正整数;输出包括:项目公钥IDpk=A和项目私钥IDpk=R,其中,是校验矩阵,R是陷门,表示随机选取的矩阵,A1表示理想格对应的格点HG
‑
AR,表示模q的整数组成的n
×
m的矩阵集合;首先,根据高斯分布D随机选择一个陷门矩阵然后,计算之后,输出项目公钥IDpk=A和项目私钥IDsk=R。4.如权利要求2所述的一种基于理想格的区块链匿名投票技术,其特征在于,步骤2中,产生投票者的公私钥对(upk,usk)的具体过程如下:投票者公私钥产生算法Extract(id
i
,msk),其中:输入包括:token对应的随机数序号id
i
,投票项目主密钥IDsk;输出包括:派生的公私钥和usk
i
...
【专利技术属性】
技术研发人员:盖珂珂,王烁,周博涵,蒋芃,徐蕾,祝烈煌,
申请(专利权)人:北京理工大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。