(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210914974.5
(22)申请日 2022.08.01
(71)申请人 湖北工业大 学
地址 430068 湖北省武汉市洪山区南李路
28号
申请人 湖北微源 卓越科技有限公司
(72)发明人 沈华 李博轮 刘锋 张明武
(74)专利代理 机构 武汉科皓知识产权代理事务
所(特殊普通 合伙) 42222
专利代理师 肖明洲
(51)Int.Cl.
H04L 9/30(2006.01)
H04L 9/32(2006.01)
H04L 67/02(2022.01)
G07C 13/00(2006.01)
(54)发明名称
可监管恶意投票的区块链时间锁加密电子
投票系统及方法
(57)摘要
本发明公开了一种可监管恶意投票的区块
链时间锁加密电子投票系统及方法, 系统包括投
票者User A、 投票者客户端Client A、 监管机构
RA、 系统管理者Admin、 Web服务器和Fabric区块
链网络; 方法包括系统初始化、 用户注册、 投票、
监票、 查票、 计票; 本发 明通过投票者设置的访问
策略实现了对监管机构中监管者的细粒度数据
访问控制, 解决了传统加密方案在监管和溯源时
存在的密钥分发问题。 本发明能保证投票发起人
得到公平公正的投票结果, 并且 可进行投票数据
实时监管, 在监管机构评估到有恶意投票行为时
可及时停止投票以减少时间开销和计算开销, 能
够促进电子投票系统的稳定运行, 具有很好的实
用性。
权利要求书3页 说明书9页 附图6页
CN 115473642 A
2022.12.13
CN 115473642 A
1.一种可监管恶意投票的区块链时间锁加密电子投票系统, 其特征在于: 包括投票者
User A、 投票者客户端Client A、 监管机构 RA、 系统管理者Admin、 Web服务器和Fabric区块
链网络; 所述Fabric 区块链网络中的颁发证书机构Fabric ‑CA作为可信的第三方颁发证书
机构;
所述投票 者User A, 利用所述投票 客户端Cl ient A参加投票;
所述监管机构RA, 包括监管者User B和监管客户端Client B, 用于对投票者User A的
投票行为进行监管以避免恶意投票行为的发生;
所述系统管理者Admin用于部署投票者客户端和智能合约, 每次进行投票活动开始前,
设定投票者名单、 投票主题、 投票选择候选项、 椭圆曲线参数; 其中, 所述智能合约, 用于操
作账本实现数据存 储和提取, 实现功能业 务逻辑;
所述Web服务器, 用于处 理投票者User A通过投票 者客户端发出的请求;
所述Fabric区块链网络, 是基于Fabric的具有管理权限的区块链网络; 其中, 所述
Fabric提供了Fabric SDK两种接口模块, 分别是访问颁发证书机构Fabairc ‑CA接口和访问
区块链网络接口, 前者主要负责整个网络的节点准入机制、 分发证书、 交易的数字签名以及
验证功能, 后者实现智能合约功能的调用。
2.一种可监管恶意投票的区块链时间锁加密电子投票方法, 其特征在于, 包括以下步
骤:
步骤1: 系统初始化;
智能合约生成主密钥MK、 系统公钥PK, 区块链地址; 系统管理者Admin设置投票主题和
投票候选项、 投票结果预计公布时间T; 根据设置的投票结果预计公布时间T, 系统管理者
Admin选择合适阶数的椭圆 曲线E使得必须花费设置时间T这么长的时间才能解决该椭圆 曲
线E上的离散对数问题, 以实现在设置时间T之后才能公布投票结果, 并将对应的时间锁加
密解密函数部署在智能合约上;
智能合约设定连接序列功能函数, 用于连接投票者User A发送到智能合约上的密钥相
关序列; 智能合约设定哈希函 数He: {0,1}n*—>E, 用于将一个01串映射为椭圆曲线上的一个
点;
系统管理者Admi n部署基于 CP‑ABE属性加密解密功能函数在智能合约上;
步骤2: 用户注 册, 包括投票 者User A注册和监管者UserB注 册;
系统为每个注册用户生成唯一的公钥、 私钥以及区块链地址, 分别作用于投票数据加
密、 数字签名以及投票记录追溯,
投票者User A根据监管者User B的属性设置访问控制策略PA, 用于后续步骤中监管机
构RA对投票 者User A的投票行为的监管;
步骤3: 投票;
投票者User A投票完成后, 得到相应的投票数据; 投票者的投票数据进行属性加密并
上链存储, 得到密文CTA(ABE), 并将密文作为交易的负载形式Tx(CTA(ABE))发送至区块链网络;
投票者的投票数据进行时间锁加密, 得到密文CTA(TimeClock), 在设置时间T内进行投票数据保
护; 投票者User A通过投票者客户端Client A对密文CTA(TimeClock)进行签名后发送到区块链
网络中, 网络节点对发送的交易和签名进行验证, 并将包含加密投票数据CTA(TimeClock)的合
法交易添加到区块链账本中;权 利 要 求 书 1/3 页
2
CN 115473642 A
2步骤4: 监 票;
投票数据密文CTA(ABE)交易的区块上链时, 整个相应通道的节点 需要对上链区块进行同
步; 在其通道的节点监管者User B通过监管客户端Client B请求区块链网络中包含User A
投票数据密文CTA(ABE)的信息来对投票 者User A的投票行为进行监 督;
步骤5: 查 票;
经过时间TU, 投票者User A通过投票客户端Client A使用查询投票功能, 若TU<T, 则无
法查询到投票结果, 返 回查询失败; 若TU≥T, 则时间锁已打开, 智能合约调用解密功能函数
已获得相应投票数据, 智能合约向投票 者User A返回相应的投票数据, 查询成功;
步骤6: 计票;
智能合约对解密得到的各投票者的投票数据按候选项进行累加统计; 智能合约将统计
结果储存和发布在区块链上, 公布候选项对应的投票结果。
3.根据权利要求2所述的可监管恶意投票的区块链时间锁加密电子投票方法, 其特征
在于, 步骤2的具体实现包括以下子步骤:
步骤2.1: 监管者User B通过监管客户端Client B发送用户证书请求至Fab ric‑CA以申
请证书; 监管者User B的用户证书请求包含监管者User B的属性以及监管者User B的公私
钥对(UPKB,USKB); 颁发证书机构Fabric ‑CA为公私钥对(UPKB,USKB)生成相应的证书UcertB, 并计
算证书UcertB的签名
颁发证书机构Fabric ‑CA还根据监管者User B提供的属性为其生
成属性私钥BSK, 并利用监管者User B的公钥UPKB对生成的属性私钥BSK进行加密得到密文
CTBSK, 颁发证书机构Fabric ‑CA将
返回给监管者User B;
步骤2.2: 投票者User A通过投票客户端Client A发送用户证书请求至颁发证书机构
Fabric‑CA以申请证书; 投票者User A的用户证书请求包含投票者User A的公私钥对(UPKA,
USKA), 颁发证书机构Fabric ‑CA为(UPKA,USKA)生成相应的证书UcertA, 并计算证书UcertA的签名
颁发证书机构Fabric ‑CA将
返回给投票 者User A。
4.根据权利要求2所述的可监管恶意投票的区块链时间锁加密电子投票方法, 其特征
在于, 步骤3中所述投票者的投票数据进行属性加密并上链存储, 具体实现包括以下子步
骤:
(1)投票者User A通过投票客户端Client A调用智能合约中的属性加密功能函数对其
投票数据MA进行加密, 得到密文CTA(ABE), 并将密文作为交易的负载形式Tx(CTA(ABE))发送至
区块链网络;
(2)区块链网络接收到投票者User A提交的Tx(CTA(ABE)), 区块链网络按照交易提案发
送给背书节点, 对Tx(CTA(ABE))进行背书, 背书节点主要对交易提案的格式、 重复性、 签名以
及交易提交者权限进行验证, 然后模拟执行交易并生成背书响应返回给投票者User A, 当
投票者客户端Client A收到足够的背书响应时, 投票者客户端Client A将密文交易Tx(CTA
(ABE))封装生成Envel ope发送至排序节点进行排序;
(3)排序节点完成排序后生成区块BlockA, 并将其发送 至特定通道以分发给其中的所有
主节点, 由主节点进 行组织内的区块同步, 最 终收到交易后各节点验证交易内容和签名, 将
合法的交易添加到区块链账本中, 完成加密投票数据的上链储存, 等待监管机构RA中的监
管者User B进行访问监管; 所述特定通道为 监管机构RA中包 含的所有监管者所在的通道。
5.根据权利要求2所述的可监管恶意投票的区块链时间锁加密电子投票方法, 其特征权 利 要 求 书 2/3 页
3
CN 115473642 A
3
专利 可监管恶意投票的区块链时间锁加密电子投票系统及方法
文档预览
中文文档
19 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共19页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-03-03 12:16:22上传分享