CN112636929A - 群组业务实现方法、装置、设备和存储介质 - Google Patents
群组业务实现方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN112636929A CN112636929A CN202011593351.XA CN202011593351A CN112636929A CN 112636929 A CN112636929 A CN 112636929A CN 202011593351 A CN202011593351 A CN 202011593351A CN 112636929 A CN112636929 A CN 112636929A
- Authority
- CN
- China
- Prior art keywords
- group
- signature
- data
- authenticated
- authentication
- 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
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/3236—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 cryptographic hash functions
- H04L9/3239—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 cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种群组业务实现方法、装置、设备和存储介质,涉及区块链技术领域,可用于云计算和云服务。具体实现方案为:获取业务事务请求;如果业务事务请求中包括待认证数据和门限签名,则确定门限签名对应的签名群组;从区块链中查询获取签名群组的群组信息;其中,群组包括至少两个成员,群组的成员用于采用多方安全计算对待认证数据进行认证,并采用签名私钥为待认证数据生成门限签名;群组信息中至少包括门限签名的验证公钥;采用群组信息中的验证公钥对门限签名进行验证;如果验证通过,则确认待认证数据的有效性,并继续执行业务事务请求。提供了一种新的多方配合实现业务需求的执行模式,且提高了执行效率。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及区块链技术,可用于云计算和云服务。
背景技术
随着区块链技术的发展,区块链的网络化程度越来越高,并且可以承载越来越复杂的各种业务。
目前存在很多需要多方配合实现的业务需求,例如,需要审核授权的业务。这类业务在区块链中需要各个节点分别执行,执行效率低,执行模式与实际业务需求也不匹配。
发明内容
本申请提供了一种基于区块链的群组业务实现方法、装置、设备和存储介质。
根据本申请的第一方面,提供了一种基于区块链的群组业务实现方法,由区块链节点执行,该方法包括:
获取业务事务请求;
如果所述业务事务请求中包括待认证数据和门限签名,则确定所述门限签名对应的签名群组;
从区块链中查询获取所述签名群组的群组信息;其中,所述群组包括至少两个成员,所述群组的成员用于采用多方安全计算对待认证数据进行认证,并采用签名私钥为所述待认证数据生成门限签名;所述群组信息中至少包括门限签名的验证公钥;
采用所述群组信息中的验证公钥对所述门限签名进行验证;
如果验证通过,则确认所述待认证数据的有效性,并继续执行所述业务事务请求。
根据本申请的第二方面,提供了一种基于区块链的群组业务实现方法,由群组成员执行,该方法包括:
为所属群组生成签名私钥和验证公钥;
将所述验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储;
获取用于对待认证数据进行认证的认证请求;
在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
基于所述门限签名响应所述认证请求;其中,所述门限签名用于携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对所述门限签名进行验证。
根据本申请的第三方面,提供了一种基于区块链的群组业务实现装置,配置于区块链节点,该装置包括:
请求获取模块,用于获取业务事务请求;
签名群组确定模块,用于如果所述业务事务请求中包括待认证数据和门限签名,则确定所述门限签名对应的签名群组;
群组信息获取模块,用于从区块链中查询获取所述签名群组的群组信息;其中,所述群组包括至少两个成员,所述群组的成员用于采用多方安全计算对待认证数据进行认证,并采用签名私钥为所述待认证数据生成门限签名;所述群组信息中至少包括门限签名的验证公钥;
门限签名验证模块,用于采用所述群组信息中的验证公钥对所述门限签名进行验证;
请求执行模块,用于如果验证通过,则确认所述待认证数据的有效性,并继续执行所述业务事务请求。
根据本申请的第四方面,提供了一种基于区块链的群组业务实现装置,配置于群组成员所属设备,该装置包括:
密钥生成模块,用于为所属群组生成签名私钥和验证公钥;
请求发布模块,用于将所述验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储;
请求获取模块,用于获取用于对待认证数据进行认证的认证请求;
数据签名模块,用于在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
认证请求响应模块,用于基于所述门限签名响应所述认证请求;其中,所述门限签名用于携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对所述门限签名进行验证。
根据本申请的第五方面,提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本申请任一实施例的基于区块链的群组业务实现方法。
根据本申请的第六方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质。计算机指令用于使计算机执行本申请任一实施例的基于区块链的群组业务实现方法。
根据本申请的第七方面,提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本申请任一实施例的基于区块链的群组业务实现方法。
根据本申请的技术方案提供了一种新的多方配合实现业务需求的执行模式,且提高了执行效率。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请实施例提供的一种基于区块链的群组业务实现方法的流程图;
图2是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图;
图3是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图;
图4是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图;
图5是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图;
图6A是根据本申请实施例提供的一种基于区块链的群组业务实现方法的信令图;
图6B是根据本申请实施例提供的节点架构示意图;
图7是根据本申请实施例提供的一种基于区块链的群组业务实现装置的结构示意图;
图8是根据本申请实施例提供的另一种基于区块链的群组业务实现装置的结构示意图;
图9是用来实施本申请实施例的基于区块链的群组业务实现方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本申请实施例提供的一种基于区块链的群组业务实现方法的流程图。本实施例适用于区块链节点执行需要多方配合实现的业务,如审核授权业务的情况。该实施例可以由区块链节点(即本机节点)来执行。具体由区块链节点所在电子设备中配置的基于区块链的群组业务实现装置来执行,该装置可以采用软件和/或硬件来实现。可选的,执行本申请实施例的区块链节点可以是区块链网络的区块生成节点,也可以是区块链网络的其他节点。如图1所示,该方法包括:
S101,获取业务事务请求。
其中,所谓业务事务请求是用于请求区块链节点执行某类业务的事务请求。可以是区块链网络中的任一节点存在业务处理需求时,基于业务处理智能合约发起的。
需要说明的是,本步骤获取的业务事务请求对应的业务可能是由单方参与完成,还可能需要多方配合完成。若单方参与就可以完成,则该业务事务请求中至少需要包含待处理的事务数据;若需要多方参与完成,则该业务事务请求中至少需要包含已执行方的处理数据,供未执行方使用。例如,若本申请实施例的业务需要审核认证方(如本申请实施例中提供认证服务的群组)和处理方(如本申请实施例的区块链节点)配合执行,则该业务事务请求中至少要包括待认证数据和门限签名。其中,待认证数据可以是提供认证服务的群组需要进行认证的数据,门限签名是群组对待认证数据进行认证后的签名结果。
可选的,在本申请实施例中,本机节点获取业务事务请求时,可以是获取自身发送的业务事务请求,还可以是获取区块链网络中的其他节点发送的业务事务请求。
S102,如果业务事务请求中包括待认证数据和门限签名,则确定门限签名对应的签名群组。
其中,签名群组可以是对当前获取的业务事务请求中包含的待认证数据进行认证的群组。即业务事务请求中的门限签名就是该签名群组对待认证数据进行认证生成的。
可选的,本申请实施例所谓的群组(如签名群组)是在区块链网络之外,构建独立的提供某种功能认证服务的系统。其中包括至少两个成员(即群组成员),所述至少两个成员需要协同对待认证数据进行认证。本申请实施例可以是将认证同一类型数据的多认证方组成一个群组。每个认证方都为该群组的一个成员。该群组中可以有至少一个成员所在设备为区块链节点设备,也可以都是非区块链节点设备,但是至少有一个成员所在设备可以通过区块链网络提供的接口与区块链网络进行交互,或者可以通过点对点的方式与区块链网络中的某个节点进行交互。群组的成员用于采用多方安全计算对待认证数据进行认证,并采用签名私钥为待认证数据生成门限签名。其中,多方安全计算是指群组中的多个成员之间采用安全手段进行交互和计算,保证参与计算的各方成员输入信息不暴露,且同时能够获得准确的运算结果。本申请实施例中群组的多个成员可以基于多方安全计算技术对待认证数据进行认证,并采用自己的签名私钥对待认证数据进行签名,多个成员的签名可以按照一定的算法生成该待认证数据的门限签名。需要说明的是关于门限签名的详细计算过程,以及群组的构建过程将在后续实施例进行详细介绍。
可选的,在本申请实施例中,本机节点在获取到业务事务请求后,需要判断该业务事务请求中是否包含待认证数据和门限签名,若不包含,则说明该业务事务请求并非群组和本机节点相互配合执行的业务,所以此时需要按照该业务事务请求的常规处理方式进行处理,例如,若该业务事务请求就是常规的数据上链请求,其中包含的是待上链数据,则可以直接对该待上链数据进行上链处理。若该业务事务请求中包含待认证数据和门限签名,则说明该业务事务请求需要群组和本机节点相互配合执行,且群组已经对待认证数据执行了认证操作,生成了门限签名。此时本机节点需要进一步验证该业务事务请求中包含的门限签名的真实性。
具体的,要验证门限签名的真实性,就需要先确定生成该门限签名的群组,即签名群组。本申请实施例在确定门限签名对应的签名群组时,可以是确定门限签名对应的签名群组的签名群组标识(如签名群组ID)。可选的,本申请实施例可以将签名群组标识添加到业务事务请求中,此时可以直接从业务事务请求中获取该签名群组标识;还可以是将签名群组标识添加到门限签名中(如门限签名=门限签名+签名群组标识),此时可以从门限签名中获取该签名群组标识。
S103,从区块链中查询获取签名群组的群组信息。
其中,所谓群组信息中至少包括门限签名的验证公钥。该验证公钥可专门用于验证该群组生成的门限签名的真实性。对于一个群组而言,其可以有一个验证公钥,也可以由多个验证公钥。本申请实施例可以根据门限签名的验证规则,查询并获取签名群组的一个或多个验证公钥。
可选的,本机节点可以在确定出门限签名对应的签名群组后,从区块链网络中查询该签名群组的群组信息,如验证公钥。例如,可以是向区块链网络发送包含该签名群组标识的群组信息获取请求,以请求其他区块链节点响应该群组信息获取请求,并反馈该签名群组标识对应的签名群组的群组信息。可选的,若本机节点本地维护有各个群组的群组信息,此时本机节点还可以从本地查询并获取签名群组的群组信息。
需要说明是,本申请实施例中的群组信息除了验证公钥外,还可以包含其他信息,如群组标识、群组成员的描述信息、群组认证功能的描述信息等,本步骤在获取群组信息时,至少要获取门限签名的验证公钥,其他信息可以获取也可以不获取,对此不进行限定。
S104,采用群组信息中的验证公钥对门限签名进行验证。
可选的,本申请实施例得到门限签名以及签名群组的群组信息后,可以是从签名群组的群组信息中获取该签名群组的验证公钥,基于该验证公钥对业务事务请求中包含的门限签进行验证。具体的验证方式有很多,对此本实施例不进行限定。例如,可以是调用验证智能合约,基于验证公钥对门限签名进行验证;还可以是将验证公钥和门限签名输入到本地的签名验证模块中,由本地签名验证模块验证并输出验证结果。也可以是本地存储有门限签名对应的验签算法,基于该验签算法和验证公钥,对门限签名进行验证等。
需要说明的是,如果业务事务请求中的门限签名是添加了签名群组标识的门限,由于签名群组标识是不参与验签的,所以需要对去除了签名群组标识的门限签名进行验证。
S105,如果验证通过,则确认待认证数据的有效性,并继续执行业务事务请求。
可选的,在本申请实施例中,若采用群组信息中的验证公钥对门限签名验证通过,则说明业务事务请求中包含的待认证数据是有效的,可以基于该待认证数据执行该业务事务请求的后续业务操作,若验证不通过,则说明该待认证数据无效,停止对该业务事务请求的后续处理操作。
示例性的,若本申请实施例的业务事务请求是授权用户A作为公司1的法律顾问,且该业务事务请求中包含用户A的律师资格证(即待认证数据)和该律师资格证的门限签名。本申请实施例可以是先确定对用户A的律师资格证进行认证的签名群组,然后获取该签名群组的验证公钥对该律师资格证的门限签名进行验证,如果验证通过,就可以继续执行授权用户A作为公司1的法律顾问的操作。
本申请实施例的方案,在获取到包含待认证数据和门限签名的业务事务请求后,先确定该门限签名的签名群组,获取该签名群组的验证公钥对门限签名进行验证,若验证通过方可继续该业务事务请求的后续操作。本申请实施例的方案,在区块链网络之外,以群组为单位构建独立的提供某种功能认证服务的系统,为区块链节点提供门限签名功能。且对该群组的群组信息上链存储。对于需要多方配合实现的审核授权类业务,区块链节点在执行该业务事务请求的过程中,只需从区块链网络中获取签名群组的验证公钥,就可实现对待认证数据的门限签名进行验证,无需分别与每个数据认证方(即群组中的每个成员)进行交互,提高了业务事务请求的执行效率,且很好的匹配了审核授权类业务的需求。
可选的,本申请实施例在执行业务事务请求时,需要从区块链网络中查询获取签名群组的群组信息。相应的,本申请实施例的方案还包括将群组信息上链的过程,即包括:获取群组信息发布事务请求,并执行群组信息发布事务请求,以将群组信息上链存储。
具体的,该群组信息发布请求可以是群组构建完成后,由该群组中的至少一个成员生成包含该群组信息的群组信息发布事务请求,并发送至区块链网络。若该成员是区块链节点,则可以直接发送;若该成员不是区块链节点,则可以通过区块链网络提供的接口,向区块链网络发送该群组信息发布事务请求;还可以通过线下点对点传输的方式,向区块链网络的某个节点传输该群组信息发布事务请求。本机节点即可获取该群组信息发布事务请求,从中获取需要发布的群组信息,将该群组信息进行上链存储。后续区块链网络中的各个节点就根据需求从区块链网络中获取该群组的群组信息。本申请实施例将每个群组的信息进行上链存储,保证了群组信息的安全性和公开性,此外,将群组信息进行上链存储,对于群组而言,其无论是链上还是链下,都可为区块链网络提供数据认证服务,且便于区块链节点对签名结果进行验签。
可选的,在实际应用中,需要审核授权的数据类型有很多,例如,可以包括人员资质认证、单位资质认证和数据有效性认证等,对于不同类型的数据,需要不同审核功能的群组进行认证,且针对同一审核功能,也可能构建了多个群组,所以在本申请实施例中,构建的群组的数量可能较多,为了让用户更好的了解各个群组的信息,本申请实施例可提供群组信息查询展示的功能。即还包括:在获取到群组信息展示请求时,从区块链中查询获取至少一个群组信息,并向用户进行展示。具体的,群组信息展示请求可以是用户有查看群组信息的需求发起的,还可以是区块链节点在处理事务请求的过程中,需要向用户展示群组信息时发起的。本机节点在获取到群组信息展示请求后,可以先确定群组展示需求,例如,是要展示某个群组,还是展示某类认证功能的群组的群组信息,还是展示所有的群组的群组信息等。本机节点会基于群组展示需求,从区块链网络中查询对应的一个或多个群组的群组信息,并向用户进行展示,例如,可以是传输至用户客户端进行展示等。
可选的,本申请实施例中群组信息可以包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和验证公钥。提高了群组信息内容的全面性,便于后续认证数据时精准确定目标群组。相应的,本申请实施例在向用户展示群组信息时,可以展示该群组的所有信息还可以是根据实际需求展示其中的一部分群组信息,对此本实施例不进行限定。
图2是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图。本实施例在上述实施例的基础上,给出了业务事务请求发起过程的具体情况介绍,如图2所示,该方法包括:
S201,基于区块链节点上配置的群组客户端,获取用户发起的认证请求,该认证请求中包括待认证数据。
其中,群组客户端可以是区块链节点设备上安装的,供用户与区块链网络进行交互的客户端,用户可以基于该客户端向区块链网络发起相关事务请求,例如,本实施例中用户可以基于该客户端向区块链网络发起包含待认证数据的认证请求。该认证请求用于请求区块链节点对其中包含的待认证数据进行认证。
可选的,本机节点可以获取用户基于自身配置的群组客户端发起的认证请求;还可以获取区块链网络中的其他节点发送的认证请求。
S202,确定满足待认证数据的认证需求的目标群组。
其中,所谓目标群组可以是需要对待认证数据进行认证的群组。该群组为待认证数据进行认证前称为目标群组,为待认证数据认证后称为签名群组。
可选的,在本申请实施例中,由于不同群组具备的认证功能不同,且同一认证功能也可能对应多个群组,所以本机节点在获取到认证请求后,需要基于认证请求中包含的待认证数据,从区块链网络中已发布的多个群组中确定满足该待认证数据的认证需求的目标群组。具体的确定方式有很多,对此本实施例不进行限定。例如:
方式一、获取用户在认证请求中指定的满足认证需求的目标群组。
具体的,用户在生成认证请求时,可以根据其认证需求,从区块链网络已发布的各群组中指定目标群组,并将该目标群组的群组标识添加到认证请求中。例如,用户可以预先置定满足其认证需求的目标群组,并基于群组客户端向区块链网络发起包含该目标群组标识的群组信息展示请求,本机节点响应该群组信息展示请求,从中获取用户指定的该目标群组标识。
方式二、从区块链中查询发布的群组信息,并根据群组信息的认证功能描述信息确定与认证需求匹配的至少一个群组,作为目标群组。
具体的,本机节点在需要确定目标群组时,还可以从区块链网络中查询已发布群组的群组信息,然后将已发布群组的群组信息中记录的认证功能描述信息(即该群组能够执行的认证功能)与认证请求中的待认证数据对应的认证需求进行匹配,从已发布群组中选择至少一个匹配成功的群组作为目标群组,可选的,可以是从匹配成功的群组中选择最优的群组作为目标群组,还可以是将匹配成功的群组都作为目标群组。
方式三、从区块链中查询已发布的群组信息,并根据群组信息的认证功能描述信息确定与认证需求匹配的候选群组,向候选群组发送是否可承担本次认证任务的查询请求,将反馈可承担本次认证任务的候选群组作为目标群组。
本申请实施例可以根据实际需求选择上述任意一种方式来执行本步骤确定满足待认证数据的认证需求的目标群组的操作,以提高目标群组确定的灵活性和准确性。
S203,向目标群组的至少一个群组成员发起认证请求。
可选的,在确定出满足认证请求(即认证请求中的认证数据)的目标群组后,可以是向目标群组发起该认证请求。本申请实施例的区块链节点可以通过线下点对点的方式向目标群组的至少一个群组成员发起认证请求。
可选的,本机节点还可以在线上向目标群组的至少又给群组成员发起该认证请求(此时该认证请求可以是认证事务请求)。具体的若目标群组中只有一个成员属于区块链节点,则向该成员发起认证请求,若目标群组中有多个成员属于区块链节点,则可以从中选择一个成员发起认证请求,也可以是向多个成员都发起认证请求。若目标群组中的各成员节点都是不是区块链节点,则可以是向各成员中能够通过区块链网络提供的接口与区块链网络进行交互的成员发起该认证请求,或者采用上述点对点传输的方式发起认证请求。
可选的,如果S202确定出的目标群组有多个,本步骤可以是向其中一个目标群组发起认证请求,也可以是向多个目标群组都发起认证请求。
S204,获取目标群组反馈的、对待认证数据认证通过后的门限签名。
可选的,目标群组中的至少一个成员获取该认证请求后,可以将该认证请求发送给该群组中的每个成员,各成员会采用多方安全计算对待认证数据进行认证,并采用签名私钥为待认证数据生成门限签名。如果最终认证结果是通过,则生成门限签名,由群组中的至少一个成员节点反馈给区块链网络。本机节点获取目标群组的至少一个成员反馈的该门限签名。可选的,反馈该门限签名的成员可以与接收认证请求的群组成员为同一个成员,也可以不是,对此本实施例不进行限定。
可选的,本步骤本机节点获取目标群组反馈的门限签名时,可以是与目标群组的成员链上或线下点对点交互获取,对此不进行限定。
可选的,若S203向多个目标群组都发起了认证请求,则本步骤可以获取其中任意目标群组反馈的、对待认证数据认证通过后的门限签名即可。
S205,根据待认证数据和门限签名发起业务事务请求。
可选的,本机节点可以调用业务智能合约,根据待认证数据和门限签名生成业务事务请求,并将生成的业务事务请求发送至去区块链网络。
S206,获取业务事务请求。
可选的,本机节点可以是获取自己发送的业务事务请求,也可以是获取区块链其他节点转发的该业务事务请求。由于该业务事务请求是根据待认证数据和门限签名发起的,所以该业务事务请求中必定包含待认证数据和门限签名,所以此时本机节点需要基于该业务事务请求执行后续S207-S210的操作。
S207,如果业务事务请求中包括待认证数据和门限签名,则确定门限签名对应的签名群组。
需要说明的是,本实施例确定的签名群组可以是S204反馈门限签名的目标群组。
S208,从区块链中查询获取签名群组的群组信息。
S209,采用群组信息中的验证公钥对门限签名进行验证。
S210,如果验证通过,则确认待认证数据的有效性,并继续执行业务事务请求。
本申请实施例的技术方案,获取用户基于群组客户端发起的包含待认证数据的认证请求,确定能够认证该待认证数据的目标群组,向目标群组中的至少一个成员发起认证请求,并接收目标群组认证反馈的门限签名。基于该门限签名和待认证数据发起业务事务请求发送至区块链网络,获取该业务事务请求,先确定其中包含的门限签名对应的签名群组,获取该签名群组的验证公钥对门限签名进行验证,若验证通过方可继续该业务事务请求的后续操作。本申请实施例的方案给出了基于用户发起的认证请求,区块链节点如何确定目标群组,并与目标群组交互完成对待认证数据的认证签名过程。在这个过程中,区块链节点无需与群组中的每个成员都进行交互,只需与群组的至少一个成员进行交互即可,提高了对待认证数据认证的效率,进而提高了处理包含待认证数据和门限签名的业务事务请求的执行效率,且很好的匹配了审核授权类业务的需求。
可选的,本申请实施例上述介绍的三种确定满足所述待认证数据的认证需求的目标群组的方式均是本机节点线下确定目标群组,即确定过程无需区块链其他节点参与,且确定过程的相关信息不进行上链。除此之外,本申请实施例在还可以采用链上方式来确定满足待认证数据的认证需求的目标群组。具体的,可以是本机节点向区块链网络发起目标群组确定请求,该目标群组确定请求中至少包括:待认证数据的认证需求。以请求区块链网络的其他节点响应该目标群组确定请求,从区块链网络的已发布群组中确定至少一个满足该认证需求群组作为目标群组反馈给本机节点,并将该目标群组确定请求以及最终确定的目标群组进行上链存储。
可选的,有些时候用户发起认证请求时,其可能不知道该认证请求中的待认证数据是需要群组进行认证签名的,因此也就不会在认证请求中指定满足认证需求的目标群组。例如,用户A发送的认证请求是对其作为公司1的法律顾问进行授权认证,此时该认证请求中虽然包含用户A的律师资格证,但是用户A并不知道区块链节点需要对其律师资格证进行认证签名,所以用户A也不会指定由哪个目标群组来对其律师资格证进行认证签名,此时多采用上述方式二、方式三或者链上方式来确定目标群组本机节点在向目标群组发起认证请求并获取目标群组对待认证数据的门限签名后,再根据待认证数据和门限签名生成业务事务请求,此时执行该业务事务请求后才算处理完用户发起的认证请求。例如,本机节点在获取目标群组对用户A的律师资格证的门限签名后,基于门限签名、用户A的律师资格证,生成对用户A作为公司1的法律顾问进行授权认证的业务事务请求,发送至区块链网络,以使区块链节点响应该业务事务请求,对其中包含的门限签名认证通过后,授权用户A作为公司1的法律顾问。
图3是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图。本实施例可适用于群组成员执行需要多方配合实现的业务,如审核授权业务的情况,该实施例可以由群组成员(即本机成员)来执行,具体由群组成员所在设备中配置的基于区块链的群组业务实现装置来执行,该装置可以采用软件和/或硬件来实现。可选的,该群组成员所在设备可以是区块链网络节点,也可以不是区块链网络节点。如图3所示,该方法包括:
S301,为所属群组生成签名私钥和验证公钥。
其中,本申请实施例所谓的群组(如签名群组)是在区块链网络之外,构建独立的提供某种功能认证服务的系统。其中包括至少两个成员(即群组成员)。本申请实施例中群组的签名私钥是由群组中每个成员的签名私钥构成,各成员可以用其自己的签名私钥对待认证数据进行签名,且各成员的签名私钥通常由其自己掌管。群组的验证公钥是用于对该群生成的门限签名进行认证时使用的公钥,对于一个群组而言,其验证公钥可以是一个,也可以是多个,群组的验证公钥通常是对区块链网络公开的,例如,通常是存储在区块链网络中的。
本申请实施例中,为其所属群组生成签名私钥和验证公钥的方式有很多,对此本实施例不进行限定。例如,为所属群组生成签名私钥时,可以是群组中的每个成员都按照预设的私钥生成算法,生成自己的私钥签名;还可以是群组中的任一成员(如本机成员)根据各成员提供的个人数据(如各成员提供的一段随机字符串或者个人的身份标识等)按照预设的私钥生成算法,为群组中的各成员生成签名私钥,并分配各群组各成员。可选的,为了保证各成员私钥的隐私性,本实施例优选由各成员生成自己的签名私钥。为所属群组生成验证公钥时,可以是群组中各成员都按照预设的公钥生成算法,生成自己的公钥后都发送至群组的某一成员(如本机成员),由本机成员按照一定的算法对各成员的公钥进行处理后得到该群组的验证公钥;还可以是本机成员自身按照预设算法生成一个或多个公钥作为该群组的认证公钥等。
可选的,本申请实施例还可以采用其他方式为所属群组生成签名私钥和验证公钥。但是需要说明的是,本申请实施例中无论采用什么方式为所属群组生成签名私钥和验证公钥,都需要每个成员的参与,不能仅由一个成员来执行群组的签名私钥和验证公钥生成操作。
S302,将验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储。
可选的,在本申请实施例中,本机成员为所属群组生成签名私钥和验证公钥后,可以将所属群组的验证公钥作为该所属群组的群组信息,基于群组信息生成群组信息发布请求发送至区块链网络,以使区块链节点获取并执行该群组信息发布事务请求,以将群组信息(即群组的验证公钥),进行上链存储。便于后续区块链节点在需要查询已发布群组的群组信息,直接从区块链网络获取。
例如,若本次发布上链的群组信息对应的群组为某一业务事务请求的门限签名对应的签名群组,则区块链节点在处理该业务事务请求的过程中,可以从区块链网络中查询获取签名群组的验证公钥对业务事务请求中的门限签名进行验证。
可选的,为了防止一个群组成员执行本步骤操作的过程中作假,本申请实施例可以选择由群组内的多个能够与区块链网络进行交互的群组成员来执行本步骤的操作。多个群组成员之间可以相互监督、相互验证,从而保证上链存储的群组信息的准确性。
S303,获取用于对待认证数据进行认证的认证请求。
可选在,在本申请实施例中,当区块链节点基于区块链节点上配置的群组客户端,获取用户发起的包含待认证数据的认证请求后,会确定满足待认证数据的认证需求的目标群组,并向该目标群组的至少一个群组成员发起包含待认证数据的认证请求,以请求目标群组中的各群组成员对该待认证数据进行认证。若本机成员属于该目标群组,则本机成员可能就会获取到区块链节点发起的该认证请求,并对该认证请求中包含的待认证数据进行认证。
具体的,由于区块链节点向群组成员发送认证请求的方式不同,所以本机成员获取认证请求的方式也不同。具体的可以包括但不限于以下两种获取方式:
方式一、获取区块链节点在链上发起的用于对待认证数据进行认证的认证事务请求。具体的,若区块链节点根据待认证数据生成对该待认证数据进行认证的认证事务请求,并基于区块链网络(即链上)向目标群组(即需要承但本次认证任务的群组)的群组成员(如本机成员)发起认证请求,此时本机成员就会通过该方式一获取区块链节点在链上发起的对待认证数据进行认证的认证事务请求。例如,区块链节点在区块链网络中广播该认证请求,则此时目标群组中的本机成员作为区块链节点就会在区块链网络中(即链上)获取该认证事务请求。
方式二、获取区块链节点在点对点传输的用于对待认证数据进行认证的认证请求。具体的,若区块链节点根据待认证数据生成对该待认证数据进行认证的认证请求,并线下通过点对点的方式传输至目标群组(即需要承但本次认证任务的群组)的群组成员(如本机成员),则此本机成员就会通过该方式二获取区块链节点在点对点传输的用于对待认证数据进行认证的认证请求。
在本申请实施例中,区块链节点和群组成员传输认证请求时,可以选择链上传输,也可以选择下线传输,可以根据实际需求进行选择,灵活性更强。
S304,在所属群组的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名。
可选的,本机成员在获取到认证请求后,会将该认证请求传输至群组中的至少两个群组成员,接收到该认证请求的各群组成员会采用多方安全计算技术对待认证数据进行认证,并在完成认证后采用自身的签名私钥对待认证数据分布式协作签名,得到门限签名,若参加本次门限签名的群组成员数量达到最低门限值,则生成的该门限签名有效。例如,假设该群组成员共有10人,最低门限值为6人,若该门限签名是群组中的至少6个人进行认证签名得到的,则该门限签名生效,即方可基于该门限签名执行后续S305的操作。
可选的,各群组成员对待认证数据进行认证时,可以基于群组内预先设置的认证规则,判断待认证数据是否真实、有效以及合法等。各群组成员对待认证数据进行门限签名时,可以将自己的签名私钥和认证结果作为隐私输入,待认证数据作为公共输入,采用多方安全计算技术进行一次联合签名运算,得到门限签名,在这个过程中多方安全计算的隐私性保证了参与本次签名的各群组成员并不能获得其他群组成员的私钥信息和认证结果,但都可以得到其他群组成员的签名,保证了得到的门限签名的安全性和不可篡改性。
可选的,各群组成员在对待认证数据进行分布式协作签名时,可以是并行进行认证签名的,也可以是串行进行认证签名的,具体的认证方式以及生成门限签名的方式本实施例不进行限定。
S305,基于门限签名响应认证请求。
可选的,本机成员基于门限签名响应认证请求的过程可以是将S304得到的门限签名反馈给认证请求的发起者。如向本机成员发起认证请求的区块链节点。认证请求的发起者在接收到群组成员反馈的门限签名后,可以将该门限签名携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对该门限签名进行验证。例如,可以是认证请求的发起者可以根据门限签名和待认证数据发起业务事务请求发送至区块链网络,由区块链节点接收并响应该业务事务请求,确定门限签名对应的签名群组,从区块链中查询获取该签名群组的群组信息,采用该群组信息中的验证公钥对该门限签名进行验证,若验证通过,则确认待认证数据的有效性,并继续执行业务事务请求。
需要说明的是,本申请实施例可以有由一个群组成员执行基于门限签名响应认证请求的操作,为了防止一个群组成员响应时作假,也可以是由多个群组成员基于门限签名响应认证请求。优选的,可以是选择让获取该认证请求的群组成员来执行本步骤响应认证请求的操作。
本申请实施例的技术方案,群组成员为其所属群组生成签名私钥和验证公钥,并将验证公钥携带在群组信息发布事务请求中进行上链存储。当获取到用户对待认证数据进行认证的认证请求时,在所属群组中的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名,并基于门限签名响应认证请求。本申请实施例的方案,在区块链网络之外,以群组为单位构建独立的提供某种功能认证服务的系统,为区块链节点提供门限签名服务。且将该群组的群组信息进行上链存储,保证群组信息的公开性和安全性的同时,便于区块链节点在执行与门限签名相关的业务事务请求时,快速查找已发布群组的群组信息。从而提高了业务事务请求的执行效率,且很好的匹配了审核授权类业务的需求。
可选的,在本申请实施例中,群组成员为部署于区块链节点的客户端,或独立于区块链节点的客户端。具体的,群组成员可以是部署在区块链节点所在设备上的客户端,也可以是部署在独立于区块链节点所在设备上的客户端。也就是说本申请实施例的群组成员可以是区块链网络的节点,也可以是独立于区块链网络的节点。对于独立于区块链网络的客户端,有的可以通过区块链网络提供的接口与区块链网络进行交互,有的不可以,对此本实施例不进行限定。提高了群组成员客户端部署的灵活性。
可选的,在本申请实施例中,所述群组成员归属于一个或多个群组,每个群组的认证功能相同或不同。其中,所述认证功能包括下述至少一种:人员资质认证(如律师资格认证、教师资格认证和会计师资格认证等)、单位资质认证(如企业营业执照认证和税务登记认证等)和数据有效性认证(如授权数据有效性认证和评审资格有效性认证等)。例如,对于群组成员A,其可以根据自身的资质参与多个群组,即群组1、群组2和群组3,其中,群组1和群组2是用来对人员资质进行认证,群组3是用于对单位资质进行认证,灵活性更强。
图4是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图。本实施例在上述实施例的基础上,给出了群组成员构建群组并生成群组信息的具体情况介绍,如图4所示,该方法包括:
S401,基于群组客户端中群组初始化接口,确定群组成员及群组成员的描述信息,确定群组认证功能的描述信息,为群组生成群组标识。
其中,本申请实施例的群组客户端,可以是部署于区块链节点的群组客户端,也可以是部署于独立于区块链节点的客户端,该群组客户端可以是为群组用户提供群组管理(如群组创建)或者执行认证签名操作的操作界面。该客户端上设置有初始化接口,该初始化接口可以是群组客户端上提供的初始化构建群组的服务接口,每一成员都可以基于其客户端上的初始化接口创建一个新的用于实现某一认证功能的群组。
可选的,本申请实施例中至少两个成员线下协商要组建一个群组时,协商新建群组的认证功能是什么,哪些成员可以参与到新建群组中,然后选出一个成员(如本机成员)作为组织成员,基于协商的内容,通过自身群组客户端的群组初始化接口输入加入该群组的各群组成员及其描述信息(如群组成员的名称、所在节点、所属群组、所属群组的编号等)、该群组的认证功能描述信息(如,人员资质认证、单位资质认证和数据有效性认证等中的至少一种),此时群组客户端即可基于群组初始化接口输入的信息,确定组成新群组的各群组成员及群组成员的描述信息,以及群组认证功能的描述信息。
可选的,本申请实施例为群组生成群组标识时,可以是本机成员线下确定后,输入到群组初始化接口,也可以是群组客户端基于用户输入的数据或随机数据等为新组建的群组生成的。例如,可以是采用预设算法,为群组生成一个较大的数字作为该群组的群组标识,本申请实施例选择将较大数值作为群组标识,能够降低不同群组的标识重复概率,间接保证各群组标识的唯一性。可选的,本申请实施例还可以由于一个专门的机构来为各个群组分配不同的群组标识。对此不进行限定。
S402,为所属群组生成签名私钥和验证公钥。
S403,获取群组成员生成的验证公钥。
S404,将群组标识、群组成员的描述信息、群组认证功能的描述信息和验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储。
可选的,在本申请实施例中,确定了群组成员、群组成员的描述信息、群组认证功能的描述信息、群组标识、群组签名私钥和验证公钥后,该群组的组建过程就结束了,此时为了让区块链网络中的各节点知晓该群组,该群组中的成员节点(如本机成员)需要获取群组成员生成的验证公钥,与群组标识、群组成员的描述信息、群组认证功能的描述信息一并作为该群组的群组信息,生成包含该群组信息的群组信息发布事务请求,并将该群组信息发布事务请求发布到区块链网络,以使区块链节点获取群组信息发布事务请求,并执行群组信息发布事务请求,以将所述群组信息上链存储。
可选的,本申请实施例上链存储群组信息包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和所述验证公钥。这样设置的好处是上链存储的群组信息更为全面,便于区块链节点能够全面了解各个群组的相关信息。
S405,获取用于对待认证数据进行认证的认证请求。
S506,在所属群组的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名
S407,基于门限签名响应所述认证请求。
其中,所述门限签名用于携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对门限签名进行验证。
本申请实施例的技术方案,群组成员想要组建群组时,基于其群组客户端中的群组初始化接口,确定该群组成员、群组成员描述信息、群组客户端和群组标识,并为所属群组生成签名私钥和验证公钥。然后将群组标识、群组成员的描述信息、群组认证功能的描述信息和验证公钥一并作为群组信息进行上链存储,当获取到用户对待认证数据进行认证的认证请求时,在所属群组中的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名,并基于门限签名响应认证请求。本申请实施例的方案,群组构建后,需要将该群组信息,即群组标识、群组成员的描述信息、群组认证功能的描述信息和验证公钥进行上链存储。本实施例在区块链中存储各个已发布群组的详细介绍信息,保证群组信息的公开性和安全性的同时,便于区块链节点在执行与门限签名相关的业务事务请求时,快速查找已发布群组的群组信息。从而提高了业务事务请求的执行效率,且很好的匹配了审核授权类业务的需求。
图5是根据本申请实施例提供的另一种基于区块链的群组业务实现方法的流程图。本实施例在上述实施例的基础上,给出了在所属群组的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名的具体情况介绍,如图5所示,该方法包括:
S501,为所属群组生成签名私钥和验证公钥。
S502,将验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储。
S503,获取用于对待认证数据进行认证的认证请求。
S504,根据所属群组的组织成员的控制,在所属群组的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名。
其中,群组的组织成员可以是组织构建群组的群组成员,也可以是组织本次认证签名过程的群组成员,例如,可以将群组中获取本次认证请求的成员(即本机成员)作为本次认证签名过程的组织成员。对于一个群组而言,其组织成员可以是固定的,也可以是不固定的,对此不进行限定。
可选的,本申请实施例中,群组的各成员服从其所属群组的组织成员的组织控制,采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名。例如,可以是由组织成员根据门限签名的最低门限值,从群组中的所有成员中选择至少两个成员来采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名。例如,门限签名的最低门限值为6,则可以从群组中的10个群组成员中选择至少6个成员采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名。在选择哪些成员参与本次认证签名过程时,可以是随机选择,也可以是根据各成员的意愿进行选择,还可以按照其他原则进行选择等,对此不进行限定。关于至少两个成员的具体认证签名过程在上述实施例中已进行介绍,在此不进行赘述。
S505,将门限签名通过组织成员,反馈给认证请求的发起者。
其中,门限签名用于携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对所述门限签名进行验证。
可选的,在本申请实施例中,可以由组织成员响应认证请求,向认证请求发起者反馈门限签名的群组成员。即由群组的组织成员来控制对待认证数据的认证签名,并由该组织成员来向认证请求的发起者来反馈门限签名。
本申请实施例的技术方案,群组成员为其所属群组生成签名私钥和验证公钥,并将验证公钥携带在群组信息发布事务请求中进行上链存储。当获取到用户对待认证数据进行认证的认证请求时,由所属群组的组织成员控制在所属群组中的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名,并由组织成员向认证请求发起者反馈门限签名。本申请实施例的方案,由群组的组织成员来控制对待认证数据的认证签名,并由该组织成员来向认证请求发起者来反馈门限签名,便于对群组执行认证请求的管理。
可选的,在本申请实施例中,根据所属群组的组织成员的控制,在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名时,还可以是如果本机成员为组织成员,则通知所属群组的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名;接收群组成员反馈的门限签名,并统计实际参与门限签名的群组成员数量;在数量达到最低门限值时,通知其他群组成员停止执行认证。具体的,如果本机成员为组织成员,本机成员可以从群组中选出至少两个成员来执行本次认证签名操作后,通知至少两个成员(如通知了所有的群组成员)采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名,本机节点获取其通知的至少两个成员反馈的门限签名,然后统计实际参与本次门限签名的群组成员数量(如6个),如果该数量达到最低门限值(如最低门限值为6),则说明当前获取的门限签名已经生效,无需剩余成员(如剩余的4个成员)继续进行认证,因此,需要通知剩余成员停止执行认证操作。这样设置的好处是,节约群组执行认证请求的算力。
图6A是根据本申请实施例提供的一种基于区块链的群组业务实现方法的信令图;图6B是根据本申请实施例提供的节点架构示意图。本实施例在上述各实施例的基础上,给出了区块链节点和群组中的成员节点按照图6B所示的节点架构部署时,如何交互实现本实施例的基于区块链的群组业务实现方法的具体情况介绍。
接下来先对图6B所示的节点架构示意图进行简单介绍。对于一个节点6来说,最上层为客户端(Client)层61,中间层为服务端(server)层62,最下层为点对点网络连接(P2PNet Work)层63。
其中,客户端层61包括的接口有:请求签名接收接口(Request Tss Sign)611、获取签名接口(Get Tss Sign)612、验证签名接口(Verify Tss Sign)613、签名接口(Sign)614和账户管理接口(Account)615,这些接口能够被调用与服务端交互以执行相应功能。服务端层62包括:身份识别与访问管理接口(IAM)621、群组模块(Group)622、群组成员模块(GroupMember)623、请求签名生成进程(Tss Sign Request)624、签名进程(Tss Sign)625和事务处理进程池(TssCore和TaskPool)626。
可选的,本申请实施例的群组成员和区块链节点均按照图6B所示的节点架构部署。如图6A-6B所示,该方法包括:
S601,群组成员基于群组客户端中群组初始化接口,确定群组成员及群组成员的描述信息,确定群组认证功能的描述信息,为群组生成群组标识。
示例性的,群组成员可以基于图6B所示的群组客户端层61中账户管理接口(即初始化接口)611,调用服务端的群组模块622确定群组成员、群组认证功能的描述信息,以及为群组生成群组标识,调用群组成员模块623确定并记录群组成员的描述信息。具体的,用户1和用户2线下协商好构建一个人员资质认证的群组,可以由用户1作为组织成员,在其群组客户端层61的账户管理接口615中输入群组成员(用户1和用户2)、该群组的认证功能(人员资质认证)以及该群组名称(第一资质认证群组)等,然后点击确定,该账户管理接口615即可调用服务端62的群组模块622和群组成员模块623确定群组成员及群组成员的描述信息,确定群组认证功能的描述信息,为群组生成群组标识。
S602,群组成员为所属群组生成签名私钥和验证公钥。
示例性的,可以是由群组成员的服务端层62中的群组模块622来为所属群组生成签名私钥和验证公钥。
S603,群组成员获取群组成员生成的验证公钥。
S604,群组成员将群组标识、群组成员的描述信息、群组认证功能的描述信息和验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链网络。
示例性的,可以由群组成员的事务处理进程626将群组标识、群组成员的描述信息、群组认证功能的描述信息和验证公钥作为群组信息,生成包含该群组信息的群组信息发布事务请求,然后将该群组信息发布到区块链网络。
S605,区块链节点获取群组信息发布事务请求,并执行群组信息发布事务请求,以将群组信息上链存储。
示例性的,区块链节点获取群组信息发布事务请求后,可以通过服务端层62中的事务处理进程池626来执行该群组信息发布事务请求,以将群组信息上链存储。
S606,区块链节点基于区块链节点上配置的群组客户端,获取用户发起的认证请求,该认证请求中包括待认证数据。
示例性的,区块链节点可以基于客户端层61上的获取签名接口612获取用户在该获取签名接口612上输入的待签名数据,并生成包含待认证数据的认证请求。
S607,区块链节点确定满足待认证数据的认证需求的目标群组。
示例性的,区块链节点的获取签名接口612会调用服务端层62的事务处理进程池626,来确定满足待认证数据的认证需求的目标群组。
S608,区块链节点向目标群组的至少一个群组成员发起认证请求。
示例性的,区块链节点的事务处理进程池626确定出目标群组后,会调用请求签名生成进程624发起认证请求,并通过点对点网络连接层63将该认证请求传输至目标群组的至少一个群组成员。
S609,群组成员获取用于对待认证数据进行认证的认证请求。
S610,群组成员在所属群组的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名。
示例性的,群组成员的客户端层61的签名接口614会接收本机成员输入的认证结果和签名私钥,然后调用服务端层62中的签名进程625采用多方安全计算对待认证数据进行认证,以及采用签名私钥对待认证数据进行门限签名的操作。
S611,群组成员将门限签名反馈给发起认证请求的区块链节点。
示例性的,群组成员的获取签名接口612访问该请求签名生成进程624,获取请求签名生成进程624生成的门限签名,再调用点对点网络连接层63将生成的门限签名传输至认证请求的区块链节点。
S612,区块链节点获取目标群组反馈的、对待认证数据认证通过后的门限签名。
S613,区块链节点根据待认证数据和门限签名发起业务事务请求。
示例性的,区块链节点通过点对点网络连接层63获取目标群组反馈的门限签名后,基于事务处理进程池626根据待认证数据和门限签名发起业务事务请求。
S614,区块链节点获取业务事务请求。
S615,如果业务事务请求中包括待认证数据和门限签名,则区块链节点确定门限签名对应的签名群组。
S616,区块链节点从区块链中查询获取签名群组的群组信息。
示例性的,如果区块链节点获取的业务事务请求中包括待认证数据和门限签名,则通过服务端的事务处理进程池626确定该门限签名对应的签名群组,并从区块链中查询获取签名群组的群组信息。
S617,区块链节点采用群组信息中的验证公钥对门限签名进行验证。
S618,如果验证通过,则区块链节点确认待认证数据的有效性,并继续执行业务事务请求。
示例性的,区块链节点可以将验证公钥和门限签名输入到验证签名接口613,验证签名接口613会对门限签名进行验证,如果验证通过,确认待认证数据的有效性,进而会调用事务处理进程池626继续执行业务事务请求。
本申请实施例的方案给出了构建有至少两个成员组成的群组,并基于该群组与区块链节点配合实现基于区块链的群组业务的优选方案。在处理群组业务的过程中,区块链节点无需与群组中的每个成员进行交互,提高了业务事务请求的执行效率,且很好的匹配了审核授权类业务的需求。
图7是根据本申请实施例提供的一种基于区块链的群组业务实现装置的结构示意图。本实施例适用于区块链节点方执行需要多方配合实现的业务,如审核授权业务的情况。该装置可配置于区块链节点中,具体配置于区块链节点所在电子设备中,该装置可实现本申请实施例所述的基于区块链的群组业务实现方法。该装置700具体包括如下:
请求获取模块701,用于获取业务事务请求;
签名群组确定模块702,用于如果所述业务事务请求中包括待认证数据和门限签名,则确定所述门限签名对应的签名群组;
群组信息获取模块703,用于从区块链中查询获取所述签名群组的群组信息;其中,所述群组包括至少两个成员,所述群组的成员用于采用多方安全计算对待认证数据进行认证,并采用签名私钥为所述待认证数据生成门限签名;所述群组信息中至少包括门限签名的验证公钥;
门限签名验证模块704,用于采用所述群组信息中的验证公钥对所述门限签名进行验证;
请求执行模块705,用于如果验证通过,则确认所述待认证数据的有效性,并继续执行所述业务事务请求。
本申请实施例的方案,在获取到包含待认证数据和门限签名的业务事务请求后,先确定该门限签名的签名群组,获取该签名群组的验证公钥对门限签名进行验证,若验证通过方可继续该业务事务请求的后续操作。本申请实施例的方案,在区块链网络之外,以群组为单位构建独立的提供某种功能认证服务的系统,为区块链节点提供门限签名功能。且对该群组的群组信息上链存储。对于需要多方配合实现的审核授权类业务,区块链节点在执行该业务事务请求的过程中,只需从区块链网络中获取签名群组的验证公钥,就可实现对待认证数据的门限签名进行验证,无需分别与每个数据认证方(即群组中的每个成员)进行交互,提高了业务事务请求的执行效率,且很好的匹配了审核授权类业务的需求。
进一步的,所述请求获取模块701还用于:
获取群组信息发布事务请求,并执行所述群组信息发布事务请求,以将所述群组信息上链存储。
进一步的,所述群组信息包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和所述验证公钥。
进一步的,所述装置,还包括:
信息查询展示模块,用于在获取到群组信息展示请求时,从区块链中查询获取至少一个群组信息,并向用户进行展示。
进一步的,所述请求获取模块701,还用于基于区块链节点上配置的群组客户端,获取用户发起的认证请求,所述认证请求中包括待认证数据;
所述装置还包括:
目标群组确定模块,用于确定满足所述待认证数据的认证需求的目标群组;
请求发送模块,用于向所述目标群组的至少一个群组成员发起所述认证请求;
门限签名获取模块,用于获取所述目标群组反馈的、对所述待认证数据认证通过后的门限签名;
请求发起模块,用于根据所述待认证数据和门限签名发起业务事务请求。
进一步的,所述目标群组确定模块具体用于:
获取用户在所述认证请求中指定的满足认证需求的目标群组;或
从区块链中查询发布的群组信息,并根据所述群组信息的认证功能描述信息确定与所述认证需求匹配的至少一个群组,作为目标群组。
图8是根据本申请实施例提供的另一种基于区块链的群组业务实现装置的结构示意图。本实施例可适用于群组成员执行需要多方配合实现的业务,如审核授权业务的情况,该装置可配置于群组成员所在设备中,该装置可实现本申请实施例所述的基于区块链的群组业务实现方法。该装置800具体包括如下:
密钥生成模块801,用于为所属群组生成签名私钥和验证公钥;
请求发布模块802,用于将所述验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储;
请求获取模块803,用于获取用于对待认证数据进行认证的认证请求;
数据签名模块804,用于在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
认证请求响应模块805,用于基于所述门限签名响应所述认证请求;其中,所述门限签名用于携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对所述门限签名进行验证。
本申请实施例的技术方案,群组成员为其所属群组生成签名私钥和验证公钥,并将验证公钥携带在群组信息发布事务请求中进行上链存储。当获取到用户对待认证数据进行认证的认证请求时,在所属群组中的至少两个成员中采用多方安全计算对待认证数据进行认证,并采用签名私钥对待认证数据进行门限签名,并基于门限签名响应认证请求。本申请实施例的方案,在区块链网络之外,以群组为单位构建独立的提供某种功能认证服务的系统,为区块链节点提供门限签名服务。且将该群组的群组信息进行上链存储,保证群组信息的公开性和安全性的同时,便于区块链节点在执行与门限签名相关的业务事务请求时,快速查找已发布群组的群组信息。从而提高了业务事务请求的执行效率,且很好的匹配了审核授权类业务的需求。
进一步的,所述群组信息包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和所述验证公钥。
进一步的,所述装置还包括:
群组信息确定模块,用于基于群组客户端中群组初始化接口,确定群组成员及群组成员的描述信息,确定群组认证功能的描述信息,为所述群组生成群组标识;
公钥获取模块,用于获取群组成员生成的验证公钥。
进一步的,所述群组成员为部署于区块链节点的客户端,或独立于区块链节点的客户端。
进一步的,所述群组成员归属于一个或多个群组,每个群组的认证功能相同或不同。
进一步的,所述认证功能包括下述至少一种:人员资质认证、单位资质认证和数据有效性认证。
进一步的,所述请求获取模块803具体用于:
获取区块链节点在链上发起的用于对待认证数据进行认证的认证事务请求;或
获取区块链节点在点对点传输的用于对待认证数据进行认证的认证请求。
进一步的,所述数据签名模块804具体用于:
根据所属群组的组织成员的控制,在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
相应的,所述认证请求响应模块805具体用于:
将所述门限签名通过所述组织成员,反馈给所述认证请求的发起者。
进一步的,所述数据签名模块804具体用于:
如果本机成员为所述组织成员,则通知所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
接收群组成员反馈的门限签名,并统计实际参与门限签名的群组成员数量;
在数量达到最低门限值时,通知其他群组成员停止执行认证。
根据本申请的实施例,本申请还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图9示出了可以用来实施本申请的实施例的示例电子设备900的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图9所示,设备900包括计算单元901,其可以根据存储在只读存储器(ROM)902中的计算机程序或者从存储单元908加载到随机访问存储器(RAM)903中的计算机程序,来执行各种适当的动作和处理。在RAM 903中,还可存储设备900操作所需的各种程序和数据。计算单元91、ROM 902以及RAM 903通过总线904彼此相连。输入/输出(I/O)接口905也连接至总线904。
设备900中的多个部件连接至I/O接口905,包括:输入单元906,例如键盘、鼠标等;输出单元907,例如各种类型的显示器、扬声器等;存储单元908,例如磁盘、光盘等;以及通信单元909,例如网卡、调制解调器、无线通信收发机等。通信单元909允许设备900通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元901可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元901的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元901执行上文所描述的各个方法和处理,例如基于区块链的群组业务实现方法。例如,在一些实施例中,基于区块链的群组业务实现方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元908。在一些实施例中,计算机程序的部分或者全部可以经由ROM 902和/或通信单元909而被载入和/或安装到设备900上。当计算机程序加载到RAM 903并由计算单元901执行时,可以执行上文描述的基于区块链的群组业务实现方法的一个或多个步骤。备选地,在其他实施例中,计算单元901可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于区块链的群组业务实现方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本申请的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本申请的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (33)
1.一种基于区块链的群组业务实现方法,由区块链节点执行,所述方法包括:
获取业务事务请求;
如果所述业务事务请求中包括待认证数据和门限签名,则确定所述门限签名对应的签名群组;
从区块链中查询获取所述签名群组的群组信息;其中,所述群组包括至少两个成员,所述群组的成员用于采用多方安全计算对待认证数据进行认证,并采用签名私钥为所述待认证数据生成门限签名;所述群组信息中至少包括门限签名的验证公钥;
采用所述群组信息中的验证公钥对所述门限签名进行验证;
如果验证通过,则确认所述待认证数据的有效性,并继续执行所述业务事务请求。
2.根据权利要求1所述的方法,还包括:
获取群组信息发布事务请求,并执行所述群组信息发布事务请求,以将所述群组信息上链存储。
3.根据权利要求1所述的方法,其中,所述群组信息包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和所述验证公钥。
4.根据权利要求3所述的方法,还包括:
在获取到群组信息展示请求时,从区块链中查询获取至少一个群组信息,并向用户进行展示。
5.根据权利要求1所述的方法,还包括:
基于区块链节点上配置的群组客户端,获取用户发起的认证请求,所述认证请求中包括待认证数据;
确定满足所述待认证数据的认证需求的目标群组;
向所述目标群组的至少一个群组成员发起所述认证请求;
获取所述目标群组反馈的、对所述待认证数据认证通过后的门限签名;
根据所述待认证数据和所述门限签名发起业务事务请求。
6.根据权利要求5所述的方法,其中,所述确定满足所述待认证数据的认证需求的目标群组包括:
获取用户在所述认证请求中指定的满足认证需求的目标群组;或
从区块链中查询发布的群组信息,并根据所述群组信息的认证功能描述信息确定与所述认证需求匹配的至少一个群组,作为目标群组。
7.一种基于区块链的群组业务实现方法,由群组成员执行,所述方法包括:
为所属群组生成签名私钥和验证公钥;
将所述验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储;
获取用于对待认证数据进行认证的认证请求;
在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
基于所述门限签名响应所述认证请求;其中,所述门限签名用于携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对所述门限签名进行验证。
8.根据权利要求7所述的方法,其中,所述群组信息包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和所述验证公钥。
9.根据权利要求8所述的方法,还包括:
基于群组客户端中群组初始化接口,确定群组成员及所述群组成员的描述信息,确定群组认证功能的描述信息,为所述群组生成群组标识;
获取群组成员生成的验证公钥。
10.根据权利要求7所述的方法,其中,所述群组成员为部署于区块链节点的客户端,或独立于区块链节点的客户端。
11.根据权利要求7所述的方法,其中,所述群组成员归属于一个或多个群组,每个群组的认证功能相同或不同。
12.根据权利要求11所述的方法,其中,所述认证功能包括下述至少一种:人员资质认证、单位资质认证和数据有效性认证。
13.根据权利要求7所述的方法,其中,所述获取用于对待认证数据进行认证的认证请求包括:
获取区块链节点在链上发起的用于对待认证数据进行认证的认证事务请求;或
获取区块链节点在点对点传输的用于对待认证数据进行认证的认证请求。
14.根据权利要求7所述的方法,其中,所述在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名包括:
根据所属群组的组织成员的控制,在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
相应的,基于所述门限签名响应所述认证请求包括:
将所述门限签名通过所述组织成员,反馈给所述认证请求的发起者。
15.根据权利要求14所述的方法,其中,所述根据所属群组的组织成员的控制,在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名包括:
如果本机成员为所述组织成员,则通知所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
接收群组成员反馈的门限签名,并统计实际参与门限签名的群组成员数量;
在数量达到最低门限值时,通知其他群组成员停止执行认证。
16.一种基于区块链的群组业务实现装置,配置于区块链节点,所述装置包括:
请求获取模块,用于获取业务事务请求;
签名群组确定模块,用于如果所述业务事务请求中包括待认证数据和门限签名,则确定所述门限签名对应的签名群组;
群组信息获取模块,用于从区块链中查询获取所述签名群组的群组信息;其中,所述群组包括至少两个成员,所述群组的成员用于采用多方安全计算对待认证数据进行认证,并采用签名私钥为所述待认证数据生成门限签名;所述群组信息中至少包括门限签名的验证公钥;
门限签名验证模块,用于采用所述群组信息中的验证公钥对所述门限签名进行验证;
请求执行模块,用于如果验证通过,则确认所述待认证数据的有效性,并继续执行所述业务事务请求。
17.根据权利要求16所述的装置,其中,所述请求获取模块还用于:
获取群组信息发布事务请求,并执行所述群组信息发布事务请求,以将所述群组信息上链存储。
18.根据权利要求16所述的装置,其中,所述群组信息包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和所述验证公钥。
19.根据权利要求18所述的装置,还包括:
信息查询展示模块,用于在获取到群组信息展示请求时,从区块链中查询获取至少一个群组信息,并向用户进行展示。
20.根据权利要求16所述的装置,还包括:
所述请求获取模块,还用于基于区块链节点上配置的群组客户端,获取用户发起的认证请求,所述认证请求中包括待认证数据;
目标群组确定模块,用于确定满足所述待认证数据的认证需求的目标群组;
请求发送模块,用于向所述目标群组的至少一个群组成员发起所述认证请求;
门限签名获取模块,用于获取所述目标群组反馈的、对所述待认证数据认证通过后的门限签名;
请求发起模块,用于根据所述待认证数据和所述门限签名发起业务事务请求。
21.根据权利要求20所述的装置,其中,所述目标群组确定模块具体用于:
获取用户在所述认证请求中指定的满足认证需求的目标群组;或
从区块链中查询发布的群组信息,并根据所述群组信息的认证功能描述信息确定与所述认证需求匹配的至少一个群组,作为目标群组。
22.一种基于区块链的群组业务实现装置,配置于群组成员所属设备,所述装置包括:
密钥生成模块,用于为所属群组生成签名私钥和验证公钥;
请求发布模块,用于将所述验证公钥作为群组信息,携带在群组信息发布事务请求中,发布到区块链上进行存储;
请求获取模块,用于获取用于对待认证数据进行认证的认证请求;
数据签名模块,用于在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
认证请求响应模块,用于基于所述门限签名响应所述认证请求;其中,所述门限签名用于携带在区块链上发起的业务事务请求中,以供区块链节点根据区块链中存储的验证公钥对所述门限签名进行验证。
23.根据权利要求22所述的装置,其中,所述群组信息包括:群组标识、群组成员的描述信息、群组认证功能的描述信息和所述验证公钥。
24.根据权利要求23所述的装置,还包括:
群组信息确定模块,用于基于群组客户端中群组初始化接口,确定群组成员及所述群组成员的描述信息,确定群组认证功能的描述信息,为所述群组生成群组标识;
公钥获取模块,用于获取群组成员生成的验证公钥。
25.根据权利要求22所述的装置,其中,所述群组成员为部署于区块链节点的客户端,或独立于区块链节点的客户端。
26.根据权利要求22所述的装置,其中,所述群组成员归属于一个或多个群组,每个群组的认证功能相同或不同。
27.根据权利要求26所述的装置,其中,所述认证功能包括下述至少一种:人员资质认证、单位资质认证和数据有效性认证。
28.根据权利要求22所述的装置,其中,所述请求获取模块具体用于:
获取区块链节点在链上发起的用于对待认证数据进行认证的认证事务请求;或
获取区块链节点在点对点传输的用于对待认证数据进行认证的认证请求。
29.根据权利要求22所述的装置,其中,所述数据签名模块具体用于:
根据所属群组的组织成员的控制,在所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
相应的,所述认证请求响应模块具体用于:
将所述门限签名通过所述组织成员,反馈给所述认证请求的发起者。
30.根据权利要求29所述的装置,其中,所述数据签名模块具体用于:
如果本机成员为所述组织成员,则通知所属群组的至少两个成员中采用多方安全计算对所述待认证数据进行认证,并采用所述签名私钥对待认证数据进行门限签名;
接收群组成员反馈的门限签名,并统计实际参与门限签名的群组成员数量;
在数量达到最低门限值时,通知其他群组成员停止执行认证。
31.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6或7-15中任一项所述的基于区块链的群组业务实现方法。
32.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行根据权利要求1-6或7-15中任一项所述的基于区块链的群组业务实现方法。
33.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-6或7-15中任一项所述的基于区块链的群组业务实现方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011593351.XA CN112636929B (zh) | 2020-12-29 | 2020-12-29 | 群组业务实现方法、装置、设备和存储介质 |
KR1020210097284A KR102558212B1 (ko) | 2020-12-29 | 2021-07-23 | 그룹 서비스 구현 방법, 장치, 설비 및 저장 매체 |
US17/452,496 US20220045849A1 (en) | 2020-12-29 | 2021-10-27 | Group service implementation method and device, equipment and storage medium |
EP21205113.0A EP3934168B1 (en) | 2020-12-29 | 2021-10-27 | Group service implementation method and device, equipment and storage medium |
JP2021199474A JP7332672B2 (ja) | 2020-12-29 | 2021-12-08 | グループサービス実現方法、装置、機器および記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011593351.XA CN112636929B (zh) | 2020-12-29 | 2020-12-29 | 群组业务实现方法、装置、设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112636929A true CN112636929A (zh) | 2021-04-09 |
CN112636929B CN112636929B (zh) | 2023-01-17 |
Family
ID=75286258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011593351.XA Active CN112636929B (zh) | 2020-12-29 | 2020-12-29 | 群组业务实现方法、装置、设备和存储介质 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220045849A1 (zh) |
EP (1) | EP3934168B1 (zh) |
JP (1) | JP7332672B2 (zh) |
KR (1) | KR102558212B1 (zh) |
CN (1) | CN112636929B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112799636A (zh) * | 2021-04-14 | 2021-05-14 | 北京百度网讯科技有限公司 | 随机数生成方法、装置、设备和存储介质 |
CN113141271A (zh) * | 2021-04-20 | 2021-07-20 | 国网上海市电力公司 | 一种基于联盟链的变电站设备配置文件版本管理方法 |
CN114282270A (zh) * | 2021-12-17 | 2022-04-05 | 网易(杭州)网络有限公司 | 在区块链中进行凭证管理的方法、装置、终端及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130007442A1 (en) * | 2011-06-30 | 2013-01-03 | Qualcomm Incorporated | Facilitating group access control to data objects in peer-to-peer overlay networks |
CN110084600A (zh) * | 2019-04-29 | 2019-08-02 | 百度在线网络技术(北京)有限公司 | 决议事务请求的处理、验证方法、装置、设备及介质 |
CN111541551A (zh) * | 2020-05-22 | 2020-08-14 | 杭州时戳信息科技有限公司 | 门限签名消息的处理方法、系统、存储介质及服务器 |
CN111835528A (zh) * | 2020-07-16 | 2020-10-27 | 广州大学 | 一种去中心化的物联网跨域访问授权方法及系统 |
CN112036884A (zh) * | 2020-09-01 | 2020-12-04 | 中国银行股份有限公司 | 一种签名方法及相关设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6389350B2 (ja) | 2016-03-31 | 2018-09-12 | 株式会社bitFlyer | トランザクション処理装置、トランザクション処理方法、及びそのためのプログラム |
GB201705621D0 (en) | 2017-04-07 | 2017-05-24 | Nchain Holdings Ltd | Computer-implemented system and method |
RU2735730C1 (ru) * | 2017-07-11 | 2020-11-06 | Свирлдз, Инк. | Способы и устройство эффективной реализации распределенной базы данных в сети |
CN111480315A (zh) * | 2017-12-15 | 2020-07-31 | 区块链控股有限公司 | 使用低熵密码授权区块链交易的计算机实现的系统和方法 |
EP3639182A4 (en) * | 2019-04-29 | 2021-03-17 | Advanced New Technologies Co., Ltd. | METHODS AND DEVICES FOR VALIDATING TRANSACTIONS IN A BLOCKCHAIN SYSTEM |
SG11202003719QA (en) * | 2019-05-31 | 2020-05-28 | Advanced New Technologies Co Ltd | System and method for providing privacy and security protection in blockchain-based private transactions |
CN111934890B (zh) * | 2020-10-13 | 2021-01-26 | 百度在线网络技术(北京)有限公司 | 密钥生成方法、签名和验签方法、装置、设备和介质 |
-
2020
- 2020-12-29 CN CN202011593351.XA patent/CN112636929B/zh active Active
-
2021
- 2021-07-23 KR KR1020210097284A patent/KR102558212B1/ko active IP Right Grant
- 2021-10-27 EP EP21205113.0A patent/EP3934168B1/en active Active
- 2021-10-27 US US17/452,496 patent/US20220045849A1/en active Pending
- 2021-12-08 JP JP2021199474A patent/JP7332672B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130007442A1 (en) * | 2011-06-30 | 2013-01-03 | Qualcomm Incorporated | Facilitating group access control to data objects in peer-to-peer overlay networks |
CN110084600A (zh) * | 2019-04-29 | 2019-08-02 | 百度在线网络技术(北京)有限公司 | 决议事务请求的处理、验证方法、装置、设备及介质 |
CN111541551A (zh) * | 2020-05-22 | 2020-08-14 | 杭州时戳信息科技有限公司 | 门限签名消息的处理方法、系统、存储介质及服务器 |
CN111835528A (zh) * | 2020-07-16 | 2020-10-27 | 广州大学 | 一种去中心化的物联网跨域访问授权方法及系统 |
CN112036884A (zh) * | 2020-09-01 | 2020-12-04 | 中国银行股份有限公司 | 一种签名方法及相关设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112799636A (zh) * | 2021-04-14 | 2021-05-14 | 北京百度网讯科技有限公司 | 随机数生成方法、装置、设备和存储介质 |
CN113141271A (zh) * | 2021-04-20 | 2021-07-20 | 国网上海市电力公司 | 一种基于联盟链的变电站设备配置文件版本管理方法 |
CN114282270A (zh) * | 2021-12-17 | 2022-04-05 | 网易(杭州)网络有限公司 | 在区块链中进行凭证管理的方法、装置、终端及存储介质 |
CN114282270B (zh) * | 2021-12-17 | 2022-07-26 | 网易(杭州)网络有限公司 | 在区块链中进行凭证管理的方法、装置、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112636929B (zh) | 2023-01-17 |
KR102558212B1 (ko) | 2023-07-20 |
EP3934168A2 (en) | 2022-01-05 |
US20220045849A1 (en) | 2022-02-10 |
EP3934168A3 (en) | 2022-05-04 |
JP2022104802A (ja) | 2022-07-11 |
EP3934168B1 (en) | 2023-05-24 |
JP7332672B2 (ja) | 2023-08-23 |
KR20210099539A (ko) | 2021-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112636929B (zh) | 群组业务实现方法、装置、设备和存储介质 | |
US11558177B2 (en) | Block chain permission control method, device, and node apparatus | |
KR20180017734A (ko) | 인증 시스템 및 방법과 이를 수행하기 위한 사용자 단말, 인증 서버 및 서비스 서버 | |
CN109146679A (zh) | 基于区块链的智能合约调用方法及装置、电子设备 | |
JP6729334B2 (ja) | トランザクション管理方法、トランザクション管理プログラム及びトランザクション管理装置 | |
CN112799636B (zh) | 随机数生成方法、装置、设备和存储介质 | |
KR20210128454A (ko) | 블록체인 네트워크를 통한 이전을 구현하는 컴퓨터 구현 시스템 및 방법 | |
US10762498B2 (en) | Method and system for secure transactions on a social network platform | |
CN112738253B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN103971239A (zh) | 一种验证方法及装置 | |
KR20210040297A (ko) | 블록체인의 계좌 이체 처리 방법, 장치, 기기, 매체 및 프로그램 | |
CN111191212B (zh) | 基于区块链的数字凭证处理方法、装置、设备和存储介质 | |
CN112000744A (zh) | 一种签名方法及相关设备 | |
US11943372B2 (en) | Use right information processing device, use right information processing system, and use right information processing method, based on smart contract | |
CN110765137A (zh) | 电子证照处理方法、装置、设备、平台和介质 | |
CN108650289A (zh) | 一种基于区块链的管理数据的方法和装置 | |
KR20210139110A (ko) | 블록체인 기반의 금융계좌 안전 관리 시스템 및 그 방법 | |
CN112231652A (zh) | 可信环境远程验证方法、装置、设备、系统及介质 | |
CN104616147A (zh) | 一种信息配置方法、装置、系统、客户端及服务器 | |
CN111476570B (zh) | 通证的迁移方法、装置、设备以及存储介质 | |
CN105141624A (zh) | 登录方法、账号管理服务器及客户端系统 | |
US11734455B2 (en) | Blockchain-based data processing method and apparatus, device, and storage medium | |
CN114900334B (zh) | Nft权限控制方法、系统、计算机可读存储介质及终端设备 | |
CN113032817B (zh) | 基于区块链的数据对齐方法、装置、设备和介质 | |
CN116011590A (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 | ||
GR01 | Patent grant |