CN116866009B - 基于认证网络的跨链身份验证方法、装置、电子设备及存储介质 - Google Patents

基于认证网络的跨链身份验证方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN116866009B
CN116866009B CN202310715657.5A CN202310715657A CN116866009B CN 116866009 B CN116866009 B CN 116866009B CN 202310715657 A CN202310715657 A CN 202310715657A CN 116866009 B CN116866009 B CN 116866009B
Authority
CN
China
Prior art keywords
identity
sub
management node
chain
user
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
CN202310715657.5A
Other languages
English (en)
Other versions
CN116866009A (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.)
Ant Blockchain Technology Shanghai Co Ltd
Original Assignee
Ant Blockchain Technology Shanghai 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 Ant Blockchain Technology Shanghai Co Ltd filed Critical Ant Blockchain Technology Shanghai Co Ltd
Priority to CN202310715657.5A priority Critical patent/CN116866009B/zh
Publication of CN116866009A publication Critical patent/CN116866009A/zh
Application granted granted Critical
Publication of CN116866009B publication Critical patent/CN116866009B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Abstract

本说明书一个或多个实施例提供基于认证网络的跨链身份验证方法及装置。所述方法包括:响应于用户在第一子链中发起的跨链身份验证,与第一业务参与方对应的第一身份管理节点基于第一子身份向与CA机构对应的第三身份管理节点发送身份验证请求;第三身份管理节点响应于身份验证请求,确定与第一子身份关联的用户的数字身份,确定与用户的数字身份关联的第二子身份,并基于第二子身份向与第二业务参与方对应的第二身份管理节点发送协助处理请求;第二身份管理节点响应于协助处理请求,验证第二子链中是否创建了第二子身份,并将协助处理结果发送给第一身份管理节点;第一身份管理节点根据协助处理结果确定跨链身份验证结果。

Description

