CN110958120B - 基于区块链的电子投票方法、设备及存储介质 - Google Patents
基于区块链的电子投票方法、设备及存储介质 Download PDFInfo
- Publication number
- CN110958120B CN110958120B CN201911237444.6A CN201911237444A CN110958120B CN 110958120 B CN110958120 B CN 110958120B CN 201911237444 A CN201911237444 A CN 201911237444A CN 110958120 B CN110958120 B CN 110958120B
- Authority
- CN
- China
- Prior art keywords
- voting
- node
- qualification
- nodes
- electronic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C13/00—Voting apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供一种基于区块链的电子投票方法、设备及存储介质。通过电子投票发起方节点在区块链网络中广播电子投票公告信息,电子投票发起方节点在区块链网络中接收投票节点发送的投票内容后,向监督节点发送投票资格验证请求,投票资格验证请求包括多个投票节点的标识信息,使得监督节点可以对该多个投票节点的投票资格进行验证,当电子投票发起方节点接收到监督节点的验证结果后,可以确定出哪些节点的投票是有效或无效的,从而使得投票节点既可以匿名投票,同时也实现了电子投票发起方节点对投票节点的身份验证,提高了投票节点的安全性,同时电子投票发起方节点还可以通过监督节点对投票节点进行有效监督,提高了电子投票的安全性。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种基于区块链的电子投票方法、设备及存储介质。
背景技术
现有技术中,基于区块链网络可实现电子投票,例如,区块链网络中的电子投票发起方节点在该区块链网络中广播待投票内容,区块链网络中参与投票的节点接收到该待投票内容后,在该区块链网络中广播投票内容。
但是,现有技术中很难同时兼顾匿名投票和投票资格验证的需求,例如,如果投票节点进行匿名投票,则电子投票发起方节点将无法对投票节点的投票资格进行验证,从而带来一定的安全隐患。如果投票节点进行实名制投票,则电子投票发起方节点可以对投票节点的投票资格进行验证,但是,由于投票内容是在区块链网络中被广播的,因此,该区块链网络中的其他节点都可以确定出投票节点的身份信息,从而无法对投票节点进行有效保护。
发明内容
本发明实施例提供一种基于区块链的电子投票方法、设备及存储介质,以使得投票节点既可以匿名投票,也可以实现对投票节点的身份验证。
第一方面,本发明实施例提供一种基于区块链的电子投票方法,包括:
电子投票发起方节点在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息;
所述电子投票发起方节点在所述区块链网络中接收所述投票节点发送的投票内容,所述投票内容包括所述投票节点的私钥签名;
当所述电子投票发起方节点对所述投票节点的私钥签名验证通过后,所述电子投票发起方节点向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;
所述电子投票发起方节点接收所述监督节点对所述多个投票节点的投票资格进行验证后的验证结果;
若所述电子投票发起方节点根据所述验证结果,确定所述投票节点符合投票资格条件,则确定所述投票节点的投票内容有效;
其中,所述区块链网络包括所述电子投票发起方节点、所述监督节点和所述投票节点。
第二方面,本发明实施例提供一种基于区块链的电子投票方法,包括:
监督节点接收电子投票发起方节点发送的投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;
所述监督节点根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格;
所述监督节点将其对所述多个投票节点的投票资格进行验证后的验证结果发送给所述电子投票发起方节点。
第三方面,本发明实施例提供一种电子投票发起方节点,包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
通过所述通讯接口在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息;
通过所述通讯接口在所述区块链网络中接收所述投票节点发送的投票内容,所述投票内容包括所述投票节点的私钥签名;
对所述投票节点的私钥签名验证通过后,通过所述通讯接口向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;
通过所述通讯接口接收所述监督节点对所述多个投票节点的投票资格进行验证后的验证结果;
根据所述验证结果,确定所述投票节点符合投票资格条件,则确定所述投票节点的投票内容有效;
其中,所述区块链网络包括所述电子投票发起方节点、所述监督节点和所述投票节点。
第四方面,本发明实施例提供一种监督节点,包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
通过所述通讯接口接收电子投票发起方节点发送的投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;
根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格;
通过所述通讯接口将所述处理器对所述多个投票节点的投票资格进行验证后的验证结果发送给所述电子投票发起方节点。
第五方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现第一方面或第二方面所述的方法。
本发明实施例提供的基于区块链的电子投票方法、设备及存储介质,通过电子投票发起方节点在区块链网络中广播电子投票公告信息,电子投票发起方节点在所述区块链网络中接收所述投票节点发送的投票内容后,向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息,使得监督节点可以对该多个投票节点的投票资格进行验证,当电子投票发起方节点接收到监督节点的验证结果后,可以确定出哪些节点的投票是有效的,哪些节点的投票是无效的,从而使得投票节点既可以匿名投票,同时也实现了电子投票发起方节点对投票节点的身份验证,提高了投票节点的安全性,同时电子投票发起方节点还可以通过监督节点对投票节点进行有效监督,提高了电子投票的安全性。
附图说明
图1为本发明实施例提供的一种应用场景的示意图;
图2为本发明实施例提供的基于区块链的电子投票方法流程图;
图3为本发明另一实施例提供的基于区块链的电子投票方法流程图;
图4为本发明实施例提供的电子投票发起方节点的结构示意图;
图5为本发明实施例提供的监督节点的结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本发明实施例提供的基于区块链的电子投票方法,可以适用于图1所示的通信系统。如图1所示,该通信系统包括:记账节点、电子投票发起方节点、监督节点和投票节点,其中,记账节点、电子投票发起方节点、监督节点和投票节点是区块链网络中的参与节点。可以理解,此处只是示意性说明,并不限定该区块链网络中的节点个数和种类。其中,记账节点可以是一个或者是多个云端服务器,云端服务器也就是云服务器,是一个服务器集群,有很多服务器,和通用的计算机架构类似,云端服务器的构成包括处理器、硬盘、内存、系统总线等。电子投票发起方节点或投票节点具体可以是用户终端,例如,智能手机、平板电脑、个人计算机等。另外,在本申请实施例中,区块链网络是一个去中心化的、点对点(peer-to-peer,简称P2P)通信的网络。
本发明实施例提供的基于区块链的电子投票方法,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。
图2为本发明实施例提供的基于区块链的电子投票方法流程图。本发明实施例针对现有技术的如上技术问题,提供了基于区块链的电子投票方法,该方法具体步骤如下:
步骤201、电子投票发起方节点在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息。
所述区块链网络包括所述电子投票发起方节点、所述监督节点和所述投票节点。
电子投票发起方节点可以是区块链网络中任意的参与节点,也就是说,区块链网络中任意的参与节点可作为一次电子投票的发起方节点,该发起方节点可设定投票节点需要满足的资格条件、以及具体的待投票信息。
监督节点具体可以是存储有完备的用户身份信息的数据库,监督节点可根据投票节点的资格条件生成投票节点的身份认证信息。该监督节点具体可以是公证的第三方节点,例如可以是公安部门的数据库。
投票节点可以是区块链网络中任意的一个或多个参与节点。
具体的,电子投票发起方节点在区块链网络中以广播消息的方式广播电子投票公告信息,该电子投票公告信息可包括投票资格条件、监督节点的标识信息和待投票信息。其中,监督节点的标识信息具体可以是监督节点在该区块链网络中的区块链标识、以及监督节点在现实社会中的身份信息。待投票信息具体可包括待投票内容的选项和投票截止时间等信息。
在一些实施例中,电子投票发起方节点生成电子投票公告信息后,电子投票公告信息可采用自己的私钥对该电子投票公告信息进行签名,进一步,将签名后的该电子投票公告信息广播到该区块链网络中。
步骤202、所述电子投票发起方节点在所述区块链网络中接收所述投票节点发送的投票内容,所述投票内容包括所述投票节点的私钥签名。
当该区块链网络中的投票节点接收到签名后的该电子投票公告信息时,首先对该电子投票发起方节点的私钥签名进行验证,如果验证通过,则根据该电子投票公告信息中包括的投票资格条件,确定该投票节点是否满足该投票资格条件。如果满足,则该投票节点确定自己可以投票。进一步,该投票节点生成投票内容,并采用自己的私钥对该投票内容进行私钥签名,将私钥签名后的投票内容广播在该区块链网络中。相应的,电子投票发起方节点可以在该区块链网络中接收到该投票节点发送的投票内容,该投票内容包括该投票节点的私钥签名。该投票内容中没有该投票节点的身份信息,从而该投票节点可以进行匿名投票。
步骤203、当所述电子投票发起方节点对所述投票节点的私钥签名验证通过后,所述电子投票发起方节点向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息。
可以理解的是,电子投票发起方节点将电子投票公告信息广播到区块链网络中后,该区块链网络中的多个投票节点可以向该电子投票发起方节点发送投票内容,并且每个投票节点的投票内容中可包括相应的该投票节点的私钥签名。电子投票发起方节点可以对多个投票节点的私钥签名进行验证,如果验证通过,则该电子投票发起方节点批量获取多个投票节点的标识信息,进一步,向监督节点发送投票资格验证请求,该投票资格验证请求包括该多个投票节点的标识信息。也就是说,该电子投票发起方节点可以将多个投票节点的标识信息批量的发送给监督节点。监督节点可以根据该投票资格验证请求对该多个投票节点的投票资格进行验证。其中,投票节点的标识信息具体可以是投票节点的公钥、区块链标识中的至少一个。
可选的,所述电子投票发起方节点向所述监督节点发送投票资格验证请求,包括:所述电子投票发起方节点对所述投票资格验证请求进行私钥签名,并将私钥签名后的所述投票资格验证请求发送给所述监督节点。
例如,电子投票发起方节点在向监督节点发送投票资格验证请求之前,电子投票发起方节点可以先对该投票资格验证请求进行私钥签名,也就是说,对多个投票节点的标识信息进行私钥签名。进一步,电子投票发起方节点将私钥签名后的投票资格验证请求发送给监督节点。在本实施例和后续实施例中,监督节点也叫第三方监督节点。
可选的,所述投票资格验证请求还包括所述投票资格条件。
例如,电子投票发起方节点向监督节点发送的投票资格验证请求包括投票资格条件和多个投票节点的标识信息。监督节点可根据投票资格条件和多个投票节点的标识信息,确定该多个投票节点中的每个投票节点是否具有投票资格。具体的,该监督节点可以根据多个投票节点的标识信息在该监督节点对应的用户身份信息的数据库中查询多个投票节点中每个投票节点的完整的身份信息。进一步,根据每个投票节点的完整的身份信息和该电子投票发起方节点本次投票中公告的投票资格条件,判断每个投票节点是否符合投票资格,从而得到验证结果,该验证结果可以包括符合投票资格的投票节点的标识信息;或者该验证结果包括不符合投票资格的投票节点的标识信息;或者该验证结果同时包括符合投票资格的投票节点的标识信息和不符合投票资格的投票节点的标识信息,以及每个投票节点是否满足投票资格的指示信息或标识信息。进一步,该监督节点对该验证结果进行私钥签名,并将私钥签名后的验证结果以区块链链下的方式发送给电子投票发起方节点,或者,该监督节点也可以将私钥签名后的验证结果以广播消息的方式广播在区块链网络中。
步骤204、所述电子投票发起方节点接收所述监督节点对所述多个投票节点的投票资格进行验证后的验证结果。
步骤205、若所述电子投票发起方节点根据所述验证结果,确定所述投票节点符合投票资格条件,则确定所述投票节点的投票内容有效。
电子投票发起方节点接收到该监督节点发送的验证结果后,确定该多个投票节点中哪些节点符合投票资格条件,哪些节点不符合投票资格条件。可以理解的是,在本次投票截止时间之前,电子投票发起方节点可以多次向监督节点发送投票资格验证请求,该监督节点可以多次向电子投票发起方节点返回验证结果。在本次投票截止时间结束时,电子投票发起方节点可以确定符合投票资格条件的投票节点发送的投票内容是有效的,不符合投票资格条件的投票节点发送的投票内容是无效的。
本发明实施例通过电子投票发起方节点在区块链网络中广播电子投票公告信息,电子投票发起方节点在所述区块链网络中接收所述投票节点发送的投票内容后,向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息,使得监督节点可以对该多个投票节点的投票资格进行验证,当电子投票发起方节点接收到监督节点的验证结果后,可以确定出哪些节点的投票是有效的,哪些节点的投票是无效的,从而使得投票节点既可以匿名投票,同时也实现了电子投票发起方节点对投票节点的身份验证,提高了投票节点的安全性,同时电子投票发起方节点还可以通过监督节点对投票节点进行有效监督,提高了电子投票的安全性。
图3为本发明另一实施例提供的基于区块链的电子投票方法流程图。本实施例提供的基于区块链的电子投票方法具体包括如下步骤:
步骤301、监督节点接收电子投票发起方节点发送的投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息。
电子投票发起方节点在区块链网络中以广播消息的方式广播电子投票公告信息,该电子投票公告信息可包括投票资格条件、监督节点的标识信息和待投票信息。其中,监督节点的标识信息具体可以是监督节点在该区块链网络中的区块链标识、以及监督节点在现实社会中的身份信息。待投票信息具体可包括待投票内容的选项和投票截止时间等信息。在一些实施例中,电子投票发起方节点生成电子投票公告信息后,电子投票公告信息可采用自己的私钥对该电子投票公告信息进行签名,进一步,将签名后的该电子投票公告信息广播到该区块链网络中。
当该区块链网络中的投票节点接收到签名后的该电子投票公告信息时,首先对该电子投票发起方节点的私钥签名进行验证,如果验证通过,则根据该电子投票公告信息中包括的投票资格条件,确定该投票节点是否满足该投票资格条件。如果满足,则该投票节点确定自己可以投票。进一步,该投票节点生成投票内容,并采用自己的私钥对该投票内容进行私钥签名,将私钥签名后的投票内容广播在该区块链网络中。相应的,电子投票发起方节点可以在该区块链网络中接收到该投票节点发送的投票内容,该投票内容包括该投票节点的私钥签名。该投票内容中没有该投票节点的身份信息,从而该投票节点可以进行匿名投票。
电子投票发起方节点将电子投票公告信息广播到区块链网络中后,该区块链网络中的多个投票节点可以向该电子投票发起方节点发送投票内容,并且每个投票节点的投票内容中可包括相应的该投票节点的私钥签名。电子投票发起方节点可以对多个投票节点的私钥签名进行验证,如果验证通过,则该电子投票发起方节点批量获取多个投票节点的标识信息,进一步,向监督节点发送投票资格验证请求,该投票资格验证请求包括该多个投票节点的标识信息。也就是说,该电子投票发起方节点可以将多个投票节点的标识信息批量的发送给监督节点。监督节点可以根据该投票资格验证请求对该多个投票节点的投票资格进行验证。其中,投票节点的标识信息具体可以是投票节点的公钥、区块链标识中的至少一个。
步骤302、所述监督节点根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格。
可选的,所述投票资格验证请求还包括所述投票资格条件;所述监督节点根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格,包括:所述监督节点根据所述多个投票节点的标识信息,获取所述多个投票节点中每个投票节点的身份信息;所述监督节点根据每个所述投票节点的身份信息和所述投票资格条件,确定所述投票节点是否具有投票资格。
例如,电子投票发起方节点向监督节点发送的投票资格验证请求包括投票资格条件和多个投票节点的标识信息。监督节点可根据投票资格条件和多个投票节点的标识信息,确定该多个投票节点中的每个投票节点是否具有投票资格。具体的,该监督节点可以根据多个投票节点的标识信息在该监督节点对应的用户身份信息的数据库中查询多个投票节点中每个投票节点的完整的身份信息。进一步,根据每个投票节点的完整的身份信息和该电子投票发起方节点本次投票中公告的投票资格条件,判断每个投票节点是否符合投票资格,从而得到验证结果,该验证结果可以包括符合投票资格的投票节点的标识信息;或者该验证结果包括不符合投票资格的投票节点的标识信息;或者该验证结果同时包括符合投票资格的投票节点的标识信息和不符合投票资格的投票节点的标识信息,以及每个投票节点是否满足投票资格的指示信息或标识信息。进一步,该监督节点对该验证结果进行私钥签名,并将私钥签名后的验证结果以区块链链下的方式发送给电子投票发起方节点,或者,该监督节点也可以将私钥签名后的验证结果以广播消息的方式广播在区块链网络中。
步骤303、所述监督节点将其对所述多个投票节点的投票资格进行验证后的验证结果发送给所述电子投票发起方节点。
电子投票发起方节点接收到该监督节点发送的验证结果后,确定该多个投票节点中哪些节点符合投票资格条件,哪些节点不符合投票资格条件。可以理解的是,在本次投票截止时间之前,电子投票发起方节点可以多次向监督节点发送投票资格验证请求,该监督节点可以多次向电子投票发起方节点返回验证结果。在本次投票截止时间结束时,电子投票发起方节点可以确定符合投票资格条件的投票节点发送的投票内容是有效的,不符合投票资格条件的投票节点发送的投票内容是无效的。
本发明实施例通过电子投票发起方节点在区块链网络中广播电子投票公告信息,电子投票发起方节点在所述区块链网络中接收所述投票节点发送的投票内容后,向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息,使得监督节点可以对该多个投票节点的投票资格进行验证,当电子投票发起方节点接收到监督节点的验证结果后,可以确定出哪些节点的投票是有效的,哪些节点的投票是无效的,从而使得投票节点既可以匿名投票,同时也实现了电子投票发起方节点对投票节点的身份验证,提高了投票节点的安全性,同时电子投票发起方节点还可以通过监督节点对投票节点进行有效监督,提高了电子投票的安全性。
图4为本发明实施例提供的电子投票发起方节点的结构示意图。本发明实施例提供的电子投票发起方节点可以执行基于区块链的电子投票方法实施例提供的处理流程,如图4所示,电子投票发起方节点40包括:存储器41、处理器42、计算机程序和通讯接口43;其中,计算机程序存储在存储器41中,并被配置为由处理器42执行以下操作:通过所述通讯接口在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息;通过所述通讯接口在所述区块链网络中接收所述投票节点发送的投票内容,所述投票内容包括所述投票节点的私钥签名;对所述投票节点的私钥签名验证通过后,通过所述通讯接口向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;通过所述通讯接口接收所述监督节点对所述多个投票节点的投票资格进行验证后的验证结果;根据所述验证结果,确定所述投票节点符合投票资格条件,则确定所述投票节点的投票内容有效;其中,所述区块链网络包括所述电子投票发起方节点、所述监督节点和所述投票节点。
可选的,所述处理器还用于对所述投票资格验证请求进行私钥签名,并通过所述通讯接口将私钥签名后的所述投票资格验证请求发送给所述监督节点。
可选的,所述投票资格验证请求还包括所述投票资格条件。
图4所示实施例的电子投票发起方节点可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图5为本发明实施例提供的监督节点的结构示意图。本发明实施例提供的监督节点可以执行基于区块链的电子投票方法实施例提供的处理流程,如图5所示,监督节点50包括:存储器51、处理器52、计算机程序和通讯接口53;其中,计算机程序存储在存储器51中,并被配置为由处理器52执行以下操作:通过所述通讯接口接收电子投票发起方节点发送的投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格;通过所述通讯接口将所述处理器对所述多个投票节点的投票资格进行验证后的验证结果发送给所述电子投票发起方节点。
可选的,所述投票资格验证请求还包括所述投票资格条件;所述处理器根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格时,具体用于:根据所述多个投票节点的标识信息,获取所述多个投票节点中每个投票节点的身份信息;根据每个所述投票节点的身份信息和所述投票资格条件,确定所述投票节点是否具有投票资格。
图5所示实施例的监督节点可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
另外,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行以实现上述实施例所述的基于区块链的电子投票方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (9)
1.一种基于区块链的电子投票方法,其特征在于,包括:
电子投票发起方节点在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息;
所述电子投票发起方节点在所述区块链网络中接收投票节点发送的投票内容,所述投票内容包括所述投票节点的私钥签名;
当所述电子投票发起方节点对所述投票节点的私钥签名验证通过后,所述电子投票发起方节点向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括投票资格条件和多个投票节点的标识信息;所述监督节点用于根据所述投票资格条件和所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格,具体的,所述监督节点根据所述多个投票节点的标识信息,获取所述多个投票节点中每个投票节点的身份信息;所述监督节点根据每个所述投票节点的身份信息和所述投票资格条件,确定所述投票节点是否具有投票资格;
所述电子投票发起方节点接收所述监督节点对所述多个投票节点的投票资格进行验证后的验证结果;
若所述电子投票发起方节点根据所述验证结果,确定所述投票节点符合投票资格条件,则确定所述投票节点的投票内容有效;
其中,所述区块链网络包括所述电子投票发起方节点、所述监督节点和所述投票节点。
2.根据权利要求1所述的方法,其特征在于,所述电子投票发起方节点向所述监督节点发送投票资格验证请求,包括:
所述电子投票发起方节点对所述投票资格验证请求进行私钥签名,并将私钥签名后的所述投票资格验证请求发送给所述监督节点。
3.根据权利要求1或2所述的方法,其特征在于,所述投票资格验证请求还包括所述投票资格条件。
4.一种基于区块链的电子投票方法,其特征在于,包括:
监督节点接收电子投票发起方节点发送的投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;
所述监督节点根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格;
所述监督节点将其对所述多个投票节点的投票资格进行验证后的验证结果发送给所述电子投票发起方节点;
所述投票资格验证请求还包括所述投票资格条件;
所述监督节点根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格,包括:
所述监督节点根据所述多个投票节点的标识信息,获取所述多个投票节点中每个投票节点的身份信息;
所述监督节点根据每个所述投票节点的身份信息和所述投票资格条件,确定所述投票节点是否具有投票资格。
5.一种电子投票发起方节点,其特征在于,包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
通过所述通讯接口在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息;
通过所述通讯接口在所述区块链网络中接收投票节点发送的投票内容,所述投票内容包括所述投票节点的私钥签名;
对所述投票节点的私钥签名验证通过后,通过所述通讯接口向所述监督节点发送投票资格验证请求,所述投票资格验证请求包括投票资格条件和多个投票节点的标识信息;所述监督节点用于根据所述投票资格条件和所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格,具体的,所述监督节点根据所述多个投票节点的标识信息,获取所述多个投票节点中每个投票节点的身份信息;所述监督节点根据每个所述投票节点的身份信息和所述投票资格条件,确定所述投票节点是否具有投票资格;
通过所述通讯接口接收所述监督节点对所述多个投票节点的投票资格进行验证后的验证结果;
根据所述验证结果,确定所述投票节点符合投票资格条件,则确定所述投票节点的投票内容有效;
其中,所述区块链网络包括所述电子投票发起方节点、所述监督节点和所述投票节点。
6.根据权利要求5所述的电子投票发起方节点,其特征在于,所述处理器还用于对所述投票资格验证请求进行私钥签名,并通过所述通讯接口将私钥签名后的所述投票资格验证请求发送给所述监督节点。
7.根据权利要求5或6所述的电子投票发起方节点,其特征在于,所述投票资格验证请求还包括所述投票资格条件。
8.一种监督节点,其特征在于,包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
通过所述通讯接口接收电子投票发起方节点发送的投票资格验证请求,所述投票资格验证请求包括多个投票节点的标识信息;
根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格;
通过所述通讯接口将所述处理器对所述多个投票节点的投票资格进行验证后的验证结果发送给所述电子投票发起方节点;
所述投票资格验证请求还包括所述投票资格条件;
所述处理器根据所述多个投票节点的标识信息,验证所述多个投票节点中的每个投票节点是否具有投票资格时,具体用于:
根据所述多个投票节点的标识信息,获取所述多个投票节点中每个投票节点的身份信息;
根据每个所述投票节点的身份信息和所述投票资格条件,确定所述投票节点是否具有投票资格。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911237444.6A CN110958120B (zh) | 2019-12-05 | 2019-12-05 | 基于区块链的电子投票方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911237444.6A CN110958120B (zh) | 2019-12-05 | 2019-12-05 | 基于区块链的电子投票方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110958120A CN110958120A (zh) | 2020-04-03 |
CN110958120B true CN110958120B (zh) | 2022-06-10 |
Family
ID=69980185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911237444.6A Active CN110958120B (zh) | 2019-12-05 | 2019-12-05 | 基于区块链的电子投票方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110958120B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307447A (zh) * | 2020-11-03 | 2021-02-02 | 平安科技(深圳)有限公司 | 一种锚节点作假检测方法、装置、介质及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106411503A (zh) * | 2016-11-28 | 2017-02-15 | 中国银行股份有限公司 | 区块链投票记账模式的记账方法及系统、投票及记账节点 |
CN109547193A (zh) * | 2018-12-07 | 2019-03-29 | 焦少波 | 一种基于区块链且抗量子计算机攻击的电子投票方法 |
CN109934988A (zh) * | 2019-02-15 | 2019-06-25 | 哈尔滨工程大学 | 一种基于区块链的电子投票方法 |
CN110245183A (zh) * | 2019-05-05 | 2019-09-17 | 上海链度科技有限公司 | 一种基于联盟区块链技术的加密电子投票选举系统及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102006039662B4 (de) * | 2006-08-24 | 2012-10-25 | Deutsche Telekom Ag | Elektronisches Onlinewahlen-System |
US9292987B1 (en) * | 2014-09-22 | 2016-03-22 | Makor Issues and Rights, Ltd. | System and method for fully encrypted remote web-based voting |
-
2019
- 2019-12-05 CN CN201911237444.6A patent/CN110958120B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106411503A (zh) * | 2016-11-28 | 2017-02-15 | 中国银行股份有限公司 | 区块链投票记账模式的记账方法及系统、投票及记账节点 |
CN109547193A (zh) * | 2018-12-07 | 2019-03-29 | 焦少波 | 一种基于区块链且抗量子计算机攻击的电子投票方法 |
CN109934988A (zh) * | 2019-02-15 | 2019-06-25 | 哈尔滨工程大学 | 一种基于区块链的电子投票方法 |
CN110245183A (zh) * | 2019-05-05 | 2019-09-17 | 上海链度科技有限公司 | 一种基于联盟区块链技术的加密电子投票选举系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110958120A (zh) | 2020-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108734028B (zh) | 基于区块链的数据管理方法、区块链节点及存储介质 | |
CN109102287B (zh) | 区块链记账方法、装置、设备及存储介质 | |
CN110351363B (zh) | 数据备份方法、设备及计算机可读存储介质 | |
CN110958253A (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
CN110602217B (zh) | 基于区块链的联盟管理方法、装置、设备及存储介质 | |
CN102984156B (zh) | 一种可验证的分布式隐私数据比较与排序方法及装置 | |
CN110958107A (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
CN109166040B (zh) | 基于区块链的交易审计方法、装置、设备及存储介质 | |
CN110830452A (zh) | 基于区块链的电子投标方法、设备及存储介质 | |
CN110827121A (zh) | 基于区块链的电子投标方法、设备及存储介质 | |
CN112749968B (zh) | 基于区块链的业务数据记录方法及装置 | |
CN110796447A (zh) | 基于区块链的电子投标监管方法、设备及存储介质 | |
CN110933098B (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
CN112187471B (zh) | 基于区块链与智能合约的数据抄送方法、系统及介质 | |
CN111431931A (zh) | 节点共识方法及装置 | |
CN110990790B (zh) | 一种数据处理方法及设备 | |
CN110958120B (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
CN114024723B (zh) | 基于esop系统的线上签署方法及装置、设备、介质 | |
CN111047763A (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
CN113301163A (zh) | 业务处理方法、系统、电子设备及存储介质 | |
CN112261427A (zh) | 恶意节点的识别方法及装置、电子设备 | |
CN110995711A (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
CN117033012A (zh) | 接口调用黑名单的查询方法及装置、电子设备及存储介质 | |
CN111314095B (zh) | 基于区块链的电子投票方法、设备及存储介质 | |
CN111010431B (zh) | 基于区块链的电子投票方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100191 1107c, 11 / F, Xueyuan international building, 1 Zhichun Road, Haidian District, Beijing Applicant after: IALLCHAIN Co.,Ltd. Address before: 100043 5158, 5 floor, 11 Shixing street, Shijingshan District, Beijing. Applicant before: IALLCHAIN Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |