技术新讯 > 核算装置的制造及其应用技术 > 一种提供选票安全与数据隐私保护的区块链电子投票方法  >  正文

一种提供选票安全与数据隐私保护的区块链电子投票方法

  • 国知局
  • 2024-07-31 22:29:14

本发明涉及信息安全与密码,特别是指一种提供选票安全与数据隐私保护的区块链电子投票方法及系统。

背景技术:

1、电子投票为目前的纸质投票提供了一种方便、成本低以及效益高的替代方案。当前的电子投票系统大多依赖于中心服务器和可信第三方,当前的电子投票系统难以监管,投票者的隐私安全难以保证。

2、目前针对电子投票的方法主要是基于区块链的方法。其中,专利cn113643155a公布了一种基于多数据分析的区块链投票系统,对终端以及住宅区域内投票居民进行筛选,解决投票数据不准确的问题;但专利cn113643155a没有对数据进行加密,投票数据的安全性不能得到充分保障。专利cn112581132a 公布了一种保证投票发起人权益的公平的区块链投票方法及系统,针对投票发起人设置相关的参数并且将参数数据进行上链,在选票统计阶段,根据收集选票恢复参数和选票解密参数,计算出每个候选人获得的票数;但在选票统计阶段没有设置良好的筛选或监督机制,导致计票过程出现安全漏洞。

技术实现思路

1、为了解决现有技术存在的投票数据的安全性较弱以及选票统计阶段没有设置监督机制的技术问题,本发明实施例提供了一种提供选票安全与数据隐私保护的区块链电子投票方法及系统。所述技术方案如下:

2、一方面,提供了一种提供选票安全与数据隐私保护的区块链电子投票方法,该方法由提供选票安全与数据隐私保护的区块链电子投票设备实现,该方法包括:

3、s1、所述管理端的管理员登录所述区块链完成注册;所述投票端的投票者登录所述区块链完成注册;所述管理端采用sm2算法对所述投票端的投票者的公钥进行签名;所述管理员设置投票项目,公布投票者;

4、s2、所述用户端的用户登录所述区块链完成注册,登录查看投票项目;所

5、述管理端的管理员对投票者的身份进行验证,验证通过后,采用sm2算法的密钥交换协议协商出sm4算法的加密密钥和解密密钥;

6、s3、根据所述加解密密钥,所述管理端采用sm4算法对未标注明文选票进行加密,获得加密后的未标注密文选票,所述管理端将所述加密后,的未标注密文选票发送给投票者;

7、s4、持有所述加密后的未标注密文选票且已经登录注册的投票者,解密选票后,通过所述智能合约进行投票;所述智能合约对出现在所述区块链上的未标注明文选票进行全同态加密,获得已标注的密文选票;所述智能合约对已标注的密文选票进行验证后计票;

8、s5、所述智能合约将选票结果在所述区块链上发布。

9、可选地,所述s1的所述管理端采用sm2算法对投票端的投票者的公钥进行签名,包括:

10、s11、采用注册器随机生成密钥,根据密钥生成公钥;

11、s12、根据公钥,投票端的投票者选择与自身身份对应的选举密钥对;

12、s13、管理端的管理员验证投票者的资格,根据选举密钥对,对符合资格的投票者采用sm2算法对投票端的投票者的公钥进行签名。

13、可选地,所述s3的具体实施过程包括s31-s35:

14、s31、管理端的管理员生成未标注明文选票;

15、s32、投票端的投票者向管理端的主持人请求投票;

16、s33、管理端的主持人对投票者的身份进行验证,验证通过后,管理端的主持人将投票者的公钥发送给管理端的管理员,请求获得未标注明文选票;

17、s34、管理端的管理员收到管理端的主持人的投票请求后,将未标注明文选票按照特定的置换顺序随机分配给投票端的投票者,管理端采用sm4算法对未标注明文选票进行加密,获得加密后的未标注密文选票;

18、s35、管理端的主持人将所述加密后的未标注密文选票打乱顺序,发送给投票者。