基于认证网络的跨链身份验证方法、装置、电子设备及存储 介质
技术领域
本说明书一个或多个实施例涉及区块链技术领域,尤其涉及一种基于认证网络的跨链身份验证方法、装置、电子设备及机器可读存储介质。
背景技术
城市链开放服务,是指可以为各个业务机构分别部署对应的子链,各条子链可以用于处理各个业务机构的业务;以及,可以为某个区域(如某个城市)部署一条主链,主链可以用于实现各条子链之间的互通,也即,可以通过主链对各条子链进行身份管理、同步各条子链的状态变化等。通过城市链开放服务,不仅可以将位于本区域内的各个业务机构所提供的服务都关联起来,统一为用户提供服务,简化服务调用流程,改善用户体验,还可以在合规的前提下,可以将某些业务机构所维护的业务数据(如政务数据)开放给其他业务机构或用户使用,充分挖掘数据价值。
其中,数据互通的前提是身份互通,也即,需要先将同一用户在不同业务机构所注册的不同账户关联起来,才能将同一用户相关的业务数据都关联起来,更好地为用户提供城市链开放服务。出于多种因素的考虑,目前在城市链开放服务中仍然难以实现不同子链之间的身份互通。
另外,为了保证数据流转的安全性,各个业务机构在处理业务之前需要先对用户进行身份验证。在一些可能的应用场景中,在针对城市链开放服务的调用过程中,用户可能需要在参与业务协作的多个业务机构多次进行身份验证,导致用户体验变差。
发明内容
本申请提供一种基于认证网络的跨链身份验证方法,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述方法应用于所述第一身份管理节点;所述方法包括:
响应于所述用户在所述第一子链中发起的跨链身份验证,基于所述第一子身份向所述第三身份管理节点发送身份验证请求,以使所述第三身份管理节点响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份,进一步地基于所述第二子身份向所述第二身份管理节点发送协助处理请求,由所述第二身份管理节点响应于所述协助处理请求验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
接收所述第二身份管理节点返回的协助处理结果,并根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
本申请还提供另一种基于认证网络的跨链身份验证方法,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述方法应用于所述第二身份管理节点;所述方法包括:
接收所述第三身份管理节点基于所述第二子身份发送的协助处理请求;其中,所述第二子身份是由所述第三身份管理节点响应于所述第一身份管理节点基于所述第一子身份发送的身份验证请求,根据与所述第一子身份关联的所述用户在主链中的数字身份而确定的;所述身份验证请求是由第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
将所述协助处理结果发送给所述第一身份管理节点,以使所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
本申请还提供另一种基于认证网络的跨链身份验证方法,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述方法应用于所述第三身份管理节点;所述方法包括:
接收所述第一身份管理节点基于所述第一子身份发送的身份验证请求;其中,所述身份验证请求是由所述第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份;
基于所述第二子身份向所述第二身份管理节点发送协助处理请求,以使所述第二身份管理节点响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,并将得到的协助处理结果发送给所述第一身份管理节点,由所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
本申请还提供一种基于认证网络的跨链身份验证装置,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第一身份管理节点;所述装置包括:
第一发送单元,用于响应于所述用户在所述第一子链中发起的跨链身份验证,基于所述第一子身份向所述第三身份管理节点发送身份验证请求,以使所述第三身份管理节点响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份,进一步地基于所述第二子身份向所述第二身份管理节点发送协助处理请求,由所述第二身份管理节点响应于所述协助处理请求验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
第一接收单元,用于接收所述第二身份管理节点返回的协助处理结果,并根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
本申请还提供另一种基于认证网络的跨链身份验证装置,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第二身份管理节点;所述装置包括:
第二接收单元,用于接收所述第三身份管理节点基于所述第二子身份发送的协助处理请求;其中,所述第二子身份是由所述第三身份管理节点响应于所述第一身份管理节点基于所述第一子身份发送的身份验证请求,根据与所述第一子身份关联的所述用户在主链中的数字身份而确定的;所述身份验证请求是由第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
协助处理单元,用于响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
第二发送单元,用于将所述协助处理结果发送给所述第一身份管理节点,以使所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
本申请还提供另一种基于认证网络的跨链身份验证装置,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第三身份管理节点;所述装置包括:
第三接收单元,用于接收所述第一身份管理节点基于所述第一子身份发送的身份验证请求;其中,所述身份验证请求是由所述第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
子身份映射单元,用于响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份;
第三发送单元,用于基于所述第二子身份向所述第二身份管理节点发送协助处理请求,以使所述第二身份管理节点响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,并将得到的协助处理结果发送给所述第一身份管理节点,由所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述任一方法。
本申请还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述任一方法。
通过以上实施例,一方面,通过在CA机构以及不同的业务参与方分别部署对应的身份管理节点,并且可以由与CA机构对应的身份管理节点统一地为同一用户创建与不同业务参与方关联的不同子身份,进而可以由与业务参与方对应的身份管理节点验证与不同业务参与方关联的不同子身份是否属于同一用户,从而无需大幅改变城市链的现有架构,也无需适应不同子链采用的不同底层区块链技术,就可以在应用层面上快速地实现跨链身份验证,有利于实现大规模的跨链身份验证,同时节约了成本,保证了整体系统的扩展性。
另一方面,在针对需要由多个业务参与方共同参与的城市链开放服务进行调用的过程中,通过CA机构做背书,用户只需要在第一业务参与方进行身份核验,就可以由与第一业务参与方对应的第一身份管理节点基于与CA机构对应的第三身份管理节点为用户创建的第一子身份向第三身份管理节点发送身份核验请求,以使第三身份管理节点基于第三身份管理节点为用户创建的第二子身份向与第二业务参与方对应的第二身份管理节点发送协助处理请求,并获得第二身份管理节点返回的协助处理结果,从而基于认证网络实现了不同业务参与方之间的身份互通,避免了用户在多个业务参与方重复进行身份验证,改善了用户体验。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是一示例性的实施例示出的一种认证网络的架构示意图;
图2是一示例性的实施例示出的一种跨链身份验证方法的流程图;
图3是一示例性的实施例示出的另一种跨链身份验证方法的流程图;
图4是一示例性的实施例示出的另一种跨链身份验证方法的流程图;
图5是一示例性的实施例示出的一种跨链身份验证方法的多方交互图;
图6是一示例性的实施例示出的一种跨链身份验证装置所在电子设备的结构示意图;
图7是一示例性的实施例示出的一种跨链身份验证装置的框图;
图8是一示例性的实施例示出的另一种跨链身份验证装置的框图;
图9是一示例性的实施例示出的另一种跨链身份验证装置的框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。
需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
为了使本技术领域的人员更好地理解本说明书实施例中的技术方案,下面先对本说明书实施例涉及的跨链身份验证的技术场景,进行简要说明。
城市链开放服务,是指可以为各个业务机构分别部署对应的子链,各条子链可以用于处理各个业务机构的业务;以及,可以为某个区域(如某个城市)部署一条主链,主链可以用于实现各条子链之间的互通,也即,可以通过主链对各条子链进行身份管理、同步各条子链的状态变化等。通过城市链开放服务,不仅可以将位于本区域内的各个业务机构所提供的服务都关联起来,统一为用户提供服务,简化服务调用流程,改善用户体验,还可以在合规的前提下,可以将某些业务机构所维护的业务数据(如政务数据)开放给其他业务机构或用户使用,充分挖掘数据价值。
其中,数据互通的前提是身份互通,也即,需要先将同一用户在不同业务机构所注册的不同账户关联起来,才能将同一用户相关的业务数据都关联起来,更好地为用户提供城市链开放服务。
出于多种因素的考虑,目前在城市链开放服务中仍然难以实现不同子链之间的身份互通。
一方面,由于主链和各条子链的区块链基础设施可能是由不同厂商承建的,各个厂商在底层区块链技术上可能存在差异,而目前难以实现底层区块链技术的统一,因此难以直接实现跨链身份互通。并且,即使针对已有的各条子链实现了跨链身份互通,如果后续有新的子链需要加入城市链,仍然需要打通,不利于城市链开放服务的扩展。
另一方面,在一个区域内通常可以通过一个身份认证中心,对归属于本区域内的业务机构的账户进行中心化管理,但是各个区域都是有范围限制的,如果出现跨区域的身份互通,就会变成身份认证中心之间的对接,导致复杂度和成本变高。
为了保证数据流转的安全性,各个业务机构在处理业务之前需要先对用户进行身份验证。在一些可能的应用场景中,在针对城市链开放服务的调用过程中,用户可能需要在参与业务协作的多个业务机构多次进行身份验证,导致用户体验变差。
例如,用户在业务机构A、业务机构B的业务系统中分别创建了账户a和账户b,其中,业务机构A的业务系统与业务机构B的业务系统之前是互相隔离的;假设在业务机构A的业务系统中调用城市链开放服务时,需要业务机构B协助业务机构A进行相关的业务处理。业务机构A的业务系统在处理业务之前,可以先基于账户a对用户进行身份验证,并可以在身份验证通过后为用户提供业务机构A对应的服务;在此过程中,如果需要业务机构B进行协助处理,通常需要由业务机构B对应的业务系统基于账户b对用户进行身份验证,并在身份验证通过后为用户提供业务机构B对应的服务;进一步地,业务机构A的业务系统再基于业务机构B的业务系统输出的协助处理结果,继续进行业务处理。
由此可见,在以上示出的实施例中,由于同一用户在业务机构A的业务系统中创建的账户a与在业务机构B的业务系统中创建的账户b之间不支持身份互通,因此在针对需要由多个业务机构共同参与的城市链开放服务进行调用的过程中,用户需要在多个业务机构之间重复进行身份验证,导致用户体验变差。
有鉴于此,本说明书旨在提出一种通过构建认证网络,在应用层面上实现跨链身份验证的技术方案。
在本说明书中,跨链身份验证过程所涉及到的参与角色主要可以包括:业务参与方、CA(Certificate Authority)机构和身份核验方。
其中,业务参与方是指与各条子链分别对应的业务机构,也可以称作业务主体、企业等;每个业务参与方与其他业务参与方之间是互相隔离的,每个业务参与方可以有自己的业务体系与账户会员体系。
CA机构是指负责颁发与管理数字证书的权威机构;CA机构通常可以作为交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。同时,每个CA机构可以具备密钥管理服务(KMS,Key Management Service),用于提供安全合规的密钥托管与密码服务。
身份核验方是指可以对用户真实身份做身份认证的机构,如权威的政务部门、能提供实人认证能力的大型互联网平台等。
具体地,业务参与方至少可以包括第一业务参与方和第二业务参与方。其中,所述第一业务参与方或所述第二业务参与方可以为与城市链中的任一子链对应的业务参与方,本说明书中不做特别限定。“第一业务参与方”、“第二业务参与方”仅仅用于区分不同业务参与方在身份验证过程中所起的不同作用;所述第一业务参与方是指用户发起身份验证的业务参与方,所述第二业务参与方是指需要协助第一业务参与方进行身份验证的另一个业务参与方。
在本说明书中,所述认证网络至少可以包括:部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点。
例如,请参见图1,图1是一示例性的实施例示出的一种认证网络的架构示意图。如图1所示的认证网络可以包括:第一身份管理节点、第二身份管理节点、第三身份管理节点和身份核验方。其中,第一身份管理节点可以部署在第一业务参与方所属的第一子链中;第一身份管理节点具体可以包括第一业务参与方的业务子系统和在第一业务参与方本地部署的身份管理设备。第二身份管理节点可以部署在第二业务参与方所属的第二子链中;第二身份管理节点具体可以包括第二业务参与方的业务子系统和在第二业务参与方本地部署的身份管理设备。第三身份管理节点具体可以包括CA机构和在CA机构本地部署的身份管理设备。
如图1所示的认证网络具体可以为区块链网络,第一身份管理节点、第二身份管理节点、第三身份管理节点和身份核验方均可以在所述区块链中进行注册,以获得在所述区块链中读写数据的权限。其中,所述区块链可以为与第一子链和第二子链对应的主链,也可以为专门用于存证跨链身份验证过程中产生的相关数据的区块链。
需要说明的是,图1中仅仅示例性的示出了一个身份核验方和一个CA机构对应的第三身份管理节点,并不代表对本说明书做出特别限定。在实际应用中,所述认证网络中可以包括多个身份核验方,还可以包括与多个CA机构分别对应的第三身份管理节点,其中,各个CA机构可以为已加入CA联盟的CA机构。
在本说明书中,所述身份核验方可以在主链中为用户创建可信的数字身份;进一步地,所述第三身份管理节点可以在所述第一子链中为所述用户创建与所述用户在主链中的数字身份关联的第一子身份;以及,所述第三身份管理节点可以在所述第二子链中为所述用户创建与所述用户在主链中的数字身份关联的第二子身份。
例如,用户在主链中的数字身份,具体可以包括与用户DID(DecentralizedIdentifier,去中心化身份标识)对应的账户。当用户在第一业务参与方的业务子系统中注册账户时,可以由CA机构对应的第三身份管理节点在第一子链中为用户创建与用户DID关联的第一子身份(如:第一子身份可以为与子身份id1对应的账户)。当用户在第二业务参与方的业务子系统中注册账户时,可以由CA机构对应的第三身份管理节点在第二子链中为用户创建与用户DID关联的第二子身份(如:第二子身份可以为与子身份id2对应的账户)。
在一些可能的实施例中,第三身份管理节点为用户创建与不同业务参与方关联的不同子身份之后,可以通过表1维护用户在主链中的数字身份、用户在子链中的子身份与业务参与方之间的映射关系,
用户在主链中的数字身份 用户在子链中的子身份 业务参与方
用户DID 子身份id1 第一业务参与方DID
用户DID 子身份id2 第二业务参与方DID
表1
在本说明书中,在基于所述认证网络进行跨链身份验证时,响应于用户在所述第一子链中发起的跨链身份验证,所述第一身份管理节点可以基于所述第一子身份向所述第三身份管理节点发送身份验证请求;所述第三身份管理节点响应于所述身份验证请求,可以确定与所述第一子身份关联的所述用户在主链中的数字身份,并可以确定与所述用户在主链中的数字身份关联的第二子身份;进一步地,所述第三身份管理节点可以基于确定出的所述第二子身份向所述第二身份管理节点发送协助处理请求;所述第二身份管理节点响应于所述协助处理请求,可以验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果,并可以将所述协助处理结果发送给所述第一身份管理节点;进一步地,所述第一身份管理节点可以根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果可以表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
例如,请结合表1,响应于用户DID对应的用户在第一子链中发起的针对第二业务参与方的跨链身份验证,第一业务参与方对应的第一身份管理节点可以向CA机构对应的第三身份管理节点发送身份验证请求,所述身份验证请求中可以携带请求参数“子身份id1,第一业务参与方DID,第二业务参与方DID”;第三身份管理节点响应于所述身份验证请求,可以根据请求参数“子身份id1”和请求参数“第一业务参与方DID”,确定用户在主链中的数字身份为“用户DID”,并可以根据确定出的“用户DID”和请求参数“第二业务参与方DID”,确定用户在第二业务参与方所属的第二子链中的第二子身份为“子身份id2”;进一步地,第三身份管理节点可以向第二业务参与方对应的第二身份管理节点发送协助处理请求,所述协助处理请求中可以携带确定出的“子身份id2”和请求参数“第一业务参与方DID,第二业务参与方DID”;进一步地,第二身份管理节点响应于所述协助处理请求,可以验证第二子链中是否创建了“子身份id2”对应的子身份,也即,可以验证“子身份id2”对应的第二子身份的真实性;进一步地,第二身份管理节点可以将协助处理结果存证至区块链,以及可以将协助处理结果发送给第一身份管理节点,其中,所述协助处理结果中可以携带“第一业务参与方DID,第二业务参与方DID,协助处理结果hash值”;进一步地,第一身份管理节点在接收到所述协助处理结果之后,可以先根据区块链中存证的协助处理结果对接收到的协助处理结果进行校验,在校验通过后,如果所述协助处理结果用于指示第二子链中已创建了“子身份id2”对应的子身份,则第一身份管理节点根据所述协助处理结果,可以确定跨链身份验证结果表示“子身份id1”对应的子身份与“子身份id2”对应的子身份均与“用户DID”对应的同一用户关联。
需要说明的是,在以上示出的跨链身份验证过程中,所述第一业务参与方仅仅可以获知用户的第一子身份,而无法获知用户在主链中的数字身份和用户的第二子身份。所述第二业务参与方仅仅可以获知用户的第二子身份,而无法获知用户在主链中的数字身份和用户的第一子身份。因此,对于某个业务参与方来说,用户的真实身份、以及用户在其他业务参与方所属的子链中创建的子身份都是隐藏的,可以有效保护用户的身份信息和各个业务参与方的用户资产,从而在不同的业务参与方需要进行协作时,可以基于与CA机构对应的第三身份管理节点为同一用户在不同子链中创建的不同子身份,实现跨链身份验证。
由此可见,在本说明书中的技术方案中,一方面,通过在CA机构以及不同的业务参与方分别部署对应的身份管理节点,并且可以由与CA机构对应的身份管理节点统一地为同一用户创建与不同业务参与方关联的不同子身份,进而可以由与业务参与方对应的身份管理节点验证与不同业务参与方关联的不同子身份是否属于同一用户,从而无需大幅改变城市链的现有架构,也无需适应不同子链采用的不同底层区块链技术,就可以在应用层面上快速地实现跨链身份验证,有利于实现大规模的跨链身份验证,同时节约了成本,保证了整体系统的扩展性。
另一方面,在针对需要由多个业务参与方共同参与的城市链开放服务进行调用的过程中,通过CA机构做背书,用户只需要在第一业务参与方进行身份核验,就可以由与第一业务参与方对应的第一身份管理节点基于与CA机构对应的第三身份管理节点为用户创建的第一子身份向第三身份管理节点发送身份核验请求,以使第三身份管理节点基于第三身份管理节点为用户创建的第二子身份向与第二业务参与方对应的第二身份管理节点发送协助处理请求,并获得第二身份管理节点返回的协助处理结果,从而基于认证网络实现了不同业务参与方之间的身份互通,避免了用户在多个业务参与方重复进行身份验证,改善了用户体验。
下面通过具体实施例,并结合具体的应用场景对本申请进行描述。
请参见图2,图2是一示例性的实施例示出的一种跨链身份验证方法的流程图。如图2所示的方法可以应用于如图1所示的认证网络中包括的第一身份管理节点。
在本说明书中,身份管理节点具体可以包括:为各个业务参与方或CA机构部署的身份管理设备。在一些可能的实施例中,身份管理设备可以搭载有可信执行环境(TEE,Trusted Execution Environment)。
需要说明的是,在本说明书中示出的一个或多个实施例中,“第一身份管理节点”、“第二身份管理节点”、“第三身份管理节点”仅仅用于对跨链身份验证过程所涉及的多个身份管理节点进行区分,并不代表对本说明书做出特别限定。
在本说明书中,各个身份管理节点可以先在所述区块链中进行注册,以获得在所述区块链上读写数据的权限,进而在跨链身份验证的过程中,可以基于区块链不可篡改、可追溯等特性,使得跨链身份验证过程中的相关行为可在链上被追溯,进一步保证数据流转的安全性。
具体地,部署在第一业务参与方所属的第一子链中的第一身份管理节点可以在所述认证网络中进行注册,以创建所述第一身份管理节点与所述第一业务参与方的对应关系,并将所述第一身份管理节点的注册信息存证至区块链。
在示出的一种实施方式中,所述第一身份管理节点的注册信息具体可以包括:所述第一业务参与方的数字身份标识、所述第一业务参与方的公钥、所述第一身份管理节点的节点标识和所述第一身份管理节点的证书链。
其中,所述第一业务参与方的数字身份标识可以为所述第一业务参与方的DID。所述第一业务参与方的公钥可以为所述第一业务参与方持有的公私钥对中的公钥。所述第一身份管理节点的节点标识可以为身份管理设备的设备标识(如设备编号等)。所述第一身份管理节点的证书链具体可以包括:所述第一身份管理节点的节点标识、所述第一身份管理节点的公钥、所述CA机构的数字身份标识、所述CA机构的公钥、基于所述CA机构的私钥做出的数字签名、与CA机构对应的服务url地址、颁发日期。
在以上示出的实施方式中,所述第一身份管理节点的证书链可以是在第一身份管理设备出厂时植入的。其中,第一身份管理设备所搭载的可信执行环境中可以随机生成第一身份管理节点的公私钥对。进一步地,可以基于所述CA机构的私钥对第一身份管理节点的公钥做出数字签名,以得到所述第一身份管理节点的证书链。需要说明的是,本说明书中的“证书链”并不是指一条区块链,而是指由根CA证书和若干已签名的CA证书组成的CA证书序列;关于证书链的具体生成方式与具体验证方式,可以参见相关技术,本说明书中不做赘述。
另外,所述第一身份管理节点的注册信息具体还可以包括但不限于:所述第一业务参与方的主体标识(如主体名称)、注册时间戳、参与角色等。例如,在第一身份管理节点或第二身份管理节点的注册信息中,参与角色可以为“业务参与方”,而在第三身份管理节点的注册信息中,参与角色可以为“CA机构”。
例如,如图1所示,第一身份管理节点可以向区块链发送注册请求,以使区块链响应于所述注册请求,基于CA机构的公钥对第一身份管理节点的证书链进行验签,如果验签通过,则可以创建第一身份管理节点与第一业务参与方的对应关系,并可以将第一身份管理节点的注册信息存证至区块链。
基于类似的过程,部署在第二业务参与方所属的第二子链中的第二身份管理节点、以及与CA机构对应的第三身份管理节点,也可以在所述认证网络中进行注册,在此不做赘述。
在本说明书中,各个身份管理节点在所述认证网络中注册完成之后,各个业务参与方或各个CA机构可以接入为自身部署的身份管理节点,并进行相关配置,包括但不限于调用API(Application Programming Interface,应用程序编程接口)配置、分配ak/sk(Access Key ID/Secret Access Key)配置、回调SPI(Service Programming Interface)配置、SLA(Service-Level Agreement,服务等级协议)配置等。
其中,调用API配置,是指由于身份管理设备预先配置有若干API(如:用于查询子身份CA证书是由哪个CA机构颁发的),因此可以根据身份管理节点的注册内容所包括的参与角色,为业务参与方或CA机构进行调用API配置,使得在后续的跨链身份验证过程中,各个业务参与方或CA机构可以调用相关的API。
分配ak/sk配置,是指除了为各个业务参与方分配的与业务参与方DID对应的公私钥对之外,可以额外为各个业务参与方分配一个公私钥对,用于控制调用CA机构对应的第三身份管理节点以实现跨链身份验证的权限,避免未加入认证网络的业务参与方无限制地调用CA机构对应的第三身份管理节点。
回调SPI配置,是指各个业务参与方可以按需灵活扩展。例如,在第一业务参与方对应的第一身份管理节点向第三身份管理节点发送身份验证请求之后,在第二身份管理节点返回协助处理结果之前,通过回调SPI配置,第一身份管理节点可以先获取到“第三身份管理节点已受理”、“第二身份管理节点正在处理中”之类的反馈信息。
SLA配置,是指针对不同的域主体能够承诺的服务指标,如并发数、响应耗时、成功率等。
基于类似的过程,所述第二身份管理节点与所述第三身份管理节点也可以在注册完成之后,为第二业务参与方或CA机构进行相关配置,在此不再赘述。
在本说明书中,在跨链身份验证之前,与CA机构对应的第三身份管理节点可以在第一业务参与方所属的第一子链中为用户创建与用户在主链中的数字身份关联的第一子身份;以及,与CA机构对应的第三身份管理节点可以在第二业务参与方所属的第二子链中为用户创建与用户在主链中的数字身份关联的第二子身份。
具体地,响应于用户在所述第一子链中发起的实人认证,所述第一身份管理节点可以基于用户的采集样本向身份核验方发送实人认证请求;身份核验方响应于所述实人认证请求,可以对所述用户的采集样本进行身份核验;如果核验通过,则身份核验方可以为所述用户生成身份核验凭证,并可以将实人认证结果存证至区块链,以及可以将所述实人认证结果返回给所述第一身份管理节点。
在一些可能的实施例中,所述实人认证请求具体可以包括:用户标识,采集样本,检测样本。所述实人认证结果具体可以包括:身份核验凭证的凭证标识,用户标识的hash值,检测样本的hash值,结果为认证通过或认证未通过,时间戳,以及基于身份核验方的私钥做出的数字签名。
其中,所述用户标识可以用于描述用户的身份信息;例如,所述用户标识具体可以包括但不限于:姓名、身份证号、手机号码、银行卡号、企业名称、企业的工商注册号、企业的社会统一信用代码、企业法人的姓名、企业法人的身份证号等。
所述采集样本可以包括针对用户采集到的待核验的生物特征信息与证件信息;例如,所述采集样本具体可以包括但不限于:包含用户面部特征的图片或视频、用户的声纹特征、用户的指纹特征、用户的虹膜特征、用户的身份证照片、用户的银行卡照片等。
所述检测样本可以为由身份核验方维护的真实用户信息;例如,所述检测样本具体可以包括但不限于:为用户办理身份证或银行卡时采集的用户照片、指纹特征、声纹特征、虹膜特征等。
需要说明的是,在以上示出的实施例中,由于各个业务参与方可以从身份核验方获得用于证明实人认证是否通过的实人认证结果,而无法从身份核验方获得更多的信息,用户信息泄露的风险较小,因此无需为身份核验方部署对应的身份管理节点。在实际应用中,也可以按需为身份核验方部署对应的第四身份管理节点,使得第四身份管理节点代替身份核验方加入到所述认证网络中,与其他身份管理节点进行交互,本说明书对此不作限定。
进一步地,响应于用户在所述第一子链中发起的子身份申请,所述第一身份管理节点可以基于由身份核验方为所述用户生成的身份核验凭证,向所述第三身份管理节点发送子身份创建请求,以使所述第三身份管理节点响应于所述子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份。
在一些可能的实施例中,所述子身份创建请求中可以携带有所述身份核验凭证的凭证标识。
例如,响应于用户在第一子链中发起的子身份申请,第一身份管理节点可以向第三身份管理节点发送子身份创建请求,其中,所述子身份创建请求中可以携带请求参数“身份核验凭证id,用户标识,第一业务参与方DID”;第三身份管理节点响应于子身份创建请求,可以根据请求参数“身份核验凭证id”确定对应的身份核验凭证是否已经在区块链中存证,如果已存证,则进一步地根据请求参数“用户标识”确定用户在主链中的数字身份“用户DID”,以获取用户的公钥,并基于获取到的用户的公钥、请求参数“第一业务参与方DID”,为用户创建与“用户DID”和“第一业务参与方DID”关联的“子身份id1”。其中,“子身份id1”可以是基于用户的公钥和第一业务参与方DID生成的。
在另一些可能的实施例中,为了保证用户对子身份创建过程的自主可控性,可以通过用户提供的动态口令表征用户意愿,也即用户可以通过动态口令对子身份创建过程进行授权。
在这种情况下,所述子身份创建请求中还可以携带有基于所述CA机构的公钥加密后的动态口令;其中,所述基于所述CA机构的公钥加密后的动态口令是由所述用户提供的。相应地,第三身份管理节点响应于所述子身份创建请求,可以基于CA机构的私钥对加密后的动态口令进行解密。
在以上示出的实施例中,所述动态口令具体可以为基于OTP(One Time Password,一次性密码)算法生成的随机数字组合,也可以称作挑战口令、挑战码、一次性口令等,本说明书对此不作特别限定。
另外,所述子身份创建请求中还可以携带有:基于第一业务参与方的私钥做出的数字签名、基于第一身份管理节点的私钥做出的数字签名、时间戳等,在此不做赘述。相应地,第三身份管理节点响应于所述子身份创建请求,可以基于第一业务参与方的公钥、第一身份管理节点的公钥来验签。
另外,所述第三身份管理节点在为用户创建与不同的业务参与方关联的子身份之前,可以先根据子身份创建请求中携带的用户索引,确定是否首次为用户索引对应的用户创建与该用户的数字身份关联的子身份;如果是,则所述第三身份管理节点可以调用CA机构提供的密钥管理服务,为用户创建一套托管密钥。在一些可能的实施例中,所述托管密钥可以为门限密钥。
在本说明书中,第三身份管理节点为用户创建与第一业务参与方关联的第一子身份、以及与第二业务参与方关联的第二子身份之后,可以基于所述第一子身份和所述第二子身份进行跨链身份验证。如图2所示的方法可以执行以下步骤:
步骤202:响应于用户在第一子链中发起的跨链身份验证,基于第一子身份向第三身份管理节点发送身份验证请求,以使所述第三身份管理节点响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份,进一步地基于所述第二子身份向第二身份管理节点发送协助处理请求,由所述第二身份管理节点响应于所述协助处理请求验证第二子链中是否创建了所述第二子身份,得到协助处理结果。
例如,请结合表1,响应于用户DID对应的用户在第一子链中发起的针对第二业务参与方的跨链身份验证,第一业务参与方对应的第一身份管理节点可以向CA机构对应的第三身份管理节点发送身份验证请求,所述身份验证请求中可以携带请求参数“子身份id1,第一业务参与方DID,第二业务参与方DID”;第三身份管理节点响应于所述身份验证请求,可以根据请求参数“子身份id1”和请求参数“第一业务参与方DID”,确定用户在主链中的数字身份为“用户DID”,并可以根据确定出的“用户DID”和请求参数“第二业务参与方DID”,确定用户在第二业务参与方所属的第二子链中的第二子身份为“子身份id2”;进一步地,第三身份管理节点可以向第二业务参与方对应的第二身份管理节点发送协助处理请求,所述协助处理请求中可以携带确定出的“子身份id2”和请求参数“第一业务参与方DID,第二业务参与方DID”;进一步地,第二身份管理节点响应于所述协助处理请求,可以验证第二子链中是否创建了“子身份id2”对应的子身份,也即,可以验证“子身份id2”对应的第二子身份的真实性;进一步地,第二身份管理节点可以将协助处理结果存证至区块链,以及可以将协助处理结果发送给第一身份管理节点,其中,所述协助处理结果中可以携带“第一业务参与方DID,第二业务参与方DID,协助处理结果hash值”。
在示出的一种实施方式中,所述第三身份管理节点可以维护用户的数字身份标识、用户的子身份标识、业务参与方的数字身份标识之间的关联关系。所述身份验证请求中可以携带有所述第一子身份的身份标识、所述第一业务参与方的数字身份标识和所述第二业务参与方的数字身份标识。所述协助处理请求中可以携带有所述第二子身份的身份标识。
在以上示出的实施方式中,所述身份验证请求中还可以携带:第一子身份的证书链,用户的私钥的hash值,基于用户的私钥做出的数字签名、基于第一业务参与方的私钥做出的数字签名等。其中,所述第一子身份的证书链具体可以包括:第一子身份的身份标识、第一业务参与方的数字身份标识、用户的公钥、为第一子身份颁发CA证书的CA机构的数字身份标识、基于CA机构的私钥做出的数字签名。相应地,所述第三身份管理节点响应于所述身份验证请求,可以基于用户的公钥、第一业务参与方的公钥、CA机构的公钥进行验签。
在一些可能的实施例中,为了保证用户对子身份互识过程的自主可控性,可以通过用户提供的动态口令表征用户意愿,也即用户可以通过动态口令对子身份互识过程进行授权。
在这种情况下,所述身份验证请求中还携带有基于所述CA机构的公钥加密后的动态口令;其中,所述基于所述CA机构的公钥加密后的动态口令是由所述用户提供的。
例如,第一身份管理节点向第三身份管理节点发送的身份验证请求可以携带请求参数“子身份id1,第一业务参与方DID,第二业务参与方DID,第一子身份的证书链,用户的私钥的hash值,基于用户的私钥做出的数字签名,基于所述CA机构的公钥加密后的动态口令,基于第一业务参与方的私钥做出的数字签名,时间戳”。第三身份管理节点向第二身份管理节点发送的协助处理请求中可以携带“协助任务id,用户的公钥,子身份id2,第一业务参与方DID,第二业务参与方DID,基于CA机构的私钥做出的数字签名”。其中,在所述协助处理请求中,可以基于第二业务参与方的公钥,对除了“协助任务id”之外的其他内容进行加密,以保证数据流转的安全性。
步骤204:接收所述第二身份管理节点返回的协助处理结果,并根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
例如,第一身份管理节点在接收到所述协助处理结果之后,可以先根据区块链中存证的协助处理结果对接收到的协助处理结果进行校验,在校验通过后,如果所述协助处理结果用于指示第二子链中已创建了“子身份id2”对应的子身份,则第一身份管理节点根据所述协助处理结果,可以确定跨链身份验证结果表示“子身份id1”对应的子身份与“子身份id2”对应的子身份均与“用户DID”对应的同一用户关联。
其中,协助处理结果具体可以包括:协助任务的任务标识、第一业务参与方的数字身份标识、所述第二业务参与方的数字身份标识、真实性验证结果的hash值、时间戳。另外,在所述协助处理结果中,可以基于第一业务参与方的公钥进行加密处理,以保证数据流转的安全性。
在示出的一种实施方式中,在第一业务参与方与第二业务参与方之间基于子身份进行跨链身份验证的过程中,第一业务参与方与第二业务参与方还可以进行多方隐私计算,或者才用户授权的前提下,第一业务参与方可以从第二业务参与方获取归属于同一用户的脱敏后的业务数据。
在这种情况下,所述身份管理节点可以为搭载有可信执行环境的隐私计算节点。所述用户在所述第一子链中发起的跨链身份验证,具体可以包括所述用户在所述第一子链中发起的针对目标服务的服务调用;其中,所述目标服务为需要识别所述第一子身份和所述第二子身份是否关联了同一数字身份的服务。所述身份验证请求和所述协助处理请求中可以携带有与所述目标服务关联的隐私计算需求;所述协助处理结果中可以包括与所述隐私计算需求对应的隐私计算结果;其中,所述隐私计算结果是由所述第二身份管理节点响应于所述协助处理请求确定所述第二子链中创建了所述第二子身份之后,基于所述第二业务参与方维护的与所述第二子身份关联的业务数据,在所述第二身份管理节点所搭载的可信执行环境中进行隐私计算而得到的。所述隐私计算需求具体可以为第一业务参与方为用户提供所述目标服务所需的业务字段。
所述方法还可以包括:如果所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份,则第一身份管理节点可以根据所述协助处理结果中包括的隐私计算结果,为所述用户提供所述目标服务。
在示出的一种实施方式中,为了使得用户能够独立自主地管控自身私钥,同时还能够根据用户发起的请求为用户恢复私钥、更换私钥,所述方法还可以包括:第三身份管理节点调用CA机构提供的密钥管理服务,为所述用户创建托管密钥;其中,所述托管密钥中的部分私钥分片由所述第三身份管理节点进行托管,所述托管密钥中的剩余部分私钥分片由所述用户进行管理;响应于所述用户发起的密钥更换请求,获取由所述身份核验方对所述用户进行身份核验的核验结果,并在所述核验结果指示对所述用户进行身份核验通过时,基于由所述第三身份管理节点托管的所述部分私钥分片,重新创建所述用户的私钥。
例如,第三身份管理节点可以调用CA机构提供的密钥管理服务,为所述用户创建一套托管密钥,所述托管密钥具体可以为门限密钥,也即,可以将所述用户的托管密钥分为4个私钥分片,其中的2个私钥分片可以由CA机构或其他可信任的托管代理进行管理,另外2个私钥分片可以通过数字信封发送给用户侧,由用户自行管理。进一步地,响应于用户发起的密钥更换请求,第三身份管理节点可以获取由身份核验方对用户进行身份核验的核验结果,并可以在所述核验结果指示对所述用户进行身份核验通过时,基于由第三身份管理节点托管的2个私钥分片,为所述用户创建新的私钥。另外,还可以按需设置在为用户创建新的私钥之后,是否需要对旧的用户私钥进行无效处理。
请参见图3,图3是一示例性的实施例示出的另一种跨链身份验证方法的流程图。如图3所示的方法可以应用于如图1所示的认证网络中包括的第二身份管理节点。如图3所示的方法可以执行以下步骤:
步骤302:接收第三身份管理节点基于第二子身份发送的协助处理请求;其中,所述第二子身份是由所述第三身份管理节点响应于第一身份管理节点基于第一子身份发送的身份验证请求,根据与所述第一子身份关联的用户在主链中的数字身份而确定的;所述身份验证请求是由第一身份管理节点响应于所述用户在第一子链中发起的跨链身份验证而发送的;
步骤304:响应于所述协助处理请求,验证第二子链中是否创建了所述第二子身份,得到协助处理结果;
步骤306:将所述协助处理结果发送给所述第一身份管理节点,以使所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
在示出的一种实施方式中,所述身份管理节点为搭载有可信执行环境的隐私计算节点;所述用户在所述第一子链中发起的跨链身份验证,包括所述用户在所述第一子链中发起的针对目标服务的服务调用;其中,所述目标服务为需要识别所述第一子身份和所述第二子身份是否关联了同一数字身份的服务。所述身份验证请求和所述协助处理请求携带有与所述目标服务关联的隐私计算需求;所述协助处理结果中包括与所述隐私计算需求对应的隐私计算结果。
所述方法还可以包括:如果所述第二子链中创建了所述第二子身份,基于所述第二业务参与方维护的与所述第二子身份关联的业务数据,在所述第二身份管理节点所搭载的可信执行环境中进行隐私计算,得到与所述隐私计算需求对应的隐私计算结果。
请参见图4,图4是一示例性的实施例示出的另一种跨链身份验证方法的流程图。如图4所示的方法可以应用于如图1所示的认证网络中包括的第三身份管理节点。如图4所示的方法可以执行以下步骤:
步骤402:接收第一身份管理节点基于第一子身份发送的身份验证请求;其中,所述身份验证请求是由所述第一身份管理节点响应于用户在第一子链中发起的跨链身份验证而发送的;
步骤404:响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份;
步骤406:基于所述第二子身份向第二身份管理节点发送协助处理请求,以使所述第二身份管理节点响应于所述协助处理请求,验证第二子链中是否创建了所述第二子身份,并将得到的协助处理结果发送给所述第一身份管理节点,由所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
在示出的一种实施方式中,所述方法还包括:响应于所述第一身份管理节点基于由身份核验方为所述用户生成的身份核验凭证发送的子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份;以及,响应于所述第二身份管理节点基于由身份核验方为所述用户生成的身份核验凭证发送的子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第二子身份。
在一些可能的实施例中,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份之前,所述方法还可以包括:调用所述CA机构提供的密钥管理服务,为所述用户创建托管密钥;其中,所述托管密钥中的部分私钥分片由所述第三身份管理节点进行托管,所述托管密钥中的剩余部分私钥分片由所述用户进行管理;响应于所述用户发起的密钥更换请求,获取由所述身份核验方对所述用户进行身份核验的核验结果,并在所述核验结果指示对所述用户进行身份核验通过时,基于由所述第三身份管理节点托管的所述部分私钥分片,重新创建所述用户的私钥。
在示出的一种实施方式中,接收所述第一身份管理节点基于所述第一子身份发送的身份验证请求之前,所述方法还可以包括:在所述认证网络中进行注册,以创建所述第三身份管理节点与所述CA机构的对应关系,并将所述第三身份管理节点的注册信息存证至区块链。
在本说明书中,步骤302-步骤306、步骤402-步骤406的具体实现方式与步骤202-步骤204相似,在此不再赘述。
请参见图5,图5是一示例性的实施例示出的一种跨链身份验证方法的多方交互图。
如图5所示,认证网络可以包括与第一业务参与方对应的第一身份管理节点、与第二业务参与方对应的第二身份管理节点、和与CA机构对应的第三身份管理节点。所述认证网络具体可以为区块链,第一身份管理节点、第二身份管理节点和第三身份管理节点均已在区块链中注册完成。
其中,第三身份管理节点可以在第一业务参与方所属的第一子链中,为用户创建与该用户在主链中的数字身份关联的第一子身份,并且所述第一子身份也与第一业务参与方关联;以及,第三身份管理节点可以在第二业务参与方所属的第二子链中,为用户创建与该用户在主链中的数字身份关联的第二子身份,并且所述第二子身份也与第二业务参与方关联。
响应于用户在第一子链中发起的跨链身份验证,第一身份管理节点可以基于所述第一子身份向第三身份管理节点发送身份验证请求。
第三身份管理节点响应于所述身份验证请求,可以确定与所述第一子身份关联的所述用户在主链中的数字身份,并可以确定与所述用户在主链中的数字身份关联的第二子身份;进一步地,第三身份管理节点可以基于确定出的第二子身份向第二身份管理节点发送协助处理请求,以及,可以将与所述协助处理请求对应的协助处理任务存证在区块链中。
第二身份管理节点响应于所述协助处理请求,可以先核验与所述协助处理请求对应的协助处理任务是否已经在区块链中存证;如果核验通过,则第二身份管理节点可以基于所述第二子身份进行协助处理,也即,至少可以验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果,并可以基于第一身份管理节点的公钥对所述协助处理结果进行加密后,将所述加密后的协助处理结果发送给所述第一身份管理节点,以及,可以将所述加密后的协助处理结果存证在区块链中。
第一身份管理节点可以先基于自身持有的私钥对所述加密后的协助处理结果进行解密处理,以得到所述协助处理结果,并可以核验所述协助处理结果是否已经在区块链中存证;如果核验通过,则第一身份管理节点可以根据所述协助处理结果确定跨链身份验证结果。
与上述基于认证网络的跨链身份验证方法的实施例对应的,本说明书还提供了基于认证网络的跨链身份验证装置的实施例。
请参见图6,图6是一示例性的实施例示出的一种跨链身份验证装置所在电子设备的硬件结构图。在硬件层面,该设备包括处理器602、内部总线604、网络接口606、内存608以及非易失性存储器610,当然还可能包括其他所需要的硬件。本说明书一个或多个实施例可以基于软件方式来实现,比如由处理器602从非易失性存储器610中读取对应的计算机程序到内存608中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施例并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
请参见图7,图7是一示例性的实施例示出的一种跨链身份验证装置的框图。如图7所示的基于认证网络的跨链身份验证装置可以应用于如图6所示的电子设备中,以实现本说明书的技术方案。其中,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第三身份管理节点。所述装置可以包括:
第一发送单元702,用于响应于所述用户在所述第一子链中发起的跨链身份验证,基于所述第一子身份向所述第三身份管理节点发送身份验证请求,以使所述第三身份管理节点响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份,进一步地基于所述第二子身份向所述第二身份管理节点发送协助处理请求,由所述第二身份管理节点响应于所述协助处理请求验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
第一接收单元704,用于接收所述第二身份管理节点返回的协助处理结果,并根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
在本实施例中,所述第三身份管理节点维护了用户的数字身份标识、用户的子身份标识、业务参与方的数字身份标识之间的关联关系;
所述身份验证请求中携带有所述第一子身份的身份标识、所述第一业务参与方的数字身份标识和所述第二业务参与方的数字身份标识;
所述协助处理请求中携带有所述第二子身份的身份标识。
在本实施例中,第一发送单元702,还用于响应于所述用户在所述第一子链中发起的子身份申请,基于由身份核验方为所述用户生成的身份核验凭证向所述第三身份管理节点发送子身份创建请求,以使所述第三身份管理节点响应于所述子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份。
在本实施例中,所述子身份创建请求中携带有所述身份核验凭证的凭证标识。
在本实施例中,所述身份验证请求或所述子身份创建请求中还携带有基于所述CA机构的公钥加密后的动态口令;其中,所述基于所述CA机构的公钥加密后的动态口令是由所述用户提供的。
在本实施例中,所述装置还包括:
第一注册单元,用于在所述认证网络中进行注册,以创建所述第一身份管理节点与所述第一业务参与方的对应关系,并将所述第一身份管理节点的注册信息存证至区块链。
在本实施例中,所述第一身份管理节点的注册信息包括:所述第一业务参与方的数字身份标识、所述第一业务参与方的公钥、所述第一身份管理节点的节点标识和所述第一身份管理节点的证书链;
其中,所述第一身份管理节点的证书链包括:所述第一身份管理节点的节点标识、所述第一身份管理节点的公钥、所述CA机构的数字身份标识、所述CA机构的公钥、基于所述CA机构的私钥做出的数字签名。
在本实施例中,所述身份管理节点为搭载有可信执行环境的隐私计算节点;
所述用户在所述第一子链中发起的跨链身份验证,包括所述用户在所述第一子链中发起的针对目标服务的服务调用;其中,所述目标服务为需要识别所述第一子身份和所述第二子身份是否关联了同一数字身份的服务;
所述身份验证请求和所述协助处理请求携带有与所述目标服务关联的隐私计算需求;
所述协助处理结果中包括与所述隐私计算需求对应的隐私计算结果;其中,所述隐私计算结果是由所述第二身份管理节点响应于所述协助处理请求确定所述第二子链中创建了所述第二子身份之后,基于所述第二业务参与方维护的与所述第二子身份关联的业务数据,在所述第二身份管理节点所搭载的可信执行环境中进行隐私计算而得到的;
所述装置还包括:
服务单元,用于如果所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份,则根据所述协助处理结果中包括的隐私计算结果为所述用户提供所述目标服务。
请参见图8,图8是一示例性的实施例示出的另一种跨链身份验证装置的框图。如图8所示的基于认证网络的跨链身份验证装置可以应用于如图6所示的电子设备中,以实现本说明书的技术方案。其中,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第三身份管理节点。所述装置可以包括:
第二接收单元802,用于接收所述第三身份管理节点基于所述第二子身份发送的协助处理请求;其中,所述第二子身份是由所述第三身份管理节点响应于所述第一身份管理节点基于所述第一子身份发送的身份验证请求,根据与所述第一子身份关联的所述用户在主链中的数字身份而确定的;所述身份验证请求是由第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
协助处理单元804,用于响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
第二发送单元806,用于将所述协助处理结果发送给所述第一身份管理节点,以使所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
在本实施例中,所述身份管理节点为搭载有可信执行环境的隐私计算节点;
所述用户在所述第一子链中发起的跨链身份验证,包括所述用户在所述第一子链中发起的针对目标服务的服务调用;其中,所述目标服务为需要识别所述第一子身份和所述第二子身份是否关联了同一数字身份的服务;
所述身份验证请求和所述协助处理请求携带有与所述目标服务关联的隐私计算需求;所述协助处理结果中包括与所述隐私计算需求对应的隐私计算结果;
所述协助处理单元804,还用于如果所述第二子链中创建了所述第二子身份,基于所述第二业务参与方维护的与所述第二子身份关联的业务数据,在所述第二身份管理节点所搭载的可信执行环境中进行隐私计算,得到与所述隐私计算需求对应的隐私计算结果。
在本实施例中,所述装置还包括:
第二注册单元,用于在所述认证网络中进行注册,以创建所述第二身份管理节点与所述第二业务参与方的对应关系,并将所述第二身份管理节点的注册信息存证至区块链。
请参见图9,图9是一示例性的实施例示出的另一种跨链身份验证装置的框图。如图9所示的基于认证网络的跨链身份验证装置可以应用于如图6所示的电子设备中,以实现本说明书的技术方案。其中,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第三身份管理节点。所述装置可以包括:
第三接收单元902,用于接收所述第一身份管理节点基于所述第一子身份发送的身份验证请求;其中,所述身份验证请求是由所述第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
子身份映射单元904,用于响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份;
第三发送单元906,用于基于所述第二子身份向所述第二身份管理节点发送协助处理请求,以使所述第二身份管理节点响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,并将得到的协助处理结果发送给所述第一身份管理节点,由所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果。
在本实施例中,所述装置还包括:
子身份创建单元,用于响应于所述第一身份管理节点基于由身份核验方为所述用户生成的身份核验凭证发送的子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份;
子身份创建单元,还用于响应于所述第二身份管理节点基于由身份核验方为所述用户生成的身份核验凭证发送的子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第二子身份。
在本实施例中,所述装置还包括密钥管理单元,用于:
调用所述CA机构提供的密钥管理服务,为所述用户创建托管密钥;其中,所述托管密钥中的部分私钥分片由所述第三身份管理节点进行托管,所述托管密钥中的剩余部分私钥分片由所述用户进行管理;
响应于所述用户发起的密钥更换请求,获取由所述身份核验方对所述用户进行身份核验的核验结果,并在所述核验结果指示对所述用户进行身份核验通过时,基于由所述第三身份管理节点托管的所述部分私钥分片,重新创建所述用户的私钥。
在本实施例中,所述装置还包括:
第三注册单元,用于在所述认证网络中进行注册,以创建所述第三身份管理节点与所述CA机构的对应关系,并将所述第三身份管理节点的注册信息存证至区块链。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例只是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
在一个典型的配置中,计算机包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
以上所述仅为本说明书一个或多个实施例的较佳实施例而已,并不用以限制本说明书一个或多个实施例,凡在本说明书一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施例保护的范围之内。

