区块链系统的认证管理方法、装置、介质及电子设备转让专利

申请号 : CN202011175888.4

文献号 : CN112000976B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 朱耿良

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本申请的实施例提供了一种区块链系统的认证管理方法、装置、介质及电子设备。该认证管理方法包括:向第一业务对应的第一证书授权中心发送证书签发请求,所述证书签发请求用于使第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书;接收第一证书授权中心返回的跨链访问证书,其中,所述第一证书授权中心在生成所述跨链访问证书之后,将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中;将所述跨链访问证书发送给所述第二证书授权中心,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链。本申请实施例的技术方案可以在保证安全性的前提下,满足跨链访问的业务需求。

权利要求 :

1.一种区块链系统的认证管理方法,其特征在于,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理方法由用于对所述业务节点进行注册管理的注册管理中心执行,所述认证管理方法包括:向第一业务对应的第一证书授权中心发送证书签发请求,所述证书签发请求用于使所述第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书;

接收所述第一证书授权中心返回的所述跨链访问证书,其中,所述第一证书授权中心在生成所述跨链访问证书之后,将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中;

将所述跨链访问证书发送给所述第二证书授权中心,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链。

2.根据权利要求1所述的区块链系统的认证管理方法,其特征在于,所述认证管理方法还包括:若确定需要停止所述第二业务的业务节点对所述第一业务所对应区块链的访问,则向所述第一证书授权中心发送删除请求,所述删除请求用于使所述第一证书授权中心将所述跨链认证信息从所述第一业务所对应区块链的智能合约中删除。

3.根据权利要求1所述的区块链系统的认证管理方法,其特征在于,向第一业务对应的第一证书授权中心发送证书签发请求,包括:若确定允许第二业务的业务节点访问第一业务对应的区块链,则根据所述第二业务的信息向第一业务对应的第一证书授权中心发送所述证书签发请求。

4.根据权利要求1至3中任一项所述的认证管理方法,其特征在于,

所述区块链系统包括一个所述记账节点网络,一个所述记账节点网络中维护有所述多个区块链;或者所述区块链系统包括多个所述记账节点网络,每个所述记账节点网络中维护有一个所述区块链。

5.根据权利要求1至3中任一项所述的认证管理方法,其特征在于,所述跨链认证信息中还包括以下任一或多个的组合:所述第二业务的业务节点对所述第一业务所对应区块链的跨链访问有效期、所述第二业务的业务节点对所述第一业务所对应区块链的跨链访问权限。

6.一种区块链系统的认证管理方法,其特征在于,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理方法由第二业务中的目标业务节点执行,所述认证管理方法包括:获取所述第二业务对应的第二证书授权中心发送的跨链访问证书,所述跨链访问证书是注册管理中心向第一业务对应的第一证书授权中心发送证书签发请求,由所述第一证书授权中心签发的;

生成跨链访问请求,所述跨链访问请求中包含有所述跨链访问证书;

将所述跨链访问请求发送至所述第一业务对应的区块链,以对所述第一业务对应的区块链进行访问,所述第一业务所对应区块链的智能合约中包含有跨链认证信息,所述跨链认证信息中包含有所述跨链访问证书。

7.根据权利要求6所述的认证管理方法,其特征在于,所述认证管理方法还包括:

生成针对所述第二业务所对应区块链的访问请求,所述访问请求中包含有所述第二业务对应的第二证书授权中心向所述目标业务节点签发的证书;

将所述访问请求发送至所述第二业务对应的区块链,以对所述第二业务对应的区块链进行访问。

8.根据权利要求6或7所述的认证管理方法,其特征在于,各个业务中的业务节点将各个业务对应的证书授权中心作为信任锚,且各个业务对应的证书授权中心不相同。

9.一种区块链系统的认证管理方法,其特征在于,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理方法由第一业务对应的第一证书授权中心执行,所述认证管理方法包括:接收注册管理中心发送的证书签发请求,所述证书签发请求用于向第二业务对应的第二证书授权中心签发跨链访问证书,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链;

根据所述第二业务的信息生成所述跨链访问证书;

将所述跨链访问证书通过所述注册管理中心发送给所述第二证书授权中心,并将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中。

10.根据权利要求9所述的认证管理方法,其特征在于,将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中之后,所述认证管理方法还包括:接收所述注册管理中心发送的删除请求,所述删除请求是所述注册管理中心在确定需要停止所述第二业务的业务节点访问所述第一业务所对应区块链时发送的;

根据所述删除请求,将所述跨链认证信息从所述第一业务所对应区块链的智能合约中删除。

11.一种区块链系统的认证管理装置,其特征在于,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在用于对所述业务节点进行注册管理的注册管理中心内,所述认证管理装置包括:第一发送单元,配置为向第一业务对应的第一证书授权中心发送证书签发请求,所述证书签发请求用于使所述第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书;

第一接收单元,配置为接收所述第一证书授权中心返回的所述跨链访问证书,其中,所述第一证书授权中心在生成所述跨链访问证书之后,将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中;

第二发送单元,配置为将所述跨链访问证书发送给所述第二证书授权中心,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链。

12.一种区块链系统的认证管理装置,其特征在于,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在第二业务中的目标业务节点内,所述认证管理装置包括:获取单元,配置为获取所述第二业务对应的第二证书授权中心发送的跨链访问证书,所述跨链访问证书是注册管理中心向第一业务对应的第一证书授权中心发送证书签发请求,由所述第一证书授权中心签发的;

第一生成单元,配置为生成跨链访问请求,所述跨链访问请求中包含有所述跨链访问证书;

第三发送单元,配置为将所述跨链访问请求发送至所述第一业务对应的区块链,以对所述第一业务对应的区块链进行访问,所述第二业务所对应区块链的智能合约中包含有跨链认证信息,所述跨链认证信息中包含有所述跨链访问证书。

