CN114978668B - 一种跨链数据实体身份管理和认证方法及系统 - Google Patents
一种跨链数据实体身份管理和认证方法及系统 Download PDFInfo
- Publication number
- CN114978668B CN114978668B CN202210544796.1A CN202210544796A CN114978668B CN 114978668 B CN114978668 B CN 114978668B CN 202210544796 A CN202210544796 A CN 202210544796A CN 114978668 B CN114978668 B CN 114978668B
- Authority
- CN
- China
- Prior art keywords
- user
- chain
- cross
- party
- identity management
- 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
Links
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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
Abstract
本发明涉及一种跨链数据实体身份管理和认证方法及系统,其包括:各区块链在跨链身份管理系统中注册普通用户和发证方;所述区块链包括带有PKI的区块链和不带PKI的区块链;所述发证方根据所属的网络环境进行公钥互证与权限互证,所述普通用户根据需要向对应的所述发证方申请得到包含细粒度属性的可验证凭证;所述区块链中经公钥互证与权限互证后的所述客户端对所述普通用户提供的所述可验证凭证进行验证,验证成功后为该普通用户提供服务。本发明能实现支持分级属性的身份细粒度标签动态管理机制与高效的身份标识认证方案。本发明可以在跨链身份认证技术领域中应用。
Description
技术领域
本发明涉及一种跨链身份认证技术领域,特别是关于一种跨链数据实体身份管理和认证方法及系统。
背景技术
随着区块链的发展,出现了越来越多的公有链,私有链和联盟链,而如何实现链与链之间的身份互通是个亟待解决的问题。在传统的单领域身份管理系统中,利用区块链本身去中心、不可篡改的特点,可以天然解决PKI身份管理系统带来的数据集中化,单点故障等问题。但是由于不同区块链系统的设计不同,并不是所有的区块链系统都具有身份管理机制。同时,即便是在带有身份管理机制的区块链系统中,系统的身份管理方案也各不相同。此外,用户在不同链中所需要的身份也具有很大的差异,所以如何实现区块链系统间的支持分级属性的身份细粒度跨链管理和高效的身份认证是一个重要的问题。
发明内容
针对上述问题,本发明的目的是提供一种跨链数据实体身份管理和认证方法及系统,能实现支持分级属性的身份细粒度标签动态管理机制与高效的身份标识认证方案。
为实现上述目的,本发明采取以下技术方案:一种跨链数据实体身份管理和认证方法,其包括:各区块链在跨链身份管理系统中注册普通用户和发证方;所述区块链包括带有PKI的区块链和不带PKI的区块链;所述发证方根据所属的网络环境进行公钥互证与权限互证,所述普通用户根据需要向对应的所述发证方申请得到包含细粒度属性的可验证凭证;所述区块链中经公钥互证与权限互证后的所述客户端对所述普通用户提供的所述可验证凭证进行验证,验证成功后为该普通用户提供服务。
进一步,所述各区块链在跨链身份管理系统中注册普通用户和发证方,包括:
根据用户角色的类型,提供对应的信息,所有用户需提供自己的公钥及发证方要求的属性信息,填写一个用于描述公钥及属性信息的JSON文件;发证方用户还需要额外提供现实信息,所述跨链身份管理系统需要对发证方提供的额外信息进行审核;
跨链身份管理系统预先制定发证方层次的访问策略,通过验证发证方的细粒度属性信息实现对发证方的身份管理;发证方预先制定用户层次的访问策略,通过验证用户的细粒度属性信息实现对用户的身份管理;
根据用户所提供的公钥及属性信息,生成跨链系统唯一标识;
将用户的唯一标识和描述相关信息的JSON文件存放在所述跨链身份管理系统的数据库中。
进一步,所述发证方根据所属的网络环境进行公钥互证与权限互证,包括:
区块链的客户端按照其类型,在所述跨链身份管理系统中根据需要选择发证方注册的数量;
各发证方向所述跨链身份管理系统提供公钥、属性ATTRi、访问权限需求及访问控制要求,对在跨链过程中所涉及的发证方进行公钥互证与权限互证;
所述公钥互证为将互证对方的公钥加入自己客户端的白名单中;
所述权限互证为:涉及的发证方分别将自身的属性信息ATTRi与访问权限需求发送给其他发证方;在收到其他发证方的属性信息ATTRi与访问权限需求后,寻找与访问权限需求相对应的访问控制要求,若提供的属性信息ATTRi符合相应的访问控制要求,则给予相应的访问权限。
进一步,所述普通用户根据需要向对应的所述发证方申请得到包含细粒度属性的可验证凭证,包括:
用户可自由选择发证方并根据所选择的发证方的要求,提供对应的属性数据;
发证方根据访问策略,对用户提供的属性数据信息进行验证,确定用户是否来自于该区块链网络并验证用户是否合法;
发证方根据用户提供的属性数据,验证访问策略;
发证方按照验证结果为用户生成可验证凭证,可验证凭证全部信息存储在用户本地端,且可验证凭证的摘要存储在所述跨链身份管理系统的数据库中。
进一步,所述客户端对所述普通用户提供的所述可验证凭证进行验证,包括:
验证所述可验证凭证是否被篡改,若没有篡改,则验证所述可验证凭证中的发证方签名是否被篡改;
最后验证签名的发证方的公钥是否存在于区块链客户端系统的白名单中,若存在则验证成功,客户端则允许用户进入,并提供相应的服务。
一种跨链数据实体身份管理和认证系统,其包括:注册模块,各区块链在跨链身份管理系统中注册普通用户和发证方;所述区块链包括带有PKI的区块链和不带PKI的区块链;处理模块,所述发证方根据所属的网络环境进行公钥互证与权限互证,所述普通用户根据需要向对应的所述发证方申请得到包含细粒度属性的可验证凭证;验证模块,所述区块链中经公钥互证与权限互证后的所述客户端对所述普通用户提供的所述可验证凭证进行验证,验证成功后为该普通用户提供服务。
进一步,所述注册模块中,包括:信息采集模块,根据用户角色的类型,提供对应的信息,所有用户需提供自己的公钥和属性信息,填写一个用于描述公钥及属性信息的JSON文件;发证方用户还需要额外提供现实信息,所述跨链身份管理系统需要对发证方提供的额外信息进行审核;跨链身份管理系统预先制定发证方层次的访问策略,通过验证发证方的细粒度属性信息实现对发证方的身份管理;发证方预先制定用户层次的访问策略,通过验证用户的细粒度属性信息实现对用户的身份管理;标识模块,根据用户所提供的公钥及属性信息,生成跨链系统唯一标识;存储模块,将用户的唯一标识和描述公钥及属性信息的JSON文件存放在所述跨链身份管理系统的数据库中。
进一步,所述处理模块中,发证方根据所属的网络环境进行公钥互证与权限互证包括:
发证方数量选择模块,区块链的客户端按照其类型,在所述跨链身份管理系统中根据需要选择发证方注册的数量;
互证模块,各发证方向所述跨链身份管理系统提供公钥、属性ATTRi、访问权限需求及访问控制要求,对在跨链过程中所涉及的发证方进行公钥互证与权限互证;
所述公钥互证为将互证对方的公钥加入自己客户端的白名单中;
所述权限互证为:涉及的发证方分别将自身的属性信息ATTRi与访问权限需求发送给其他发证方;在收到其他发证方的属性信息ATTRi与访问权限需求后,寻找与访问权限需求相对应的访问控制要求,若提供的属性信息ATTRi符合相应的访问控制要求,则给予相应的访问权限。。
一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行上述方法中的任一方法。
一种计算设备,其包括:一个或多个处理器、存储器及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为所述一个或多个处理器执行,所述一个或多个程序包括用于执行上述方法中的任一方法的指令。
本发明由于采取以上技术方案,其具有以下优点:
1、本发明构建了跨链数据实体身份管理和认证,并在此基础上实现了同构/异构链之间支持分级属性的身份细粒度跨链管理和高效的身份认证。
2、本发明中的发证方在验证过程中,并不需要用户的隐私数据,便可以判断用户是否可信性,最大程度上减少了对用户隐私数据的二次收集。
附图说明
图1是本发明的系统架构图;
图2是本发明的异构链身份互证流程示意图;
图3是本发明的发证方注册流程示意图;
图4是本发明的异构链发证方公钥互证与权限互证过程示意图;
图5是本发明的用户注册流程示意图;
图6是本发明的签发可验证凭证流程示意图;
图7是本发明的验证可验证凭证流程示意图;
图8是本发明的同构链流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
本发明提供的跨链数据实体身份管理和认证方法及系统,支持分级属性的身份细粒度标签动态管理与高效的标识认证,包括以下步骤:1)普通用户/发证方在跨链身份管理系统中注册;2)发证方根据所属的网络环境,进行公钥互证与权限互证;3)用户根据自身需要向对应的发证方申请得到包含细粒度属性的可验证凭证;4)区块链客户端验证用户所提供的可验证凭证,验证成功后为用户提供服务。本发明中的发证方在签发可验证声明中不涉及用户隐私数据,最大程度上减少了对用户隐私数据的二次收集。本发明支持分级属性的身份细粒度标签动态管理,实现了异构链/同构链之间高效的身份标识认证,使得不同链之间可以进行交互并且具有较好的扩展性。
在本发明的一个实施例中,提供一种跨链数据实体身份管理和认证系统,可以实现异构链/同构链之间的身份互证,其包括:
注册模块,各区块链在跨链身份管理系统中注册普通用户和发证方;区块链包括带有PKI的区块链和不带PKI的区块链;
处理模块,发证方根据所属的网络环境进行公钥互证与权限互证,普通用户根据需要向对应的发证方申请得到包含细粒度属性的可验证凭证;
验证模块,区块链中经公钥互证与权限互证后的客户端对普通用户提供的可验证凭证进行验证,验证成功后为该普通用户提供服务。
上述实施例中,在注册模块中还包括:
信息采集模块,根据用户角色的类型,提供对应的信息,所有用户需提供自己的公钥及发证方要求的属性信息,填写一个用于描述公钥及属性信息的JSON文件;发证方用户还需要额外提供现实信息,跨链身份管理系统需要对发证方提供的额外信息进行审核;其中,跨链身份管理系统预先制定发证方层次的访问策略,通过验证发证方的细粒度属性信息实现对发证方的身份管理;发证方预先制定用户层次的访问策略,通过验证用户的细粒度属性信息实现对用户的身份管理。
标识模块,根据用户所提供的公钥及属性信息,生成跨链系统唯一标识;
存储模块,将用户的唯一标识和描述公钥及属性信息的JSON文件存放在跨链身份管理系统的数据库中。
上述实施例中,在处理模块中,发证方根据所属的网络环境进行公钥互证与权限互证包括:
发证方数量选择模块,区块链的客户端按照其类型,在跨链身份管理系统中根据需要选择发证方注册的数量;
互证模块,各发证方向所述跨链身份管理系统提供公钥、属性ATTRi、访问权限需求OUTi及访问控制要求INi,对在跨链过程中所涉及的发证方进行公钥互证与权限互证,公钥互证的过程为:将互证对方的公钥加入自己客户端的白名单中。
权限互证的过程为:
(1)涉及的发证方分别将自身的属性信息ATTRi与访问权限需求OUTi发送给其他发证方;
(2)在收到其他发证方的属性信息ATTRi与访问权限需求OUTi后,寻找与访问权限需求OUTi相对应的访问控制要求INi,若提供的属性信息ATTRi符合相应的访问控制要求INi,则给予相应的访问权限。
如图1所示,本发明提供的跨链数据实体身份管理和认证系统中,发证方能够开具身份凭证,能为用户进行信任背书的任何机构组织。在本实施例中,设置以下角色:
发证方,指区块链网络系统中的组织或组织群体。
普通用户,能够向发证方请求和接收身份凭证,并向对应的区块链客户端出示。
跨链身份管理系统,可以为所有用户提供注册登录服务,为所有用户提供可验证凭证验证服务,为发证方提供可验证凭证签发服务。
区块链客户端,可以使用跨链身份管理系统的可验证凭证验证服务,并且提供验证发证方公钥服务,并根据自身需求提供相关服务。
本实施例提供的系统是用于执行下述各方法实施例的,具体流程和详细内容请参照下述实施例,此处不再赘述。
在本发明的一个实施例中,提供一种跨链数据实体身份管理和认证方法。本实施例中,如图1所示,该方法包括以下步骤:
1)各区块链在跨链身份管理系统中注册普通用户和发证方;区块链包括带有PKI的区块链和不带PKI的区块链;
2)发证方根据所属的网络环境进行公钥互证与权限互证,普通用户根据需要向对应的发证方申请得到包含细粒度属性的可验证凭证;
3)区块链中经公钥互证与权限互证后的客户端对普通用户提供的可验证凭证进行验证,验证成功后为该普通用户提供服务。
上述步骤1)中,各区块链在跨链身份管理系统中注册普通用户和发证方的方法包括以下步骤:
1.1)根据用户角色的类型,提供对应的信息,所有用户需提供自己的公钥及发证方要求的属性信息,填写一个用于描述公钥及属性信息的JSON文件;发证方用户还需要额外提供现实信息,跨链身份管理系统需要对发证方提供的额外信息进行审核;其中,跨链身份管理系统预先制定发证方层次的访问策略,通过验证发证方的细粒度属性信息实现对发证方的身份管理;发证方预先制定用户层次的访问策略,通过验证用户的细粒度属性信息实现对用户的身份管理。
1.2)根据用户所提供的公钥及属性信息,生成跨链系统唯一标识;
1.3)将用户的唯一标识和描述公钥及属性信息的JSON文件存放在跨链身份管理系统的数据库中。
上述步骤2)中,发证方根据所属的网络环境进行公钥互证与权限互证的方法包括以下步骤:
2.1.1)区块链的客户端按照其类型,在跨链身份管理系统中根据需要选择发证方注册的数量;
2.1.2)各发证方向跨链身份管理系统提供公钥、属性ATTRi、访问权限需求OUTi及访问控制要求INi等信息。
2.1.3)对在跨链过程中所涉及的发证方进行公钥互证与权限互证;
公钥互证的过程为:将互证对方的公钥加入自己客户端的白名单中;
权限互证的过程为:
(1)涉及的发证方分别将自身的属性信息ATTRi与访问权限需求OUTi发送给其他发证方;
(2)在收到其他发证方的属性信息ATTRi与访问权限需求OUTi后,寻找与访问权限需求OUTi相对应的访问控制要求INi,若提供的属性信息ATTRi符合相应的访问控制要求INi,则给予相应的访问权限。
上述步骤2)中,普通用户根据需要向对应的发证方申请得到包含细粒度属性的可验证凭证的方法包括以下步骤:
2.2.1)发证方制定用户访问策略ini。
2.2.2)用户可自由选择发证方并根据所选择的发证方的要求,提供对应的属性数据;
2.2.3)发证方根据访问策略,对用户提供的属性数据信息进行验证,来确定用户是否来自于该区块链网络并验证用户是否合法;
2.2.4)发证方根据用户提供的属性数据,验证访问策略(例如,若访问策略ink=(A∧B)∨C,则访问者同时有A、B属性时或具有C属性时,即可参照此访问策略进行相应的访问);
2.2.5)发证方按照验证结果为用户生成可验证凭证,可验证凭证全部信息存储在用户本地端,且可验证凭证的摘要存储在跨链身份管理系统的数据库中。
上述步骤3)中,区块链客户端对普通用户提供的可验证凭证进行验证的方法包括以下步骤:
3.1)验证可验证凭证是否被篡改,若没有篡改,则进入下一步;
3.2)验证可验证凭证中的发证方签名是否被篡改,若没有篡改,则进入下一步;
3.3)验证签名的发证方的公钥是否存在于区块链客户端系统的白名单中,若存在则验证成功,区块链客户端则允许用户进入,并提供相应的服务。
实施例1:
以异构链之间的身份互证为例进行说明。其中,异构链为带PKI的区块链和不带PKI的区块链。
如图2所示,异构链之间的身份互证,包括以下步骤:
(1)带PKI的区块链和不带PKI的区块链在跨链身份管理系统中注册成为发证方(下文分别称为链A和链B);
(2)链A和链B的发证方进行公钥互证与权限互证;
(3)链A和链B的用户分别在跨链身份管理系统中注册成为普通用户;
(4)链A和链B的用户分别在跨链身份管理系统中向本区块链的发证方申请可验证凭证;
(5)链A的用户使用申请到的可验证凭证去访问链B或链B的用户使用申请到的可验证凭证去访问链A;
(6)链A的客户端验证链B用户的可验证凭证或链B的客户端验证链A用户的可验证凭证;
若链A的客户端验证成功,则允许链B的用户访问本系统,并提供相应的服务;若链B的客户端验证成功,则允许链A的用户访问本系统,并提供相应的服务。
如图3所示,上述步骤(1)中,参与该系统的区块链系统注册成为发证方的具体过程为:
(1.1)提交相关申请信息进行注册(需要提供现实社会的法人等信息);
(1.2)创建智能合约;
(1.3)区块链网络在链上执行合约,生成身份信息并存储至链上;
(1.4)返回创建结果。
如图4所示,上述步骤(2)中,参与两个异构链的发证方实现公钥互证与权限互证的具体过程为:
(2.1)客户端区块链按照其网络类型,在跨链身份管理系统中根据需要选择发证方注册的数量。其中,客户区块链的类型有2种,分别为带有PKI的区块链和不带PKI的区块链,在下文中分别称为链A与链B。设链A中存在n1个组织,分别为(组织A1,组织A2,…,组织)。因为其本身带有身份管理机制,所以各个组织在链中均拥有不同的身份凭证vi,(i=1,2,...,n1),共n1个。在跨链访问时,链中的多个组织可共用同一个身份而后再根据它们在源链处的身份凭证vi进行细分,从而进行身份分级管理(例如,如图4所示,组织A1可以和组织A2共享一个跨链身份凭证在需要进行细粒度身份验证时再采用各自在A链的身份凭证v1,v2进行验证)。因此其只需要根据实际需要注册m1个发证方,分别为(发证方A1,发证方A2,…,发证方),其中m1≤n1;设B链中存在n2个组织,分别为(组织B1,组织B2,…,组织)。由于其本身无身份管理机制,因此其需要为每个组织注册一个发证方,即注册n2个,分别为(发证方B1,发证方B2,…,发证方);
(2.2)步骤(2.1)所提的发证方利用步骤(1)完成注册;
(2.3)对在跨链过程中所涉及的发证方进行公钥互证与权限互证。公钥互证的过程为:将互证对方的公钥加入自己客户端的白名单中;权限互证的过程为:1.涉及的发证方分别将自身的属性信息ATTRi与访问权限需求OUTi发送给其他发证方。2.在收到其他发证方的属性信息ATTRi与访问权限需求OUTi后,寻找与访问权限需求OUTi相对应的访问控制要求INi,若提供的属性信息ATTRi符合相应的访问控制要求INi,则给予相应的访问权限。
如图5所示,上述步骤(3)中,参与该系统的区块链用户注册成为普通用户的具体过程为:
(3.1)根据所在链的发证发的要求提交相关申请信息进行注册;
(3.2)创建智能合约;
(3.3)区块链网络在链上执行合约,生成用户身份信息并存储至链上;
(3.4)返回创建结果。
如图6所示,上述步骤(4)中,为用户签发申请可验证凭证的具体过程为:
(4.1)用户提交签发可验证凭证申请,并提交相关信息认证信息;
(4.2)调用签发可验证凭证智能合约之前对用户身份及权限进行验证(不同区块链系统所需的信息不同);
(4.3)区块链网络在链上执行合约,生成相关信息并将其摘要存储至链上;
(4.4)返回签发结果。
如图7所示,上述步骤(6)中,为用户验证可验证凭证的具体过程为(设交互的两条链分别为链A与链B):
(6.1)链A用户向链B出示可验证凭证的内容;
(6.2)链B客户端在跨链数据实体身份管理和认证系统调用验证可验证凭证的智能合约,将可验证凭证的内容摘要与跨链数据实体身份管理和认证系统存储的摘要信息进行对比,如一致则验证成功;
(6.3)链B客户端将可验证凭证中的发证方公钥与自己系统的白名单进行对比,若存在,则用户提供的可验证凭证在链B客户端系统验证成功。
实施例2:
以同构链之间的身份互证为例进行说明。其中,同构链为都为带PKI的区块链或都为不带PKI的区块链。
如图8所示,同构链之间的身份互证,包括以下步骤:
(1)带PKI的区块链或不带PKI的区块链在跨链数据实体身份管理和认证系统中注册成为发证方;
(2)两个同构链的发证方实现公钥互证与权限互证;
(3)两个同构链的用户分别在跨链数据实体身份管理和认证系统中注册成为普通用户;
(4)两个同构链的用户分别在跨链数据实体身份管理和认证系统中向本系统的发证方申请可验证凭证;
(5)带PKI区块链系统的用户使用申请到的可验证凭证去访问另一个带PKI的区块链系统(设这两条链分别为链A1和链A2,假设A1访问A2),不带PKI区块链系统的用户使用申请到的可验证凭证去访问另一个不带PKI的区块链系统(设这两条链分别为链B1和链B2,假设B1访问B2);
(6)链A2的客户端验证链A1的可验证凭证,链B2的客户端验证链B1的可验证凭;
若链A1的客户端验证成功,则允许链A2用户访问本系统,并提供相应的服务;若链B1的客户端验证成功,则允许链B2的用户访问本系统,并提供相应的服务;
上述各步骤的具体实施方式与异构链间的身份互证的过程一致,在此不再赘述。
本发明一实施例中提供的计算设备结构,该计算设备可以是终端,其可以包括:处理器(processor)、通信接口(Communications Interface)、存储器(memory)、显示屏和输入装置。其中,处理器、通信接口、存储器通过通信总线完成相互间的通信。该处理器用于提供计算和控制能力。该存储器包括非易失性存储介质、内存储器,该非易失性存储介质存储有操作系统和计算机程序,该计算机程序被处理器执行时以实现一种跨链数据实体身份管理和认证方法;该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、管理商网络、NFC(近场通信)或其他技术实现。该显示屏可以是液晶显示屏或者电子墨水显示屏,该输入装置可以是显示屏上覆盖的触摸层,也可以是计算设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。处理器可以调用存储器中的逻辑指令,以执行如下方法:各区块链在跨链身份管理系统中注册普通用户和发证方;发证方根据所属的网络环境进行公钥互证与权限互证,普通用户根据需要向对应的发证方申请得到包含细粒度属性的可验证凭证;区块链中经公钥互证与权限互证后的客户端对普通用户提供的可验证凭证进行验证,验证成功后为该普通用户提供服务。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以理解,上述计算设备的结构,仅仅是与本申请方案相关的部分结构,并不构成对本申请方案所应用于其上的计算设备的限定,具体的计算设备可以包括更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在本发明的一个实施例中,提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:各区块链在跨链身份管理系统中注册普通用户和发证方;发证方根据所属的网络环境进行公钥互证与权限互证,普通用户根据需要向对应的发证方申请得到包含细粒度属性的可验证凭证;区块链中经公钥互证与权限互证后的客户端对普通用户提供的可验证凭证进行验证,验证成功后为该普通用户提供服务。
在本发明的一个实施例中,提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储服务器指令,该计算机指令使计算机执行上述各实施例提供的方法,例如包括:各区块链在跨链身份管理系统中注册普通用户和发证方;发证方根据所属的网络环境进行公钥互证与权限互证,普通用户根据需要向对应的发证方申请得到包含细粒度属性的可验证凭证;区块链中经公钥互证与权限互证后的客户端对普通用户提供的可验证凭证进行验证,验证成功后为该普通用户提供服务。
上述实施例提供的一种计算机可读存储介质,其实现原理和技术效果与上述方法实施例类似,在此不再赘述。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (7)
1.一种跨链数据实体身份管理和认证方法,其特征在于,包括:
各区块链在跨链身份管理系统中注册普通用户和发证方;所述区块链包括带有PKI的区块链和不带PKI的区块链;
所述发证方根据所属的网络环境进行公钥互证与权限互证,所述普通用户根据需要向对应的所述发证方申请得到包含细粒度属性的可验证凭证;
所述区块链中经公钥互证与权限互证后的客户端对所述普通用户提供的所述可验证凭证进行验证,验证成功后为该普通用户提供服务;
所述发证方根据所属的网络环境进行公钥互证与权限互证,包括:
区块链的客户端按照其类型,在所述跨链身份管理系统中根据需要选择发证方注册的数量;
各发证方向所述跨链身份管理系统提供公钥、属性、访问权限需求及访问控制要求,对在跨链过程中所涉及的发证方进行公钥互证与权限互证;
所述公钥互证为将互证对方的公钥加入自己客户端的白名单中;
所述权限互证为:涉及的发证方分别将自身的属性信息与访问权限需求发送给其他发证方;在收到其他发证方的属性信息与访问权限需求后,寻找与访问权限需求相对应的访问控制要求,若提供的属性信息符合相应的访问控制要求,则给予相应的访问权限;
所述客户端对所述普通用户提供的所述可验证凭证进行验证,包括:
验证所述可验证凭证是否被篡改,若没有篡改,则验证所述可验证凭证中的发证方签名是否被篡改;
最后验证签名的发证方的公钥是否存在于区块链客户端系统的白名单中,若存在则验证成功,客户端则允许用户进入,并提供相应的服务。
2.如权利要求1所述跨链数据实体身份管理和认证方法,其特征在于,所述各区块链在跨链身份管理系统中注册普通用户和发证方,包括:
根据用户角色的类型,提供对应的信息,所有用户需提供自己的公钥及发证方要求的属性信息,填写一个用于描述公钥及属性信息的JSON文件;发证方用户还需要额外提供现实信息,所述跨链身份管理系统需要对发证方提供的额外信息进行审核;
跨链身份管理系统预先制定发证方层次的访问策略,通过验证发证方的细粒度属性信息实现对发证方的身份管理;发证方预先制定用户层次的访问策略,通过验证用户的细粒度属性信息实现对用户的身份管理;
根据用户所提供的公钥及属性信息,生成跨链系统唯一标识;
将用户的唯一标识和描述相关信息的JSON文件存放在所述跨链身份管理系统的数据库中。
3.如权利要求1所述跨链数据实体身份管理和认证方法,其特征在于,所述普通用户根据需要向对应的所述发证方申请得到包含细粒度属性的可验证凭证,包括:
用户可自由选择发证方并根据所选择的发证方的要求,提供对应的属性数据;
发证方根据访问策略,对用户提供的属性数据信息进行验证,确定用户是否来自于该区块链网络并验证用户是否合法;
发证方根据用户提供的属性数据,验证访问策略;
发证方按照验证结果为用户生成可验证凭证,可验证凭证全部信息存储在用户本地端,且可验证凭证的摘要存储在所述跨链身份管理系统的数据库中。
4.一种跨链数据实体身份管理和认证系统,其特征在于,包括:
注册模块,各区块链在跨链身份管理系统中注册普通用户和发证方;所述区块链包括带有PKI的区块链和不带PKI的区块链;
处理模块,所述发证方根据所属的网络环境进行公钥互证与权限互证,所述普通用户根据需要向对应的所述发证方申请得到包含细粒度属性的可验证凭证;
验证模块,所述区块链中经公钥互证与权限互证后的客户端对所述普通用户提供的所述可验证凭证进行验证,验证成功后为该普通用户提供服务;
所述处理模块中,发证方根据所属的网络环境进行公钥互证与权限互证包括:
发证方数量选择模块,区块链的客户端按照其类型,在所述跨链身份管理系统中根据需要选择发证方注册的数量;
互证模块,各发证方向所述跨链身份管理系统提供公钥、属性、访问权限需求及访问控制要求,对在跨链过程中所涉及的发证方进行公钥互证与权限互证;
所述公钥互证为将互证对方的公钥加入自己客户端的白名单中;
所述权限互证为:涉及的发证方分别将自身的属性信息与访问权限需求发送给其他发证方;在收到其他发证方的属性信息与访问权限需求后,寻找与访问权限需求相对应的访问控制要求,若提供的属性信息符合相应的访问控制要求,则给予相应的访问权限;
所述客户端对所述普通用户提供的所述可验证凭证进行验证,包括:
验证所述可验证凭证是否被篡改,若没有篡改,则验证所述可验证凭证中的发证方签名是否被篡改;
最后验证签名的发证方的公钥是否存在于区块链客户端系统的白名单中,若存在则验证成功,客户端则允许用户进入,并提供相应的服务。
5.如权利要求4所述跨链数据实体身份管理和认证系统,其特征在于,所述注册模块中,包括:
信息采集模块,根据用户角色的类型,提供对应的信息,所有用户需提供自己的公钥和属性信息,填写一个用于描述公钥及属性信息的JSON文件;发证方用户还需要额外提供现实信息,所述跨链身份管理系统需要对发证方提供的额外信息进行审核;
跨链身份管理系统预先制定发证方层次的访问策略,通过验证发证方的细粒度属性信息实现对发证方的身份管理;发证方预先制定用户层次的访问策略,通过验证用户的细粒度属性信息实现对用户的身份管理;
标识模块,根据用户所提供的公钥及属性信息,生成跨链系统唯一标识;
存储模块,将用户的唯一标识和描述公钥及属性信息的JSON文件存放在所述跨链身份管理系统的数据库中。
6.一种存储一个或多个程序的计算机可读存储介质,其特征在于,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行如权利要求1至3所述方法中的任一方法。
7.一种计算设备,其特征在于,包括:一个或多个处理器、存储器及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为所述一个或多个处理器执行,所述一个或多个程序包括用于执行如权利要求1至3所述方法中的任一方法的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210544796.1A CN114978668B (zh) | 2022-05-19 | 2022-05-19 | 一种跨链数据实体身份管理和认证方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210544796.1A CN114978668B (zh) | 2022-05-19 | 2022-05-19 | 一种跨链数据实体身份管理和认证方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114978668A CN114978668A (zh) | 2022-08-30 |
CN114978668B true CN114978668B (zh) | 2023-05-02 |
Family
ID=82985069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210544796.1A Active CN114978668B (zh) | 2022-05-19 | 2022-05-19 | 一种跨链数据实体身份管理和认证方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114978668B (zh) |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108876370A (zh) * | 2018-06-12 | 2018-11-23 | 北京航空航天大学 | 一种异构多链架构下跨区块链共享开放数据的体系架构 |
WO2019108435A1 (en) * | 2017-11-30 | 2019-06-06 | Mocana Corporation | System and method of device identification for enrollment and registration of a connected endpoint device, and blockchain service |
CN110472979A (zh) * | 2019-07-16 | 2019-11-19 | 中央财经大学 | 基于区块链的交易主客体的验证方法 |
CN110505058A (zh) * | 2019-08-20 | 2019-11-26 | 西安电子科技大学 | 跨链场景下异构区块链的身份认证方法 |
WO2020048241A1 (zh) * | 2018-09-04 | 2020-03-12 | 阿里巴巴集团控股有限公司 | 区块链跨链的认证方法、系统、服务器及可读存储介质 |
CN112396421A (zh) * | 2020-10-10 | 2021-02-23 | 安徽中科晶格技术有限公司 | 一种基于区块链通证的身份认证系统及方法 |
CN112580102A (zh) * | 2020-12-29 | 2021-03-30 | 郑州大学 | 基于区块链的多维度数字身份鉴别系统 |
CN113194469A (zh) * | 2021-04-28 | 2021-07-30 | 四川师范大学 | 基于区块链的5g无人机跨域身份认证方法、系统及终端 |
CN113271211A (zh) * | 2021-05-18 | 2021-08-17 | 网易(杭州)网络有限公司 | 一种数字身份验证系统、方法、电子设备及存储介质 |
CN113271311A (zh) * | 2021-05-28 | 2021-08-17 | 中国人民银行数字货币研究所 | 一种跨链网络中的数字身份管理方法及系统 |
CN113507458A (zh) * | 2021-06-28 | 2021-10-15 | 电子科技大学 | 一种基于区块链的跨域身份认证方法 |
CN113704712A (zh) * | 2020-05-21 | 2021-11-26 | 北京金山云网络技术有限公司 | 身份认证方法、装置、系统和电子设备 |
CN113724078A (zh) * | 2021-07-14 | 2021-11-30 | 成都金控征信有限公司 | 一种基于zk-snark的区块链积分用户鉴权认证方法 |
CN114365133A (zh) * | 2019-05-22 | 2022-04-15 | 易享信息技术有限公司 | 利用秘密共享和对读取的共识在元数据驱动的区块链上实现被遗忘的权利的系统或方法 |
-
2022
- 2022-05-19 CN CN202210544796.1A patent/CN114978668B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019108435A1 (en) * | 2017-11-30 | 2019-06-06 | Mocana Corporation | System and method of device identification for enrollment and registration of a connected endpoint device, and blockchain service |
CN108876370A (zh) * | 2018-06-12 | 2018-11-23 | 北京航空航天大学 | 一种异构多链架构下跨区块链共享开放数据的体系架构 |
WO2020048241A1 (zh) * | 2018-09-04 | 2020-03-12 | 阿里巴巴集团控股有限公司 | 区块链跨链的认证方法、系统、服务器及可读存储介质 |
CN114365133A (zh) * | 2019-05-22 | 2022-04-15 | 易享信息技术有限公司 | 利用秘密共享和对读取的共识在元数据驱动的区块链上实现被遗忘的权利的系统或方法 |
CN110472979A (zh) * | 2019-07-16 | 2019-11-19 | 中央财经大学 | 基于区块链的交易主客体的验证方法 |
CN110505058A (zh) * | 2019-08-20 | 2019-11-26 | 西安电子科技大学 | 跨链场景下异构区块链的身份认证方法 |
CN113704712A (zh) * | 2020-05-21 | 2021-11-26 | 北京金山云网络技术有限公司 | 身份认证方法、装置、系统和电子设备 |
CN112396421A (zh) * | 2020-10-10 | 2021-02-23 | 安徽中科晶格技术有限公司 | 一种基于区块链通证的身份认证系统及方法 |
CN112580102A (zh) * | 2020-12-29 | 2021-03-30 | 郑州大学 | 基于区块链的多维度数字身份鉴别系统 |
CN113194469A (zh) * | 2021-04-28 | 2021-07-30 | 四川师范大学 | 基于区块链的5g无人机跨域身份认证方法、系统及终端 |
CN113271211A (zh) * | 2021-05-18 | 2021-08-17 | 网易(杭州)网络有限公司 | 一种数字身份验证系统、方法、电子设备及存储介质 |
CN113271311A (zh) * | 2021-05-28 | 2021-08-17 | 中国人民银行数字货币研究所 | 一种跨链网络中的数字身份管理方法及系统 |
CN113507458A (zh) * | 2021-06-28 | 2021-10-15 | 电子科技大学 | 一种基于区块链的跨域身份认证方法 |
CN113724078A (zh) * | 2021-07-14 | 2021-11-30 | 成都金控征信有限公司 | 一种基于zk-snark的区块链积分用户鉴权认证方法 |
Non-Patent Citations (2)
Title |
---|
L Gong,DM Alghazzawi,L Cheng.BCoT sentry:A blockchain-based identity authentication framework for IoT devices.《MDPI》.2021,全文. * |
肖兴堂.基于跨链技术的物联网数据共享系统的设计与实现.《中国优秀硕士学位论文全文数据库》.2021,全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN114978668A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10939295B1 (en) | Secure mobile initiated authentications to web-services | |
US10764752B1 (en) | Secure mobile initiated authentication | |
US20200296108A1 (en) | Parameter based key derivation | |
US20180336554A1 (en) | Secure electronic transaction authentication | |
US20210273931A1 (en) | Decentralized authentication anchored by decentralized identifiers | |
US9178701B2 (en) | Parameter based key derivation | |
US11405207B2 (en) | Dynamic implementation and management of hash-based consent and permissioning protocols | |
AU2012315674B2 (en) | Parameter based key derivation | |
US20130086663A1 (en) | Key derivation techniques | |
CN110493237A (zh) | 身份管理方法、装置、计算机设备及存储介质 | |
US20090319795A1 (en) | Digitally signing documents using identity context information | |
CN115176247A (zh) | 使用成对的去中心化标识符的委托 | |
CN113438088A (zh) | 基于区块链分布式身份的社交网络信用监测方法及装置 | |
US20220232014A1 (en) | Vehicle communication method, apparatus, storage medium and program product | |
CN114760071B (zh) | 基于零知识证明的跨域数字证书管理方法、系统和介质 | |
CN116235460A (zh) | 认证系统和方法 | |
CN113966597B (zh) | 使用多个解析器解析分散标识符 | |
Kwame et al. | V-chain: A blockchain-based car lease platform | |
Rashid et al. | RC-AAM: blockchain-enabled decentralized role-centric authentication and access management for distributed organizations | |
EP4348915A1 (en) | Endorsement claim in a verifiable credential | |
CN113632088A (zh) | 用于did证明的回调模式 | |
CN113328854B (zh) | 基于区块链的业务处理方法及系统 | |
CN106209751B (zh) | 基于操作系统授权证书的面向服务的接口认证方法 | |
CN114978668B (zh) | 一种跨链数据实体身份管理和认证方法及系统 | |
Foltz et al. | Enterprise level security–basic security model |
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 |