Claims (19)

1.一种基于认证网络的跨链身份验证方法,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述方法应用于所述第一身份管理节点;所述方法包括:
响应于所述用户在所述第一子链中发起的跨链身份验证,基于所述第一子身份向所述第三身份管理节点发送身份验证请求,以使所述第三身份管理节点响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份,进一步地基于所述第二子身份向所述第二身份管理节点发送协助处理请求,由所述第二身份管理节点响应于所述协助处理请求验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
接收所述第二身份管理节点返回的协助处理结果,并根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
2.根据权利要求1所述的方法,所述第三身份管理节点维护了用户的数字身份标识、用户的子身份标识、业务参与方的数字身份标识之间的关联关系;
所述身份验证请求中携带有所述第一子身份的身份标识、所述第一业务参与方的数字身份标识和所述第二业务参与方的数字身份标识;
所述协助处理请求中携带有所述第二子身份的身份标识。
3.根据权利要求1所述的方法,响应于所述用户在所述第一子链中发起的跨链身份验证,基于所述第一子身份向所述第三身份管理节点发送身份验证请求之前,所述方法还包括:
响应于所述用户在所述第一子链中发起的子身份申请,基于由身份核验方为所述用户生成的身份核验凭证向所述第三身份管理节点发送子身份创建请求,以使所述第三身份管理节点响应于所述子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份。
4.根据权利要求3所述的方法,所述子身份创建请求中携带有所述身份核验凭证的凭证标识。
5.根据权利要求2或4所述的方法,所述身份验证请求或所述子身份创建请求中还携带有基于所述CA机构的公钥加密后的动态口令;其中,所述基于所述CA机构的公钥加密后的动态口令是由所述用户提供的。
6.根据权利要求1所述的方法,所述认证网络为区块链网络,响应于所述用户在所述第一子链中发起的跨链身份验证,基于所述第一子身份向所述第三身份管理节点发送身份验证请求之前,所述方法还包括:
在所述认证网络中进行注册,以创建所述第一身份管理节点与所述第一业务参与方的对应关系,并将所述第一身份管理节点的注册信息存证至与所述第一子链和所述第二子链对应的主链,或者将所述第一身份管理节点的注册信息存证至用于存证跨链身份验证过程中产生的相关数据的区块链。
7.根据权利要求6所述的方法,所述第一身份管理节点的注册信息包括:所述第一业务参与方的数字身份标识、所述第一业务参与方的公钥、所述第一身份管理节点的节点标识和所述第一身份管理节点的证书链;
其中,所述第一身份管理节点的证书链包括:所述第一身份管理节点的节点标识、所述第一身份管理节点的公钥、所述CA机构的数字身份标识、所述CA机构的公钥和基于所述CA机构的私钥做出的数字签名。
8.根据权利要求1所述的方法,所述身份管理节点为搭载有可信执行环境的隐私计算节点;
所述用户在所述第一子链中发起的跨链身份验证,包括所述用户在所述第一子链中发起的针对目标服务的服务调用;其中,所述目标服务为需要识别所述第一子身份和所述第二子身份是否关联了同一数字身份的服务;
所述身份验证请求和所述协助处理请求携带有与所述目标服务关联的隐私计算需求;
所述协助处理结果中包括与所述隐私计算需求对应的隐私计算结果;其中,所述隐私计算结果是由所述第二身份管理节点响应于所述协助处理请求确定所述第二子链中创建了所述第二子身份之后,基于所述第二业务参与方维护的与所述第二子身份关联的业务数据,在所述第二身份管理节点所搭载的可信执行环境中进行隐私计算而得到的;
所述方法还包括:
如果所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份,则根据所述协助处理结果中包括的隐私计算结果为所述用户提供所述目标服务。
9.一种基于认证网络的跨链身份验证方法,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述方法应用于所述第二身份管理节点;所述方法包括:
接收所述第三身份管理节点基于所述第二子身份发送的协助处理请求;其中,所述第二子身份是由所述第三身份管理节点响应于所述第一身份管理节点基于所述第一子身份发送的身份验证请求,根据与所述第一子身份关联的所述用户在主链中的数字身份而确定的;所述身份验证请求是由第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
将所述协助处理结果发送给所述第一身份管理节点,以使所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
10.根据权利要求9所述的方法,所述身份管理节点为搭载有可信执行环境的隐私计算节点;
所述用户在所述第一子链中发起的跨链身份验证,包括所述用户在所述第一子链中发起的针对目标服务的服务调用;其中,所述目标服务为需要识别所述第一子身份和所述第二子身份是否关联了同一数字身份的服务;
所述身份验证请求和所述协助处理请求携带有与所述目标服务关联的隐私计算需求;所述协助处理结果中包括与所述隐私计算需求对应的隐私计算结果;
所述方法还包括:
如果所述第二子链中创建了所述第二子身份,基于所述第二业务参与方维护的与所述第二子身份关联的业务数据,在所述第二身份管理节点所搭载的可信执行环境中进行隐私计算,得到与所述隐私计算需求对应的隐私计算结果。
11.一种基于认证网络的跨链身份验证方法,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述方法应用于所述第三身份管理节点;所述方法包括:
接收所述第一身份管理节点基于所述第一子身份发送的身份验证请求;其中,所述身份验证请求是由所述第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份;
基于所述第二子身份向所述第二身份管理节点发送协助处理请求,以使所述第二身份管理节点响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,并将得到的协助处理结果发送给所述第一身份管理节点,由所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
12.根据权利要求11所述的方法,所述方法还包括:
响应于所述第一身份管理节点基于由身份核验方为所述用户生成的身份核验凭证发送的子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份;以及,
响应于所述第二身份管理节点基于由身份核验方为所述用户生成的身份核验凭证发送的子身份创建请求,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第二子身份。
13.根据权利要求12所述的方法,基于所述身份核验凭证为所述用户创建与所述用户的数字身份关联的第一子身份之前,所述方法还包括:
调用所述CA机构提供的密钥管理服务,为所述用户创建托管密钥;其中,所述托管密钥中的部分私钥分片由所述第三身份管理节点进行托管,所述托管密钥中的剩余部分私钥分片由所述用户进行管理;
响应于所述用户发起的密钥更换请求,获取由所述身份核验方对所述用户进行身份核验的核验结果,并在所述核验结果指示对所述用户进行身份核验通过时,基于由所述第三身份管理节点托管的所述部分私钥分片,重新创建所述用户的私钥。
14.根据权利要求11所述的方法,所述认证网络为区块链网络,接收所述第一身份管理节点基于所述第一子身份发送的身份验证请求之前,所述方法还包括:
在所述认证网络中进行注册,以创建所述第三身份管理节点与所述CA机构的对应关系,并将所述第三身份管理节点的注册信息存证至与所述第一子链和所述第二子链对应的主链,或者将所述第一身份管理节点的注册信息存证至用于存证跨链身份验证过程中产生的相关数据的区块链。
15.一种基于认证网络的跨链身份验证装置,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第一身份管理节点;所述装置包括:
第一发送单元,用于响应于所述用户在所述第一子链中发起的跨链身份验证,基于所述第一子身份向所述第三身份管理节点发送身份验证请求,以使所述第三身份管理节点响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份,进一步地基于所述第二子身份向所述第二身份管理节点发送协助处理请求,由所述第二身份管理节点响应于所述协助处理请求验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
第一接收单元,用于接收所述第二身份管理节点返回的协助处理结果,并根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
16.一种基于认证网络的跨链身份验证装置,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第二身份管理节点;所述装置包括:
第二接收单元,用于接收所述第三身份管理节点基于所述第二子身份发送的协助处理请求;其中,所述第二子身份是由所述第三身份管理节点响应于所述第一身份管理节点基于所述第一子身份发送的身份验证请求,根据与所述第一子身份关联的所述用户在主链中的数字身份而确定的;所述身份验证请求是由第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
协助处理单元,用于响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,得到协助处理结果;
第二发送单元,用于将所述协助处理结果发送给所述第一身份管理节点,以使所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
17.一种基于认证网络的跨链身份验证装置,所述认证网络包括部署在第一业务参与方所属的第一子链中的第一身份管理节点,部署在第二业务参与方所属的第二子链中的第二身份管理节点,以及与CA机构对应的第三身份管理节点;其中,所述第三身份管理节点在所述第一子链中为用户创建了与所述用户在主链中的数字身份关联的第一子身份,以及,在所述第二子链中为所述用户创建了与所述用户在主链中的数字身份关联的第二子身份;所述装置应用于所述第三身份管理节点;所述装置包括:
第三接收单元,用于接收所述第一身份管理节点基于所述第一子身份发送的身份验证请求;其中,所述身份验证请求是由所述第一身份管理节点响应于所述用户在所述第一子链中发起的跨链身份验证而发送的;
子身份映射单元,用于响应于所述身份验证请求,确定与所述第一子身份关联的所述用户在主链中的数字身份,并确定与所述用户在主链中的数字身份关联的第二子身份;
第三发送单元,用于基于所述第二子身份向所述第二身份管理节点发送协助处理请求,以使所述第二身份管理节点响应于所述协助处理请求,验证所述第二子链中是否创建了所述第二子身份,并将得到的协助处理结果发送给所述第一身份管理节点,由所述第一身份管理节点根据所述协助处理结果确定跨链身份验证结果;其中,所述协助处理结果用于指示所述第二子链中创建了所述第二子身份时,所述跨链身份验证结果表示所述用户在主链中的数字身份关联了所述第一子身份和所述第二子身份。
18.一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;
所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行权利要求1-8、9-10或11-14中任一项所述的方法。
19.一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现权利要求1-8、9-10或11-14中任一项所述的方法。
CN202310715657.5A 2023-06-15 2023-06-15 基于认证网络的跨链身份验证方法、装置、电子设备及存储介质 Active CN116866009B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310715657.5A CN116866009B (zh) 2023-06-15 2023-06-15 基于认证网络的跨链身份验证方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310715657.5A CN116866009B (zh) 2023-06-15 2023-06-15 基于认证网络的跨链身份验证方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN116866009A CN116866009A (zh) 2023-10-10
CN116866009B true CN116866009B (zh) 2024-03-26

