CN111314095B - 基于区块链的电子投票方法、设备及存储介质 - Google Patents

基于区块链的电子投票方法、设备及存储介质 Download PDF

Info

Publication number
CN111314095B
CN111314095B CN201911237871.4A CN201911237871A CN111314095B CN 111314095 B CN111314095 B CN 111314095B CN 201911237871 A CN201911237871 A CN 201911237871A CN 111314095 B CN111314095 B CN 111314095B
Authority
CN
China
Prior art keywords
voting
node
identity information
target node
electronic voting
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
Application number
CN201911237871.4A
Other languages
English (en)
Other versions
CN111314095A (zh
Inventor
路成业
王凌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Iallchain Co Ltd
Original Assignee
Iallchain Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Iallchain Co Ltd filed Critical Iallchain Co Ltd
Priority to CN201911237871.4A priority Critical patent/CN111314095B/zh
Publication of CN111314095A publication Critical patent/CN111314095A/zh
Application granted granted Critical
Publication of CN111314095B publication Critical patent/CN111314095B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1854Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with non-centralised forwarding system, e.g. chaincast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/72Signcrypting, i.e. digital signing and encrypting simultaneously
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (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、电子投票发起方节点从监督节点接收加密后的身份信息列表,所述加密后的身份信息列表包括多个加密后的身份信息,所述加密后的身份信息是采用符合投票资格的投票节点的区块链公钥对所述投票节点的身份信息进行加密后得到的。
在本申请实施例中,所述区块链网络包括所述电子投票发起方节点、所述监督节点和所述投票节点。
电子投票发起方节点可以是区块链网络中任意的参与节点,也就是说,区块链网络中任意的参与节点可作为一次电子投票的发起方节点,该发起方节点可设定投票节点需要满足的资格条件、以及具体的待投票信息。
监督节点具体可以是存储有完备的用户身份信息的数据库,监督节点可根据投票节点的资格条件生成投票节点的身份认证信息。该监督节点具体可以是公证的第三方节点,例如可以是公安部门的数据库。
投票节点可以是区块链网络中任意的一个或多个参与节点。
可选的,所述电子投票发起方节点从监督节点接收加密后的身份信息列表之前,所述方法还包括:所述电子投票发起方节点向所述监督节点发送投票资格条件或身份信息列表,所述监督节点用于根据所述投票资格条件确定符合投票资格的投票节点,或者所述监督节点用于确定所述身份信息列表中符合投票资格的投票节点的身份信息。
具体的,电子投票发起方节点可以通过区块链链下的方式向监督节点发送投票资格条件,监督节点根据投票资格条件,查询获得多个符合投票资格的投票节点的身份信息,例如,身份信息具体可以是投票节点的区块链标识,以下将区块链标识简称为标识。该多个符合投票资格的投票节点的身份信息可构成一个身份信息列表,例如,符合投票资格的投票节点包括投票节点1、投票节点2、投票节点3,其中,投票节点1的标识记为ID1,投票节点2的标识记为ID2,投票节点3的标识记为ID3,该身份信息列表记为{ID1、ID2、ID3}。进一步,监督节点根据ID1在区块链账本中查询获得投票节点1的区块链公钥,根据ID2在区块链账本中查询获得投票节点2的区块链公钥,根据ID3在区块链账本中查询获得投票节点3的区块链公钥。进一步,监督节点采用投票节点1的区块链公钥并按照预先约定的加密算法对ID1进行加密得到加密后的身份信息,该加密后的身份信息记为ID1c。监督节点采用投票节点2的区块链公钥并按照预先约定的加密算法对ID2进行加密得到加密后的身份信息,该加密后的身份信息记为ID2c。监督节点采用投票节点3的区块链公钥并按照预先约定的加密算法对ID3进行加密得到加密后的身份信息,该加密后的身份信息记为ID3c。从而得到加密后的身份信息列表{ID1c、ID2c、ID3c}。进一步,监督节点将加密后的身份信息列表{ID1c、ID2c、ID3c}通过区块链链下的方式发送给电子投票发起方节点,电子投票发起方节点将加密后的身份信息列表{ID1c、ID2c、ID3c}存储在本地。
或者,电子投票发起方节点通过区块链链下的方式向监督节点发送身份信息列表,该身份信息列表包括多个投票节点的标识,例如,该多个投票节点的标识依次为ID1、ID2、ID3、ID4、ID5。监督节点根据每个投票节点的标识,确定该投票节点是否符合本次投票资格。例如,投票节点1、投票节点2、投票节点3符合本次投票资格,ID4、ID5对应的投票节点不符合本次投票资格。进一步,监督节点根据ID1在区块链账本中查询获得投票节点1的区块链公钥,根据ID2在区块链账本中查询获得投票节点2的区块链公钥,根据ID3在区块链账本中查询获得投票节点3的区块链公钥。进一步,监督节点采用投票节点1的区块链公钥并按照预先约定的加密算法对ID1进行加密得到加密后的身份信息,该加密后的身份信息记为ID1c。监督节点采用投票节点2的区块链公钥并按照预先约定的加密算法对ID2进行加密得到加密后的身份信息,该加密后的身份信息记为ID2c。监督节点采用投票节点3的区块链公钥并按照预先约定的加密算法对ID3进行加密得到加密后的身份信息,该加密后的身份信息记为ID3c。从而得到加密后的身份信息列表{ID1c、ID2c、ID3c}。进一步,监督节点将加密后的身份信息列表{ID1c、ID2c、ID3c}通过区块链链下的方式发送给电子投票发起方节点,电子投票发起方节点将加密后的身份信息列表{ID1c、ID2c、ID3c}存储在本地。
可选的,所述电子投票发起方节点从监督节点接收加密后的身份信息列表,包括:所述电子投票发起方节点通过区块链链下的方式从监督节点接收加密后的身份信息列表。
步骤202、所述电子投票发起方节点在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、所述监督节点的标识信息、待投票信息、投票截止时间。
具体的,电子投票发起方节点在区块链网络中以广播消息的方式广播电子投票公告信息,该电子投票公告信息可包括投票资格条件、监督节点的标识信息、待投票信息和投票截止时间。其中,监督节点的标识信息具体可以是监督节点在该区块链网络中的区块链标识、以及监督节点在现实社会中的身份信息。待投票信息具体可包括待投票内容的选项。
在一些实施例中,电子投票发起方节点生成电子投票公告信息后,电子投票公告信息可采用自己的私钥对该电子投票公告信息进行签名,进一步,将签名后的该电子投票公告信息广播到该区块链网络中。
步骤203、所述电子投票发起方节点在所述区块链网络中接收目标节点发送的投票内容,所述投票内容包括所述目标节点的私钥签名和所述目标节点采用所述目标节点的区块链公钥加密后的所述目标节点的身份信息。
当该区块链网络中的目标节点接收到签名后的该电子投票公告信息时,首先对该电子投票发起方节点的私钥签名进行验证,如果验证通过,则根据该电子投票公告信息中包括的投票资格条件,确定该目标节点是否满足该投票资格条件。如果满足,则该目标节点采用该目标节点的区块链公钥并按照预先约定的加密算法对该目标节点的身份信息进行加密。例如,该目标节点的身份信息为IDn,该目标节点采用该目标节点的区块链公钥对IDn进行加密后得到IDnc。由于IDnc是加密后的身份信息,并不是该目标节点的身份信息,从而使得该目标节点可以匿名投票。
进一步,该目标节点在该区块链网络中广播自己的投票内容,该投票内容包括该目标节点的私钥签名和IDnc。相应的,该区块链网络中的电子投票发起方节点可接收到该目标节点的投票内容。
步骤204、当所述电子投票发起方节点对所述目标节点的私钥签名验证通过后,检测所述加密后的身份信息列表中是否包括所述加密后的所述目标节点的身份信息。
当区块链网络中的电子投票发起方节点接收到该目标节点的投票内容后,首先对该目标节点的私钥签名进行验证,验证通过后,从该投票内容中提取IDnc,进一步,确定该IDnc是否在电子投票发起方节点本地存储的加密后的身份信息列表{ID1c、ID2c、ID3c}中。
步骤205、若所述加密后的身份信息列表中包括所述加密后的所述目标节点的身份信息,则确定对所述目标节点的身份信息验证通过。
如果IDnc在该{ID1c、ID2c、ID3c}中,则电子投票发起方节点确定该目标节点符合投票资格,从而确定对目标节点的身份信息验证通过。如果IDnc不在该{ID1c、ID2c、ID3c}中,则电子投票发起方节点确定该目标节点不符合投票资格。另外,电子投票发起方节点在投票截止时间结束后,可统计多个投票节点的投票内容,并且保证在一次电子投票活动中,同一个投票节点只能投票一次,如果多次投票,可以保留一次投票内容。
本发明实施例通过电子投票发起方节点在区块链网络中广播电子投票公告信息,当区块链网络中的目标节点接收到该电子投票公告信息后,采用目标节点的公钥对该目标节点的身份信息进行加密,并在该目标节点广播的投票内容中携带该加密后的身份信息,当该电子投票发起方节点在所述区块链网络中接收到目标节点发送的投票内容后,从该投票内容中提取该加密后的身份信息,并检测该加密后的身份信息是否在电子投票发起方节点本地存储的加密后的身份信息列表中,该加密后的身份信息列表包括由监督节点采用符合投票资格的投票节点的区块链公钥对所述投票节点的身份信息进行加密后得到的加密后的身份信息,从而可以对该目标节点的投票资格进行验证,使得投票节点既可以匿名投票,同时也实现了电子投票发起方节点对投票节点的身份验证,提高了投票节点的安全性,同时电子投票发起方节点还可以通过监督节点对投票节点进行有效监督,提高了电子投票的安全性。
图3为本发明另一实施例提供的基于区块链的电子投票方法流程图。在上述实施例的基础上,本实施例提供的基于区块链的电子投票方法具体包括如下步骤:
步骤301、目标节点接收电子投票发起方节点在区块链网络中广播的电子投票公告信息,所述电子投票公告信息包括:投票资格条件、所述监督节点的标识信息、待投票信息、投票截止时间。
具体的,电子投票发起方节点在区块链网络中以广播消息的方式广播电子投票公告信息,该电子投票公告信息可包括投票资格条件、监督节点的标识信息、待投票信息和投票截止时间。其中,监督节点的标识信息具体可以是监督节点在该区块链网络中的区块链标识、以及监督节点在现实社会中的身份信息。待投票信息具体可包括待投票内容的选项。
可选的,所述目标节点接收电子投票发起方节点在区块链网络中广播的电子投票公告信息,包括:所述目标节点接收电子投票发起方节点在区块链网络中广播的由所述电子投票发起方节点私钥签名的电子投票公告信息。
在一些实施例中,电子投票发起方节点生成电子投票公告信息后,电子投票公告信息可采用自己的私钥对该电子投票公告信息进行签名,进一步,将签名后的该电子投票公告信息广播到该区块链网络中。
步骤302、所述目标节点确定其是否符合所述投票资格条件。
可选的,所述目标节点确定其是否符合所述投票资格条件,包括:当所述目标节点对所述电子投票发起方节点的私钥签名验证通过后,所述目标节点确定其是否符合所述投票资格条件。
当该区块链网络中的目标节点接收到签名后的该电子投票公告信息时,首先对该电子投票发起方节点的私钥签名进行验证,如果验证通过,则根据该电子投票公告信息中包括的投票资格条件,确定该目标节点是否满足该投票资格条件。
步骤303、当所述目标节点确定所述目标节点符合所述投票资格条件时,所述目标节点采用所述目标节点的公钥对所述目标节点的身份信息进行加密,得到加密后的所述目标节点的身份信息。
如果该目标节点满足该投票资格条件,则该目标节点采用该目标节点的区块链公钥并按照预先约定的加密算法对该目标节点的身份信息进行加密。例如,该目标节点的身份信息为IDn,该目标节点采用该目标节点的区块链公钥对IDn进行加密后得到IDnc。由于IDnc是加密后的身份信息,并不是该目标节点的身份信息,从而使得该目标节点可以匿名投票。
步骤304、所述目标节点在所述区块链网络中广播投票内容,所述投票内容包括所述目标节点的私钥签名和所述加密后的所述目标节点的身份信息。
进一步,该目标节点在该区块链网络中广播自己的投票内容,该投票内容包括该目标节点的私钥签名和IDnc。相应的,该区块链网络中的电子投票发起方节点可接收到该目标节点的投票内容。
本发明实施例通过电子投票发起方节点在区块链网络中广播电子投票公告信息,当区块链网络中的目标节点接收到该电子投票公告信息后,采用目标节点的公钥对该目标节点的身份信息进行加密,并在该目标节点广播的投票内容中携带该加密后的身份信息,当该电子投票发起方节点在所述区块链网络中接收到目标节点发送的投票内容后,从该投票内容中提取该加密后的身份信息,并检测该加密后的身份信息是否在电子投票发起方节点本地存储的加密后的身份信息列表中,该加密后的身份信息列表包括由监督节点采用符合投票资格的投票节点的区块链公钥对所述投票节点的身份信息进行加密后得到的加密后的身份信息,从而可以对该目标节点的投票资格进行验证,使得投票节点既可以匿名投票,同时也实现了电子投票发起方节点对投票节点的身份验证,提高了投票节点的安全性,同时电子投票发起方节点还可以通过监督节点对投票节点进行有效监督,提高了电子投票的安全性。
图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 (11)

1.一种基于区块链的电子投票方法,其特征在于,包括:
电子投票发起方节点从监督节点接收加密后的身份信息列表,所述加密后的身份信息列表包括多个加密后的身份信息,所述加密后的身份信息是采用符合投票资格的投票节点的区块链公钥对所述投票节点的身份信息进行加密后得到的;
所述电子投票发起方节点在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、所述监督节点的标识信息、待投票信息、投票截止时间;
所述电子投票发起方节点在所述区块链网络中接收目标节点发送的投票内容,所述投票内容包括所述目标节点的私钥签名和所述目标节点采用所述目标节点的区块链公钥加密后的所述目标节点的身份信息;
当所述电子投票发起方节点对所述目标节点的私钥签名验证通过后,检测所述加密后的身份信息列表中是否包括所述加密后的所述目标节点的身份信息;
若所述加密后的身份信息列表中包括所述加密后的所述目标节点的身份信息,则确定对所述目标节点的身份信息验证通过。
2.根据权利要求1所述的方法,其特征在于,所述电子投票发起方节点从监督节点接收加密后的身份信息列表之前,所述方法还包括:
所述电子投票发起方节点向所述监督节点发送投票资格条件或身份信息列表,所述监督节点用于根据所述投票资格条件确定符合投票资格的投票节点,或者所述监督节点用于确定所述身份信息列表中符合投票资格的投票节点的身份信息。
3.根据权利要求1或2所述的方法,其特征在于,所述电子投票发起方节点从监督节点接收加密后的身份信息列表,包括:
所述电子投票发起方节点通过区块链链下的方式从监督节点接收加密后的身份信息列表。
4.一种基于区块链的电子投票方法,其特征在于,包括:
目标节点接收电子投票发起方节点在区块链网络中广播的电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息、投票截止时间;所述电子投票发起方节点用于从监督节点接收加密后的身份信息列表,所述加密后的身份信息列表包括多个加密后的身份信息,所述加密后的身份信息是采用符合投票资格的投票节点的区块链公钥对所述投票节点的身份信息进行加密后得到的;
所述目标节点确定其是否符合所述投票资格条件;
当所述目标节点确定所述目标节点符合所述投票资格条件时,所述目标节点采用所述目标节点的公钥对所述目标节点的身份信息进行加密,得到加密后的所述目标节点的身份信息;
所述目标节点在所述区块链网络中广播投票内容,所述投票内容包括所述目标节点的私钥签名和所述加密后的所述目标节点的身份信息,所述电子投票发起方节点用于在所述区块链网络中接收所述目标节点发送的投票内容,当所述电子投票发起方节点对所述目标节点的私钥签名验证通过后,检测所述加密后的身份信息列表中是否包括所述加密后的所述目标节点的身份信息,若所述加密后的身份信息列表中包括所述加密后的所述目标节点的身份信息,则确定对所述目标节点的身份信息验证通过。
5.根据权利要求4所述的方法,其特征在于,所述目标节点接收电子投票发起方节点在区块链网络中广播的电子投票公告信息,包括:
所述目标节点接收电子投票发起方节点在区块链网络中广播的由所述电子投票发起方节点私钥签名的电子投票公告信息;
所述目标节点确定其是否符合所述投票资格条件,包括:
当所述目标节点对所述电子投票发起方节点的私钥签名验证通过后,所述目标节点确定其是否符合所述投票资格条件。
6.一种电子投票发起方节点,其特征在于,包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
通过所述通讯接口从监督节点接收加密后的身份信息列表,所述加密后的身份信息列表包括多个加密后的身份信息,所述加密后的身份信息是采用符合投票资格的投票节点的区块链公钥对所述投票节点的身份信息进行加密后得到的;
通过所述通讯接口在区块链网络中广播电子投票公告信息,所述电子投票公告信息包括:投票资格条件、所述监督节点的标识信息、待投票信息、投票截止时间;
通过所述通讯接口在所述区块链网络中接收目标节点发送的投票内容,所述投票内容包括所述目标节点的私钥签名和所述目标节点采用所述目标节点的区块链公钥加密后的所述目标节点的身份信息;
对所述目标节点的私钥签名验证通过后,检测所述加密后的身份信息列表中是否包括所述加密后的所述目标节点的身份信息;
若所述加密后的身份信息列表中包括所述加密后的所述目标节点的身份信息,则确定对所述目标节点的身份信息验证通过。
7.根据权利要求6所述的电子投票发起方节点,其特征在于,所述处理器通过所述通讯接口从监督节点接收加密后的身份信息列表之前,所述处理器还用于:
通过所述通讯接口向所述监督节点发送投票资格条件或身份信息列表,所述监督节点用于根据所述投票资格条件确定符合投票资格的投票节点,或者所述监督节点用于确定所述身份信息列表中符合投票资格的投票节点的身份信息。
8.根据权利要求6或7所述的电子投票发起方节点,其特征在于,所述处理器通过所述通讯接口从监督节点接收加密后的身份信息列表时,具体用于:
所述处理器通过所述通讯接口以区块链链下的方式从监督节点接收加密后的身份信息列表。
9.一种目标节点,其特征在于,包括:
存储器;
处理器;
通讯接口;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以下操作:
通过所述通讯接口接收电子投票发起方节点在区块链网络中广播的电子投票公告信息,所述电子投票公告信息包括:投票资格条件、监督节点的标识信息、待投票信息、投票截止时间;所述电子投票发起方节点用于从监督节点接收加密后的身份信息列表,所述加密后的身份信息列表包括多个加密后的身份信息,所述加密后的身份信息是采用符合投票资格的投票节点的区块链公钥对所述投票节点的身份信息进行加密后得到的;
确定所述目标节点是否符合所述投票资格条件;
当确定所述目标节点符合所述投票资格条件时,采用所述目标节点的公钥对所述目标节点的身份信息进行加密,得到加密后的所述目标节点的身份信息;
通过所述通讯接口在所述区块链网络中广播投票内容,所述投票内容包括所述目标节点的私钥签名和所述加密后的所述目标节点的身份信息,所述电子投票发起方节点用于在所述区块链网络中接收所述目标节点发送的投票内容,当所述电子投票发起方节点对所述目标节点的私钥签名验证通过后,检测所述加密后的身份信息列表中是否包括所述加密后的所述目标节点的身份信息,若所述加密后的身份信息列表中包括所述加密后的所述目标节点的身份信息,则确定对所述目标节点的身份信息验证通过。
10.根据权利要求9所述的目标节点,其特征在于,所述处理器通过所述通讯接口接收电子投票发起方节点在区块链网络中广播的电子投票公告信息时,具体用于:
所述处理器通过所述通讯接口接收电子投票发起方节点在区块链网络中广播的由所述电子投票发起方节点私钥签名的电子投票公告信息;
所述处理器确定所述目标节点是否符合所述投票资格条件时,具体用于:
当所述处理器对所述电子投票发起方节点的私钥签名验证通过后,确定所述目标节点是否符合所述投票资格条件。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-5任一项所述的方法。
CN201911237871.4A 2019-12-05 2019-12-05 基于区块链的电子投票方法、设备及存储介质 Active CN111314095B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911237871.4A CN111314095B (zh) 2019-12-05 2019-12-05 基于区块链的电子投票方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911237871.4A CN111314095B (zh) 2019-12-05 2019-12-05 基于区块链的电子投票方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111314095A CN111314095A (zh) 2020-06-19
CN111314095B true CN111314095B (zh) 2023-01-31

Family

ID=71146647

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911237871.4A Active CN111314095B (zh) 2019-12-05 2019-12-05 基于区块链的电子投票方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111314095B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108616362A (zh) * 2018-04-16 2018-10-02 广州杰赛科技股份有限公司 投票信息生成方法和装置
CN109286497A (zh) * 2018-09-06 2019-01-29 贵阳信息技术研究院(中科院软件所贵阳分部) 一种基于区块链的不记名投票和多条件计票的方法
CN109934988A (zh) * 2019-02-15 2019-06-25 哈尔滨工程大学 一种基于区块链的电子投票方法
CN110110555A (zh) * 2019-04-24 2019-08-09 深圳前海微众银行股份有限公司 一种区块链中的投票方法及装置
CN110400410A (zh) * 2019-07-31 2019-11-01 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种电子投票系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657456B2 (en) * 2005-03-18 2010-02-02 Pitney Bowes Inc. Method and system for electronic voting using identity based encryption
US11823501B2 (en) * 2017-08-18 2023-11-21 Oracle International Corporation Associating voting sessions with tabulation machines in electronic voting

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108616362A (zh) * 2018-04-16 2018-10-02 广州杰赛科技股份有限公司 投票信息生成方法和装置
CN109286497A (zh) * 2018-09-06 2019-01-29 贵阳信息技术研究院(中科院软件所贵阳分部) 一种基于区块链的不记名投票和多条件计票的方法
CN109934988A (zh) * 2019-02-15 2019-06-25 哈尔滨工程大学 一种基于区块链的电子投票方法
CN110110555A (zh) * 2019-04-24 2019-08-09 深圳前海微众银行股份有限公司 一种区块链中的投票方法及装置
CN110400410A (zh) * 2019-07-31 2019-11-01 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种电子投票系统

Also Published As

Publication number Publication date
CN111314095A (zh) 2020-06-19

Similar Documents

Publication Publication Date Title
CN108734028B (zh) 基于区块链的数据管理方法、区块链节点及存储介质
CN110351363B (zh) 数据备份方法、设备及计算机可读存储介质
CN110958253A (zh) 基于区块链的电子投票方法、设备及存储介质
CN111314067B (zh) 区块存储方法、装置、计算机设备及存储介质
CN102984156B (zh) 一种可验证的分布式隐私数据比较与排序方法及装置
CN108769010B (zh) 节点受邀注册的方法和装置
CN110958107A (zh) 基于区块链的电子投票方法、设备及存储介质
CN110351276B (zh) 数据处理方法、设备及计算机可读存储介质
CN105007301A (zh) 基于社交平台的电子证据处理系统及处理方法
CN110830452A (zh) 基于区块链的电子投标方法、设备及存储介质
CN110827121A (zh) 基于区块链的电子投标方法、设备及存储介质
CN110351364B (zh) 数据存储方法、设备及计算机可读存储介质
CN110933098B (zh) 基于区块链的电子投票方法、设备及存储介质
CN110866261A (zh) 基于区块链的数据处理方法、装置及存储介质
CN110337100B (zh) 基于区块链的一号多卡业务副卡添加方法、终端以及系统
CN111047763A (zh) 基于区块链的电子投票方法、设备及存储介质
CN110796447A (zh) 基于区块链的电子投标监管方法、设备及存储介质
CN110796448A (zh) 基于区块链的智能合约验证方法、参与节点及介质
CN111865761B (zh) 一种基于区块链智能合约的社交聊天信息存证方法
CN110995711A (zh) 基于区块链的电子投票方法、设备及存储介质
CN105868987A (zh) 一种在设备之间共享信息的方法和系统
CN113141404A (zh) 智能网关、及数据共享系统
CN110958120B (zh) 基于区块链的电子投票方法、设备及存储介质
CN111314095B (zh) 基于区块链的电子投票方法、设备及存储介质
CN117033012A (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
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.

GR01 Patent grant
GR01 Patent grant