一种基于区块链的隐私保护电子投票方法及系统技术方案

技术编号:22502329 阅读:16 留言:0更新日期:2019-11-09 02:39
本发明专利技术公开了一种基于区块链的隐私保护电子投票方法及系统,所述方法包括:确定投票规则,并根据投票规则在区块链内建立多个投票节点以及一个或多个验证节点;根据预设规则生成投票密钥以及对应的同态加密算法;所述多个投票节点的每一个节点接收投票参与者的投票,并根据所述投票密钥对投票进行加密,将加密后的投票发送至验证节点;所述验证节点接收多个投票节点发送的加密后的投票,根据所述同态加密算法进行投票统计计算,获得加密后的投票统计结果;根据所述投票密钥对应的解密密钥对所述加密后的投票统计结果进行解密,获得投票统计结果;所述方法及系统通过设置密钥并基于同态加密和零知识证明,实现电子投票的公开透明和隐私安全保证。

A privacy protection electronic voting method and system based on blockchain

The invention discloses a privacy protection electronic voting method and system based on the blockchain, the method includes: determining the voting rules, establishing multiple voting nodes and one or more verification nodes in the blockchain according to the voting rules; generating the voting key and corresponding homomorphic encryption algorithm according to the preset rules; each node of the multiple voting nodes receives the voting The voting of the participants is encrypted according to the voting key, and the encrypted voting is sent to the verification node; the verification node receives the encrypted voting sent by multiple voting nodes, performs voting statistics calculation according to the homomorphic encryption algorithm, and obtains the encrypted voting statistics result; the encrypted voting is encrypted according to the decryption key corresponding to the voting key The method and system realize the transparency and privacy security of electronic voting by setting key and based on homomorphic encryption and zero knowledge proof.

