CN110110555B - 一种区块链中的投票方法及装置 - Google Patents

一种区块链中的投票方法及装置 Download PDF

Info

Publication number
CN110110555B
CN110110555B CN201910332167.0A CN201910332167A CN110110555B CN 110110555 B CN110110555 B CN 110110555B CN 201910332167 A CN201910332167 A CN 201910332167A CN 110110555 B CN110110555 B CN 110110555B
Authority
CN
China
Prior art keywords
committee
alliance chain
voting
private key
service unit
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
CN201910332167.0A
Other languages
English (en)
Other versions
CN110110555A (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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910332167.0A priority Critical patent/CN110110555B/zh
Publication of CN110110555A publication Critical patent/CN110110555A/zh
Priority to PCT/CN2020/083842 priority patent/WO2020216065A1/zh
Application granted granted Critical
Publication of CN110110555B publication Critical patent/CN110110555B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME 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/00Voting apparatus

Abstract

本发明实施例涉及科技金融(Fintech)领域,尤其涉及一种区块链(Block chain)中的投票方法及装置,用以提升联盟链投票的平等性和可信性,同时对投票者身份提供隐私保护。本发明实施例包括:群组服务单元接收N个联盟链委员的投票请求,任一个投票请求包含一个联盟链委员的密码承诺;针对一个密码承诺,群组服务单元根据密码承诺,确定一个联盟链委员的投票参数;群组服务单元将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若待验证结果与群管理私钥相同,则确定投票内容通过;投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与群管理私钥相同。

Description

一种区块链中的投票方法及装置
技术领域
本发明涉及科技金融(Fintech)领域,尤其涉及一种区块链中的投票方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Finteh)转变,区块链(Block chain)技术也不例外,但由于金融行业的安全性、实时性要求,也对技术提出的更高的要求。
联盟链的治理、维护、准入、权限控制的工作均由联盟链委员会完成,联盟链委员会可以执行初始化区块链、准入节点、改变链状态等操作,是联盟链中权力最大的主体。因此,如何让联盟链委员地位对等,同时又能保证整条链健壮,稳定的运行,是联盟链委员会选举制度需要考虑的重要原则。
现有方案中,联盟链委员会一般由联盟链成员通过投票选举形成。一旦确定联盟链委员会后,联盟链委员会中的每个委员都拥有整条链的管理私钥。每次需要联盟链委员会通过投票进行联盟链的管理维护时,采用传统的联盟链匿名投票方式,会有中心化的群管理存在,即需要某些联盟链委员作为整个投票过程的管理者收集并统计所有委员的投票,这样无法满足联盟链委员地位对等的要求。同时,投票过程是不匿名的,无法保证每个联盟链委员的隐私诉求。
发明内容
本申请提供一种区块链中的投票方法及装置,用以提升联盟链投票的平等性和可信性,同时对投票者身份提供隐私保护。
本发明实施例提供的一种区块链中的投票方法,包括:
群组服务单元接收N个联盟链委员的投票请求,其中任一个投票请求中包含一个联盟链委员的密码承诺;
针对一个密码承诺,所述群组服务单元根据所述密码承诺,确定一个联盟链委员的投票参数;
所述群组服务单元将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若所述待验证结果与所述群管理私钥相同,则确定投票内容通过;所述投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与所述群管理私钥相同。
一种可选的实施例中,所述群组服务单元接收N个联盟链委员的投票请求之前,还包括:
所述群组服务单元接收M个联盟链委员发送的启动请求,其中任一启动请求中包含一个联盟链委员利用所述投票算法对所述联盟链委员的本地私钥计算得到的启动结果;
所述群组服务单元利用预存的公共函数的值对所述M个启动结果进行验证,若验证通过的启动结果的数量大于第二阈值,则所述群组服务单元启动。
一种可选的实施例中,所述群组服务单元接收N个联盟链委员的投票请求之前,还包括:
所述群组服务单元接收任一联盟链委员发送的初始化请求,所述初始化请求中包含所有联盟链委员的初始化参数;
所述群组服务单元利用群签名算法,根据所有联盟链委员的初始化参数生成所述群管理私钥以及对应的群管理公钥;
所述群组服务单元根据所述群管理私钥为每一个联盟链委员生成一个私钥分片,并将私钥分片向对应的联盟链委员发送;所述私钥分片用于所述联盟链委员向所述群组服务单元发送投票请求时,作为投票参数生成密码承诺以表明同意投票内容;
所述群组服务单元生成所述群管理公钥与每一个联盟链委员的身份标识的映射关系,并将所有映射关系记录于区块链的委员会管理合约中;
所述群组服务单元将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上。
一种可选的实施例中,所述群组服务单元根据所有联盟链委员的初始化参数生成所述群管理私钥以及对应的群管理公钥之后,还包括:
所述群组服务单元利用所述群管理私钥以及所述群管理公钥,为每一个联盟链委员生成低权限管理私钥;
所述群组服务单元将所述低权限管理私钥向对应的联盟链委员发送。
一种可选的实施例中,所述群组服务单元将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上之后,还包括:
所述群组服务单元接收委员退出消息,所述委员退出消息中包含退出的联盟链委员的身份标识;
所述群组服务单元根据所述联盟链委员的身份标识,从所述委员会管理合约中查找出所述联盟链委员的映射关系,并从所述区块链中查找出所述联盟链委员的本地公钥;
所述群组服务单元将所述联盟链委员的映射关系以及所述联盟链委员的本地公钥设置为无效。
一种可选的实施例中,所述投票请求中还包括所述联盟链委员利用本地私钥生成的数字证书;
所述群组服务单元根据所述密码承诺,确定一个联盟链委员的投票参数,包括:
所述群组服务单元利用所述联盟链委员的本地公钥对所述数字证书进行验证;
所述群组服务单元在验证通过后,解析所述密码承诺,得到所述联盟链委员的投票参数。
一种可选的实施例中,还包括:
所述群组服务单元接收委员追踪请求,所述委员追踪请求中包括所述群管理私钥以及待追踪委员的签名;
所述群组服务单元对所述群管理私钥验证通过后,依据所述待追踪委员的签名,从委员会管理合约中查找出所述待追踪委员的身份标识。
一种可选的实施例中,还包括:
所述群组服务单元将所述群管理私钥以及对应的群管理公钥向监管机构发送,以使所述监管机构对所有联盟链委员的信息进行监管和追溯。
一种区块链中的投票装置,包括:
收发模块,用于接收N个联盟链委员的投票请求,其中任一个投票请求中包含一个联盟链委员的密码承诺;
确定模块,用于针对一个密码承诺,根据所述密码承诺,确定一个联盟链委员的投票参数;
验证模块,用于将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若所述待验证结果与所述群管理私钥相同,则确定投票内容通过;所述投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与所述群管理私钥相同。
一种可选的实施例中,所述收发模块,还用于接收M个联盟链委员发送的启动请求,其中任一启动请求中包含一个联盟链委员利用所述投票算法对所述联盟链委员的本地私钥计算得到的启动结果;
所述验证模块,还用于利用预存的公共函数的值对所述M个启动结果进行验证,若验证通过的启动结果的数量大于第二阈值,则所述群组服务单元启动。
一种可选的实施例中,所述收发模块,还用于接收任一联盟链委员发送的初始化请求,所述初始化请求中包含所有联盟链委员的初始化参数;
还包括生成模块,用于利用群签名算法,根据所有联盟链委员的初始化参数生成所述群管理私钥以及对应的群管理公钥;根据所述群管理私钥为每一个联盟链委员生成一个私钥分片,生成所述群管理公钥与每一个联盟链委员的身份标识的映射关系;
所述收发模块,还用于将私钥分片向对应的联盟链委员发送;所述私钥分片用于所述联盟链委员向所述群组服务单元发送投票请求时,作为投票参数生成密码承诺以表明同意投票内容;
还包括记录模块,用于将所有映射关系记录于区块链的委员会管理合约中;将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上。
一种可选的实施例中,所述生成模块,还用于利用所述群管理私钥以及所述群管理公钥,为每一个联盟链委员生成低权限管理私钥;
所述收发模块,还用于将所述低权限管理私钥向对应的联盟链委员发送。
一种可选的实施例中,所述收发模块,还用于接收委员退出消息,所述委员退出消息中包含退出的联盟链委员的身份标识;
所述记录模块,还用于根据所述联盟链委员的身份标识,从所述委员会管理合约中查找出所述联盟链委员的映射关系,并从所述区块链中查找出所述联盟链委员的本地公钥;将所述联盟链委员的映射关系以及所述联盟链委员的本地公钥设置为无效。
一种可选的实施例中,所述投票请求中还包括所述联盟链委员利用本地私钥生成的数字证书;
所述确定模块,具体用于:
利用所述联盟链委员的本地公钥对所述数字证书进行验证;
在验证通过后,解析所述密码承诺,得到所述联盟链委员的投票参数。
一种可选的实施例中,所述收发模块,还用于接收委员追踪请求,所述委员追踪请求中包括所述群管理私钥以及待追踪委员的签名;
所述记录模块,还用于对所述群管理私钥验证通过后,依据所述待追踪委员的签名,从委员会管理合约中查找出所述待追踪委员的身份标识。
一种可选的实施例中,所述收发模块还用于:
将所述群管理私钥以及对应的群管理公钥向监管机构发送,以使所述监管机构对所有联盟链委员的信息进行监管和追溯。
本发明实施例还提供一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的方法。
本发明实施例还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上所述的方法。
本发明实施例中,联盟链委员会共同启动群组服务单元。需进行投票时,群组服务单元接收联盟链委员发送的投票请求,每一个投票请求中包含一个联盟链委员的密码承诺,群组服务单元可根据密码承诺确定该联盟链委员的投票参数。群组服务单元将所有投票参数输入投票算法中进行计算,并将计算得到的待验证结果与群管理私钥进行对比。若待验证结果与群管理私钥相同,则确定投票内容通过。这里的投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与群管理私钥相同。本发明实施例中,群组服务单元收集联盟链委员的投票,并利用投票算法统计投票结果,联盟链委员同意投票内容时,将正确的投票参数发送至群组服务单元,不同意投票内容时,将错误的投票参数发送至群组服务单元。群组服务单元在统计过程中无需知道联盟链委员的具体信息,也不知道每个联盟链委员是否同意投票内容,只需将所有投票参数输入投票算法,当正确的投票参数个数大于第一阈值时,即表明有个数超过第一阈值的联盟链委员同意该投票内容,确定投票内容通过,从而在联盟链委员会投票过程中,各个联盟链之间的地位是对等的;且联盟链委员的操作是匿名的,保证了联盟链委员的操作和身份的隐私性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种可能的系统构架的结构示意图;
图2为本发明实施例提供的一种区块链中投票方法的流程示意图;
图3为本发明具体实施例一提供的联盟链委员会的初始化的流程示意图;
图4为本发明具体实施例二提供的联盟链委员加入的流程示意图;
图5为本发明实施例提供的一种区块链中投票装置的结构示意图;
图6为本发明实施例提供的电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1所示,本发明实施例所适用的一种系统架构,包括联盟链委员101、联盟链成员102和待准入成员103。可选的,还可以包括监管机构104。
联盟链委员101共同维护联盟链委员会,联盟链委员101通过投票的方式完成对联盟链委员会和联盟链成员的操作。每个联盟链委员具有自己的低权限管理私钥和自己的身份标识。联盟链委员会接收联盟链成员的加入请求,联盟链委员共同启动群组服务单元进行投票,并通过投票决定是否通过联盟链成员加入联盟链委员会、联盟链委员从联盟链委员会中剔除等操作。群组服务单元对区块链上的委员会管理合约执行读写操作,当有联盟链委员加入时,将该联盟链委员的身份标识记录于委员会管理合约中;联盟链委员退出时,将该联盟链委员的身份标识设置为无效,或直接将该联盟链委员的身份标识从委员会管理合约中删除。
联盟链成员102为经过联盟链委员许可,加入到联盟链之中的节点。联盟链成员102拥有与其他节点进行通信的节点证书和私钥,可以正常地与其他联盟链成员进行网络通信。联盟链成员102没有投票权,但是可以通过发送加入请求成为拥有投票权的联盟链委员。
待准入成员103为递交了加入请求但尚未加入联盟链的主体。待准入成员103可以利用本地私钥产生证书请求文件,发送给联盟链委员101,待联盟链委员101同意后,成为联盟链成员102,并将其证书记入区块链上的联盟链成员合约中。
监管机构104存有联盟链委员会的群管理私钥,可以在监管时刻打开区块链上的合约,查看合约中联盟链委员或联盟链成员信息。监管机构104是被动的,不会干预联盟链的运行和治理。
为了便于理解,下面对本发明实施例中可能涉及的名词进行定义和解释。
区块链:是由一系列区块组成的一条链,每个块上除了记录本块的数据还会记录上一块的Hash(哈希)值,通过这种方式组成一条链。区块链的核心理念有两个,一个是密码学技术,另一个是去中心化思想,基于这两个理念做到区块链上的历史信息无法被篡改。一个区块由块头和块体组成,其中块头定义包括该区块高度h,上一个区块的Hash值prevHash等重要字段,而块体主要存储交易数据。
联盟链:只针对特定某个群体的成员和有限的第三方,内部指定多个预选的节点为记账人,每个块的生成由所有的预选节点共同决定,其他接入节点可以参与交易,但不过问记账过程,其他第三方可以通过该区块链开放的API(Application ProgrammingInterface,应用程序编程接口)进行限定查询。为了获得更好的性能,联盟链对于共识或验证节点的配置和网络环境有一定要求。联盟链中存在准入机制,可以使得交易性能更容易提高,避免由参次不齐的参与者产生的一些问题。
联盟链委员会:联盟链整个准入机制由联盟链委员会管理。联盟链委员会负责审核、修改、删除联盟链上的节点和帐号相关资料。如设定某一个联盟链的信息和进行初始化部署,组织各机构加入联盟链,为各机构分配对应的机构管理员和交易员权限,管理链上应用的生命周期等。
为了提升联盟链投票的平等性和可信性,基于上述架构,本发明实施例提供了一种区块链中的投票方法,如图2所示,本发明实施例提供的区块链中的投票方法包括以下步骤:
步骤201、群组服务单元接收N个联盟链委员的投票请求,其中任一个投票请求中包含一个联盟链委员的密码承诺。
上述步骤中的密码承诺为联盟链委员对投票参数进行一定的计算生成的。若联盟链委员同意投票内容,则利用正确的投票参数得到密码承诺;若联盟链委员不同意投票内容,则利用错误的投票参数得到密码承诺。
步骤202、针对一个密码承诺,所述群组服务单元根据所述密码承诺,确定一个联盟链委员的投票参数。
具体实施过程中,群组服务单元接收到N个密码承诺后,根据一个密码承诺确定一个投票参数,但群组服务单元并不知道该投票参数是否正确,因此,群组服务单元无法获知每一个联盟链委员是否同意该投票内容的意见,从而保证了投票的匿名性和私密性。
步骤203、所述群组服务单元将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若所述待验证结果与所述群管理私钥相同,则确定投票内容通过。所述投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与所述群管理私钥相同。
具体来说,投票算法中输入正确的投票参数的个数大于第一阈值时,待验证结果与群管理私钥相同,此时表明N个联盟链委员中有超过第一阈值个数的联盟链委员同意该投票内容,因此确定投票内容通过。而投票算法中输入正确的投票参数的个数小于第一阈值时,得到的待验证结果与群管理私钥不同,此时表明N个联盟链委员中有较多个数的联盟链委员不同意该投票内容,因此确定投票内容不通过。
本发明实施例中,群组服务单元收集联盟链委员的投票,并利用投票算法统计投票结果,联盟链委员同意投票内容时,将正确的投票参数发送至群组服务单元,不同意投票内容时,将错误的投票参数发送至群组服务单元。群组服务单元在统计过程中无需知道联盟链委员的具体信息,也不知道每个联盟链委员是否同意投票内容,只需将所有投票参数输入投票算法,当正确的投票参数个数大于第一阈值时,即表明有个数超过第一阈值的联盟链委员同意该投票内容,确定投票内容通过,从而在联盟链委员会投票过程中,各个联盟链之间的地位是对等的;且联盟链委员的操作是匿名的,保证了联盟链委员的操作和身份的隐私性。
为了保证投票的有效性,所述投票请求中还包括所述联盟链委员利用本地私钥生成的数字证书;
所述群组服务单元根据所述密码承诺,确定一个联盟链委员的投票参数,包括:
所述群组服务单元利用所述联盟链委员的本地公钥对所述数字证书进行验证;
所述群组服务单元在验证通过后,解析所述密码承诺,得到所述联盟链委员的投票参数。
具体地,联盟链委员还利用本地私钥对密码承诺进行签名,得到数字证书。群组服务单元接收到数字证书后,利用该联盟链委员的本地私钥对应的本地公钥对数字证书进行验证。由于只有联盟链委员具有投票的权力,因此只有验证通过,证明该密码承诺为联盟链委员生成,群组服务单元才会对密码承诺进行解析,得到该联盟链委员的投票参数。从而保证了投票的安全性和有效性。
本发明实施例在进行投票之前,需启动群组服务单元,并生成联盟链委员会的投票参数,这里的投票参数可以包括群管理私钥、群管理公钥、私钥分片等。所述群组服务单元接收N个联盟链委员的投票请求之前,还包括:
所述群组服务单元接收M个联盟链委员发送的启动请求,其中任一启动请求中包含一个联盟链委员利用所述投票算法对所述联盟链委员的本地私钥计算得到的启动结果;
所述群组服务单元利用预存的公共函数的值对所述M个启动结果进行验证,若验证通过的启动结果的数量大于第二阈值,则所述群组服务单元启动。
具体来说,群组服务单元的启动需足够数量的联盟链委员共同发起。联盟链委员利用约定的投票算法,对本地私钥计算得到启动结果,并向群组服务单元发送。群组服务单元接收到启动请求后,利用预存的公共函数的值对启动结果进行验证。与该公共函数的值相等的启动结果为验证通过。若验证通过的启动结果的数量大于第二阈值,则表明有超过第二阈值的联盟链委员向群组服务单元发送启动请求,则该群组服务单元启动。
群组服务单元启动后,为各个联盟链委员分发投票参数。所述群组服务单元接收N个联盟链委员的投票请求之前,还包括:
所述群组服务单元接收任一联盟链委员发送的初始化请求,所述初始化请求中包含所有联盟链委员的初始化参数;
所述群组服务单元利用群签名算法,根据所有联盟链委员的初始化参数生成所述群管理私钥以及对应的群管理公钥;
所述群组服务单元根据所述群管理私钥为每一个联盟链委员生成一个私钥分片,并将私钥分片向对应的联盟链委员发送;所述私钥分片用于所述联盟链委员向所述群组服务单元发送投票请求时,作为投票参数生成密码承诺以表明同意投票内容;
所述群组服务单元生成所述群管理公钥与每一个联盟链委员的身份标识的映射关系,并将所有映射关系记录于区块链的委员会管理合约中;
所述群组服务单元将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上。
具体实施过程中,可以是一个联盟链委员向群组服务单元发送初始化请求,也可以是多个或全部联盟链委员向群组服务单元发送初始化请求。所有联盟链委员的初始化参数都被发送给群组服务单元,以使群组服务单元可以利用群签名算法,基于所有初始化参数生成群管理私钥和群管理公钥。本发明实施例中是任一联盟链委员向群组服务单元发送初始化请求,且由该联盟链委员将所有联盟链委员的初始化参数向群组服务单元发送。本发明实施例中每一个联盟链委员都会在本地产生初始化参数,用si表示。每个联盟链委员利用自身的本地私钥ki对初始化参数si签名后,进行广播,这样每个联盟链委员均可收集到其余联盟链委员的初始化参数,即每个联盟链委员均具有所有联盟链委员的初始化参数。
进一步地,本发明实施例中公共函数的值也可以是基于所有联盟链委员的初始化参数值计算得到,即以各联盟链委员的初始化参数为公共函数f的参数,公共函数的值可以由f(s1,s2…sn)计算得到。
群组服务单元接收到所有联盟链委员的初始化参数后,对各函数进行验证,验证通过后,生成群管理私钥Pri和群管理公钥Pub。群组服务单元利用多方计算,根据群管理私钥为每一个联盟链委员生成一个私钥分片,并将私钥分片向对应的联盟链委员发送。私钥分片用于联盟链委员向群组服务单元发送投票请求时,作为投票参数生成密码承诺以表明该联盟链委员同意投票内容。也就是说,联盟链中有较为重要的事宜,如联盟链委员的加入、退出、追溯等,需要联盟链委员投票决定,各联盟链委员将自身的私钥分片作为投票参数发送给群组服务单元,以表明同意投票内容;若某联盟链委员不同意投票内容,则该联盟链委员可以将投票参数设置为与私钥分片不同,再发送至群组服务单元。
群组服务单元还生成群管理公钥与每一个联盟链委员的身份标识的映射关系,例如(Pub,Ri),并将映射关系部署到区块链的委员会管理合约中。此外,群组服务单元还将每一个联盟链委员的本地公钥存储于区块链上,用于验证联盟链委员的本地私钥的签名。通过以上步骤,生成了联盟链委员会的投票参数,完成联盟链委员会的初始化。
为了便于联盟链委员管理整个联盟链,所述群组服务单元根据所有联盟链委员的初始化参数生成所述群管理私钥以及对应的群管理公钥之后,还包括:
所述群组服务单元利用所述群管理私钥以及所述群管理公钥,为每一个联盟链委员生成低权限管理私钥;
所述群组服务单元将所述低权限管理私钥向对应的联盟链委员发送。
上述私钥分片用于联盟链委员向群组服务单元发送投票请求,应用权限较高,应用的场景为联盟链中较为重要的事宜,一般为与联盟链委员相关的事宜。而低权限管理私钥应用的场景为联盟链中重要程度较低的事宜,一般为与联盟链成员相关的事宜,例如主体申请加入联盟链成为联盟链成员时,向某一个联盟链委员发送加入请求,只需一个联盟链委员的赞同,该主体即可加入。群组服务单元为每一个联盟链委员生成低权限管理私钥,并将低权限管理私钥向对应的联盟链委员发送。
初始化完成后,联盟链委员会中的联盟链委员变更时,所有联盟链委员投票决定。具体可以为,联盟链成员使用自己的本地私钥生成加入请求文件向联盟链委员会发送,加入请求文件中还包括该联盟链成员的本地公钥。每个联盟链委员对加入请求文件进行验证,并向群组服务单元发送投票请求,投票请求中包含密码承诺。
群组服务单元执行步骤201至步骤203,确定是否通过投票内容,即是否同意该联盟链成员加入联盟链委员会。若通过,则群组服务单元根据群管理私钥为新的联盟链委员生成私钥分片,并将私钥分片向新的联盟链委员发送。同时,群组服务单元生成群管理公钥与该新的联盟链委员的身份标识的映射关系,并将该映射关系记录于区块链的委员会管理合约中,并且将该新的联盟链委员的本地公钥存储于所述区块链上。
当联盟链委员会中有联盟链委员退出时,所述群组服务单元将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上之后,还包括:
所述群组服务单元接收委员退出消息,所述委员退出消息中包含退出的联盟链委员的身份标识;
所述群组服务单元根据所述联盟链委员的身份标识,从所述委员会管理合约中查找出所述联盟链委员的映射关系,并从所述区块链中查找出所述联盟链委员的本地公钥;
所述群组服务单元将所述联盟链委员的映射关系以及所述联盟链委员的本地公钥设置为无效。
具体实施过程中,群组服务单元接收委员退出消息,该委员退出消息可以是退出的联盟链委员向群组服务单元发送,也可以是其余任一联盟链委员向群组服务单元发送。群组服务单元根据委员退出消息中包含的身份标识,从委员会管理合约中查找出该退出的联盟链委员的映射关系,并从区块链中查找出退出的联盟链委员的本地公钥,将两者均设置为无效。此外,群组服务单元还将联盟链委员会的最大请求总人数减一。这样,退出的联盟链委员再利用本地私钥产生的群签名去访问对应的资源,或进行投票等操作时,签名验证无效。
进一步地,本发明实施例为了保证联盟链以及联盟链委员会的合法性,还设置了监管机制。所述群组服务单元将所述群管理私钥以及对应的群管理公钥向监管机构发送,以使所述监管机构对所有联盟链委员的信息进行监管和追溯。这样,本发明实施例中的监管机构可追踪非法操作,使得联盟链委员会具有可监管特性,保障了委员会整体合法性。同时,由于监管机构是惰性的,不会干预联盟链的运行和治理。
可选的,本发明实施例中的追踪异常操作的发起者可以是监管机构,也可以是联盟链委员会。若发起者为监管机构,由于监管机构中存在完整的群管理私钥,可以直接利用群管理私钥向群组服务单元发起委员追踪请求。而若发起者为联盟链委员会,由于每一个联盟链委员均没有完整的群管理私钥,因此需要通过投票恢复完整的群管理私钥。
之后,本发明实施例还包括:
所述群组服务单元接收委员追踪请求,所述委员追踪请求中包括所述群管理私钥以及待追踪委员的签名;
所述群组服务单元对所述群管理私钥验证通过后,依据所述待追踪委员的签名,从委员会管理合约中查找出所述待追踪委员的身份标识。
具体地,当群组服务单元得到群管理私钥后,获取对应签名的相关证书,从而达到追踪资源异常访问者信息的目的。
总的来说,本发明实施例中每个联盟链委员具有两个公钥、两个私钥以及一个私钥分片。其中,本地私钥与本地公钥相对应,本地私钥和本地公钥用于进行群签名,以证明联盟链委员的身份。私钥分片为根据群管理私钥生成的,用于联盟链委员对联盟链委员会中较为关键的事宜进行投票;低权限管理私钥也根据群管理私钥生成,用于联盟链委员对联盟链中一般事宜进行处理。群管理私钥与每个联盟链委员的低权限管理私钥均与群管理公钥相对应。
基于上述联盟链委员会的投票机制,本发明实施例提供了一套安全、对等、匿名、有效、可监管审计、可追踪的联盟链委员会投票方案。联盟链委员会投票期间,每个联盟链委员的地位对等。同时保证联盟链委员的操作匿名。
为了更清楚地理解本发明,下面以具体实施例对上述流程进行详细描述,实施例一为联盟链委员会的初始化过程,具体实施例的步骤如图3所示,包括:
步骤S301:所有N个联盟链委员共同在本地产生初始化参数,记为s1、s2、si、……sN
步骤S302:第i个联盟链委员利用本地私钥ki对初始化参数进行si签名,并广播。
步骤S303:N个联盟链委员向群组服务单元发送启动请求,每个启动请求中包含一个联盟链委员利用投票算法Q对联盟链委员的本地私钥ki计算得到的启动结果Q(ki)。
步骤S304:群组服务单元利用预存的公共函数的值F对接收到的启动结果进行验证,若通过的启动结果数量大于第二阈值,则执行步骤305,否则执行步骤306。
步骤S305:群组服务单元向所有联盟链委员反馈启动成功的消息,然后执行步骤307。
步骤S306:群组服务单元向所有联盟链委员失败消息。
步骤S307:任一联盟链委员向群组服务单元发送初始化请求,初始化请求中包含所有联盟链委员的初始化参数s1、s2、si、……sN
步骤S308:群组服务单元利用公共函数f对初始化参数进行计算,若得到f(s1、s2、si、……sN)=F,则执行步骤S309,否则执行步骤306。
步骤S309:群组服务单元利用群签名算法,根据所有联盟链委员的初始化参数s1、s2、si、……sN生成群管理私钥Pri以及对应的群管理公钥Pub,并通过安全信道向监管机构发送。
步骤S310:群组服务单元根据群管理私钥Pri为第i个联盟链委员生成私钥分片Pri(si)以及低权限管理私钥GSK(si),并通过安全信道向每个联盟链委员发送。
步骤S311:群组服务单元生成群管理公钥Pub与第i个联盟链委员的身份标识Ri的映射关系(Pub,Ri),并将映射关系(Pub,Ri)记录于区块链的委员会管理合约中。
步骤S312:群组服务单元将第i个联盟链委员的本地公钥Pki加密存储于区块链上。
具体实施例二为联盟链委员加入过程,具体实施例的步骤如图4所示,包括:
步骤S401:联盟链成员使用本地私钥生成加入请求文件,发送给联盟链委员会,加入请求文件中包含该联盟链成员的本地公钥。
步骤S402:针对联盟链委员会中的任一联盟链委员,验证加入请求文件和证书。
步骤S403:联盟链委员验证通过后向群组服务单元发起投票请求,投票请求中包含联盟链委员的密码承诺以及该联盟链委员利用本地私钥签名得到的证书。
步骤S404:群组服务单元对联盟链委员的证书进行验证,通过后根据密码承诺,确定联盟链委员的投票参数。
步骤S405:群组服务单元将所有投票参数输入投票算法Q中进行计算,并将计算得到的待验证结果与预存的群管理私钥Pri进行对比,若两者相同,则确定投票内容通过,即通过联盟链成员的加入请求。
步骤S406:群组服务单元利用群管理私钥Pri为新的联盟链委员生成私钥分片Pri(sx)以及低权限管理私钥GSK(sx),并通过安全信道向新的联盟链委员发送。
步骤S407:群组服务单元生成群管理公钥Pub与新的联盟链委员的身份标识Rx的映射关系(Pub,Rx),并将映射关系(Pub,Rx)记录于区块链的委员会管理合约中。
步骤S408:群组服务单元将新的联盟链委员的本地公钥Pkx加密存储于区块链上。
本发明实施例还提供了一种区块链中的投票装置,如图5所示,包括:
收发模块501,用于接收N个联盟链委员的投票请求,其中任一个投票请求中包含一个联盟链委员的密码承诺;
确定模块502,用于针对一个密码承诺,根据所述密码承诺,确定一个联盟链委员的投票参数;
验证模块503,用于将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若所述待验证结果与所述群管理私钥相同,则确定投票内容通过;所述投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与所述群管理私钥相同。
可选的,所述收发模块501,还用于接收M个联盟链委员发送的启动请求,其中任一启动请求中包含一个联盟链委员利用所述投票算法对所述联盟链委员的本地私钥计算得到的启动结果;
所述验证模块503,还用于利用预存的公共函数的值对所述M个启动结果进行验证,若验证通过的启动结果的数量大于第二阈值,则所述群组服务单元启动。
可选的,所述收发模块501,还用于接收任一联盟链委员发送的初始化请求,所述初始化请求中包含所有联盟链委员的初始化参数;
还包括生成模块504,用于利用群签名算法,根据所有联盟链委员的初始化参数生成所述群管理私钥以及对应的群管理公钥;根据所述群管理私钥为每一个联盟链委员生成一个私钥分片,生成所述群管理公钥与每一个联盟链委员的身份标识的映射关系;
所述收发模块501,还用于将私钥分片向对应的联盟链委员发送;所述私钥分片用于所述联盟链委员向所述群组服务单元发送投票请求时,作为投票参数生成密码承诺以表明同意投票内容;
还包括记录模块505,用于将所有映射关系记录于区块链的委员会管理合约中;将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上。
可选的,所述生成模块504,还用于利用所述群管理私钥以及所述群管理公钥,为每一个联盟链委员生成低权限管理私钥;
所述收发模块501,还用于将所述低权限管理私钥向对应的联盟链委员发送。
可选的,所述收发模块501,还用于接收委员退出消息,所述委员退出消息中包含退出的联盟链委员的身份标识;
所述记录模块505,还用于根据所述联盟链委员的身份标识,从所述委员会管理合约中查找出所述联盟链委员的映射关系,并从所述区块链中查找出所述联盟链委员的本地公钥;将所述联盟链委员的映射关系以及所述联盟链委员的本地公钥设置为无效。
可选的,所述确定模块502,具体用于:
利用所述联盟链委员的本地公钥对所述数字证书进行验证;
在验证通过后,解析所述密码承诺,得到所述联盟链委员的投票参数。
可选的,所述收发模块501,还用于接收委员追踪请求,所述委员追踪请求中包括所述群管理私钥以及待追踪委员的签名;
所述记录模块505,还用于对所述群管理私钥验证通过后,依据所述待追踪委员的签名,从委员会管理合约中查找出所述待追踪委员的身份标识。
可选的,所述收发模块501还用于:
将所述群管理私钥以及对应的群管理公钥向监管机构发送,以使所述监管机构对所有联盟链委员的信息进行监管和追溯。
基于相同的原理,本发明还提供一种电子设备,如图6所示,包括:
包括处理器601、存储器602、收发机603、总线接口604,其中处理器601、存储器602与收发机603之间通过总线接口604连接;
所述处理器601,用于读取所述存储器602中的程序,执行下列方法:
接收N个联盟链委员的投票请求,其中任一个投票请求中包含一个联盟链委员的密码承诺;
针对一个密码承诺,根据所述密码承诺,确定一个联盟链委员的投票参数;
将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若所述待验证结果与所述群管理私钥相同,则确定投票内容通过;所述投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与所述群管理私钥相同。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

