(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210600398.7
(22)申请日 2022.05.29
(71)申请人 北京理工大 学
地址 100081 北京市海淀区中关村南大街5
号
(72)发明人 盖珂珂 王烁 周博涵 蒋芃
徐蕾 祝烈煌
(74)专利代理 机构 北京正阳理工知识产权代理
事务所(普通 合伙) 11639
专利代理师 王松
(51)Int.Cl.
H04L 9/32(2006.01)
H04L 9/40(2022.01)
H04L 67/1095(2022.01)
H04L 67/1097(2022.01)
(54)发明名称
一种基于理想格的区块链匿名投票 技术
(57)摘要
本发明涉及一种基于理想格的区块链匿名
投票技术, 属于区块链隐私保护技术领域。 本发
明针对现有的电子投票系统存在依赖可信第三
方、 不抗量子攻击等缺陷, 为解决在量子环境下
基于区块链匿名投票的隐私安全性问题, 采用基
于理想格陷门的环签名技术, 在能够抵抗量子计
算攻击的同时可以缩小签名的长度和签名的效
率。 本发明对投票的内容进行了加密, 保护了公
开在链上的选票的内容, 避免投票结果被提前获
知。 同时, 不需要依赖可信的第三方进行票数统
计, 所有用户都可 以进行验票, 可 以无争议地达
成共识。
权利要求书4页 说明书6页 附图1页
CN 115174092 A
2022.10.11
CN 115174092 A
1.一种基于理想格的区块链匿名投票 技术, 其特征在于, 包括以下步骤:
步骤1: 投票项目注 册;
用户对投票项目进行初始化, 注册投票项目信息, 智能合约对项目信息产生相关安全
参数;
步骤2: 投票 者登记;
参与投票的用户根据链上的申请投票项目信息, 在区块链登记相关的个人信息; 智能
合约生成一个投票 者的唯一标识;
步骤3: 投票 准备;
获得唯一标识 的投票者在投票前, 要进行必要的准备工作, 包括获得若干个投票者的
公钥, 以及投票项目的相关信息;
步骤4: 投票;
投票者采用同态加密将投票内容进行加密, 采用基于理想格的环签名技术对加密的投
票内容进行签名;
步骤5: 计票 准备;
智能合约收集区块链上的选票, 进行投票者唯一标识和环签名的认证, 对加密的投票
内容进行同态相加;
步骤6: 计票验证;
智能合约公开同态加密私钥, 使用解密算法对区块链中每条投票信 息进行解密得到每
个投票结果, 对于总的投票结果进行解密得到总投票结果;
区块链中的任何用户均自能够行计算每张选票的结果 来与投票结果进行验证。
2.如权利要求1所述的一种基于理想格的区块链匿名投票技术, 其特征在于, 步骤1包
括以下步骤:
步骤1.1: 用户向智能合约发起注册请求, 并提供项目信息, 包括候选者列表( c1,c2,
...cn)、 投票规则、 时间节点, 其中cn表示第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;权 利 要 求 书 1/4 页
2
CN 115174092 A
2步骤3.2: 投票者在区块链中获得项目相关信息, 包括项目ID的候选人列表(c1,c2,
...cn)、 时间节点中的公开投票时间Tv和投票 规则;
步骤4包括以下步骤:
步骤4.1: 投票 者按照项目ID的投票 规则对, 生成投票内容M;
步骤4.2: 投票 者使用同态加密对投票内容M进行加密, 得到加密的投票内容M E;
步骤4.3: 投票 者对加密投票内容M E进行环签名;
本方法中, 使用基于理想格的环签名方式;
步骤4.4: 投票者将加密后的消息ME、 环签名e、 项目标识、 时间戳和投票者唯一标识
token, 一起公开到区块链上;
步骤5包括以下步骤:
步骤5.1: 对投票 者唯一标识 token进行验证, 只记录每 个token对应的第一次投票;
区块链的任何用户, 都能够验证投票 者的环签名的有效性;
步骤5.2: 验证投票之后, 将投票的消息进行同态相加。
3.如权利要求2所述的一种基于理想格的区块链匿名投票技术, 其特征在于, 步骤1中,
产生项目公私钥对(IDsk, IDpk)的过程如下:
令主密钥生成Setup(1n);
输入包括: 模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(idi, msk), 其中:
输入包括: token对应的随机数序号 idi, 投票项目主密钥IDsk;
输出包括: 派生的公私钥
和uski;
首先, 安全哈希函数H1计算Qi=H1(idi), Qi表示用户idi的token的哈希值, 设公钥upki
矩阵
k表示正整数; A为模q多 项式商环上的n*m矩阵;
之后, 使用陷门派生算法DelTr ap(A, Qi, R, σ2)采样得到Ai对应的陷门矩阵Ri, σ2为高斯
参数;
从t=1到t=n, 取q*In矩阵的第t行ut, ut表示理想格中的一个 行元素; 使用SampleD(Ai,
Ri,Inut, σ )算法采样得到
满足Aisi=qInmod2q, si表示数据元素为模q的维数权 利 要 求 书 2/4 页
3
CN 115174092 A
3
专利 一种基于理想格的区块链匿名投票技术
文档预览
中文文档
12 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共12页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 08:15:21上传分享