CN113890751A - 控制联盟链权限投票的方法、设备和可读存储介质 - Google Patents
控制联盟链权限投票的方法、设备和可读存储介质 Download PDFInfo
- Publication number
- CN113890751A CN113890751A CN202111109108.0A CN202111109108A CN113890751A CN 113890751 A CN113890751 A CN 113890751A CN 202111109108 A CN202111109108 A CN 202111109108A CN 113890751 A CN113890751 A CN 113890751A
- Authority
- CN
- China
- Prior art keywords
- group
- signature
- voting
- proposal
- alliance
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 230000008859 change Effects 0.000 claims abstract description 24
- 238000004590 computer program Methods 0.000 claims description 22
- 238000012795 verification Methods 0.000 claims description 17
- 230000006399 behavior Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
-
- 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
-
- 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
- H04L9/3255—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 using group based signatures, e.g. ring or threshold signatures
-
- 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/3263—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3268—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
- H04L2209/463—Electronic voting
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是本申请实施例提供的控制联盟链权限投票所基于的框架示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本说明书中,诸如第一和第二这样的形容词仅可以用于将一个元素或动作与另一元素或动作进行区分,而不必要求或暗示任何实际的这种关系或顺序。在环境允许的情况下,参照元素或部件或步骤(等)不应解释为局限于仅元素、部件、或步骤中的一个,而可以是元素、部件、或步骤中的一个或多个等。
在本说明书中,为了便于描述,附图中所示的各个部分的尺寸并不是按照实际的比例关系绘制的。
本申请实施例提出一种控制联盟链权限投票的方法,该方法可应用于联盟链的各个节点。如附图1所示,其主要包括步骤S101至步骤S104,详述如下:
步骤S101:根据群签名权限控制合约,执行联盟链成员的群投票签名,其中,群投票签名为对联盟链成员的身份信息进行加密后生成。
在本申请实施例中,根据群签名权限控制合约,执行联盟链成员的群投票签名之前,上述实施例的方法还包括:将联盟链成员的区块链账号和证书写入群签名权限控制合约。作为本申请一个实施例,将联盟链成员的区块链账号和证书写入群签名权限控制合约可以是:在初始化阶段,将群签名权限控制合约部署进联盟链;根据群名称参数创建群;生成群的联盟链成员证书和联盟链成员私钥,并由联盟链成员保存联盟链成员私钥;将联盟链成员的区块链账号和证书写入群签名权限控制合约。在上述实施例中,将群签名权限控制合约部署进联盟链可以是由联盟链成员中的联盟管理员部署进联盟链,而根据群名称参数创建群具体可以是输入群名称参数,调用群签名平台,而生成群的联盟链成员证书和联盟链成员私钥,并由联盟链成员保存联盟链成员私钥具体可以是群签名平台生成群配对群私钥(该私钥不能泄露)、群公钥和私密信息(该私密信息不能泄露)和线性配对参数,联盟链系统保存好群公钥和线性配对参数,用于后续对群投票签名的验证,然后所有联盟链成员加入创建的群,具体为联盟链成员输入群名称和成员名称,调用群签名平台,生成联盟链成员私钥和联盟链成员证书,在成为群的联盟链成员后,证书可以公开;同时各联盟链成员保存群配对群私钥和证书,以便用于后续进行群投票签名。在将联盟链成员的区块链账号和证书写入群签名权限控制合约时,群签名权限控制合约执行如下逻辑:确定联盟链成员证书未初始化保存,防止重复执行;将联盟链成员的区块链地址和联盟链成员证书保存到群签名权限控制合约,用于后续投票判断,其中,联盟链成员的区块链地址对应联盟链成员证书的列表,即能通过区块链地址查询到联盟链成员证书,联盟链成员证书对应联盟链成员的区块链地址列表,即能通过联盟链成员证书查询到联盟链成员的区块链地址。
作为本申请一个实施例,根据群签名权限控制合约,执行联盟链成员的群投票签名可以是:当联盟管理员发起一笔提案交易时,接收群投票提案和群投票签名的群签名信息;执行群签名权限控制合约,保存群投票提案和群投票签名的群签名信息;根据群投票提案和群投票签名的群签名信息,调用群签名平台进行联盟链成员的群投票签名,而在群签名平台对联盟管理员进行群投票签名之前,根据联盟链成员证书查询区块链确认该成员是否是联盟管理员。只有确认该成员是否是联盟管理员才允许进行群投票签名。上述实施例中,群投票提案包括新增联盟管理员、删除联盟管理员以及其他权限变更(节点入网/退网等);提案详情包括:若是新增联盟管理员,则需要输入新增的联盟管理员的区块链地址及管理员的群证书;若是删除联盟管理员,则需要输入删除的联盟管理员的区块链地址;若是其他权限变更,则需要输入节点证书等。群签名权限控制合约执行如下逻辑:设置提案唯一编号,全局递增;保存提案详情:proposalMap(提案列表,key为提案编号,value为提案详情对象proposalDetail),其中proposalDetail对象,包括提案类型和提案详情,其中,提案类型1新增管理员2删除管理员3其他权限变更(proposalType),提案的投票列表(Vote[]voteList;),提案是否成功(ifSuccess),提案是否结束(ifEnd)。初始化的提案中需要保存提案编号、提案详情、提案类型、提案未结束(ifEnd=false)。区块链-权限合约读取核心:groupCert2FlagMap内通过证书获取用户区块链地址。执行签名:群签名平台读取本地线性参数(pbc_param)、群主公钥(gpk_info)、成员私钥(gsk_info)对消息(msg)进行签名,对消息(VC声明数据)进行签名,生成签名数据(sign)。将签名数据返回给联盟管理员。
步骤S102:接收联盟管理员发起的群投票签名上链请求,其中,群投票签名上链请求包括群投票提案和群投票签名的群签名信息。
具体地,联盟成员使用任意的区块链账号发起上链交易,将群签名投票上链输入参数:提案编号proposalId,提案操作operate:签名消息msg=proposalId+operate,签名sig,群主公钥gpkInfo,群参数paramInfo。
步骤S103:根据群签名权限控制合约,验证群投票签名上链请求是否有效。
在本申请实施例中,根据群签名权限控制合约,验证群投票签名上链请求是否有效可以是:执行群签名权限控制合约时调用群签名算法库,以验证群投票签名是否有效;若验证有效,则保存群签名投票信息至提案详情,其中,群签名投票信息包括提案编号、提案操作和群签名信息;判断提案编号对应的提案是否成功;若提案编号对应的提案成功,则验证群投票签名上链请求有效。具体地,判断当前提案是否存在,且提案未结束;调用ethCall预编译库,验证群签名(此处调用的群签名的算法库,进行签名的验证);若签名验证失败,则返回投票失败;若签名验证成功,则保存投票信息(提案编号、提案操作、签名数据)到提案详情中;投票对象详情包括:提案编号、提案操作、签名、群主公钥和群参数;对提案中的投票列表进行提案的过半判断,即上述实施例中的判断提案编号对应的提案是否成功:对投票列表中的提案操作进行统计;若提案操作中的赞成票数大于管理员列表的一半以上,则确定提案编号对应的提案成功;若提案操作中的否决票数大于管理员列表的一半以上,则确定提案编号对应的提案失败。若提案编号对应的提案成功,则执行与提案编号对应的提案操作,反之,若提案编号对应的提案失败,则将提案状态设置为失败,并设置提案为结束终态。至此若提案成功或失败,则提案将结束,并执行提案的业务逻辑;若提案未结束,管理员可继续使用群签名进行签名并投票,同时通过群签名,没有暴露管理员的区块链地址及任何信息。
步骤S104:若群投票签名上链请求有效,则根据群投票提案执行相应的权限管控或变更业务逻辑。
作为本申请一个实施例,根据群投票提案执行相应的权限管控或变更业务逻辑可以是:若群投票提案的类型为新增联盟管理员,则将新增的联盟管理员区块链地址及群证书加入权限控制列表名单;若群投票提案的类型为删除联盟管理员,则将删除的联盟管理员区块链地址及群证书从权限控制列表名单删除;若群投票提案的类型为节点入网/退网等其他提案,则执行区块链变更业务逻辑。
上述实施例还包括:通过调用群签名权限控制合约,查询群投票签名的群签名信息;调用签名平台验证群投票签名的群签名信息的有效性;打开所有群投票签名的群签名信息,通过联盟链成员的证书对联盟链成员的签名行为监督。
具体地,上述实施例可以是联盟监督者调用群签名权限合约,可查询每一个提案的签名数据;联盟监督者恢复出当前提案的所有签名数据,可调用签名平台验证签名是否确实有效,并确定该发行者确实可靠有效,即验证签名输入参数输入签名、签名数据(提案编号及投票操作),读取本地线性配对参数、群主公钥,群签名平台验证签名是否有效;联盟监督者可调用签名平台打开签名:输入签名、签名数据(提案编号及投票操作)、群名称,群签名平台通过签名数据可以打开用户的证书,并通过证书,查询合约可进一步确定投票的管理员区块链地址;联盟监督者收集到所有群签名的证书及管理员的区块链地址,进一步可确定管理员是否有重复签名,对签名者进行监督。
从上述附图1示例的控制联盟链权限投票的方法可知,根据群签名权限控制合约,执行联盟链成员的群投票签名,在验证群投票签名上链请求有效之后,才根据群投票提案执行相应的权限管控或变更业务逻辑,由于群投票签名为对联盟链成员的信息进行加密后生成,因此,在根据群投票提案对联盟管理员执行相应的权限管控或变更业务逻辑时,可以不用查看联盟链成员的身份信息,而群投票签名为对联盟链成员的身份信息进行加密后生成,则可以保证联盟链成员的隐私不会泄露。
请参阅附图2,是本申请实施例提供的一种控制联盟链权限投票的装置,该装置可以应用于联盟链的节点,该联盟链的节点基于图4示例的框架,其包括群签名模块201、接收模块202、验证模块203和提案操作模块204,详述如下:
群签名模块201,用于根据群签名权限控制合约,执行联盟链成员的群投票签名,其中,群投票签名为对联盟链成员的身份信息进行加密后生成;
接收模块202,用于接收联盟管理员发起的群投票签名上链请求,其中,群投票签名上链请求包括群投票提案和群投票签名的群签名信息;
验证模块203,用于根据群签名权限控制合约,验证群投票签名上链请求是否有效;
提案操作模块204,用于若群投票签名上链请求有效,则根据群投票提案执行相应的权限管控或变更业务逻辑。
从以上技术方案的描述中可以看出,根据群签名权限控制合约,执行联盟链成员的群投票签名,在验证群投票签名上链请求有效之后,才根据群投票提案执行相应的权限管控或变更业务逻辑,由于群投票签名为对联盟链成员的信息进行加密后生成,因此,在根据群投票提案对联盟管理员执行相应的权限管控或变更业务逻辑时,可以不用查看联盟链成员的身份信息,而群投票签名为对联盟链成员的身份信息进行加密后生成,则可以保证联盟链成员的隐私不会泄露。
可选地,上述附图2示例的装置还可以包括初始化模块,用于群签名模块201在根据群签名权限控制合约,执行联盟链成员的群投票签名之前,将联盟链成员的区块链账号和证书写入群签名权限控制合约。
可选地,上述示例的初始化模块可包括部署单元、群创建单元、生成单元和写入单元,其中:
部署单元,用于在初始化阶段,将群签名权限控制合约部署进联盟链;
群创建单元,用于根据群名称参数创建群;
生成单元,用于生成群的联盟链成员证书和联盟链成员私钥,并由联盟链成员保存联盟链成员私钥;
写入单元,用于将联盟链成员的区块链账号和证书写入群签名权限控制合约。
可选地,上述附图2示例的群签名模块201可包括提案接收单元、合约执行单元和第一调用单元,其中:
提案接收单元,用于当联盟管理员发起一笔提案交易时,接收群投票提案和群投票签名的群签名信息;
合约执行单元,用于执行群签名权限控制合约,保存群投票提案和群投票签名的群签名信息;
第一调用单元,用于根据群投票提案和群投票签名的群签名信息,调用群签名平台进行联盟链成员的群投票签名。
可选地,上述附图2示例的验证模块203可包括执行单元、保存单元、判断单元和请求验证单元,其中:
执行单元,用于执行群签名权限控制合约时调用群签名算法库,以验证群投票签名是否有效;
保存单元,用于若验证有效,则保存群签名投票信息至提案详情,其中,群签名投票信息包括提案编号、提案操作和群签名信息;
判断单元,用于判断提案编号对应的提案是否成功;
请求验证单元,用于若提案编号对应的提案成功,则验证群投票签名上链请求有效。
可选地,上述示例的判断单元可包括统计单元、第一确定单元和第二确定单元,其中:
统计单元,用于对投票列表中的提案操作进行统计;
第一确定单元,用于若提案操作中的赞成票数大于管理员列表的一半以上,则确定提案编号对应的提案成功;
第二确定单元,用于若提案操作中的否决票数大于管理员列表的一半以上,则确定提案编号对应的提案失败。
可选地,上述附图2示例的装置还可以包括提案执行模块和设置模块,其中:
提案执行模块,用于若提案编号对应的提案成功,则执行与提案编号对应的提案操作;
设置模块,用于若提案编号对应的提案失败,则将提案状态设置为失败,并设置提案为结束终态。
可选地,上述附图2示例的提案操作模块204可包括名单添加单元、名单删除单元和逻辑执行单元,其中:
名单添加单元,用于若群投票提案的类型为新增联盟管理员,则将提案的管理员区块链地址及群证书加入权限控制列表名单;
名单删除单元,用于若群投票提案的类型为删除联盟管理员,则将提案的管理员区块链地址及群证书从权限控制列表名单删除;
逻辑执行单元,用于若群投票提案的类型为节点入网/退网等其他提案,则执行区块链变更业务逻辑。
可选地,上述附图2示例的装置还可以包括查询模块、调用模块和监督模块,其中:
查询模块,用于通过调用群签名权限控制合约,查询群投票签名的群签名信息;
调用模块,用于调用签名平台验证群投票签名的群签名信息的有效性;
监督模块,用于打开所有群投票签名的群签名信息,通过联盟链成员的证书对联盟链成员的签名行为监督。
从以上技术方案的描述中可以看出,根据群签名权限控制合约,执行联盟链成员的群投票签名,在验证群投票签名上链请求有效之后,才根据群投票提案执行相应的权限管控或变更业务逻辑,由于群投票签名为对联盟链成员的信息进行加密后生成,因此,在根据群投票提案对联盟管理员执行相应的权限管控或变更业务逻辑时,可以不用查看联盟链成员的身份信息,而群投票签名为对联盟链成员的身份信息进行加密后生成,则可以保证联盟链成员的隐私不会泄露。
图3是本申请一实施例提供的计算机设备的结构示意图。如图3所示,该实施例的计算机设备3主要包括:处理器30、存储器31以及存储在存储器31中并可在处理器30上运行的计算机程序32,例如控制联盟链权限投票的方法的程序。处理器30执行计算机程序32时实现上述控制联盟链权限投票的方法实施例中的步骤,例如图1所示的步骤S101至步骤S104。或者,处理器30执行计算机程序32时实现上述各装置实施例中各模块/单元的功能,例如图2所示群签名模块201、接收模块202、验证模块203和提案操作模块204的功能。
示例性地,控制联盟链权限投票的方法的计算机程序32主要包括:根据群签名权限控制合约,执行联盟链成员的群投票签名,其中,群投票签名为对联盟链成员的身份信息进行加密后生成;接收联盟管理员发起的群投票签名上链请求,其中,群投票签名上链请求包括群投票提案和群投票签名的群签名信息;根据群签名权限控制合约,验证群投票签名上链请求是否有效;若群投票签名上链请求有效,则根据群投票提案执行相应的权限管控或变更业务逻辑。计算机程序32可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器31中,并由处理器30执行,以完成本申请。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序32在计算机设备3中的执行过程。例如,计算机程序32可以被分割成群签名模块201、接收模块202、验证模块203和提案操作模块204(虚拟装置中的模块)的功能,各模块具体功能如下:群签名模块201,用于根据群签名权限控制合约,执行联盟链成员的群投票签名,其中,群投票签名为对联盟链成员的身份信息进行加密后生成;接收模块202,用于接收联盟管理员发起的群投票签名上链请求,其中,群投票签名上链请求包括群投票提案和群投票签名的群签名信息;验证模块203,用于根据群签名权限控制合约,验证群投票签名上链请求是否有效;提案操作模块204,用于若群投票签名上链请求有效,则根据群投票提案执行相应的权限管控或变更业务逻辑。
计算机设备3可包括但不仅限于处理器30、存储器31。本领域技术人员可以理解,图3仅仅是计算机设备3的示例,并不构成对计算机设备3的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括输入输出计算机设备、网络接入计算机设备、总线等。
所称处理器30可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器31可以是计算机设备3的内部存储单元,例如计算机设备3的硬盘或内存。存储器31也可以是计算机设备3的外部存储计算机设备,例如计算机设备3上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器31还可以既包括计算机设备3的内部存储单元也包括外部存储计算机设备。存储器31用于存储计算机程序以及计算机设备所需的其他程序和数据。存储器31还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即,将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述装置中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/计算机设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/计算机设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非临时性计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,控制联盟链权限投票的方法的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤,即,根据群签名权限控制合约,执行联盟链成员的群投票签名,其中,群投票签名为对联盟链成员的身份信息进行加密后生成;接收联盟管理员发起的群投票签名上链请求,其中,群投票签名上链请求包括群投票提案和群投票签名的群签名信息;根据群签名权限控制合约,验证群投票签名上链请求是否有效;若群投票签名上链请求有效,则根据群投票提案执行相应的权限管控或变更业务逻辑。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。非临时性计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读内存(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,非临时性计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,非临时性计算机可读介质不包括电载波信号和电信信号。以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
以上所述的具体实施方式,对本申请的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本申请的具体实施方式而已,并不用于限定本申请的保护范围,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种控制联盟链权限投票的方法,其特征在于,所述方法包括:
根据群签名权限控制合约,执行联盟链成员的群投票签名,所述群投票签名为对所述联盟链成员的身份信息进行加密后生成;
接收联盟管理员发起的群投票签名上链请求,所述群投票签名上链请求包括群投票提案和所述群投票签名的群签名信息;
根据所述群签名权限控制合约,验证所述群投票签名上链请求是否有效;
若所述群投票签名上链请求有效,则根据所述群投票提案执行相应的权限管控或变更业务逻辑。
2.如权利要求1所述的方法,其特征在于,在所述根据群签名权限控制合约,执行联盟链成员的群投票签名之前,所述方法还包括将所述联盟链成员的区块链账号和证书写入所述群签名权限控制合约。
3.如权利要求2所述的方法,其特征在于,所述将所述联盟链成员的区块链账号和证书写入所述群签名权限控制合约,包括:
在初始化阶段,将所述群签名权限控制合约部署进联盟链;
根据群名称参数创建群;
生成所述群的联盟链成员证书和联盟链成员私钥,并由联盟链成员保存所述联盟链成员私钥;
将所述联盟链成员的区块链账号和证书写入群签名权限控制合约。
4.如权利要求1所述的方法,其特征在于,所述根据所述群签名权限控制合约,执行联盟链成员的群投票签名,包括:
当所述联盟管理员发起一笔提案交易时,接收所述群投票提案和所述群投票签名的群签名信息;
执行所述群签名权限控制合约,保存所述群投票提案和所述群投票签名的群签名信息;
根据所述群投票提案和所述群投票签名的群签名信息,调用群签名平台进行联盟链成员的群投票签名。
5.如权利要求1所述的方法,其特征在于,所述根据所述群签名权限控制合约,验证所述群投票签名上链请求是否有效,包括:
执行所述群签名权限控制合约时调用群签名算法库,以验证所述群投票签名是否有效;
若验证有效,则保存群签名投票信息至提案详情,所述群签名投票信息包括提案编号、提案操作和所述群签名信息;
判断所述提案编号对应的提案是否成功;
若所述提案编号对应的提案成功,则验证所述群投票签名上链请求有效。
6.如权利要求5所述的方法,其特征在于,所述判断所述提案编号对应的提案是否成功,包括:
对投票列表中的提案操作进行统计;
若所述提案操作中的赞成票数大于管理员列表的一半以上,则确定所述提案编号对应的提案成功;
若所述提案操作中的否决票数大于所述管理员列表的一半以上,则确定所述提案编号对应的提案失败。
7.如权利要求5所述的方法,其特征在于,所述方法还包括:
若所述提案编号对应的提案成功,则执行与所述提案编号对应的提案操作;
若所述提案编号对应的提案失败,则将提案状态设置为失败,并设置提案为结束终态。
8.如权利要求1所述的方法,其特征在于,所述根据所述群投票提案执行相应的权限管控或变更业务逻辑,包括:
若所述群投票提案的类型为新增联盟管理员,则将所述新增的联盟管理员区块链地址及群证书加入权限控制列表名单;
若所述群投票提案的类型为删除联盟管理员,则将所述删除的联盟管理员区块链地址及群证书从权限控制列表名单删除;
若所述群投票提案的类型为节点入网或退网的提案,则执行区块链变更业务逻辑。
9.如权利要求1至8任意一项所述的方法,其特征在于,所述方法还包括:
通过调用所述群签名权限控制合约,查询所述群投票签名的群签名信息;
调用签名平台验证所述群投票签名的群签名信息的有效性;
打开所有所述群投票签名的群签名信息,通过所述联盟链成员的证书对所述联盟链成员的签名行为监督。
10.一种控制联盟链权限投票的装置,其特征在于,所述装置包括:
群签名模块,用于根据群签名权限控制合约,执行联盟链成员的群投票签名,所述群投票签名为对所述联盟链成员的身份信息进行加密后生成;
接收模块,用于接收联盟管理员发起的群投票签名上链请求,所述群投票签名上链请求包括群投票提案和所述群投票签名的群签名信息;
验证模块,用于根据所述群签名权限控制合约,验证所述群投票签名上链请求是否有效;
提案操作模块,用于若所述群投票签名上链请求有效,则根据所述群投票提案执行相应的权限管控或变更业务逻辑。
11.一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至9任意一项所述控制联盟链权限投票的方法的步骤。
12.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至9任意一项所述控制联盟链权限投票的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111109108.0A CN113890751B (zh) | 2021-09-22 | 控制联盟链权限投票的方法、设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111109108.0A CN113890751B (zh) | 2021-09-22 | 控制联盟链权限投票的方法、设备和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113890751A true CN113890751A (zh) | 2022-01-04 |
CN113890751B CN113890751B (zh) | 2024-07-09 |
Family
ID=
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114978553A (zh) * | 2022-06-30 | 2022-08-30 | 中国光大银行股份有限公司 | 一种联盟链密码算法切换方法、装置及联盟链系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110110555A (zh) * | 2019-04-24 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种区块链中的投票方法及装置 |
CN110391911A (zh) * | 2019-07-23 | 2019-10-29 | 中国工商银行股份有限公司 | 区块链匿名投票系统及方法 |
US20200213130A1 (en) * | 2019-06-26 | 2020-07-02 | Alibaba Group Holding Limited | Ring signature-based anonymous transaction |
CN111416705A (zh) * | 2020-02-29 | 2020-07-14 | 南京如般量子科技有限公司 | 基于身份密码学的抗量子计算联盟链投票系统和方法 |
CN112600675A (zh) * | 2020-12-04 | 2021-04-02 | 网易(杭州)网络有限公司 | 基于群签名的电子投票方法及装置、电子设备、存储介质 |
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110110555A (zh) * | 2019-04-24 | 2019-08-09 | 深圳前海微众银行股份有限公司 | 一种区块链中的投票方法及装置 |
US20200213130A1 (en) * | 2019-06-26 | 2020-07-02 | Alibaba Group Holding Limited | Ring signature-based anonymous transaction |
CN110391911A (zh) * | 2019-07-23 | 2019-10-29 | 中国工商银行股份有限公司 | 区块链匿名投票系统及方法 |
CN111416705A (zh) * | 2020-02-29 | 2020-07-14 | 南京如般量子科技有限公司 | 基于身份密码学的抗量子计算联盟链投票系统和方法 |
CN112600675A (zh) * | 2020-12-04 | 2021-04-02 | 网易(杭州)网络有限公司 | 基于群签名的电子投票方法及装置、电子设备、存储介质 |
Non-Patent Citations (1)
Title |
---|
于天娇;曹春杰;王隆娟;许蕾;: "基于联盟链的匿名电子投票方案", 网络空间安全, no. 12 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114978553A (zh) * | 2022-06-30 | 2022-08-30 | 中国光大银行股份有限公司 | 一种联盟链密码算法切换方法、装置及联盟链系统 |
CN114978553B (zh) * | 2022-06-30 | 2024-01-30 | 中国光大银行股份有限公司 | 一种联盟链密码算法切换方法、装置及联盟链系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3800909B1 (en) | Remote management method, and device | |
CN110597911B (zh) | 一种区块链网络的证书处理方法、装置、电子设备及存储介质 | |
CN112765268B (zh) | 基于区块链的数据隐私保护方法、装置及设备 | |
CN110855777B (zh) | 一种基于区块链的节点管理方法及装置 | |
CN109388957B (zh) | 基于区块链的信息移转方法、装置、介质及电子设备 | |
CN110908786A (zh) | 一种智能合约调用方法、装置及介质 | |
CN112712372B (zh) | 联盟链跨链系统和信息调用方法 | |
CN108496323B (zh) | 一种证书导入方法及终端 | |
CN111914293A (zh) | 一种数据访问权限验证方法、装置、计算机设备及存储介质 | |
CN113255014B (zh) | 一种基于区块链的数据处理方法以及相关设备 | |
CN111159753A (zh) | 区块链智能合约管理方法及系统、存储介质及终端 | |
CN112307125A (zh) | 基于区块链智能合约实现加密电子合同的签约方法及设备 | |
CN112950201A (zh) | 一种应用于区块链系统的节点管理方法及相关装置 | |
CN112101945B (zh) | 一种区块链内容的监管方法及系统 | |
CN103559430B (zh) | 基于安卓系统的应用账号管理方法和装置 | |
CN111182527B (zh) | Ota固件升级方法、装置、终端设备及其存储介质 | |
CN111222989B (zh) | 多通道区块链的交易方法、电子设备和存储介质 | |
CN113328854A (zh) | 基于区块链的业务处理方法及系统 | |
CN112037055A (zh) | 交易处理方法、装置、电子设备及可读存储介质 | |
Akram et al. | A novel consumer-centric card management architecture and potential security issues | |
CN112801662B (zh) | 基于区块链智能合约的业务链接入管理方法及系统 | |
CN115114657A (zh) | 数据保护方法、电子设备及计算存储介质 | |
CN113890751B (zh) | 控制联盟链权限投票的方法、设备和可读存储介质 | |
CN113890751A (zh) | 控制联盟链权限投票的方法、设备和可读存储介质 | |
CN111369246B (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 | ||
GR01 | Patent grant |