13.一种区块链系统的认证管理装置,其特征在于,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在第一业务对应的第一证书授权中心内,所述认证管理装置包括:第二接收单元,配置为接收注册管理中心发送的证书签发请求,所述证书签发请求用于向第二业务对应的第二证书授权中心签发跨链访问证书,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链;

第二生成单元,配置为根据所述第二业务的信息生成所述跨链访问证书;

第四发送单元,配置为将所述跨链访问证书通过所述注册管理中心发送给所述第二证书授权中心,并将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中。

14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的区块链系统的认证管理方法,或实现如权利要求6至8中任一项所述的区块链系统的认证管理方法,或实现如权利要求9至10中任一项所述的区块链系统的认证管理方法。

15.一种电子设备,其特征在于,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至5中任一项所述的区块链系统的认证管理方法,或实现如权利要求6至8中任一项所述的区块链系统的认证管理方法,或实现如权利要求9至10中任一项所述的区块链系统的认证管理方法。

说明书 :

区块链系统的认证管理方法、装置、介质及电子设备

技术领域

[0001] 本申请涉及计算机及通信技术领域,具体而言,涉及一种区块链系统的认证管理方法、装置、介质及电子设备。

背景技术

[0002] 在区块链系统的一种应用场景中,区块链网络之外的业务可能需要对区块链网络中的数据进行访问,并且区块链网络中还可能存在针对不同业务的多条区块链,在这种情况下,如何在保证数据安全性的前提下,实现业务节点对不同区块链的访问成为亟待解决的技术问题。

发明内容

[0003] 本申请的实施例提供了一种区块链系统的认证管理方法、装置、介质及电子设备,进而至少在一定程度上可以在保证安全性的前提下,满足跨链访问的业务需求。
[0004] 本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
[0005] 根据本申请实施例的一个方面,提供了一种区块链系统的认证管理方法,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理方法由用于对所述业务节点进行注册管理的注册管理中心执行,所述认证管理方法包括:向第一业务对应的第一证书授权中心发送证书签发请求,所述证书签发请求用于使所述第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书;接收所述第一证书授权中心返回的所述跨链访问证书,其中,所述第一证书授权中心在生成所述跨链访问证书之后,将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中;将所述跨链访问证书发送给所述第二证书授权中心,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链。
[0006] 根据本申请实施例的一个方面,提供了一种区块链系统的认证管理方法,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理方法由第二业务中的目标业务节点执行,所述认证管理方法包括:获取所述第二业务对应的第二证书授权中心发送的跨链访问证书,所述跨链访问证书是注册管理中心向第一业务对应的第一证书授权中心发送证书签发请求,由所述第一证书授权中心签发的;生成跨链访问请求,所述跨链访问请求中包含有所述跨链访问证书;将所述跨链访问请求发送至所述第一业务对应的区块链,以对所述第一业务对应的区块链进行访问,所述第一业务所对应区块链的智能合约中包含有跨链认证信息,所述跨链认证信息中包含有所述跨链访问证书。
[0007] 根据本申请实施例的一个方面,提供了一种区块链系统的认证管理方法,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理方法由第一业务对应的第一证书授权中心执行,所述认证管理方法包括:接收注册管理中心发送的证书签发请求,所述证书签发请求用于向第二业务对应的第二证书授权中心签发跨链访问证书,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链;根据所述第二业务的信息生成所述跨链访问证书;将所述跨链访问证书通过所述注册管理中心发送给所述第二证书授权中心,并将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中。
[0008] 根据本申请实施例的一个方面,提供了一种区块链系统的认证管理装置,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在用于对所述业务节点进行注册管理的注册管理中心内,所述认证管理装置包括:第一发送单元,配置为向第一业务对应的第一证书授权中心发送证书签发请求,所述证书签发请求用于使所述第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书;第一接收单元,配置为接收所述第一证书授权中心返回的所述跨链访问证书,其中,所述第一证书授权中心在生成所述跨链访问证书之后,将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中;第二发送单元,配置为将所述跨链访问证书发送给所述第二证书授权中心,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链。
[0009] 在本申请的一些实施例中,基于前述方案,所述第一发送单元还配置为:若确定需要停止所述第二业务的业务节点对所述第一业务所对应区块链的访问,则向所述第一证书授权中心发送删除请求,所述删除请求用于使所述第一证书授权中心将所述跨链认证信息从所述第一业务所对应区块链的智能合约中删除。
[0010] 在本申请的一些实施例中,基于前述方案,所述第一发送单元配置为:若确定允许第二业务的业务节点访问第一业务对应的区块链,则根据所述第二业务的信息向第一业务对应的第一证书授权中心发送所述证书签发请求。
[0011] 在本申请的一些实施例中,基于前述方案,所述区块链系统包括一个所述记账节点网络,一个所述记账节点网络中维护有所述多个区块链;或者所述区块链系统包括多个所述记账节点网络,每个所述记账节点网络中维护有一个所述区块链。
[0012] 在本申请的一些实施例中,基于前述方案,所述跨链认证信息中还包括以下任一或多个的组合:所述第二业务的业务节点对所述第一业务所对应区块链的跨链访问有效期、所述第二业务的业务节点对所述第一业务所对应区块链的跨链访问权限。
[0013] 根据本申请实施例的一个方面,提供了一种区块链系统的认证管理装置,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在第二业务中的目标业务节点内,所述认证管理装置包括:获取单元,配置为获取所述第二业务对应的第二证书授权中心发送的跨链访问证书,所述跨链访问证书是注册管理中心向第一业务对应的第一证书授权中心发送证书签发请求,由所述第一证书授权中心签发的;第一生成单元,配置为生成跨链访问请求,所述跨链访问请求中包含有所述跨链访问证书;第三发送单元,配置为将所述跨链访问请求发送至所述第一业务对应的区块链,以对所述第一业务对应的区块链进行访问,所述第一业务所对应区块链的智能合约中包含有跨链认证信息,所述跨链认证信息中包含有所述跨链访问证书。
[0014] 在本申请的一些实施例中,基于前述方案,所述第一生成单元还配置为:生成针对所述第二业务所对应区块链的访问请求,所述访问请求中包含有所述第二业务对应的第二证书授权中心向所述目标业务节点签发的证书;所述第三发送单元还配置为:将所述访问请求发送至所述第二业务对应的区块链,以对所述第二业务对应的区块链进行访问。
[0015] 在本申请的一些实施例中,基于前述方案,各个业务中的业务节点将各个业务对应的证书授权中心作为信任锚,且各个业务对应的证书授权中心不相同。
[0016] 根据本申请实施例的一个方面,提供了一种区块链系统的认证管理装置,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在第一业务对应的第一证书授权中心内,所述认证管理装置包括:第二接收单元,配置为接收注册管理中心发送的证书签发请求,所述证书签发请求用于向第二业务对应的第二证书授权中心签发跨链访问证书,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链;第二生成单元,配置为根据所述第二业务的信息生成所述跨链访问证书;第四发送单元,配置为将所述跨链访问证书通过所述注册管理中心发送给所述第二证书授权中心,并将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中。
[0017] 在本申请的一些实施例中,基于前述方案,所述第二接收单元还配置为:接收所述注册管理中心发送的删除请求,所述删除请求是所述注册管理中心在确定需要停止所述第二业务的业务节点访问所述第一业务所对应区块链时发送的,根据所述删除请求,将所述跨链认证信息从所述第一业务所对应区块链的智能合约中删除。
[0018] 根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所述的区块链系统的认证管理方法。
[0019] 根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中所述的区块链系统的认证管理方法。
[0020] 根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的区块链系统的认证管理方法。
[0021] 在本申请的一些实施例所提供的技术方案中,通过将区块链系统分为记账节点网络和业务节点网络,使得能够将区块链系统的记账过程与业务处理过程进行分离,进而既能够通过去中心化的记账节点子网络来维护全量的数据区块,保证了数据区块的安全性,同时也能够通过业务节点网络来实现灵活的数据访问。通过由记账节点网络维护多个区块链,每个区块链对应于一种类型的业务,使得可以实现不同业务数据的分离,满足了数据安全的需要,并且可以实现对不同区块链的独立控制。
[0022] 同时,注册管理中心向第一业务对应的第一证书授权中心发送证书签发请求,该证书签发请求用于使第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书,第一证书授权中心在生成跨链访问证书之后,将包含跨链访问证书的跨链认证信息添加至第一业务所对应区块链的智能合约中,同时注册管理中心接收第一证书授权中心返回的跨链访问证书,并将跨链访问证书发送给第二证书授权中心,使得第二业务的业务节点可以基于该跨链访问证书访问第一业务对应的区块链。可见,本申请实施例的技术方案能够实现业务节点的跨链访问,在保证安全性的前提下,满足了跨链访问的业务需求。
[0023] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