【技术实现步骤摘要】
一种基于区块链的隐私保护电子投票方法及系统
本专利技术涉及互联网
,更具体地,涉及一种基于区块链的隐私保护电子投票方法及系统。
技术介绍
随着互联网技术以及现代密码学技术的发展,电子投票作为一种新的投票方式,逐渐得到社会的关注,也有许多专家学者在电子投票领域投入研究。电子投票是以各种密码学技术为理论基础,通过计算机和网络完成整个投票过程,其目标是在互联网上提供安全、方便、高效的投票环境。电子投票相比较传统投票上,其优势在于计票的快捷准确、人力和开支的节省以及投票的易用性等。然而通过互联网投票带来了一些问题,如欺诈选票、重复投票以及安全性等。在目前的电子投票系统中,投票管理者权力过于集中,不法的管理者可能会对投票数据进行篡改,还有管理者假冒使用投票者未投的选票影响投票的结果。区块链技术通过建立一个共同维护且不可被篡改的数据库来记录过去的所有交易和历史数据,所有的交易数据都是分布式存储并且公开透明,具有不可更改、不可伪造、完全可溯源的安全特性;但也由于区块链的公开透明的特性,使得通过区块链的电子投票的隐私安全保证成为问题。
技术实现思路
为了解决
技术介绍
存在的基于区块链技术的电子投票的隐私安全保证存在隐患的问题,本专利技术提供了一种基于区块链的隐私保护电子投票方法及系统,所述方法及系统通过设置职责不同的投票节点、验证节点以及监管节点,通过设置密钥并基于同态加密和零知识证明,实现电子投票的公开透明和隐私安全保证;所述一种基于区块链的隐私保护电子投票方法包括:确定投票规则,并根据投票规则在区块链内建立多个投票节点以及一个或多个验证节点;根据预设规则生成投票密钥以及对应的同态加密算法;将所述投票密钥在所述多个投票节点间共享;所述多个投票节点的每一个节点接收投票参与者的投票,并根据所述投票密钥对投票进行加密,将加密后的投票发送至验证节点;将所述同态加密算法提供给验证节点;所述验证节点接收多个投票节点发送的加密后的投票,并根据所述同态加密算法进行投票统计计算,获得加密后的投票统计结果;根据所述投票密钥对应的解密密钥对所述加密后的投票统计结果进行解密,获得投票统计结果。进一步的,所述投票规则包括投票对象、每个投票参与者的投票数量、是否可以对同一投票对象进行多次投票、是否允许弃权以及投票截止时间。进一步的,所述建立的多个投票节点个数大于或等于投票参与者人数;所述每个投票参与者至多选择一个节点并进行投票,对应的投票节点接收所述投票参与者的投票;在预设截止时间内未进行投票的投票参与者视为弃权,对应的投票节点自动生成弃权票。进一步的,根据投票规则生成同态加密后对应的验证规则;所述验证节点根据所述验证规则验证接收的多个投票节点发送的加密后的投票是否违反规则;废弃所述违反规则的加密后的投票。进一步的,根据投票规则在区块链内建立的节点还包括监督节点;所述监督节点与所述多个投票节点共享所述投票密钥;所述监督节点根据投票密钥解密所述加密后的投票,根据预设的规则筛选非法投票以及对应的非法节点。进一步的,将投票统计结果在区块链内进行全网广播;全网所有接受节点对所述投票统计结果执行共识算法;通过全网共识验证后,所述投票统计结果存入区块链的区块中。所述一种基于区块链的隐私保护电子投票系统包括:规则建立单元以及密钥生成单元;所述规则建立单元用于确定投票规则,并根据所述投票规则在区块链内建立多个投票节点以及一个或多个验证节点;所述密钥生成单元用于根据预设规则生成投票密钥以及对应的同态加密算法;所述密钥生成单元用于将所述投票密钥提供给所述多个投票节点的每一个;所述密钥生成单元用于将所述同态加密算法提供给验证节点;所述多个投票节点的每一个节点接收投票参与者的投票,并根据所述投票密钥对投票进行加密,将加密后的投票发送至验证节点;所述验证节点接收多个投票节点发送的加密后的投票,并根据所述同态加密算法进行投票统计计算,获得加密后的投票统计结果;所述密钥生成单元用于根据所述投票密钥对应的解密密钥对所述加密后的投票统计结果进行解密,获得投票统计结果。进一步的,所述规则建立单元所建立的投票规则包括投票对象、每个投票参与者的投票数量、是否可以对同一投票对象进行多次投票、是否允许弃权以及投票截止时间。进一步的,所述规则建立单元建立的多个投票节点个数大于或等于投票参与者人数;所述每个投票参与者至多选择一个节点并进行投票,对应的投票节点接收所述投票参与者的投票;在预设截止时间内未进行投票的投票参与者视为弃权,对应的投票节点自动生成弃权票。进一步的,所述规则建立单元用于根据投票规则生成同态加密后对应的验证规则;并将所述验证规则提供给验证节点;所述验证节点根据所述验证规则验证接收的多个投票节点发送的加密后的投票是否违反规则,并废弃所述违反规则的加密后的投票。进一步的,所述规则建立单元根据投票规则在区块链内建立的节点还包括监督节点;所述监督节点与所述多个投票节点共享所述投票密钥;所述监督节点根据投票密钥解密所述加密后的投票,根据预设的规则筛选非法投票以及对应的非法节点。进一步的,所述密钥生成单元将投票统计结果在区块链内进行全网广播;全网所有接受节点对所述投票统计结果执行共识算法;通过全网共识验证后,所述投票统计结果存入区块链的区块中。本专利技术的有益效果为:本专利技术的技术方案,给出了一种基于区块链的隐私保护电子投票方法及系统,所述方法及系统通过设置职责不同的投票节点、验证节点以及监管节点,通过设置密钥并基于同态加密和零知识证明,实现电子投票的公开透明和隐私安全保证;所述方法及系统通过监管节点实时的监控投票信息,防止恶意信息;所述每一个投票节点仅与验证节点通信,且所通信的投票信息是加密的,故对于每一个投票参与者来说,可以实现匿名投票,并获得投票结果;所述方法及系统基于区块链技术,根据区块链本身的公开透明性以及区块存储的永久存储性和不可篡改性,实现了电子投票的公正性保证。附图说明通过参考下面的附图,可以更为完整地理解本专利技术的示例性实施方式:图1为本专利技术具体实施方式的一种基于区块链的隐私保护电子投票方法的流程图;图2为本专利技术具体实施方式的一种基于区块链的隐私保护电子投票系统的结构图。具体实施方式现在参考附图介绍本专利技术的示例性实施方式,然而,本专利技术可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本专利技术,并且向所属
的技术人员充分传达本专利技术的范围。对于表示在附图中的示例性实施方式中的术语并不是对本专利技术的限定。在附图中,相同的单元/元件使用相同的附图标记。除非另有说明,此处使用的术语(包括科技术语)对所属
的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。图1为为本专利技术具体实施方式的一种基于区块链的隐私保护电子投票方法的流程图;如图1所示,所述方法包括:步骤110,确定投票规则,并根据投票规则在区块链内建立多个投票节点以及一个或多个验证节点;所述确定投票规则,包括确定投票对象、每个投票参与者的投票数量、是否可以对同一投票对象进行多次投票、是否允许弃权以及投票截止时间。在执行投票前,需先根据如上规则确定具体的投票规本文档来自技高网
...