Family

ID=88220697

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310715657.5A Active CN116866009B (zh) 2023-06-15 2023-06-15 基于认证网络的跨链身份验证方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN116866009B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110535872A (zh) * 2019-09-12 2019-12-03 腾讯科技(深圳)有限公司 在区块链网络中处理数据请求的方法和装置
CN114036478A (zh) * 2021-11-24 2022-02-11 东软集团股份有限公司 区块链跨链方法、装置、存储介质及电子设备
CN114499898A (zh) * 2022-04-15 2022-05-13 北京邮电大学 一种区块链跨链安全接入方法及装置
WO2022105565A1 (zh) * 2020-11-18 2022-05-27 深圳前海微众银行股份有限公司 一种跨链的区块链通信方法及装置
CN116055068A (zh) * 2023-04-03 2023-05-02 中国科学技术大学 一种基于did与中继链的多链统一身份管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110535872A (zh) * 2019-09-12 2019-12-03 腾讯科技(深圳)有限公司 在区块链网络中处理数据请求的方法和装置
WO2022105565A1 (zh) * 2020-11-18 2022-05-27 深圳前海微众银行股份有限公司 一种跨链的区块链通信方法及装置
CN114036478A (zh) * 2021-11-24 2022-02-11 东软集团股份有限公司 区块链跨链方法、装置、存储介质及电子设备
CN114499898A (zh) * 2022-04-15 2022-05-13 北京邮电大学 一种区块链跨链安全接入方法及装置
CN116055068A (zh) * 2023-04-03 2023-05-02 中国科学技术大学 一种基于did与中继链的多链统一身份管理方法