19、可选地,所述s4的持有所述加密后的未标注密文选票且已经登录注册的投票者,解密选票后,通过所述智能合约进行投票,包括:

20、s41、持有所述加密后的未标注密文选票且已经登录注册的投票者通过sm4算法的解密函数对加密后的未标记密文选票进行解密,获得解密后的密文选票;

21、s42、智能合约生成同态密码公钥与私钥;根据生成的同态密码公钥与私钥,私钥保存在本地数据库中,公钥通过区块链发送到投票端的投票者;

22、s43、智能合约对解密后的密文选票进行双重加密,获得双重加密后的未标注密文选票;

23、s44、投票端的投票者根据私钥生成一个包含投票选项的加密的投票凭证,根据加密的投票凭证,投票端的投票者进行投票。

24、可选地,所述投票凭证,包括:一个零知识证明;

25、所述零知识证明,用于验证投票的有效性、证明投票者有权参与投票,以及证明投票符合投票的规则。

26、可选地,所述s4的所述智能合约对出现在所述区块链上的未标注明文票进行全同态加密,获得已标注的密文选票;智能合约对已标注的密文选票进行验证后计票,包括:

27、s45、智能合约扫描所述区块链,计算第一次出现的选票;智能合约取消多次出现选票的投票者的投票资格;

28、s46、智能合约利用全同态加密密文可计算的性质,计算出所有选项的已标注的密文选票总和。

29、可选地,所述s5的所述智能合约将选票结果在所述区块链上发布,包括:

30、智能合约采用生成的全同态加密私钥解密选票结果,将选票结果在区块链上发布。

31、另一方面,提供了一种提供选票安全与数据隐私保护的区块链电子投票系统,该系统应用于提供选票安全与数据隐私保护的区块链电子投票方法,该系统包括:

32、区块链、智能合约、用户端、投票端以及管理端;

33、所述区块链,用于所述管理端的管理员登录所述区块链完成注册;所述投票端的投票者登录所述区块链完成注册;所述用户端的用户登录所述区块链完成注册,登录查看投票项目;所述智能合约对出现在所述区块链上的未标注明文票进行全同态加密;所述智能合约将选票结果在所述区块链上发布;

34、所述智能合约,用于持有所述加密后的未标注密文选票且已经登录注册的投票者,解密选票后,通过所述智能合约进行投票;所述智能合约对出现在所述区块链上的未标注明文票进行全同态加密,获得已标注的密文选票;所述智能合约对已标注的密文选票进行验证后计票;

35、所述用户端,用于所述用户端的用户登录所述区块链完成注册,登录查看投票项目;

36、所述投票端,用于所述投票端的投票者登录所述区块链完成注册;所述管理端的管理员对投票者的身份进行验证,验证通过后,采用sm2算法的密钥交换协议协商出sm4算法的加解密密钥;

37、所述管理端,用于根据所述加解密密钥,管理端采用sm4算法对未标注明文选票进行加密,获得加密后的未标注密文选票,管理端将所述加密后的未标注密文选票发送给投票者;管理端sm2算法对投票端的投票者的公钥进行签名;管理员设置投票项目,公布投票者。

38、可选地,所述管理端,用于:

39、采用注册器随机生成密钥,根据密钥生成公钥;

40、根据公钥,投票端的投票者选择与自身身份对应的选举密钥对;

41、管理端的管理员验证投票者的资格,根据选举密钥对,对符合资格的投票者采用sm2算法对投票端的投票者的公钥进行签名。

42、可选地,所述根据所述加解密密钥,所述管理端采用sm4算法对未标注明文选票进行加密,获得加密后的未标注密文选票,所述管理端将所述加密后的未标注密文选票发送给投票者,包括:

43、管理端的管理员生成未标注明文选票;

44、投票端的投票者向管理端的主持人请求投票;

45、管理端的主持人对投票者的身份进行验证,验证通过后,管理端的主持人将投票者的公钥发送给管理端的管理员,请求获得未标注明文选票;