[0024] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0025] 图1示出了区块链网络的结构示意图。
[0026] 图2示出了区块链中各区块的连接关系示意图。
[0027] 图3示出了生成一个区块的过程示意图。
[0028] 图4至图6示出了本申请实施例所应用的区块链系统的体系构架图。
[0029] 图7示出了根据本申请的一个实施例的电子发票系统的示意图。
[0030] 图8示出了根据本申请的一个实施例的分链结构示意图。
[0031] 图9示出了根据本申请的一个实施例的分链结构示意图。
[0032] 图10示出了根据本申请的一个实施例的区块链系统的认证管理方法的流程图。
[0033] 图11示出了根据本申请的一个实施例的区块链系统的认证管理方法的流程图。
[0034] 图12示出了根据本申请的一个实施例的区块链系统的认证管理方法的流程图。
[0035] 图13示出了根据本申请的一个实施例的电子发票系统的CA结构示意图。
[0036] 图14示出了根据本申请的一个实施例的业务节点的证书链示意图。
[0037] 图15示出了根据本申请的一个实施例的区块链系统的认证管理装置的框图。
[0038] 图16示出了根据本申请的一个实施例的区块链系统的认证管理装置的框图。
[0039] 图17示出了根据本申请的一个实施例的区块链系统的认证管理装置的框图。
[0040] 图18示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。

具体实施方式