Claims (16)

1.一种区块链中的投票方法,其特征在于,包括:
群组服务单元接收任一联盟链委员发送的初始化请求,所述初始化请求中包含所有联盟链委员的初始化参数;
所述群组服务单元利用群签名算法,根据所有联盟链委员的初始化参数生成群管理私钥以及对应的群管理公钥;
所述群组服务单元根据所述群管理私钥为每一个联盟链委员生成一个私钥分片,并将私钥分片向对应的联盟链委员发送;所述私钥分片用于所述联盟链委员向所述群组服务单元发送投票请求时,作为投票参数生成密码承诺以表明同意投票内容;
所述群组服务单元生成所述群管理公钥与每一个联盟链委员的身份标识的映射关系,并将所有映射关系记录于区块链的委员会管理合约中;
所述群组服务单元将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上;
所述群组服务单元接收N个联盟链委员的投票请求,其中任一个投票请求中包含一个联盟链委员的密码承诺;
针对一个密码承诺,所述群组服务单元根据所述密码承诺,确定一个联盟链委员的投票参数;
所述群组服务单元将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若所述待验证结果与所述群管理私钥相同,则确定投票内容通过;所述投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与所述群管理私钥相同。
2.如权利要求1所述的方法,其特征在于,所述群组服务单元接收N个联盟链委员的投票请求之前,还包括:
所述群组服务单元接收M个联盟链委员发送的启动请求,其中任一启动请求中包含一个联盟链委员利用所述投票算法对所述联盟链委员的本地私钥计算得到的启动结果;
所述群组服务单元利用预存的公共函数的值对M个启动结果进行验证,若验证通过的启动结果的数量大于第二阈值,则所述群组服务单元启动。
3.如权利要求2所述的方法,其特征在于,所述群组服务单元根据所有联盟链委员的初始化参数生成所述群管理私钥以及对应的群管理公钥之后,还包括:
所述群组服务单元利用所述群管理私钥以及所述群管理公钥,为每一个联盟链委员生成低权限管理私钥;
所述群组服务单元将所述低权限管理私钥向对应的联盟链委员发送。
4.如权利要求2所述的方法,其特征在于,所述群组服务单元将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上之后,还包括:
所述群组服务单元接收委员退出消息,所述委员退出消息中包含退出的联盟链委员的身份标识;
所述群组服务单元根据所述联盟链委员的身份标识,从所述委员会管理合约中查找出所述联盟链委员的映射关系,并从所述区块链中查找出所述联盟链委员的本地公钥;
所述群组服务单元将所述联盟链委员的映射关系以及所述联盟链委员的本地公钥设置为无效。
5.如权利要求1所述的方法,其特征在于,所述投票请求中还包括所述联盟链委员利用本地私钥生成的数字证书;
所述群组服务单元根据所述密码承诺,确定一个联盟链委员的投票参数,包括:
所述群组服务单元利用所述联盟链委员的本地公钥对所述数字证书进行验证;
所述群组服务单元在验证通过后,解析所述密码承诺,得到所述联盟链委员的投票参数。
6.如权利要求1所述的方法,其特征在于,还包括:
所述群组服务单元接收委员追踪请求,所述委员追踪请求中包括所述群管理私钥以及待追踪委员的签名;
所述群组服务单元对所述群管理私钥验证通过后,依据所述待追踪委员的签名,从委员会管理合约中查找出所述待追踪委员的身份标识。
7.如权利要求1至6任一项所述的方法,其特征在于,还包括:
所述群组服务单元将所述群管理私钥以及对应的群管理公钥向监管机构发送,以使所述监管机构对所有联盟链委员的信息进行监管和追溯。
8.一种区块链中的投票装置,其特征在于,包括:
收发模块,用于接收任一联盟链委员发送的初始化请求,所述初始化请求中包含所有联盟链委员的初始化参数;
生成模块,用于利用群签名算法,根据所有联盟链委员的初始化参数生成群管理私钥以及对应的群管理公钥;根据所述群管理私钥为每一个联盟链委员生成一个私钥分片,生成所述群管理公钥与每一个联盟链委员的身份标识的映射关系;
所述收发模块,还用于将私钥分片向对应的联盟链委员发送;所述私钥分片用于所述联盟链委员向所述群组服务单元发送投票请求时,作为投票参数生成密码承诺以表明同意投票内容;
记录模块,用于将所有映射关系记录于区块链的委员会管理合约中;将每一个联盟链委员的本地私钥对应的本地公钥存储于所述区块链上;
所述收发模块,还用于接收N个联盟链委员的投票请求,其中任一个投票请求中包含一个联盟链委员的密码承诺;
确定模块,用于针对一个密码承诺,根据所述密码承诺,确定一个联盟链委员的投票参数;
验证模块,用于将N个投票参数输入投票算法中进行计算,并将计算得到的待验证结果与预存的群管理私钥进行对比,若所述待验证结果与所述群管理私钥相同,则确定投票内容通过;所述投票算法设置为输入正确的投票参数的个数大于第一阈值时,计算得到的待验证结果与所述群管理私钥相同。
9.如权利要求8所述的装置,其特征在于,
所述收发模块,还用于接收M个联盟链委员发送的启动请求,其中任一启动请求中包含一个联盟链委员利用所述投票算法对所述联盟链委员的本地私钥计算得到的启动结果;
所述验证模块,还用于利用预存的公共函数的值对M个启动结果进行验证,若验证通过的启动结果的数量大于第二阈值,则所述群组服务单元启动。
10.如权利要求9所述的装置,其特征在于,
所述生成模块,还用于利用所述群管理私钥以及所述群管理公钥,为每一个联盟链委员生成低权限管理私钥;
所述收发模块,还用于将所述低权限管理私钥向对应的联盟链委员发送。
11.如权利要求9所述的装置,其特征在于,
所述收发模块,还用于接收委员退出消息,所述委员退出消息中包含退出的联盟链委员的身份标识;
所述记录模块,还用于根据所述联盟链委员的身份标识,从所述委员会管理合约中查找出所述联盟链委员的映射关系,并从所述区块链中查找出所述联盟链委员的本地公钥;将所述联盟链委员的映射关系以及所述联盟链委员的本地公钥设置为无效。
12.如权利要求8所述的装置,其特征在于,所述投票请求中还包括所述联盟链委员利用本地私钥生成的数字证书;
所述确定模块,具体用于:
利用所述联盟链委员的本地公钥对所述数字证书进行验证;
在验证通过后,解析所述密码承诺,得到所述联盟链委员的投票参数。
13.如权利要求8所述的装置,其特征在于,
所述收发模块,还用于接收委员追踪请求,所述委员追踪请求中包括所述群管理私钥以及待追踪委员的签名;
所述记录模块,还用于对所述群管理私钥验证通过后,依据所述待追踪委员的签名,从委员会管理合约中查找出所述待追踪委员的身份标识。
14.如权利要求8至13任一项所述的装置,其特征在于,所述收发模块还用于:
将所述群管理私钥以及对应的群管理公钥向监管机构发送,以使所述监管机构对所有联盟链委员的信息进行监管和追溯。
15.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7任一所述的方法。
16.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1~7任一所述方法。
CN201910332167.0A 2019-04-24 2019-04-24 一种区块链中的投票方法及装置 Active CN110110555B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910332167.0A CN110110555B (zh) 2019-04-24 2019-04-24 一种区块链中的投票方法及装置
PCT/CN2020/083842 WO2020216065A1 (zh) 2019-04-24 2020-04-08 一种区块链中的投票方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910332167.0A CN110110555B (zh) 2019-04-24 2019-04-24 一种区块链中的投票方法及装置