46、管理端的管理员收到管理端的主持人的投票请求后,将未标注明文选票按照特定的置换顺序随机分配给投票端的投票者,管理端采用sm4算法对未标注明文选票进行加密,获得加密后的未标注密文选票;

47、管理端的主持人将所述加密后的未标注密文选票打乱顺序,发送给投票者。

48、可选地,所述持有所述加密后的未标注密文选票且已经登录注册的投票者,解密选票后,通过所述智能合约进行投票,包括:

49、持有所述加密后的未标注密文选票且已经登录注册的投票者通过sm4算法的解密函数对加密后的未标记密文选票进行解密,获得解密后的密文选票;

50、智能合约生成同态密码公钥与私钥;根据生成的同态密码公钥与私钥,私钥保存在本地数据库中,公钥通过区块链发送到投票端的投票者;

51、智能合约对解密后的密文选票进行双重加密,获得双重加密后的未标注密文选票;

52、投票端的投票者根据私钥生成一个包含投票选项的加密的投票凭证,根据加密的投票凭证,投票端的投票者进行投票。

53、可选地,所述投票凭证,包括:一个零知识证明;

54、所述零知识证明,用于验证投票的有效性、证明投票者有权参与投票,以及证明投票符合投票的规则。

55、可选地,所述智能合约对出现在所述区块链上的未标注明文票进行全同态加密,获得已标注的密文选票;智能合约对已标注的密文选票进行验证后计票,包括:

56、智能合约扫描所述区块链,计算第一次出现的选票;智能合约取消多次出现选票的投票者的投票资格;

57、智能合约利用全同态加密密文可计算的性质,计算出所有选项的已标注的密文选票总和。

58、可选地,所述智能合约,用于:

59、智能合约采用生成的全同态加密私钥解密选票结果,将选票结果在区块链上发布。

60、另一方面,提供一种提供选票安全与数据隐私保护的区块链电子投票设备,所述提供选票安全与数据隐私保护的区块链电子投票设备包括:处理器;存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如上述提供选票安全与数据隐私保护的区块链电子投票方法中的任一项方法。

61、另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现上述提供选票安全与数据隐私保护的区块链电子投票方法中的任一项方法。

62、本发明实施例提供的技术方案带来的有益效果至少包括:

63、本发明实施例,管理端的管理员登录区块链完成注册;投票端的投票者登录区块链完成注册;管理端采用sm2算法对投票端的投票者的公钥进行签名;在注册阶段结束后,管理员设置投票项目,公布投票者;用户端的用户登录区块链完成注册,登录查看投票项目;管理端的管理员对投票者的身份进行验证,验证通过后,采用sm2算法的密钥交换协议协商出sm4算法的加解密密钥;根据加解密密钥,管理端采用sm4算法对未标注明文选票进行加密,获得加密后的未标注密文选票,管理端将加密后的未标注密文选票发送给投票者;持有加密后的未标注密文选票且已经登录注册的投票者,解密选票后,通过智能合约进行投票;智能合约对出现在所述区块链上的未标注明文票进行全同态加密,获得已标注的密文选票;智能合约对已标注的密文选票进行验证后计票;智能合约将选票结果在区块链上发布。

64、本发明实施例采用区块链作为公告板可以当互相监督的双方监管投票过程,在投票与计票时,本发明实施例采用sm2算法和全同态加密算法对数据进行加密,可对投票者的隐私进行保护以及选票数据的安全进行保护。本发明实施例采用区块链作为公开透明的公告板记录整个投票过程,使用户和管理人员可以监管整个投票过程。本发明实施例设置了智能合约,通过智能合约可以在选票统计阶段对选票进行筛选统计,当发现重复投票时,可通过智能合约取消投票者资格;本发明实施例采用区块链与全同态加密算法,可加快计票的速度;采用本发明实施例,可提升投票的工作效率。

本文地址:https://www.jishuxx.com/zhuanli/20240731/193562.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。