基于区块链的电子投票方法、系统、设备及存储介质.pdf

上传人:王** 文档编号:10494549 上传时间:2021-06-22 格式:PDF 页数:17 大小:796.44KB
收藏 版权申诉 举报 下载
基于区块链的电子投票方法、系统、设备及存储介质.pdf_第1页
第1页 / 共17页
基于区块链的电子投票方法、系统、设备及存储介质.pdf_第2页
第2页 / 共17页
基于区块链的电子投票方法、系统、设备及存储介质.pdf_第3页
第3页 / 共17页
文档描述:

《基于区块链的电子投票方法、系统、设备及存储介质.pdf》由会员分享,可在线阅读,更多相关《基于区块链的电子投票方法、系统、设备及存储介质.pdf(17页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010475332.0 (22)申请日 2020.05.29 (71)申请人 深圳市网心科技有限公司 地址 518052 广东省深圳市前海深港合作 区前湾一路1号A栋201室 (入驻深圳市 前海商务秘书有限公司) (72)发明人 李武璐王泳璨陈磊来鑫 (74)专利代理机构 深圳市深佳知识产权代理事 务所(普通合伙) 44285 代理人 夏欢 (51)Int.Cl. G07C 13/00(2006.01) H04L 9/32(2006.01) (54)发明名称 一种基于区块链。

2、的电子投票方法、 系统、 设 备及存储介质 (57)摘要 本申请公开了一种基于区块链的电子投票 方法、 系统、 设备及存储介质。 由于可链接环签名 公钥集合中包含有区块链系统中一定数量的投 票端的本地公钥, 因此无法通过投票结果推断出 实际的投票端身份, 确保了投票端的身份隐私, 实现了无记名投票的功能, 另外, 由于投票标签 与投票端的本地私钥唯一对应, 因此能够作为标 识投票端的投票行为具有唯一性的标志, 能够避 免相同投票端多次投票的情况发生, 并且无法通 过投票标签定位到投票人身份, 进而保障了投票 过程中投票端投票行为的可靠性。 此外, 本申请 还提供一种基于区块链的电子投票系统、 。

3、设备及 存储介质, 有益效果同上所述。 权利要求书2页 说明书10页 附图4页 CN 111583498 A 2020.08.25 CN 111583498 A 1.一种基于区块链的电子投票方法, 其特征在于, 应用于区块链系统中的投票端, 包 括: 获取本地私钥; 基于所述本地私钥生成唯一对应的投票标签; 生成投票信息, 并利用所述本地私钥, 关于所述可链接环签名公钥集合, 对所述投票信 息和所述投票标签执行可链接环签名操作, 得到可链接环签名; 将包含有所述投票信息、 所述投票标签、 所述可链接环签名以及所述可链接环签名公 钥集合的投票结果公开至所述区块链系统, 以供所述区块链系统中的验证。

4、节点验证所述投 票结果的合法性。 2.根据权利要求1所述的基于区块链的电子投票方法, 其特征在于, 所述可链接环签名 公钥集合的生成过程包括: 获取与所述本地私钥对应的本地公钥, 并读取所述区块链系统中其它投票端的对应公 钥; 基于所述本地公钥与预设数量的所述其它公钥得到可链接环签名公钥集合。 3.根据权利要求2所述的基于区块链的电子投票方法, 其特征在于, 所述获取本地私 钥, 包括: 获取所述区块链系统中公开的系统参数, 基于所述系统参数生成所述本地私钥; 所述获取与所述本地私钥对应的本地公钥, 包括: 基于所述系统参数以及所述本地私钥生成所述本地公钥。 4.根据权利要求3所述的基于区块链。

5、的电子投票方法, 其特征在于, 所述获取所述区块 链系统中公开的系统参数, 基于所述系统参数生成所述本地私钥, 包括: 获取所述区块链系统中公开的椭圆曲线群; 在所述椭圆曲线群中获取第一系统参数以及所述第二系统参数; 将所述第二系统参数设置为所述本地私钥; 所述基于所述系统参数以及所述本地私钥生成所述本地公钥, 包括: 执行以所述第一系统参数为椭圆曲线的生成元, 并以所述第二系统参数为指数的幂运 算得到所述本地公钥。 5.根据权利要求2所述的基于区块链的电子投票方法, 其特征在于, 在所述获取与所述 本地私钥对应的本地公钥之后, 所述方法还包括: 将所述本地公钥公开至所述区块链系统; 所述读取。

6、所述区块链系统中其它投票端的对应公钥, 包括: 读取所述区块链系统中由其它投票端公开的对应公钥。 6.根据权利要求1至5任意一项所述的基于区块链的电子投票方法, 其特征在于, 所述 投票信息为明文投票信息。 7.一种基于区块链的电子投票方法, 其特征在于, 应用于区块链系统中的验证端, 包 括: 对区块链系统中投票端的投票结果进行遍历, 并对所述投票结果中的可链接环签名进 行合法性验证; 在所述可链接环签名已通过合法性验证的所述投票结果中过滤所述投票标签已出现 权利要求书 1/2 页 2 CN 111583498 A 2 于当前投票过程中的目标投票结果; 将过滤后的所述投票结果进行上链操作。 。

7、8.根据权利要求7所述的基于区块链的电子投票方法, 其特征在于, 所述在所述可链接 环签名已通过合法性验证的所述投票结果中过滤所述投票标签已出现于当前投票过程中 的目标投票结果, 包括: 判断所述投票结果中的所述投票标签是否已在本次投票中出现; 如果所述投票结果中的所述投票标签已在本次投票中出现, 则将所述投票结果设置为 非法选票, 并废除所述投票结果; 如果所述投票结果中的所述投票标签未在本次投票中出现, 则将所述投票结果设置为 过滤后的所述投票结果。 9.根据权利要求7所述的基于区块链的电子投票方法, 其特征在于, 所述对所述投票结 果中的可链接环签名进行合法性验证, 包括: 判断所述投票。

8、结果中的可链接环签名是否满足合法性标准; 如果所述投票结果中的可链接环签名满足合法性标准, 则将所述投票结果设置为所述 可链接环签名已通过合法性验证的所述投票结果; 如果所述投票结果中的可链接环签名不满足合法性标准, 则对所述投票结果设置为非 法选票, 并废除所述投票结果。 10.一种基于区块链的电子投票系统, 其特征在于, 包括: 投票端, 用于获取本地私钥; 基于所述本地私钥生成唯一对应的投票标签; 生成投票信 息, 并利用所述本地私钥, 关于所述可链接环签名公钥集合, 对所述投票信息和所述投票标 签执行可链接环签名操作, 得到可链接环签名; 将包含有所述投票信息、 所述投票标签、 所 述。

9、可链接环签名以及所述可链接环签名公钥集合的投票结果公开至所述区块链系统, 以供 所述区块链系统中的验证节点验证所述投票结果的合法性; 验证端, 用于对区块链系统中投票端的投票结果进行遍历, 并对所述投票结果中的可 链接环签名进行合法性验证; 在所述可链接环签名已通过合法性验证的所述投票结果中过 滤所述投票标签已出现于当前投票过程中的目标投票结果; 将过滤后的所述投票结果进行 上链操作。 11.一种基于区块链的电子投票设备, 其特征在于, 包括: 存储器, 用于存储计算机程序; 处理器, 用于执行所述计算机程序时实现如权利要求1至6任一项所述的基于区块链的 电子投票方法的步骤和/或实现如权利要求。

10、7至9任一项所述的基于区块链的电子投票方法 的步骤。 12.一种计算机可读存储介质, 其特征在于, 所述计算机可读存储介质上存储有计算机 程序, 所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的基于区块链的电 子投票方法的步骤和/或实现如权利要求7至9任一项所述的基于区块链的电子投票方法的 步骤。 权利要求书 2/2 页 3 CN 111583498 A 3 一种基于区块链的电子投票方法、 系统、 设备及存储介质 技术领域 0001 本申请涉及计算机通信安全领域, 特别是涉及一种基于区块链的电子投票方法、 系统、 设备及存储介质。 背景技术 0002 电子投票是以密码学原理为基础,。

11、 使用计算机、 互联网等技术代替传统的人工方 法实现的投票方式, 需要解决互联网环境下投票的合法性, 匿名性, 计票完整性, 不可重复 性, 不可伪造性和不可篡改性等安全问题。 0003 区块链具有去中心化、 不可篡改、 可验证的特性。 当前将投票端的选票数据记录在 区块链中, 可以保证数据的真实可靠性而不被篡改, 能在一定程度上保证投票结果的真实 性。 0004 对于区块链上的无记名投票, 一方面要保护投票端的身份隐私, 另一方面要保障 投票过程中投票端投票行为的可靠性, 即每个投票端只能投一票, 不能多次投票, 这是设计 隐私投票的研究重点和难点。 0005 由此可见, 提供一种基于区块链。

12、的电子投票方法, 以在确保投票端身份隐私的同 时, 保障投票过程中投票端投票行为的可靠性, 是本领域技术人员需要解决的问题。 发明内容 0006 本申请的目的是提供一种基于区块链的电子投票方法、 系统、 设备及存储介质, 以 在确保投票端身份隐私的同时, 保障投票过程中投票端投票行为的可靠性。 0007 为解决上述技术问题, 本申请提供一种基于区块链的电子投票方法, 应用于区块 链系统中的投票端, 包括: 0008 获取本地私钥; 0009 基于本地私钥生成唯一对应的投票标签; 0010 生成投票信息, 并利用本地私钥, 关于可链接环签名公钥集合, 对投票信息和投票 标签执行可链接环签名操作,。

13、 得到可链接环签名; 0011 将包含有投票信息、 投票标签、 可链接环签名以及可链接环签名公钥集合的投票 结果公开至区块链系统, 以供区块链系统中的验证节点验证投票结果的合法性。 0012 优选地, 可链接环签名公钥集合的生成过程包括: 0013 获取与本地私钥对应的本地公钥, 并读取区块链系统中其它投票端的对应公钥; 0014 基于本地公钥与预设数量的其它公钥得到可链接环签名公钥集合。 0015 优选地, 获取本地私钥, 包括: 0016 获取区块链系统中公开的系统参数, 基于系统参数生成本地私钥; 0017 获取与本地私钥对应的本地公钥, 包括: 0018 基于系统参数以及本地私钥生成本。

14、地公钥。 0019 优选地, 获取区块链系统中公开的系统参数, 基于系统参数生成本地私钥, 包括: 说明书 1/10 页 4 CN 111583498 A 4 0020 获取区块链系统中公开的椭圆曲线群; 0021 在椭圆曲线群中获取第一系统参数以及第二系统参数; 0022 将第二系统参数设置为本地私钥; 0023 基于系统参数以及本地私钥生成本地公钥, 包括: 0024 执行以第一系统参数为椭圆曲线的生成元, 并以第二系统参数为指数的幂运算得 到本地公钥。 0025 优选地, 在获取与本地私钥对应的本地公钥之后, 方法还包括: 0026 将本地公钥公开至区块链系统; 0027 读取区块链系统。

15、中其它投票端的对应公钥, 包括: 0028 读取区块链系统中由其它投票端公开的对应公钥。 0029 优选地, 投票信息为明文投票信息。 0030 此外, 本申请还提供一种基于区块链的电子投票方法, 应用于区块链系统中的验 证端, 包括: 0031 对区块链系统中投票端的投票结果进行遍历, 并对投票结果中的可链接环签名进 行合法性验证; 0032 在可链接环签名已通过合法性验证的投票结果中过滤投票标签已出现于当前投 票过程中的目标投票结果; 0033 将过滤后的投票结果进行上链操作。 0034 优选地, 在可链接环签名已通过合法性验证的投票结果中过滤投票标签已出现于 当前投票过程中的目标投票结果。

16、, 包括: 0035 判断投票结果中的投票标签是否已在本次投票中出现; 0036 如果投票结果中的投票标签已在本次投票中出现, 则将投票结果设置为非法选 票, 并废除投票结果; 0037 如果投票结果中的投票标签未在本次投票中出现, 则将投票结果设置为过滤后的 投票结果。 0038 优选地, 对投票结果中的可链接环签名进行合法性验证, 包括: 0039 判断投票结果中的可链接环签名是否满足合法性标准; 0040 如果投票结果中的可链接环签名满足合法性标准, 则将投票结果设置为可链接环 签名已通过合法性验证的投票结果; 0041 如果投票结果中的可链接环签名不满足合法性标准, 则对投票结果设置为。

17、非法选 票, 并废除投票结果。 0042 此外, 本申请还提供一种基于区块链的电子投票系统, 包括: 0043 投票端, 用于获取本地私钥; 基于本地私钥生成唯一对应的投票标签; 生成投票信 息, 并利用本地私钥, 关于可链接环签名公钥集合, 对投票信息和投票标签执行可链接环签 名操作, 得到可链接环签名; 将包含有投票信息、 投票标签、 可链接环签名以及可链接环签 名公钥集合的投票结果公开至区块链系统, 以供区块链系统中的验证节点验证投票结果的 合法性; 0044 验证端, 用于对区块链系统中投票端的投票结果进行遍历, 并对投票结果中的可 链接环签名进行合法性验证; 在可链接环签名已通过合法。

18、性验证的投票结果中过滤投票标 说明书 2/10 页 5 CN 111583498 A 5 签已出现于当前投票过程中的目标投票结果; 将过滤后的投票结果进行上链操作。 0045 此外, 本申请还提供一种基于区块链的电子投票设备, 包括: 0046 存储器, 用于存储计算机程序; 0047 处理器, 用于执行计算机程序时实现如上述的基于区块链的电子投票方法的步 骤。 0048 此外, 本申请还提供一种计算机可读存储介质, 其特征在于, 计算机可读存储介质 上存储有计算机程序, 计算机程序被处理器执行时实现如上述的基于区块链的电子投票方 法的步骤。 0049 本申请所提供的基于区块链的电子投票方法,。

19、 由区块链系统中的投票端获取本地 私钥, 并基于本地私钥生成唯一对应的投票标签, 进而生成投票信息, 并利用本地私钥对投 票信息、 投票标签以及可链接环签名公钥集合共同执行可链接环签名操作, 得到可链接环 签名, 最终将包含有投票信息、 投票标签、 可链接环签名以及可链接环签名公钥集合的投票 结果公开至区块链系统, 进而区块链系统中的验证端, 对区块链系统中投票端的投票结果 进行遍历, 并对投票结果中的可链接环签名进行合法性验证, 并在可链接环签名已通过合 法性验证的投票结果中过滤投票标签已出现于当前投票过程中的目标投票结果, 进而将过 滤后的投票结果进行上链操作。 由于可链接环签名公钥集合中。

20、包含有区块链系统中一定数 量的投票端的本地公钥, 因此无法通过投票结果推断出实际的投票端身份, 确保了投票端 的身份隐私, 实现了无记名投票的功能, 另外, 由于投票标签与投票端的本地私钥唯一对 应, 因此能够作为标识投票端的投票行为具有唯一性的标志, 能够避免相同投票端多次投 票的情况发生, 并且无法通过投票标签定位到投票人身份, 进而保障了投票过程中投票端 投票行为的可靠性。 此外, 本申请还提供一种基于区块链的电子投票系统、 设备及存储介 质, 有益效果同上所述。 附图说明 0050 为了更清楚地说明本申请实施例, 下面将对实施例中所需要使用的附图做简单的 介绍, 显而易见地, 下面描述。

21、中的附图仅仅是本申请的一些实施例, 对于本领域普通技术人 员来讲, 在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。 0051 图1为本申请实施例提供的一种应用于区块链系统中的投票端的基于区块链的电 子投票方法的流程图; 0052 图2为本申请实施例提供的另一种应用于区块链系统中的投票端的基于区块链的 电子投票方法的流程图; 0053 图3为本申请实施例提供的另一种应用于区块链系统中的投票端的基于区块链的 电子投票方法的流程图; 0054 图4为本申请实施例提供的一种应用于区块链系统中的验证端的基于区块链的电 子投票方法的流程图; 0055 图5为本申请实施例提供的一种基于区块。

22、链的电子投票系统的结构示意图。 具体实施方式 0056 下面将结合本申请实施例中的附图, 对本申请实施例中的技术方案进行清楚、 完 说明书 3/10 页 6 CN 111583498 A 6 整地描述, 显然, 所描述的实施例仅仅是本申请一部分实施例, 而不是全部实施例。 基于本 申请中的实施例, 本领域普通技术人员在没有做出创造性劳动前提下, 所获得的所有其他 实施例, 都属于本申请保护范围。 0057 区块链具有去中心化、 不可篡改、 可验证的特性。 当前将投票端的选票数据记录在 区块链中, 可以保证数据的真实可靠性而不被篡改, 能在一定程度上保证投票结果的真实 性。 0058 对于区块链。

23、上的无记名投票, 一方面要保护投票端的身份隐私, 另一方面要保障 投票过程中投票端投票行为的可靠性, 即每个投票端只能投一票, 不能多次投票, 这是设计 隐私投票的研究重点和难点。 0059 本申请的核心是提供一种基于区块链的电子投票方法, 以在确保投票端身份隐私 的同时, 保障投票过程中投票端投票行为的可靠性。 本申请的另一核心是提供一种基于区 块链的电子投票系统、 设备及存储介质。 0060 为了使本技术领域的人员更好地理解本申请方案, 下面结合附图和具体实施方式 对本申请作进一步的详细说明。 0061 图1为本申请实施例提供的一种基于区块链的电子投票方法, 应用于区块链系统 中的投票端。。

24、 请参考图1, 基于区块链的电子投票方法的具体步骤包括: 0062 步骤S10: 获取本地私钥。 0063 步骤S11: 基于本地私钥生成唯一对应的投票标签。 0064 本步骤基于本地私钥SK生成唯一对应的投票标签I。 需要强调的是, 本步骤中投票 端生成的投票标签I唯一对应其本地私钥SK, 投票标签I能够唯一表征进行了电子投票操作 的投票端 0065 需要说明的是, 本实施例的执行主体为区块链系统中用于进行电子投票的投票 端, 投票端进行电子投票的本质是将记录有投票内容的投票信息公布指区块链系统中, 以 此通过区块链系统中的计票端对区块链系统中各投票端的投票信息进行统计, 并得到最终 的投票。

25、结果。 0066 步骤S12: 生成投票信息, 并利用本地私钥, 关于可链接环签名公钥集合, 对投票信 息和投票标签执行可链接环签名操作, 得到可链接环签名。 0067 在得到可链接环签名公钥集合以及投票标签之后, 本步骤进一步产生投票信息m, 即包含有投票内容的信息, 进而利用本地私钥对投票信息m、 投票标签I以及可链接环签名 公钥集合LPKPK1, ., PKn共同执行可链接环签名操作, 得到可链接环签名 RSIGN (SK; m, I, LPK), 因此区块链系统中的计票端即可根据可链接环签名验证执行此次电子投票 的投票端是否拥有合法的本地公钥, 并且能够根据投票标签验证投票端是否仅进行。

26、了一次 投票行为。 0068 步骤S13: 将包含有投票信息、 投票标签、 可链接环签名以及可链接环签名公钥集 合的投票结果公开至区块链系统, 以供区块链系统中的验证节点验证投票结果的合法性。 0069 在得到可链接环签名 RSIGN(SK; m, I, LPK)之后, 本步骤进一步将包含有投票信 息m、 投票标签I、 可链接环签名 RSIGN(SK; m, I, LPK)以及可链接环签名公钥集合LPK PK1, ., PKn的投票结果(m, I, , LPK)公开至区块链系统, 进而计票端能够在无法获悉投 票结果所属投票端的基础上, 基于投票结果中的可链接环签名对相应投票结果中的投票信 说明。

27、书 4/10 页 7 CN 111583498 A 7 息、 投票标签以及可链接环签名公钥集合进行校验, 并基于投票信息完成计票统计。 0070 本申请所提供的基于区块链的电子投票方法, 由区块链系统中的投票端获取本地 私钥, 并基于本地私钥生成唯一对应的投票标签, 进而生成投票信息, 并利用本地私钥对投 票信息、 投票标签以及可链接环签名公钥集合共同执行可链接环签名操作, 生成可链接环 签名, 最终将包含有投票信息、 投票标签、 可链接环签名以及可链接环签名公钥集合的投票 结果公开至区块链系统, 进而区块链系统中的计票端能够在区块链系统中获取由投票端公 开且可链接环签名满足合法签名标准的投票。

28、结果, 进而根据投票标签对投票结果中重复的 双重投票结果进行过滤, 并基于过滤后的投票结果中的选票信息进行计票统计, 得到计票 结果。 由于可链接环签名公钥集合中包含有区块链系统中一定数量的投票端的本地公钥, 因此无法通过投票结果推断出实际的投票端身份, 确保了投票端的身份隐私, 另外, 由于投 票标签与投票端的本地私钥唯一对应, 因此能够作为标识投票端的投票行为具有唯一性的 标志, 能够避免相同投票端多次投票的情况发生, 进而保障了投票过程中投票端投票行为 的可靠性。 0071 更进一步的, 可链接环签名公钥集合的生成过程包括: 0072 获取与本地私钥对应的本地公钥, 并读取区块链系统中其。

29、它投票端的其它公钥; 0073 基于本地公钥与预设数量的其它公钥得到可链接环签名公钥集合。 0074 本实施方式中的本地公钥以及本地私钥之间相互对应, 构成公私钥对, 即PK为本 地公钥, SK为本地私钥, (PK,SK)为公私钥对。 0075 本地公钥以及本地私钥SK可以是投票端仅针对于当前一次的电子投票操作而临 时生成的临时公钥以及临时私钥, 进而临时公钥以及临时私钥在执行当前一次的电子投票 操作结束后失效; 本地公钥以及本地私钥SK也可以是投票端在进行电子投票时长期使用的 公钥以及私钥, 在此不做具体限定。 需要说明的是, 本地公钥应在区块链系统中公开, 并由 区块链系统中的其它投票端获。

30、取到, 本地私钥SK由且仅由其所属的投票端保存。 0076 另外, 区块链系统中其它投票端的其它公钥指的是, 在区块链系统中除当前投票 端以外的其它投票端所具有的公钥。 0077 在投票端需要对投票信息进行签名操作, 生成供计票端进行投票合法性验证的签 名, 以此防止投票信息在公开至区块链系统之间遭到篡改, 从而确保电子投票的可靠性, 因 此本步骤中的本地私钥SK以及本地公钥用于在后续步骤中对投票信息进行签名。 0078 需要说明的是, 在获取本地公钥PK以及本地私钥SK, 并读取区块链系统中其它投 票端的其它公钥之后, 本实施方式进一步基于本地公钥与预设数量的其它公钥得到可链接 环签名公钥集。

31、合。 0079 投票端选取区块链系统中其他n-1个投票端的其它公钥, 并将包含自己在内的n个 公钥, 组成可链接环签名公钥集合LPKPK1,.,PKn。 0080 在上述实施例的基础上, 作为一种优选的实施方式, 获取本地私钥, 包括: 0081 获取区块链系统中公开的系统参数, 基于系统参数生成本地私钥; 0082 获取与本地私钥对应的本地公钥, 包括: 0083 基于系统参数以及本地私钥生成本地公钥。 0084 需要说明的是, 实施方式的重点在于, 区块链系统中的所有投票端的本地公钥以 及本地私钥均是基于区块链系统中公开的系统参数产生, 由于区块链系统能够相对灵活的 说明书 5/10 页 。

32、8 CN 111583498 A 8 生成其所公开的系统参数, 因此能够相对确保区块链系统中的一定数量的投票端的本地公 钥以及本地私钥在生成过程中的可控性, 进一步确保了区块链系统中各投票端的通过本地 公钥以及本地私钥进行电子投票的可靠性以及投票结果的整体准确性。 0085 图2为本申请实施例提供的一种基于区块链的电子投票方法, 应用于区块链系统 中的投票端。 请参考图2, 基于区块链的电子投票方法的具体步骤包括: 0086 步骤S20: 获取区块链系统中公开的椭圆曲线群。 0087 步骤S21: 在椭圆曲线群中获取第一系统参数以及第二系统参数。 0088 步骤S22: 将第二系统参数设置为本。

33、地私钥, 执行以第一系统参数为椭圆曲线的生 成元, 并以第二系统参数为指数的幂运算得到本地公钥。 0089 需要说明的是, 本实施例的重点在于, 基于区块链系统中公开的椭圆曲线群生成 本地公钥以及本地私钥, 椭圆曲线群是基于特定的椭圆曲线定义的一个群, 椭圆曲线群中 的元素是椭圆曲线上点的集合。 0090 本实施例可以具体是在椭圆曲线群(G,q)中选取第一系统参数gG以及第二系统 参数然后计算gxG作为本地公钥, 并将第二系统参数作为本地私钥, 即(PK, SK)(gx,x), 其中, PK为本地公钥, SK为本地私钥。 0091 步骤S23: 读取区块链系统中其它投票端的其它公钥。 0092。

34、 步骤S24: 基于本地公钥与预设数量的其它公钥得到可链接环签名公钥集合, 并基 于本地私钥生成唯一对应的投票标签。 0093 步骤S25: 生成投票信息, 并利用本地私钥, 关于可链接环签名公钥集合, 对投票信 息和投票标签执行可链接环签名操作, 得到可链接环签名。 0094 步骤S26: 将包含有投票信息、 投票标签、 可链接环签名以及可链接环签名公钥集 合的投票结果公开至区块链系统, 以供区块链系统中的验证节点验证投票结果的合法性。 0095 由于椭圆曲线具有多样的群结构以及多选择性, 因此本实施例基于椭圆曲线群生 成本地公钥以及本地私钥, 具有更高的加密安全性, 能够进一步确保基于区块。

35、链的电子投 票过程的可靠性。 0096 图3为本申请实施例提供的一种基于区块链的电子投票方法, 应用于区块链系统 中的投票端。 请参考图3, 基于区块链的电子投票方法的具体步骤包括: 0097 步骤S30: 获取本地私钥以及与本地私钥对应的本地公钥。 0098 步骤S31: 将本地公钥公开至区块链系统。 0099 需要说明的是, 本实施例的重点在于, 区块链系统中的投票端获取本地公钥以及 本地公钥对应的本地私钥之后, 进一步将本地公钥公开至区块链系统中, 目的是能够使区 块链系统中的其它投票端均能够在区块链系统中获取到当前投票端的本地公钥, 以此确保 投票端在区块链系统中的投票行为的透明性。 。

36、0100 步骤S32: 读取区块链系统中由其它投票端公开的其它公钥。 0101 由于区块链系统中的每一个投票端均将自身的本地公钥公开至区块链系统中, 因 此当前的投票端能够进一步在区块链系统中读取由其它投票端公开的其它公钥。 0102 步骤S33: 基于本地公钥与预设数量的其它公钥得到可链接环签名公钥集合, 并基 于本地私钥生成唯一对应的投票标签。 0103 步骤S34: 生成投票信息, 并利用本地私钥, 关于可链接环签名公钥集合, 对投票信 说明书 6/10 页 9 CN 111583498 A 9 息和投票标签执行可链接环签名操作, 得到可链接环签名。 0104 步骤S35: 将包含有投票。

37、信息、 投票标签、 可链接环签名以及可链接环签名公钥集 合的投票结果公开至区块链系统, 以供区块链系统中的验证节点验证投票结果的合法性。 0105 由于投票端的本地公钥能够表征该投票端在电子投票过程中的身份, 因此通过区 块链系统中投票端公开的本地公钥, 以及参与电子投票的投票端所公开的可链接环签名公 钥集合, 能够确保投票端参与投票的透明性, 进而进一步确保基于区块链的电子投票过程 的可靠性。 0106 在上述一系列实施方式的基础上, 作为一种优选的实施方式, 投票信息为明文投 票信息。 0107 需要说明的是, 由于区块链具有不可伪造、 不可虚构、 不可篡改的特点, 因此将包 含有明文投票。

38、信息的投票结果公开至区块链系统, 能够在不被篡改的基础上相对确保对于 投票信息的内容透明度, 进一步确保计票端根据投票标签对区块链系统中各投票端对应的 投票结果进行计票统计的可靠性。 0108 图4为本申请实施例提供的一种基于区块链的电子投票方法, 应用于区块链系统 中的验证端。 请参考图4, 基于区块链的电子投票方法的具体步骤包括: 0109 步骤S40: 对区块链系统中投票端的投票结果进行遍历, 并对投票结果中的可链接 环签名进行合法性验证。 0110 步骤S41: 在可链接环签名已通过合法性验证的投票结果中过滤投票标签已出现 于当前投票过程中的目标投票结果。 0111 步骤S42: 将过。

39、滤后的投票结果进行上链操作。 0112 需要说明的是, 本实施方式采用对投票结果进行遍历的方式, 判断遍历得到的目 标投票结果中投票标签是否存在于已遍历的投票结果中, 如果遍历得到的目标投票结果 中, 投票标签存在于已遍历的投票结果中, 则说明已经获取到该投票标签所属投票端的投 票结果, 因此不再获取该目标投票结果, 进而过滤该目标投票结果。 本实施例通过遍历投票 结果的方式去除重复的投票结果, 能够相对确保计票结果的准确性。 0113 本申请所提供的基于区块链的电子投票方法, 由区块链系统中的投票端获取本地 私钥, 并基于本地私钥生成唯一对应的投票标签, 进而生成投票信息, 并利用本地私钥对。

40、投 票信息、 投票标签以及可链接环签名公钥集合共同执行可链接环签名操作, 得到可链接环 签名, 最终将包含有投票信息、 投票标签、 可链接环签名以及可链接环签名公钥集合的投票 结果公开至区块链系统, 进而区块链系统中的验证端, 对区块链系统中投票端的投票结果 进行遍历, 并对投票结果中的可链接环签名进行合法性验证, 并在可链接环签名已通过合 法性验证的投票结果中过滤投票标签已出现于当前投票过程中的目标投票结果, 进而将过 滤后的投票结果进行上链操作。 由于可链接环签名公钥集合中包含有区块链系统中一定数 量的投票端的本地公钥, 因此无法通过投票结果推断出实际的投票端身份, 确保了投票端 的身份隐。

41、私, 实现了无记名投票的功能, 另外, 由于投票标签与投票端的本地私钥唯一对 应, 因此能够作为标识投票端的投票行为具有唯一性的标志, 能够避免相同投票端多次投 票的情况发生, 并且无法通过投票标签定位到投票人身份, 进而保障了投票过程中投票端 投票行为的可靠性。 0114 在上述实施例的基础上, 作为一种优选的实施方式, 在可链接环签名已通过合法 说明书 7/10 页 10 CN 111583498 A 10 性验证的投票结果中过滤投票标签已出现于当前投票过程中的目标投票结果, 包括: 0115 判断投票结果中的投票标签是否已在本次投票中出现; 0116 如果投票结果中的投票标签已在本次投票。

42、中出现, 则将投票结果设置为非法选 票, 并废除投票结果; 0117 如果投票结果中的投票标签未在本次投票中出现, 则将投票结果设置为过滤后的 投票结果。 0118 需要强调的是, 在可链接环签名已通过合法性验证的投票结果中, 进一步过滤投 票标签已出现于当前投票过程中的目标投票结果时, 具体可以是通过判断投票结果中的投 票标签是否已在本次投票中出现, 由于投票结果中的投票标签是由投票端中的本地私钥唯 一对应生成的, 因此投票标签能够唯一对应投票端, 当存在内容重复的投票标签, 即投票结 果中的投票标签是否已在本次投票中出现时, 则说明相同的投票端公开了一个以上数量的 投票结果, 因此将投票结。

43、果设置为非法选票, 并废除投票结果, 以此实现对投票标签已出现 于当前投票过程中的目标投票结果的过滤; 相反的, 如果投票结果中的投票标签未在本次 投票中出现, 则将投票结果设置为过滤后的投票结果, 以此进一步在后续步骤中对过滤后 的投票结果进行上链操作。 本实施方式进一步确保了投票结果的可靠性。 0119 此外, 作为一种优选的实施方式, 对投票结果中的可链接环签名进行合法性验证, 包括: 0120 判断投票结果中的可链接环签名是否满足合法性标准; 0121 如果投票结果中的可链接环签名满足合法性标准, 则将投票结果设置为可链接环 签名已通过合法性验证的投票结果; 0122 如果投票结果中的。

44、可链接环签名不满足合法性标准, 则对投票结果设置为非法选 票, 并废除投票结果。 0123 需要说明的是, 本实施方式具体通过判断投票结果中的可连接环签名是否满足合 法性标准的方式判定是否对投票结果进行过滤, 如果投票结果中的可链接环签名满足合法 性标准, 则将投票结果设置为可链接环签名已通过合法性验证的投票结果, 即对投票结果 进一步执行根据投票标签进行过滤的操作; 如果投票结果中的可链接环签名不满足合法性 标准, 则对投票结果设置为非法选票, 并废除投票结果, 以此实现对可链接环签名不满足合 法性标准的投票结果过滤。 本实施方式进一步确保了投票结果的可靠性。 0124 在上文中对于信息监控。

45、方法的实施例进行了详细的描述, 本申请还提供一种与该 方法对应的区块链设备, 由于区块链设备部分的实施例与方法部分的实施例相互对应, 区 块链设备部分的实施例请参见方法部分的实施例的描述, 这里暂不赘述。 0125 本申请实施例提供的一种基于区块链的电子投票设备, 包括存储器、 处理器和总 线, 存储器上存储有可由总线传输至处理器并在处理器上运行的信息监控程序, 信息监控 程序被处理器执行时实现如上述的基于区块链的电子投票方法。 0126 其中, 存储器至少包括一种类型的可读存储介质, 可读存储介质包括闪存、 硬盘、 多媒体卡、 卡型存储器(例如, SD或DX存储器等)、 磁性存储器、 磁盘、。

46、 光盘等。 存储器在一些 实施例中可以是区块链设备的内部存储单元, 例如该区块链设备的硬盘。 存储器在另一些 实施例中也可以是区块链设备的外部存储设备, 例如区块链设备上配备的插接式硬盘, 智 能存储卡(Smart Media Card,SMC), 安全数字(Secure Digital,SD)卡, 闪存卡(Flash 说明书 8/10 页 11 CN 111583498 A 11 Card)等。 进一步地, 存储器还可以既包括区块链设备的内部存储单元也包括外部存储设 备。 存储器不仅可以用于存储安装于区块链设备的应用软件及各类数据, 例如视频转码程 序的代码等, 还可以用于暂时地存储已经输出。

47、或者将要输出的数据。 0127 处理器在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、 控制器、 微控制器、 微处理器或其他数据处理芯片, 用于运行存储器中存储的程序代码或处 理数据, 例如执行视频转码程序等。 0128 该总线可以是外设部件互连标准(peripheral component interconnect, 简称 PCI)总线或扩展工业标准结构(extended industry standard architecture, 简称EISA) 总线等。 该总线可以分为地址总线、 数据总线、 控制总线等。 0129 本申请所提供的基于区块链的。

48、电子投票设备, 由区块链系统中的投票端获取本地 私钥, 并基于本地私钥生成唯一对应的投票标签, 进而生成投票信息, 并利用本地私钥对投 票信息、 投票标签以及可链接环签名公钥集合共同执行可链接环签名操作, 得到可链接环 签名, 最终将包含有投票信息、 投票标签、 可链接环签名以及可链接环签名公钥集合的投票 结果公开至区块链系统, 进而区块链系统中的验证端, 对区块链系统中投票端的投票结果 进行遍历, 并对投票结果中的可链接环签名进行合法性验证, 并在可链接环签名已通过合 法性验证的投票结果中过滤投票标签已出现于当前投票过程中的目标投票结果, 进而将过 滤后的投票结果进行上链操作。 由于可链接环。

49、签名公钥集合中包含有区块链系统中一定数 量的投票端的本地公钥, 因此无法通过投票结果推断出实际的投票端身份, 确保了投票端 的身份隐私, 实现了无记名投票的功能, 另外, 由于投票标签与投票端的本地私钥唯一对 应, 因此能够作为标识投票端的投票行为具有唯一性的标志, 能够避免相同投票端多次投 票的情况发生, 并且无法通过投票标签定位到投票人身份, 进而保障了投票过程中投票端 投票行为的可靠性。 0130 图5为本申请实施例提供的一种基于区块链的电子投票系统的结构示意图。 0131 投票端10, 用于获取本地私钥; 基于本地私钥生成唯一对应的投票标签; 生成投票 信息, 并利用本地私钥, 关于可。

50、链接环签名公钥集合, 对投票信息和投票标签执行可链接环 签名操作, 得到可链接环签名; 将包含有投票信息、 投票标签、 可链接环签名以及可链接环 签名公钥集合的投票结果公开至区块链系统, 以供区块链系统中的验证节点验证投票结果 的合法性; 0132 验证端11, 用于对区块链系统中投票端10的投票结果进行遍历, 并对投票结果中 的可链接环签名进行合法性验证; 在可链接环签名已通过合法性验证的投票结果中过滤投 票标签已出现于当前投票过程中的目标投票结果; 将过滤后的投票结果进行上链操作; 0133 本申请所提供的基于区块链的电子投票系统, 由区块链系统中的投票端获取本地 私钥, 并基于本地私钥生。

展开阅读全文
内容关键字: 基于 区块 电子 投票 方法 系统 设备 存储 介质
关于本文
本文标题:基于区块链的电子投票方法、系统、设备及存储介质.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/10494549.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1