Publications (2)

Publication Number Publication Date
CN110110555A CN110110555A (zh) 2019-08-09
CN110110555B true CN110110555B (zh) 2023-05-12

Family

ID=67486443

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910332167.0A Active CN110110555B (zh) 2019-04-24 2019-04-24 一种区块链中的投票方法及装置

Country Status (2)

Country Link
CN (1) CN110110555B (zh)
WO (1) WO2020216065A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110110555B (zh) * 2019-04-24 2023-05-12 深圳前海微众银行股份有限公司 一种区块链中的投票方法及装置
CN110399745A (zh) * 2019-08-16 2019-11-01 微位(深圳)网络科技有限公司 密钥的管理方法与装置、存储介质及计算机设备
CN111314095B (zh) * 2019-12-05 2023-01-31 全链通有限公司 基于区块链的电子投票方法、设备及存储介质
CN110995711A (zh) * 2019-12-05 2020-04-10 全链通有限公司 基于区块链的电子投票方法、设备及存储介质
CN111163165A (zh) * 2019-12-28 2020-05-15 北京工业大学 一种基于Fabric联盟链的投票共识方法
CN113206748B (zh) * 2020-02-03 2022-10-18 北京百度网讯科技有限公司 联盟链网络的治理方法、联盟链网络和电子设备
CN111416705A (zh) * 2020-02-29 2020-07-14 南京如般量子科技有限公司 基于身份密码学的抗量子计算联盟链投票系统和方法
CN111464631B (zh) * 2020-03-31 2023-03-28 成都质数斯达克科技有限公司 联盟区块链中的业务共识方法及装置
CN111510347B (zh) * 2020-04-08 2021-10-26 北京链化未来科技有限公司 一种提高区块链共识效率的方法
CN111786968B (zh) * 2020-06-17 2022-04-19 杭州溪塔科技有限公司 一种保护隐私的数据上报方法、装置、系统及电子设备
CN112291062B (zh) * 2020-10-28 2021-07-27 深圳前海微众银行股份有限公司 一种基于区块链的投票方法及装置
CN112466032B (zh) * 2020-11-23 2021-08-17 深圳前海微众银行股份有限公司 电子投票方法、装置及电子设备
CN112600675B (zh) * 2020-12-04 2022-11-01 网易(杭州)网络有限公司 基于群签名的电子投票方法及装置、电子设备、存储介质
CN112633890B (zh) * 2020-12-22 2024-04-05 深圳前海微众银行股份有限公司 一种基于区块链的隐匿权益证明的验证方法及装置
CN112927414A (zh) * 2021-01-29 2021-06-08 福建中科星泰数据科技有限公司 基于联盟区块链的业务公识系统及方法
CN112784305A (zh) * 2021-02-01 2021-05-11 杭州复杂美科技有限公司 加密投票方法、计算机设备和存储介质
CN113225736B (zh) * 2021-03-24 2024-02-02 湖南宸瀚信息科技有限责任公司 无人机集群节点认证方法、装置、存储介质及计算机设备
CN113890751A (zh) * 2021-09-22 2022-01-04 网易(杭州)网络有限公司 控制联盟链权限投票的方法、设备和可读存储介质
CN113905035A (zh) * 2021-09-29 2022-01-07 上海万向区块链股份公司 基于区块链的生物数据非同质化映射系统
CN113935665B (zh) * 2021-12-17 2022-03-08 南京金宁汇科技有限公司 一种用于联盟链的投票管理方法和系统
CN114499952B (zh) * 2021-12-23 2024-04-09 中电科大数据研究院有限公司 一种联盟链共识身份认证方法
CN114978553B (zh) * 2022-06-30 2024-01-30 中国光大银行股份有限公司 一种联盟链密码算法切换方法、装置及联盟链系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003050771A1 (es) * 2001-12-12 2003-06-19 Scytl Online World Security, Sa Método para votación electrónica segura y protocolos criptográficos y programas informáticos empleados
CN106411503A (zh) * 2016-11-28 2017-02-15 中国银行股份有限公司 区块链投票记账模式的记账方法及系统、投票及记账节点
KR101837170B1 (ko) * 2016-12-29 2018-04-19 주식회사 코인플러그 영지식 증명 알고리즘을 사용하여 블록체인 기반 비밀 전자 투표 서비스를 제공하기 위한 방법, 및 이를 이용한 투표 코인 발행 서버, 투표 토큰 분배 서버 및 투표 지원 서버
WO2018136991A1 (en) * 2017-01-30 2018-08-02 EXO One Pty Ltd Voting system and method
CN108846289A (zh) * 2018-06-08 2018-11-20 北京京东尚科信息技术有限公司 选举信息处理方法和处理系统及选举系统和存储介质
CN109242705A (zh) * 2018-08-15 2019-01-18 深圳前海微众银行股份有限公司 基于联盟委员链的业务处理方法、设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019033011A1 (en) * 2017-08-11 2019-02-14 United States Postal Service VOTE FOLLOWING CRYPTOGRAPHIC AND SECURE BY MAIL SYSTEM
CN108768607B (zh) * 2018-05-14 2021-10-08 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种基于区块链的投票方法、装置、设备及介质
CN109493063A (zh) * 2018-12-29 2019-03-19 杭州趣链科技有限公司 一种联盟区块链中进行权限控制的方法
CN109523683B (zh) * 2018-12-29 2021-05-04 杭州趣链科技有限公司 一种基于区块链技术的不记名电子投票方法
CN110110555B (zh) * 2019-04-24 2023-05-12 深圳前海微众银行股份有限公司 一种区块链中的投票方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003050771A1 (es) * 2001-12-12 2003-06-19 Scytl Online World Security, Sa Método para votación electrónica segura y protocolos criptográficos y programas informáticos empleados
CN106411503A (zh) * 2016-11-28 2017-02-15 中国银行股份有限公司 区块链投票记账模式的记账方法及系统、投票及记账节点
KR101837170B1 (ko) * 2016-12-29 2018-04-19 주식회사 코인플러그 영지식 증명 알고리즘을 사용하여 블록체인 기반 비밀 전자 투표 서비스를 제공하기 위한 방법, 및 이를 이용한 투표 코인 발행 서버, 투표 토큰 분배 서버 및 투표 지원 서버
WO2018136991A1 (en) * 2017-01-30 2018-08-02 EXO One Pty Ltd Voting system and method
CN108846289A (zh) * 2018-06-08 2018-11-20 北京京东尚科信息技术有限公司 选举信息处理方法和处理系统及选举系统和存储介质
CN109242705A (zh) * 2018-08-15 2019-01-18 深圳前海微众银行股份有限公司 基于联盟委员链的业务处理方法、设备及存储介质