Also Published As

Publication number Publication date
CN116866009A (zh) 2023-10-10

Similar Documents

Publication Publication Date Title
US10652018B2 (en) Methods and apparatus for providing attestation of information using a centralized or distributed ledger
Liu et al. Blockchain-based identity management systems: A review
EP3788522B1 (en) System and method for mapping decentralized identifiers to real-world entities
EP3788523B1 (en) System and method for blockchain-based cross-entity authentication
CN112307455B (zh) 基于区块链的身份认证方法及装置、电子设备
RU2747947C2 (ru) Системы и способы персональной идентификации и верификации
CN111492634A (zh) 使用零知识协议的安全并且机密的保管交易系统、方法和设备
Mukta et al. Blockchain-based verifiable credential sharing with selective disclosure
CN108418689A (zh) 一种适合区块链隐私保护的零知识证明方法和介质
Jeong et al. Design of recruitment management platform using digital certificate on blockchain
CN111767569A (zh) 区块链的访问授权方法及节点
CN112989380A (zh) 资源交换处理方法、装置、设备及存储介质
CN113704775A (zh) 一种基于分布式数字身份的业务处理方法及相关装置
WO2019144948A1 (en) Decentralized biometric authentication platform
CN109388923B (zh) 一种程序执行方法及装置
US20210037009A1 (en) Biometric data sub-sampling during decentralized biometric authentication
Kim et al. Can we create a cross-domain federated identity for the industrial Internet of Things without Google?
CN116866009B (zh) 基于认证网络的跨链身份验证方法、装置、电子设备及存储介质
CN116451280A (zh) 基于区块链的资产管理方法和装置
Bai et al. Decentralized Identity Management: Prerequisiteof Web3 Identity Model
Tahlil et al. AlgoCert: Adopt Non-transferable NFT for the Issuance and Verification of Educational Certificates using Algorand Blockchain
Shah Use of blockchain as a software component to send messages anonymously for a data trading platform
CN115062063B (zh) 基于区块链的数据查询方法和装置
Shilina Revolutionizing identity verification: An introduction to Proof of Personhood (PoP) protocols
WO2020258126A1 (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