[0041] 现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
[0042] 此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本申请的各方面。
[0043] 附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
[0044] 附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
[0045] 需要说明的是:在本文中提及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0046] 区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块(即区块),每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
[0047] 区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
[0048] 平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
[0049] 参见图1所示的区块链网络,该区块链网络中可以包括多个节点101,多个节点101可以是形成区块链网络的各个客户端。每个节点101在进行正常工作可以接收到输入信息,并基于接收到的输入信息维护该区块链网络内的共享数据。为了保证区块链网络内的信息互通,区块链网络中的每个节点之间可以存在信息连接,节点之间可以通过上述信息连接进行信息传输。例如,当区块链网络中的任意节点接收到输入信息时,区块链网络中的其它节点便根据共识算法获取该输入信息,将该输入信息作为共享数据进行存储,使得区块链网络中全部节点上存储的数据均一致。
[0050] 对于区块链网络中的每个节点,均具有与其对应的节点标识,而且区块链网络中的每个节点均可以存储有其它节点的节点标识,以便后续根据其它节点的节点标识,将生成的区块广播至区块链网络中的其它节点。每个节点中可维护一个节点标识列表,将节点名称和节点标识对应存储至该节点标识列表中。其中,节点标识可为IP(Internet Protocol,网络之间互联的协议)地址以及其他任一种能够用于标识该节点的信息。
[0051] 区块链网络中的每个节点均存储一条相同的区块链。区块链由多个区块组成,参见图2所示,区块链由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有输入信息特征值、版本号、时间戳和难度值等,区块主体中存储有输入信息;创始块的下一区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的输入信息特征值、父区块的区块头特征值、版本号、时间戳和难度值等,并以此类推,使得区块链中每个区块中存储的区块数据均与父区块中存储的区块数据存在关联,保证了区块中输入信息的安全性。
[0052] 在生成区块链中的各个区块时,参见图3所示,区块链所在的节点在接收到输入信息时,对输入信息进行校验,完成校验后,将输入信息存储至内存池中,并更新其用于记录输入信息的哈希树;之后,将更新时间戳更新为接收到输入信息的时间,并尝试不同的随机数,多次进行特征值计算,使得计算得到的特征值可以满足下述公式:
[0053] 其中,SHA256为计算特征值所用的特征值算法;version(版本号)为区块链中相关区块协议的版本信息;prev_hash为当前区块的父区块的区块头特征值;merkle_root为输入信息的特征值;ntime为更新时间戳的更新时间;nbits为当前难度,在一段时间内为定值,并在超出固定时间段后再次进行确定;x为随机数;TARGET为特征值阈值,该特征值阈值可以根据nbits确定得到。
[0054] 这样,当计算得到满足上述公式的随机数时,便可将信息对应存储,生成区块头和区块主体,得到当前区块。随后,区块链所在节点根据数据共享系统中其它节点的节点标识,将新生成的区块分别发送给其所在的数据共享系统中的其它节点,由其它节点对新生成的区块进行校验,并在完成校验后将新生成的区块添加至其存储的区块链中。
[0055] 区块链网络中各个节点可以是服务器,也可以是终端设备。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算(Cloud Computing)、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。各个节点之间可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
[0056] 前述的云计算是指IT基础设施的交付和使用模式,具体指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算(Grid Computing )、分布式计算(Distributed Computing)、并行计算(Parallel Computing)、效用计算(Utility Computing)、网络存储(Network  Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)等传统计算机和网络技术发展融合的产物。随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
[0057] 基于区块链技术,本申请的实施例提出了一种区块链系统的体系架构。如图4所示,该区块链系统包括记账节点网络2和业务节点网络1。记账节点网络2包括对数据区块进行共识并将数据区块记录到区块链上的记账节点21。业务节点网络1包括业务节点11,业务节点11可以对记账节点记录到区块链上的数据区块进行验证,或者可以向记账节点请求相应的交易数据。
[0058] 具体的,业务节点11对记账节点记录到区块链上的数据区块进行验证可以包括以下步骤:记账节点网络中的一个记账节点21利用特定于该记账节点的密钥,基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名;记账节点21将交易信息和生成的签名加入数据区块,添加到区块链上;记账节点21将该签名发往业务节点网络中的业务节点,业务节点根据特定于该记账节点的密钥对该签名进行签名验证,以实现业务节点11对记账节点记录到区块链上的数据区块进行验证。记账节点网络中的记账节点负责向区块链记录数据区块,业务节点网络中的业务节点负责见证记账节点记录的结果。具体地,记账节点基于要添加到区块链上的一个数据区块中所要包括的交易信息,生成签名,然后将交易信息和生成的签名加入数据区块,进行上链。并将该签名发往业务节点网络中的业务节点,使业务节点根据特定于该记账节点的密钥对该签名进行签名验证。业务节点网络中的业务节点通过验证区块上记账节点签名可以对全网的交易数据进行见证。记账节点网络虽然拥有垄断的记账权,但是因为数据区块有了代表记账者身份的数字签名,所以一切行为都是公开可追溯的。如果记账节点集体作恶,那么业务节点网络中的全部节点都将保留有具体记账节点作恶的证据。相比传统中心化系统和私有链,本申请实施例中系统的运转是更加透明的;而相比传统的去中心化方案,本方案是更可控也更便于可监管的。
[0059] 在本申请的一个实施例中,记账节点网络2和业务节点网络1之间可以通过代理节点12连接,代理节点12可以是业务节点网络1的一个业务节点,其负责将记账节点21要向业务节点11传递的信息传递给业务节点11。业务节点11是产生各种需上链的交易数据的交易方的终端,也可以是从记账节点网络2中查询交易数据的终端。业务节点11产生的交易数据在通过代理节点12传输至记账节点21,然后经过共识后记录到区块链上,有利于交易数据的统一处理和监管,而业务节点11也可以通过记账节点21经由代理节点12发送来的信息进行交易数据上链的监督和见证,这在某些既需要统一监管、但又怕监管的节点集体作弊因而需要监督的场景中有十分重要的意义。
[0060] 在图1所示的结构中,业务节点网络1采用P2P(Peer to Peer,对等网络)网络模式。P2P网络是一种在对等者之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式,即“点对点”或者“端对端”网络。其可以定义为:网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源通过网络提供服务和内容,能被其它对等节点直接访问而无需经过中间实体。在此网络中的参与者既是资源、服务和内容的提供者,又是资源、服务和内容的获取者。因此,在业务节点网络1中,当代理节点12接收到从记账节点21传递过来的消息后,向周围的业务节点11进行传播,周围的业务节点11接收到该消息,再向其周围的业务节点11传递,达到了该消息在业务节点网络1的每个业务节点11之间的传播。
[0061] 图5示出了本申请实施例所应用的另一种区块链系统的体系构架。该体系构架与图4中所示的体系构架不同之处在于:在业务节点网络1中没有采取P2P网络模式,而是采取广播网络的模式。具体地,代理节点12在接收到从记账节点21传递过来的消息后,将该消息广播到业务节点网络1中的其它业务节点11。这样,也实现了该消息在业务节点网络1的每个业务节点11之间的传播。
[0062] 图6示出了本发明实施例所应用的另一种区块链系统的体系构架。该体系构架与图4所示的体系构架不同之处在于:其记账节点网络2分成了多个分支记账节点网络。每个分支记账节点网络可以负责某一种类型的交易信息的记录。例如,某一企业可能具有供应链金融业务,可能需要将供销过程中产生的合同信息、货款赊欠等信息记录到区块链上,同时该企业还要开具发票,也要把开票信息、发票报销信息等记录到区块链上。这时,为了有利于记账节点被同一部门监管的需要,可能记录供应链金融业务交易的记账节点和记录发票流转过程中的交易的记账节点要分属于不同部门。例如,记录供应链金融业务交易的记账节点是银行设置的记账终端,而记录发票流转过程中的交易的记账节点是国税局设置的记账终端。而供应链金融业务交易和记录发票流转过程中的交易可能也最终会记录在不同分支的记账节点网络上。这时,代理节点12要根据从业务节点11发来的交易信息中携带的交易类型,将该交易信息发送到与该交易类型对应的分支记账节点网络中。
[0063] 需要说明的是,在图4至图6所示的区块链系统的体系构架中,代理节点12位于业务节点网络1中,在本申请的其它实施例中,代理节点12也可以位于共识节点网络2中,或者独立于业务节点网络1和共识节点网络2。
[0064] 图4至6所示的区块链系统的体系架构可以应用在电子发票的应用场景中,以下详细进行阐述:
[0065] 在本申请的一个实施例中,记账节点网络中的记账节点可以是各个税务总局终端,比如由部署在多个地区的税务总局终端分别作为一个记账节点来构成记账节点网络。业务节点网络中的各个业务节点可以是地方税局终端、开票代理服务商终端、开票企业终端、个人用户终端等。
[0066] 具体而言,在图7所示的电子发票系统中,可以包括业务层、路由代理层和共识网络(记账网络)层。其中,业务层即为业务节点网络,其中包含了各个业务节点,比如可以是处于税务专网中的地方税局;处于公有云中的开票服务商、报销服务商、企业等;处于私有云中的支付服务商、流转服务商、企业等。
[0067] 路由代理层中包含了代理节点,代理节点提供了路由服务、证书缓存和认证服务、P2P服务等功能,路由代理层起到对业务层和共识网络层的隔离作用,具体参照前述实施例的技术方案。可选地,路由代理层中的代理节点可以处于税务专网中。共识网络(记账网络)层即为记账节点网络,其中包含了多个区块链,当然在本申请的其它实施例中,共识网络(记账网络)层中也可以包含一个区块链。
[0068] 在本申请的一个实施例中,电子发票系统中的共识网络(记账网络)中可以包含多个区块链,这多个区块链可以按照时间序列进行分链,比如图8所示,同一个业务(即发票业务)按照时间进行分链,其中业务参与方一致,并且两个区块链采用相同的CA(Certificate Authority,认证授权)中心作为发票业务体系的认证和授权方。当然,在本申请的一个实施例中,如图9所示,可以按照不同的业务进行分链,比如税务征信业务对应一条区块链、发票业务对应一条区块链,并且业务之间还可以跨链交互,比如发票业务的相关节点可以访问税务征信业务对应的区块链。在图9所示的示例中,两个区块链采用不同的CA中心作为认证和授权方。
[0069] 在本申请的一个实施例中,对于不同业务分别对应不同区块链的场景,为了实现业务之间的跨链访问,本申请实施例中提出了交叉认证授权的方案,以下对本申请实施例的技术方案的实现细节进行详细阐述:
[0070] 图10示出了根据本申请的一个实施例的区块链系统的认证管理方法的流程图,该区块链系统包括记账节点网络和业务节点网络,业务节点网络中包含有业务节点,记账节点网络中包含有记账节点,其中,如图6所示,记账节点网络中维护有多个区块链,并且每个区块链对应于一种类型的业务。当然,区块链系统也可以采用如图4和图5所示的结构,但是需要包含有多个记账节点网络,这样每个记账节点网络维护一个区块链,每个区块链也可以对应于一种类型的业务。
[0071] 图10所示的认证管理方法可以由用于对业务节点进行注册管理的注册管理中心来执行。具体地,参照图10所示,该认证管理方法至少包括步骤S1010至步骤S1030,详细介绍如下:
[0072] 在步骤S1010中,向第一业务对应的第一证书授权中心发送证书签发请求,该证书签发请求用于使第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书。
[0073] 在本申请的一个实施例中,可以在确定允许第二业务的业务节点访问第一业务对应的区块链时,根据第二业务的信息向第一业务对应的第一证书授权中心发送证书签发请求。其中,第一业务和第二业务比如可以是发票业务、税银业务、信贷业务等业务中的某个业务。不同业务对应的证书授权中心是不相同的,比如发票业务的证书授权中心和税银业务的证书授权中心是不相同的,但是这两个证书授权中心都可以将税务总局作为信任锚。
[0074] 在步骤S1020中,接收第一证书授权中心返回的跨链访问证书,其中,第一证书授权中心在生成跨链访问证书之后,将包含跨链访问证书的跨链认证信息添加至第一业务所对应区块链的智能合约中。
[0075] 在本申请的一个实施例中,第一证书授权中心在生成跨链访问证书之后,将包含跨链访问证书的跨链认证信息添加至第一业务所对应区块链的智能合约中使得能够基于该智能合约实现对第二业务的业务节点进行访问控制。可选地,跨链认证信息中还可以包括第二业务的业务节点对第一业务所对应区块链的跨链访问有效期、第二业务的业务节点对第一业务所对应区块链的跨链访问权限中的一个或全部。
[0076] 继续参照图10所示,在步骤S1030中,将跨链访问证书发送给第二证书授权中心,该跨链访问证书用于使第二业务的业务节点访问第一业务对应的区块链。
[0077] 在本申请的一个实施例中,如果注册管理中心确定需要停止第二业务的业务节点对第一业务所对应区块链的访问,则可以向第一证书授权中心发送删除请求,该删除请求用于使第一证书授权中心将跨链认证信息从第一业务所对应区块链的智能合约中删除。
[0078] 图10是从注册管理中心的角度对本申请实施例的技术方案进行阐述,以下结合图11从业务节点的角度来对本申请实施例的技术方案进行进一步说明:
[0079] 图11示出了根据本申请的一个实施例的区块链系统的认证管理方法的流程图,类似于前述实施例,该区块链系统包括记账节点网络和业务节点网络,业务节点网络中包含有业务节点,记账节点网络中包含有记账节点,其中,如图6所示,记账节点网络中维护有多个区块链,并且每个区块链对应于一种类型的业务。当然,区块链系统也可以采用如图4和图5所示的结构,但是需要包含有多个记账节点网络,这样每个记账节点网络维护一个区块链,每个区块链也可以对应于一种类型的业务。
[0080] 图11所示的认证管理方法可以由第二业务中的目标业务节点(即需要访问其它业务所对应区块链的业务节点)来执行。具体地,参照图11所示,该认证管理方法至少包括步骤S1110至步骤S1130,详细介绍如下:
[0081] 在步骤S1110中,获取第二业务对应的第二证书授权中心发送的跨链访问证书,该跨链访问证书是注册管理中心向第一业务对应的第一证书授权中心发送证书签发请求,由第一证书授权中心签发的。
[0082] 在本申请的一个实施例中,第二证书授权中心发送的跨链访问证书的来源可以参照图10所示实施例。
[0083] 在步骤S1120中,生成跨链访问请求,该跨链访问请求中包含有跨链访问证书。
[0084] 在步骤S1130中,将跨链访问请求发送至第一业务对应的区块链,以对第一业务对应的区块链进行访问,该第一业务所对应区块链的智能合约中包含有跨链认证信息,该跨链认证信息中包含有跨链访问证书。
[0085] 在本申请的一个实施例中,跨链认证信息中还可以包括第二业务的业务节点对第一业务所对应区块链的跨链访问有效期、第二业务的业务节点对第一业务所对应区块链的跨链访问权限中的一个或全部。
[0086] 在本申请的一个实施例中,如果第二业务中的目标业务节点需要对第二业务对应的区块链进行访问,则可以生成针对第二业务所对应区块链的访问请求,该访问请求中包含有第二业务对应的第二证书授权中心向目标业务节点签发的证书,然后将访问请求发送至第二业务对应的区块链,以对第二业务对应的区块链进行访问。可选地,第二业务中的目标业务节点可以是第二业务中的任意一个业务节点。
[0087] 图10和图11分别从注册管理中心的角度和业务节点的角度对本申请实施例的技术方案进行阐述,以下结合图12从证书授权中心的角度对本申请实施例的技术方案进行进一步说明:
[0088] 图12示出了根据本申请的一个实施例的区块链系统的认证管理方法的流程图,类似于前述实施例,该区块链系统包括记账节点网络和业务节点网络,业务节点网络中包含有业务节点,记账节点网络中包含有记账节点,其中,如图6所示,记账节点网络中维护有多个区块链,并且每个区块链对应于一种类型的业务。当然,区块链系统也可以采用如图4和图5所示的结构,但是需要包含有多个记账节点网络,这样每个记账节点网络维护一个区块链,每个区块链也可以对应于一种类型的业务。
[0089] 图12所示的认证管理方法可以由第一业务对应的第一证书授权中心(即被访问的业务所对应的证书授权中心)来执行。具体地,参照图12所示,该认证管理方法至少包括步骤S1210至步骤S1230,详细介绍如下:
[0090] 在步骤S1210,接收注册管理中心发送的证书签发请求,该证书签发请求用于向第二业务对应的第二证书授权中心签发跨链访问证书,该跨链访问证书用于使第二业务的业务节点访问第一业务对应的区块链。
[0091] 在本申请的一个实施例中,注册管理中心可以在确定允许第二业务的业务节点访问第一业务对应的区块链时,根据第二业务的信息向第一业务对应的第一证书授权中心发送证书签发请求。
[0092] 在步骤S1220,根据第二业务的信息生成跨链访问证书。
[0093] 在本申请的一个实施例中,第二业务的信息可以包括第二业务对应的第二证书授权中心的信息、第二业务中的业务节点的信息等。
[0094] 在步骤S1230,将跨链访问证书通过注册管理中心发送给第二证书授权中心,并将包含跨链访问证书的跨链认证信息添加至第一业务所对应区块链的智能合约中。
[0095] 在本申请的一个实施例中,通过将包含跨链访问证书的跨链认证信息添加至第一业务所对应区块链的智能合约中,使得能够基于该智能合约实现对第二业务的业务节点进行访问控制。可选地,跨链认证信息中还可以包括第二业务的业务节点对第一业务所对应区块链的跨链访问有效期、第二业务的业务节点对第一业务所对应区块链的跨链访问权限中的一个或全部。
[0096] 在本申请的一个实施例中,在将包含跨链访问证书的跨链认证信息添加至第一业务所对应区块链的智能合约中之后,如果接收到注册管理中心发送的删除请求,该删除请求是注册管理中心在确定需要停止第二业务的业务节点访问第一业务所对应区块链时发送的,则根据该删除请求,将跨链认证信息从第一业务所对应区块链的智能合约中删除。
[0097] 以上实施例分别从注册管理中心的角度、业务节点和证书授权中心的角度对本申请实施例的技术方案进行阐述,以下结合图13和图14对本申请实施例的技术方案的实现细节进行进一步说明:
[0098] 在本申请的一个实施例中,不同的业务(比如税务信息共享、税务审核、进出口、电子发票、财政电子票据等业务)存放于不同的区块链中,这种方式的好处在于:业务数据分离,避免业务数据在物理设备上混合存储,减少数据泄露的风险,满足数据安全的要求;有效控制单链数据的大小,避免在区块链去中心化的结构下存储不断扩展,对于单链数据可以进行及时归档;不同的子链设置不同的准入规则,让不同的业务参与方只能访问对应业务子链的数据,降低敏感数据的可见性,进一步加强数据安全;单个子链的独立CA可以独立设置有效期,证书回收严格程度,证书扩展用途限制,是否使用双证书等,有利于安全权限的精确控制;对于单个子链的CA进行撤销(或者泄露更换),对其它业务的影响非常小,同时数据泄露的风险也变小了。
[0099] 在不同的业务存放于不同区块链的基础上,每个业务可以设置独立的CA。具体如图13所示,税务总局的根CA是最终信任锚;业务子链CA对应于不同的业务(比如发票、税银、信贷、海关、审计、财政等)。各个业务节点不直接信任税务总局的根CA,而是把各自业务的子CA作为信任锚。这样做的好处是各个业务的信息体系简单无公共信任依赖,保证证书不可混用,且单个体系下的根证书更换简单。税务总局RA(Registration Authority,证书注册中心)和各地区的RA(如图13中所示的深圳RA、上海RA和北京RA)负责审核注册,并根据申请人的身份向对应业务申请证书签发。业务的二级子CA(如图13中所示的子CA1-1、CA1-2)负责业务内部的不同权限签发管理。比如用于加密的二级子CA签发的证书仅可用来做加密,用于通信的二级子CA签发的证书仅可用来做TLS(Transport Layer Security,传输层安全性协议)通信、HTTPS安全通讯等。
[0100] 在本申请的一个实施例中,为了实现跨链访问,每条区块链上可以部署一个跨链认证合约,表示当前允许哪些其它业务跨链访问,或者允许哪些其它业务的CA访问本链。跨链认证合约中的数据可以包括:本链的信任根CA(即业务一级子CA)、本链当前允许被访问的其它一级子CA。假设业务2要访问业务1所对应区块链上的数据,则通过税务总局RA批准后,可以由CA1向CA2(这里假设业务1一级子CA为CA1,业务2一级CA为CA2)签发一个跨链访问证书,并且可以由CA1在业务1所对应区块链的跨链认证合约中填入以下的跨链认证信息:CA1设置为允许CA2访问、有效期2年,并且可以写入跨链访问证书。
[0101] 在本申请的一个实施例中,CA1可以根据业务1所对应区块链的合约数据作为凭证,签发对于CA2的跨链访问证书。这个过程可以称之为交叉认证,即使一个公钥基础结构(Public Key Infrastructure,简称PKI)中的实体能够信任另一个PKI中的实体,通常这两个PKI中的CA之间的交叉证书协议支持这种相互信任关系,该协议确定了各方的责任和义务,两个CA之间的相互信任关系要求每个CA向另一个CA颁发证书以在两个方向上建立关系,当然也可以仅在一个方向上建立关系。
[0102] 具体地,CA2原来的证书为税务总局RA签发的CA2证书,那么业务2所对应区块链中的一个加密业务节点的证书链为:CA2公钥证书 – CA2-1公钥证书 – 业务节点公钥证书X。在业务2内部,节点内置的信任锚为CA2公钥证书,业务中使用的部分证书链是:CA2-1公钥证书 – 业务节点公钥证书X。
[0103] 当CA1签发了对CA2的跨链访问证书之后,则原来的证书X得到了新的完整证书链为:CA1公钥证书 – CA2公钥证书’ – CA2-1公钥证书 – 业务节点公钥证书X。当业务2中的业务节点想要访问业务1所对应的区块链时,用其原来的证书链再加上CA1针对CA2签发的跨链访问证书得到向外提供的证书链:CA2公钥证书’ – CA2-1公钥证书 – 业务节点公钥证书X。此时,业务1中的节点在遇到业务2中的节点提供的相关证书时,就可以链接到信任锚CA1。比如图14所示,左边为业务2中的节点原始的证书链,当进行跨链访问时,可以采用图14右边所示的证书链,即:CA2公钥证书’(即CA1签发的跨链访问证书) – CA2-1公钥证书 – 业务节点公钥证书X,并且该证书链可以链接到信任锚CA1。
[0104] 需要说明的是,本申请上述实施例中是以两个业务为例对本申请中的跨链访问方案进行了阐述,在本申请的其它实施例中,可以据此实现多个业务之间的网状交叉认证与访问,并且在业务结束或者出现变化时,也可以从合约中将跨链认证信息去掉,撤销跨链访问证书。同时,也可以根据智能合约的动态性,增加更多的配置限制项,例如跨链访问有效期,跨链访问权限等。
[0105] 本申请上述实施例的技术方案能够实现业务节点的跨链访问,在保证安全性的前提下,满足了跨链访问的业务需求。
[0106] 以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的区块链系统的认证管理方法。对于本申请装置实施例中未披露的细节,请参照本申请上述的区块链系统的认证管理方法的实施例。
[0107] 图15示出了根据本申请的一个实施例的区块链系统的认证管理装置的框图,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在用于对所述业务节点进行注册管理的注册管理中心内。
[0108] 参照图15所示,根据本申请的一个实施例的认证管理装置1500,包括:第一发送单元1502、第一接收单元1504和第二发送单元1506。
[0109] 其中,第一发送单元1502配置为向第一业务对应的第一证书授权中心发送证书签发请求,所述证书签发请求用于使所述第一证书授权中心向第二业务对应的第二证书授权中心签发跨链访问证书;第一接收单元1504配置为接收所述第一证书授权中心返回的所述跨链访问证书,其中,所述第一证书授权中心在生成所述跨链访问证书之后,将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中;第二发送单元1506配置为将所述跨链访问证书发送给所述第二证书授权中心,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链。
[0110] 在本申请的一些实施例中,基于前述方案,第一发送单元1502还配置为:若确定需要停止所述第二业务的业务节点对所述第一业务所对应区块链的访问,则向所述第一证书授权中心发送删除请求,所述删除请求用于使所述第一证书授权中心将所述跨链认证信息从所述第一业务所对应区块链的智能合约中删除。
[0111] 在本申请的一些实施例中,基于前述方案,第一发送单元1502配置为:若确定允许第二业务的业务节点访问第一业务对应的区块链,则根据所述第二业务的信息向第一业务对应的第一证书授权中心发送所述证书签发请求。
[0112] 在本申请的一些实施例中,基于前述方案,所述区块链系统包括一个所述记账节点网络,一个所述记账节点网络中维护有所述多个区块链;或者所述区块链系统包括多个所述记账节点网络,每个所述记账节点网络中维护有一个所述区块链。
[0113] 在本申请的一些实施例中,基于前述方案,所述跨链认证信息中还包括以下任一或多个的组合:所述第二业务的业务节点对所述第一业务所对应区块链的跨链访问有效期、所述第二业务的业务节点对所述第一业务所对应区块链的跨链访问权限。
[0114] 图16示出了根据本申请的一个实施例的区块链系统的认证管理装置的框图,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在第二业务中的目标业务节点内。
[0115] 参照图16所示,根据本申请的一个实施例的认证管理装置1600,包括:获取单元1602、第一生成单元1604和第三发送单元1606。
[0116] 其中,获取单元1602配置为获取所述第二业务对应的第二证书授权中心发送的跨链访问证书,所述跨链访问证书是注册管理中心向第一业务对应的第一证书授权中心发送证书签发请求,由所述第一证书授权中心签发的;第一生成单元1604配置为生成跨链访问请求,所述跨链访问请求中包含有所述跨链访问证书;第三发送单元1606配置为将所述跨链访问请求发送至所述第一业务对应的区块链,以对所述第一业务对应的区块链进行访问,所述第一业务所对应区块链的智能合约中包含有跨链认证信息,所述跨链认证信息中包含有所述跨链访问证书。
[0117] 在本申请的一些实施例中,基于前述方案,第一生成单元1604还配置为:生成针对所述第二业务所对应区块链的访问请求,所述访问请求中包含有所述第二业务对应的第二证书授权中心向所述目标业务节点签发的证书;所述第三发送单元还配置为:将所述访问请求发送至所述第二业务对应的区块链,以对所述第二业务对应的区块链进行访问。
[0118] 在本申请的一些实施例中,基于前述方案,各个业务中的业务节点将各个业务对应的证书授权中心作为信任锚,且各个业务对应的证书授权中心不相同。
[0119] 图17示出了根据本申请的一个实施例的区块链系统的认证管理装置的框图,所述区块链系统包括记账节点网络和业务节点网络,所述业务节点网络中包含有业务节点,所述记账节点网络中维护有多个区块链,每个区块链对应于一种类型的业务,所述认证管理装置设置在第一业务对应的第一证书授权中心内。
[0120] 参照图17所示,根据本申请的一个实施例的认证管理装置1700,包括:第二接收单元1702、第二生成单元1704和第四发送单元1706。
[0121] 其中,第二接收单元1702配置为接收注册管理中心发送的证书签发请求,所述证书签发请求用于向第二业务对应的第二证书授权中心签发跨链访问证书,所述跨链访问证书用于使所述第二业务的业务节点访问所述第一业务对应的区块链;第二生成单元1704配置为根据所述第二业务的信息生成所述跨链访问证书;第四发送单元1706配置为将所述跨链访问证书通过所述注册管理中心发送给所述第二证书授权中心,并将包含所述跨链访问证书的跨链认证信息添加至所述第一业务所对应区块链的智能合约中。
[0122] 在本申请的一些实施例中,基于前述方案,第二接收单元1702还配置为:接收所述注册管理中心发送的删除请求,所述删除请求是所述注册管理中心在确定需要停止所述第二业务的业务节点访问所述第一业务所对应区块链时发送的,根据所述删除请求,将所述跨链认证信息从所述第一业务所对应区块链的智能合约中删除。
[0123] 图18示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
[0124] 需要说明的是,图18示出的电子设备的计算机系统1800仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
[0125] 如图18所示,计算机系统1800包括中央处理单元(Central Processing Unit,CPU)1801,其可以根据存储在只读存储器(Read-Only Memory,ROM)1802中的程序或者从存储部分1808加载到随机访问存储器(Random Access Memory,RAM)1803中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在RAM 1803中,还存储有系统操作所需的各种程序和数据。CPU 1801、ROM 1802以及RAM 1803通过总线1804彼此相连。输入/输出(Input /Output,I/O)接口1805也连接至总线1804。
[0126] 以下部件连接至I/O接口1805:包括键盘、鼠标等的输入部分1806;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1807;包括硬盘等的存储部分1808;以及包括诸如LAN(Local Area Network,局域网)卡、调制解调器等的网络接口卡的通信部分1809。通信部分1809经由诸如因特网的网络执行通信处理。驱动器1810也根据需要连接至I/O接口1805。可拆卸介质1811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1810上,以便于从其上读出的计算机程序根据需要被安装入存储部分1808。
[0127] 特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1809从网络上被下载和安装,和/或从可拆卸介质1811被安装。在该计算机程序被中央处理单元(CPU)1801执行时,执行本申请的系统中限定的各种功能。
[0128] 需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
[0129] 附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0130] 描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
[0131] 作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现上述实施例中所述的方法。
[0132] 应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
[0133] 通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
[0134] 本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
[0135] 应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。