Also Published As

Publication number Publication date
WO2020216065A1 (zh) 2020-10-29
CN110110555A (zh) 2019-08-09

Similar Documents

Publication Publication Date Title
CN110110555B (zh) 一种区块链中的投票方法及装置
CN110380847B (zh) 一种区块链共识方法和装置
CN112311735B (zh) 可信认证方法,网络设备、系统及存储介质
CN110288480B (zh) 一种区块链的私密交易方法及装置
US8145520B2 (en) Method and system for verifying election results
CN105701372A (zh) 一种区块链身份构建及验证方法
CN113098907A (zh) 一种区块链的群组划分方法与装置
KR102357460B1 (ko) 동형 암호 기술 기반 전자 투표 시스템 및 그 방법
CN113256297B (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
US20220141020A1 (en) Blockchain e-voting system and operating method thereof
CN112291062B (zh) 一种基于区块链的投票方法及装置
CN109815732B (zh) 一种基于联盟链的车间数据存储与访问系统、方法及装置
CN112069550A (zh) 一种基于智能合约方式的电子合同存证系统
CN116192405A (zh) 一种电子投票方法及相关装置
CN108540447B (zh) 一种基于区块链的证书验证方法及系统
CN112035896A (zh) 一种基于交易方式的电子合同存证系统
CN113037827B (zh) 基于区块链的投票方法、自组织管理方法及计算机设备
CN111865595A (zh) 一种区块链的共识方法及装置
CN111934881A (zh) 数据确权方法和装置、存储介质和电子装置
CN116452135A (zh) 基于以太坊的分布式匿名投票方法、装置、设备及介质
CN112422534B (zh) 电子证书的信用评估方法以及设备
CN115277010A (zh) 身份认证方法、系统、计算机设备和存储介质
CN110098934B (zh) 一种电子数据存证方法、装置及终端
CN112036884A (zh) 一种签名方法及相关设备
US20230147623A1 (en) Verifying Electronic Votes in a Voting System

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
GR01 Patent grant
GR01 Patent grant