【技术保护点】
1.一种基于区块链的隐私保护电子投票方法,所述方法包括:确定投票规则,并根据投票规则在区块链内建立多个投票节点以及一个或多个验证节点;根据预设规则生成投票密钥以及对应的同态加密算法;将所述投票密钥在所述多个投票节点间共享;所述多个投票节点的每一个节点接收投票参与者的投票,并根据所述投票密钥对投票进行加密,将加密后的投票发送至验证节点;将所述同态加密算法提供给验证节点;所述验证节点接收多个投票节点发送的加密后的投票,并根据所述同态加密算法进行投票统计计算,获得加密后的投票统计结果;根据所述投票密钥对应的解密密钥对所述加密后的投票统计结果进行解密,获得投票统计结果。

【技术特征摘要】
1.一种基于区块链的隐私保护电子投票方法,所述方法包括:确定投票规则,并根据投票规则在区块链内建立多个投票节点以及一个或多个验证节点;根据预设规则生成投票密钥以及对应的同态加密算法;将所述投票密钥在所述多个投票节点间共享;所述多个投票节点的每一个节点接收投票参与者的投票,并根据所述投票密钥对投票进行加密,将加密后的投票发送至验证节点;将所述同态加密算法提供给验证节点;所述验证节点接收多个投票节点发送的加密后的投票,并根据所述同态加密算法进行投票统计计算,获得加密后的投票统计结果;根据所述投票密钥对应的解密密钥对所述加密后的投票统计结果进行解密,获得投票统计结果。2.根据权利要求1所述的方法,其特征在于:所述投票规则包括投票对象、每个投票参与者的投票数量、是否可以对同一投票对象进行多次投票、是否允许弃权以及投票截止时间。3.根据权利要求1所述的方法,其特征在于:所述建立的多个投票节点个数大于或等于投票参与者人数;所述每个投票参与者至多选择一个节点并进行投票,对应的投票节点接收所述投票参与者的投票;在预设截止时间内未进行投票的投票参与者视为弃权,对应的投票节点自动生成弃权票。4.根据权利要求1所述的方法,其特征在于:根据投票规则生成同态加密后对应的验证规则;所述验证节点根据所述验证规则验证接收的多个投票节点发送的加密后的投票是否违反规则;废弃所述违反规则的加密后的投票。5.根据权利要求1所述的方法,其特征在于:根据投票规则在区块链内建立的节点还包括监督节点;所述监督节点与所述多个投票节点共享所述投票密钥;所述监督节点根据投票密钥解密所述加密后的投票,根据预设的规则筛选非法投票以及对应的非法节点。6.根据权利要求1所述的方法,其特征在于:将投票统计结果在区块链内进行全网广播;全网所有接受节点对所述投票统计结果执行共识算法;通过全网共识验证后,所述投票统计结果存入区块链的区块中。7.一种基于区块链的隐私保护电子投票系统,所述系统包括:规则建立单元以及密钥生成单元;所述规则建立单元用于确定投票规则,并根据所述投...

【专利技术属性】
技术研发人员:蒋海翟海滨张珺王璟
申请(专利权)人:布比北京网络技术有限公司布比重庆区块链技术有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1