CN115801344A - 基于区块链的多实例组网方法及装置和电子设备 - Google Patents
基于区块链的多实例组网方法及装置和电子设备 Download PDFInfo
- Publication number
- CN115801344A CN115801344A CN202211352499.3A CN202211352499A CN115801344A CN 115801344 A CN115801344 A CN 115801344A CN 202211352499 A CN202211352499 A CN 202211352499A CN 115801344 A CN115801344 A CN 115801344A
- Authority
- CN
- China
- Prior art keywords
- data
- service
- program instance
- service program
- instance
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 230000006855 networking Effects 0.000 title claims abstract description 33
- 238000013475 authorization Methods 0.000 claims description 121
- 238000012546 transfer Methods 0.000 claims description 53
- 230000004044 response Effects 0.000 claims description 26
- 238000012217 deletion Methods 0.000 claims description 19
- 230000037430 deletion Effects 0.000 claims description 19
- 230000000977 initiatory effect Effects 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 6
- 239000000306 component Substances 0.000 description 92
- 230000008569 process Effects 0.000 description 36
- 238000004364 calculation method Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 15
- 238000000586 desensitisation Methods 0.000 description 14
- 230000001360 synchronised effect Effects 0.000 description 8
- 230000001960 triggered effect Effects 0.000 description 5
- 239000003999 initiator Substances 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- 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/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本说明书实施例提供一种基于区块链的多实例组网方法及装置和电子设备。该方法包括:接收第一数据协作方发起的接入请求;其中,所述接入请求包括与所述第一数据协作方对应的至少一台服务设备的设备标识;响应于所述接入请求,将所述至少一台服务设备作为区块链节点加入至数据安全区块链,并创建与所述第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;以及,确定是否创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;如果是,创建所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道。
Description
技术领域
本说明书实施例涉及区块链技术领域,尤其涉及一种基于区块链的多实例组网方法及装置和电子设备。
背景技术
企业或个人在跨域使用业务所需的用户数据时,一方面需要执行严格的申请审批流程,对用户数据的使用权限进行控制授权,另一方面需要通过技术手段来确保用户数据的安全转移。
而数据安全区块链(简称数安链),就是目前应用比较广泛的一种,基于区块链技术实现的,来保障用户数据的安全转移的解决方案。通过该解决方案,可以在多个跨域的数据协作方(数据源)之间,将用户数据以密文的形式进行跨域的数据转移,但用户数据的控制权不转移。
然而,由于现有的基于数据安全区块链的数据协作平台,通常采用的是集中式的网络服务架构,随着用户数据的使用场景的日益丰富,已经逐渐的无法满足使用需求。
发明内容
本说明书实施例提供的一种基于区块链的多实例组网方法及装置和电子设备。
根据本说明书实施例的第一方面,提供一种基于区块链的多实例组网方法,所述方法应用于基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;所述方法包括:
接收第一数据协作方发起的接入请求;其中,所述接入请求包括与所述第一数据协作方对应的至少一台服务设备的设备标识;
响应于所述接入请求,将所述至少一台服务设备作为区块链节点加入至所述数据安全区块链,并创建与所述第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;以及,
确定是否创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;如果是,创建所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道;
其中,所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述服务程序实例用于对与其关联的服务设备上存储的用户数据对应的密文数据的跨链转移进行授权管理。
根据本说明书实施例的第二方面,提供一种基于区块链的多实例组网装置,所述装置应用于基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;所述装置包括:
接收单元,接收第一数据协作方发起的接入请求;其中,所述接入请求包括与所述第一数据协作方对应的至少一台服务设备的设备标识;
响应单元,响应于所述接入请求,将所述至少一台服务设备作为区块链节点加入至所述数据安全区块链,并创建与所述第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;
确定单元,确定是否创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;
组网单元,在创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例的情况下,创建所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道;其中,所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述服务程序实例用于对与其关联的服务设备上存储的用户数据对应的密文数据的跨链转移进行授权管理。
根据本说明书实施例的第三方面,提供一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为上述任一项基于区块链的多实例组网方法。
本说明书实施例,通过在数据协作平台上为接入该数据协作平台的各个数据协作方分别创建一个独立的服务程序实例,并在为各个数据协作方创建的服务程序实例之间创建数据同步通道,使得接入数据协作平台的各个数据协作方,在具有将维护的用户数据的密文数据跨域转移至其它的数据协作方的需求时,可以基于该数据同步通道与其它的数据协作方实时的进行数据同步。
附图说明
图1是本说明书一实施例提供的一种在数据协作平台中采用多实例组网的网络服务架构图;
图2是本说明书一实施例提供的一种基于区块链的多实例组网方法的流程图;
图3是本说明书一实施例提供的服务程序实例中的设备注册流程的示意图;
图4是本说明书一实施例提供的服务程序实例中的设备更新流程的示意图;
图5是本说明书一实施例提供的服务程序实例中的数据注册流程的示意图;
图6是本说明书一实施例提供的服务程序实例中的数据更新流程的示意图;
图7是本说明书一实施例提供的服务程序实例中的数据下链流程的示意图;
图8是本说明书一实施例提供的数据跨域授权方法的流程图;
图9是本说明书一实施例提供的数据跨域授权的示意图;
图10是本说明书一实施例提供的数据跨域转移的示意图;
图11是本说明书一实施例提供的基于区块链的多实例组网或者数据跨域授权装置的硬件结构图;
图12是本说明书一实施例提供的基于区块链的多实例组网装置的模块;
图13是本说明书一实施例提供的数据跨域授权装置的模块。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。
在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
数据安全区块链(简称数安链),是一种将区块链作为底层服务的一种网络服务架构。在该网络服务架构中,作为底层服务的区块链上的区块链节点,通常可以包括多个数据协作方对应的服务设备。
其中,该多个数据协作方通常分别对应不同的数据域。需要说明的是,多个数据协作方分别对应不同的数据域,具体是指多个数据协作方对应的服务设备之间,需要跨域的进行数据传输通信。在实际应用中,不同的服务设备之间,通常可以通过域名访问地址(即url地址)来访问其他服务设备的本地数据库中存储的用户数据。当某一个服务设备在通过url地址访问另一个服务设备的过程中,如果被访问的服务设备的url地址,与发起访问的该服务设备的url地址不同,那么这两台服务设备之间的数据传输通信即被称之为跨域。在实际应用中,各个数据协作方如果对应多台服务设备,那么该多台服务设备之间可以共用同一个域名访问地址。
在数据安全区块链中,为了确保各个数据协作方维护的用户数据的使用安全,各个数据协作方维护的用户数据,通常分别存储在与各个数据协作方对应的服务设备的本地数据库中。而区块链作为一个开放的存储平台,在区块链上可以只存储各个数据协作方维护的用户数据对应的数据属性信息(也称之为数据目录)。
通过这种方式,对于任一数据协作方而言,都可以通过获取区块链上的数据属性信息,来发现由加入数据安全区块链中的其它数据协作方所发布的用户数据。当该数据协作方发现了由其它数据协作方发布的感兴趣的用户数据,还可以向该其它数据协作方发起数据授权申请,由请求授权的用户数据的拥有方来进行授权审批,在授权审批通过后,可以利用数据协作方之间的数据同步通道,将该用户数据的密文数据,跨域转移到该数据协作方。
由于在整个过程中,只是对用户数据的密文数据进行了跨域转移,用户数据的明文数据始终未出域,因此基于现有的数据安全区块链的解决方案,可以在将用户数据以密文的形式进行跨域的数据转移的基础上,确保用户数据的控制权不转移。
然而,数据安全区块链虽然极大的提升了用户数据的使用安全,但现有的基于数据安全区块链的数据协作平台中,通常采用的是基于单服务程序实例的集中式的网络服务架构。
当作为数据源的多个数据协作方对应的服务设备,分别作为区块链节点接入到数据安全区块链之后,为了对该多个数据协作方对应的服务设备的本地数据库中存储的用户数据的密文数据进行跨域转移管理,数据协作平台可以利用区块链服务平台上的资源,在该数据协作平台上为该多个数据协作方共同创建一个集中式的服务程序实例,并通过该集中式的服务程序实例,来对该多个数据协作方维护的用户数据的密文数据的跨域转移进行授权管理。
其中,上述服务程序实例具体可以是利用区块链服务平台上的资源,在区块链服务平台上创建的为该多个数据协作方提供服务的一个软件服务单元。在实际应用中,该集中式的服务程序实例,具体可以与作为区块链节点加入了上述数据安全区块链的所有服务设备相互关联,并对与其关联的所有服务设备上的本地数据库中存储的用户数据的密文数据的跨链转移进行授权管理。
例如,上述多个数据协作方中的任一数据协议方,发现了由其它数据协作方发布的感兴趣的用户数据,都可以向该集中式的服务程序实例发起数据授权申请,由该服务程序实例来进行授权审批。
在实际应用中,随着多个数据协议方相互进行数据协作的使用场景的日益丰富,不同的数据协议方之间,可能会具有通过建立数据协作关系进而形成数据协作联盟的需求。在这种需求之下,不同的数据协作方之间势必需要频繁的相互进行数据同步。
而现有的基于数据安全链的数据协作平台,由于其仍然采用单服务程序实例的集中式的网络服务架构,各个数据协作方之间天然的缺乏数据同步通道,因此显然无法满足这种需求。
有鉴于此,本说明书提出一种在基于数据安全区块链的数据协作平台上,采用多服务程序实例进行组网的分布式的网络服务架构。
在实现时,在上述数据协作方平台中,可以不再采用基于单服务程序实例的集中式的网络服务架构,对于每一个接入数据协作平台的数据协作方,均可以利用数据协作平台上的资源,为各个数据协作方分别创建一个与其对应的至少一台服务设备关联的服务程序实例,并为各个数据协作方对应的服务程序实例之间,创建数据同步通道,并通过该数据同步通道在各个数据协作方之间进行数据同步。
在以上技术方案中,由于在上述数据协作方平台中,不再采用基于单服务程序实例的集中式的网络服务架构,而是采用基于多服务程序实例进行组网的网络服务架构,数据协作平台会为接入该数据协作平台的各个数据协作方分别创建一个独立的服务程序实例,并在为各个数据协作方创建的服务程序实例之间创建数据同步通道,使得接入数据协作平台的各个数据协作方,在具有将维护的用户数据的密文数据跨域转移至其它的数据协作方的需求时,可以基于该数据同步通道与其它的数据协作方实时的进行数据同步,从而可以满足基于数据协作关系而形成数据协作联盟中的数据同步需求。
例如,基于现有的单服务程序实例的集中式的网络服务架构,由于接入数据协作平台的各个数据协作方共用同一个服务程序实例,缺乏数据同步通道,因此对于各个数据协作方来说,只能够通过定时从数据安全链上获取由其它数据协作方发布的数据集对应的数据属性信息,来发现由其它数据协作方发布的数据集,这种方式显然存在滞后性。对于作为数据使用方的数据协作方而言,无法第一时间感知到由其它数据协作方发布的最新的数据;相似地,对于作为数据提供方的数据协作方而言,也无法及时将自身发布的最新的数据通知给其它的数据协作方。
如果采用以上技术方案中的基于多服务程序实例进行组网的网络服务架构,由于在数据协作平台上为各个数据协作方分别创建了一个独立的服务程序实例,并且与各个数据协作方对应的服务实例之间打通了数据同步通道。因此,作为数据提供方的数据协作方在数据安全区块链上发布了最新的数据之后,可以通过该数据同步通道,将发布的数据在数据安全区块链上的存证标识,及时的同步到其它的数据协作方对应的服务程序实例。
请参见图1,图1为本说明书示出的一种在数据协作平台中采用多实例组网的网络服务架构图。
在本说明书中,数据协作平台可以不再采用基于单服务程序实例的集中式的网络服务架构,而采用多服务程序实例进行组网的分布式的网络服务架构。
如图1所示,图1示出的第一服务程序实例,可以是上述数据协作平台为接入该数据协作平台的第一数据协作方创建的,与该第一数据协作方对应的服务设备关联的服务程序实例。图1示出的第二服务程序实例,可以是上述数据协作平台为接入该数据协作平台的第二数据协作方创建的,与该第二数据协作方对应的服务设备关联的服务程序实例。
需要说明的是,接入数据协作平台的每一个数据协作方,均可以对应一台服务设备,也可以对应多台服务设备。当某一数据协作方接入了数据协作平台后,与该数据协作方对应的服务设备,会作为区块链节点加入数字安全区块链;例如,如图1所示,与第一数据协作方对应的服务设备包括多台,分别为服务设备1-服务设备4;与第二数据协作平台对应的服务设备包括一台,为服务设备5。
其中,上述服务程序实例,具体可以采用如图1示出的三层的服务架构,分别包括第一服务层、第二服务层和第三服务层。
第一服务层,可以是与数字安全区块链对应的应用服务层。
第二服务层,可以是与数字安全区块链对应的授权服务层。
第三服务层,可以是与数字安全区块链对应的基础服务层
其中,无论是以上三个服务层中的哪一个服务层,均可以包括与数据协作平台上的提供的一些基础服务组件;
例如,如图1所示,如果上述数据协作平台为云服务平台,则以上三个服务层均可以包括诸如SLB(Server Load Balancer,负载均衡)和ECS(Elastic Compute Service,云服务)等服务组件。
其中,上述应用服务层,具体可以包括用于实现密文数据的跨域转移的功能的跨域转移组件、用于实现针对密文数据的加密解密功能的加解密组件,等等;
例如,如图1所示,如果上述数据协作平台为云服务平台,则上述跨域转移组件和加解密组件,均可以是基于云服务平台上的ECS服务相关的云计算资源实现的云组件。
上述授权服务层,具体可以包括用于实现针对密文数据的跨域转移进行授权管理的功能的dataAuth(数据授权)组件、用于实现针对用户数据在数字安全区块链上的区块链数字身份进行管理的DIS(Decentralized Identity Service,分布式身份服务)组件、用于实现对数字安全区块链上存储的数据进行数据中转,定时从数字安全区块链上获取数据的功能的中转服务组件,等等。
例如,如图1所示,如果上述数据协作平台为云服务平台,则上述dataAuth、DIS组件和上述中转服务,均可以是基于云服务平台上的ECS服务相关的云计算资源实现的云组件。
上述基础服务层,具体可以用于实现数字安全区块链相关的基础服务功能;例如,数据上链存证等服务功能。
例如,如图1所示,如果上述数据协作平台为云服务平台,则数据安全区块链上的各个区块链节点(即与各个数据协作方对应的服务设备),均可以是基于云服务平台上的ECS服务相关的云计算资源创建的虚拟服务设备(比如虚拟机)。
请继续参见图1,上述应用服务层和上述授权服务层,除了可以包含若干服务组件以外,还可以包含若干数据库。
其中,上述应用服务层和上述授权服务层上包含的数据库的数据库类型,在本说明书中不进行特别限定。例如,如图1所示,具体可以包括MySQL、Redis、OSS、SqlLite等数据库类型。
需要说明的是,上述应用服务层上的数据库,可以作为与数据协作方对应的服务设备上的本地数据库,可以用于存储需要跨域转移的用户数据。上述授权服务层上的数据库,可以包含与该授权服务层上的各个服务组件分别对应的数据库;例如,如图1所示,授权服务层上可以包含按一个与dataAuth组件和DIS组件对应的数据库,还可以包含一个与中转服务组件对应的数据库。
其中,与dataAuth组件和DIS组件对应的数据库具体可以用于存储与用户数据的跨域转移的数据授权相关的数据。与中转服务组件对应的数据库,具体可以用于存储该组件定时从数字安全区块链上获取到的数据。
除此之外,上述第一服务程序实例和上述第二服务程序实例之间,还可以创建一个数据同步通道,用于服务程序实例之间的实时的数据同步。例如,该数据同步通道,具体可以是基于服务程序实例的调用地址(比如与该服务程序实例关联的服务设备的域名访问地址),在服务程序实例之间创建的服务调用通道。
需要强调的是,图1示出的服务程序实例采用三层的网络服务架构的例子,仅为示例性的描述,在实际应用中,上述服务程序实例的服务层的层数,以及各个服务层上包含的组件,均可以基于实际的需求进行灵活的调整;
例如,在实际应用中,可以在图1披露的三层的网络服务架构的基础上,将图1示出的多个服务层合并为一个服务层,或者将图1示出的某一服务层进一步拆分成多个服务层,或者还可以将图1示出的多个组件按照功能合并成一个组件,或者将图1示出的某一个组件按照功能进行进一步的划分,拆分成多个组件,等等,在本说明书中不再进行一一举例。
又如,在实际应用中,当图1示出的第二数据协作方,并不允许将该第二数据协作方对应的服务设备上存储的用户数据的密文数据,跨域转移到其它的数据协作方时,此时该第二数据协作方只能作为数据使用方,而并不能作为数据提供方。在这种情况下,由于第二数据协作方并不允许将该第二数据协作方对应的服务设备上存储的用户数据的密文数据,跨域转移到其它的数据协作方的权限,授权给其它的数据协作方,因此在与该第二数据协作方对应的上述第二服务程序实例中,则可以不包含图1上示出的dataAuth组件和DIS组件。
请参见图2,图2是本说明书根据一示例性实施例示出的一种基于区块链的多实例组网方法的流程图,该方法可以应用于采用图1示出的网络服务架构的基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;各个数据协作方维护的用户数据,分别存储在与所述各个数据协作方对应的服务设备的本地数据库中;所述数据安全区块链上存储了所述各个数据协作方维护的用户数据对应的数据属性信息;所述方法包括:
步骤210,接收第一数据协作方发起的针接入请求;其中,所述接入请求包括与所述第一数据协作方对应的至少一台服务设备的设备标识。
上述数据协作平台,具体可以是一个云服务平台;例如,在一个例子中,上述数据协作平台具体可以是一个区块链云服务平台。比如,上述区块链云服务平台具体可以是一个用于提供区块链即服务(BaaS,Blockchain as a Service)的BaaS平台(也称之为BaaS云)。BaaS平台可以通过为区块链上发生的活动,提供预先编写的软件的方式,面向与BaaS平台耦接的服务设备,提供简单易用,一键部署,快速验证,灵活可定制的区块链服务,进而可以加速区块链业务应用开发、测试、上线,助力各行业区块链商业应用场景的落地。
而上述服务设备可以是数据协作方部署的本地服务设备,也可以是在云服务平台上利用云计算资源,为该数据协作方创建的虚拟服务设备。
例如,与数据协作方对应的服务设备,具体可以是数据协作方通过向云服务平台付费,由云服务平台,利用云服务平台上的运算资源、存储资源以及传输资源等云计算资源,为该数据协作方创建的VM虚拟机。
第一数据协作方在具有将用户数据的密文数据跨域转移至其它的数据协作方,或者想要跨域的获取已经接入上述数据协作平台的其它数据协作方维护的用户数据的密文数据时,具体可以向数据协作平台发起接入请求;其中,该接入请求具体可以包括与第一数据协作方对应的至少一台服务设备的设备标识。
步骤220,响应于所述接入请求,将所述至少一台服务设备作为区块链节点加入至所述数据安全区块链,并创建与所述第一数据协作方对应的至少一台服务设备关联的第一服务程序实例。
数据协作平台在接收到第一数据协作方发起的接入请求后,可以响应该接入请求,将该接入请求中包括的至少一个设备标识对应的至少一台服务设备作为区块链节点加入到数字安全区块链网络。
其中,将上述至少一台服务设备加入到数字安全区块链网络的具体过程,在本机说明书中不再进行详述
当第一数据协作方对应的至少一台服务设备作为区块链节点成功加入数字安全区块链网络之后,区块链协作平台还可以利用数据协作平台上的资源,在数据协作平台上创建一个与第一数据协作方对应的至少一台服务设备关联的第一服务程序实例。
步骤230,确定是否创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例。
当数据协作平台为第一数据协作方创建了第一服务程序实例之后,此时数据协作平台可以进一步确定,是否按照相同的方式,为接入了数据协作平台的第二数据协作方创建了一个与该第二数据协作方对应的至少一台服务设备关联的第二服务程序实例。
步骤240,如果是,创建所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道;其中,所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述服务程序实例用于对与其关联的服务设备上存储的用户数据对应的密文数据的跨链转移进行授权管理。
在数据协作平台确定已经创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例的情况下,该数据协作平台可以进一步创建该第一服务程序实例和该第二服务程序实例之间的数据同步通道。其中,该数据同步通道,具体可以用于在第一服务程序实例与第二服务程序实例之间进行跨域的数据同步。
当上述第一服务程序实例和上述第二服务程序实例之间的数据同步通道创建完成之后,此时针对第一数据协作方和第二数据协作方之间的组网完成,后续第一服务程序实例和第二服务程序实例之间可以基于该数据同步通道进行实时的跨域的数据同步。
其中,需要说明的是,这里的第二数据协作方可以是指第一数据协作方之外的其它数据协作方,该其它数据协作方可以是一个也可以是多个。类似的,上述第二服务程序实例也可以是指数据协作平台为第一数据协作方之外的其它数据协作方创建的其它的服务程序实例,该其它的服务程序实例可以是一个也可以是多个。
例如,当上述第二数据协作方是指第一数据协作方之外的多个其它的数据协作方时,此时数据协作平台可以分别创建该第一服务程序实例和为该多个其它的数据协作方创建的多个服务程序实例之间的数据同步通道,以完成该第一数据协作方和上述多个其它的数据协作方之间的组网。
其中,需要说明的是,在实际应用中,上述数据协作平台为接入的各个数据协作方创建的服务程序实例,还可以按照主服务程序实例和从服务程序实例进行角色划分。
例如,在一个例子中,假定由数据安全区块链的运营方发起了一个数据协作联盟,此时该运营方可以作为该数据协作联盟的第一个数据协作方,在这种情况下,为该运营方创建的,与该运营方的至少一台服务设备关联的服务程序实例,可以作为该数据协作联盟中的主服务程序实例,而为后续加入该数据协作联盟的其它的数据协作方(比如机构)创建的服务程序实例,可以作为该数据协作联盟中的从服务程序实例。
其中,需要强调的是,将上述数据协作平台为接入的各个数据协作方创建的服务程序实例划分为主实例和从实例,仅仅是角色上的区分,在实际应用中,主服务程序实例和从服务程序实例在功能上,则是两个完全对等且互相独立的服务实例。
在一示例性的实施例中,数据协作平台为与各个数据协作方创建的服务程序实例之间的数据同步通道,具体可以是基于服务程序实例的调用地址,在服务程序实例之间创建的服务调用通道。
其中,上述调用地址的类型,在本说明书中不进行特别限定;
在一示例性的实施例中,具体可以采用与各个服务程序实例对应的至少一台服务设备共用的域名访问地址(即url地址),来作为各个服务程序实例对应的调用地址。
在这种情况下,各个服务程序实例之间的服务调用通道,则可以是基于各个服务程序实例对应的至少一台服务设备共用的域名访问地址,在各个服务程序实例之间构建的http调用通道。
当然,在实际应用中,上述调用地址具体也可以是其它形式的诸如接口调用地址,各个服务程序实例之间的服务调用通道,具体也可以是接口调用通道,在本说明书中不再进行一一列举。
其中,需要说明的是,由于基于调用地址形成的调用通道,通常都是单向的调用通道,因此第一服务程序实例和第二服务程序之间的服务调用通道,通常可以包括基于第一服务程序实例维护的第二服务程序实例的调用地址形成的,由第一服务程序实例作为调用发起方,上述第二服务程序实例作为被调用方的第一服务调用通道;以及,基于第二服务程序实例维护的第一服务程序实例的调用地址形成的,由第二服务程序实例作为调用发起方,上述第一服务程序实例作为被调用方的第二服务调用通道。
例如,在一个例子中,请继续参见图1,由于对于一个服务程序实例来说,位于授权服务层的dataAuth组件,从功能上区分,通常是一个服务程序实例中的核心组件;因此,在这种情况下,在为第一服务程序实例和第二服务程序实例之间创建数据同步通道时,具体可以将第二服务程序实例的url地址添加到第一服务程序实例的dataAuth组件进行维护,以在第一服务程序实例的dataAuth组件和第二服务程序实例之间形成第一http调用通道。相应的,可以将第一服务程序实例的url地址添加到第二服务程序实例的dataAuth组件进行维护,以在第二服务程序实例的dataAuth组件和第一服务程序实例之间形成第二http调用通道,以完成第一服务程序实例和第二服务程序实例之间的数据同步通道的创建。
当第一服务程序实例和第二服务程序实例之间建立了数据同步通道之后,第一服务程序实例和第二服务程序实例之间的,可以基于该数据同步通道来进行实时的数据同步。以下结合具体的数据同步场景,对第一服务程序实例和第二服务程序实例之间的数据同步过程进行详细描述。
数据同步场景一:
在一示例性的实施例中,第一数据协作方需要新增一台服务设备时,此时第一数据协作方可以向第一服务程序实例发起设备注册,将该新增的服务设备与该第一服务程序实例进行关联,并在关联完成后,由该第一服务程序实例通过与第二服务程序实例之间的数据同步通道,将该新增的服务设备的设备信息,同步给第二服务程序实例。
在这种场景下,第一服务程序实例与第二服务程序实例之间通过数据同步通道同步的数据为在第一服务程序实例中新增的服务设备的设备信息。
请参见图3示出的一种服务程序实例中的设备注册流程的示意图,在图2所述实施例基础上,还可以包括:
所述第一服务程序实例接收设备注册请求;其中,所述设备注册请求包括所述第一数据协作方新增的服务设备的设备信息;
响应于所述设备注册请求,所述第一服务程序实例建立所述新增的服务设备和该第一服务程序实例的关联关系,并将所述新增的服务设备的设备信息和所述关联关系在与所述第一服务程序实例对应的数据库中进行存储;
然后,进一步调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件进一步调用所述第一服务程序实例中的DIS组件,由所述DIS组件为所述新增的服务设备在数据安全区块链上创建数字身份信息,并将创建的数字身份信息返回所述DataAuth组件。
再进一步由所述DataAuth组件基于维护的所述第一服务程序实例的调用地址,发起针对所述第一服务程序实例的服务调用(即图3中的callback调用),以将所述新增的服务设备的数字身份信息返回给所述第一服务程序实例,并在与所述第一服务程序实例对应的数据库中进行存储,即存储该数字身份信息;
另外,所述DataAuth组件还可以基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,以通过所述第一服务程序实例与第二服务程序实例之间的数据同步通道将所述新增的服务设备的数字身份信息和设备信息同步至所述第二服务程序实例,并在与所述第二服务程序实例对应的数据库中进行同步存储,即存储数数字身份信息和设备信息。
其中,需要说明的是,所述数据安全区块链上部署了用于创建数字身份的智能合约;
所述DIS组件为所述新增的服务设备在所述数据安全区块链上创建数字身份信息,可以包括:
所述DIS组件调用所述数据安全区块链上部署的所述智能合约,为所述新增的服务设备在所述数据安全区块链上创建数字身份信息。
数据同步场景二:
在一示例性的实施例中,第一数据协作方需要更新第一服务程序实例关联的任一目标服务设备时,此时第一数据协作方可以向第一服务程序实例发起区块链设备更新,将第一服务程序实例对应的数据库中该目标服务设备的设备信息进行更新,并通过与第二服务程序实例之间的数据同步通道,将该目标服务设备的更新后的设备信息,同步给第二服务程序实例。
在这种场景下,第一服务程序实例与第二服务程序实例之间通过数据同步通道同步的数据为在第一服务程序实例中目标服务设备的更新后的设备信息。
请参见图4示出的一种服务程序实例中的设备更新流程的示意图,在图2所述实施例基础上,还可以包括:
所述第一服务程序实例接收区块链设备更新请求;其中,所述区块链设备更新请求包括与所述第一服务程序实例关联的任一目标服务设备的待更新的设备信息;
响应于所述区块链设备更新请求,所述第一服务程序实例基于待更新的设备信息更新与所述第一服务程序实例对应的数据库中存储的所述目标服务设备的设备信息;
然后,进一步调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件进一步调用所述第一服务程序实例中的DIS组件,由所述DIS组件在数据安全区块链上对目标服务设备的数字身份信息进行更新,并将更新后的数字身份信息返回给所述DataAuth组件。
再进一步由所述DataAuth组件基于维护的所述第一服务程序实例的调用地址,发起针对所述第一服务程序实例的服务调用,以将更新后的数字身份信息返回给所述第一服务程序实例,并在与所述第一服务程序实例对应的数据库中存储所述目标服务设备的更新后的数字身份信息;
另外,所述DataAuth组件还可以基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,以通过所述第一服务程序实例与第二服务程序实例之间的数据同步通道将所述目标服务设备的更新后的设备信息和更新后的数字身份信息同步至所述第二服务程序实例,对与所述第二服务程序实例对应的数据库中存储的所述目标服务设备的设备信息进行同步更新,即存储所述目标服务设备的更新后的设备信息和更新后的数字身份信息。
其中,与前述设备注册类似的,所述DIS组件在数据安全区块链上对目标服务设备的数字身份信息进行更新,可以包括:
所述DIS组件调用所述数据安全区块链上部署的所述智能合约,为所述目标服务设备在数据安全区块链上创建新的数字身份信息,并将新的数字身份信息与目标服务设备的旧的数字身份信息进行关联。所创建的新的数字身份信息即为所述目标服务设备的更新后的数字身份信息。
数据同步场景三:
在一示例性的实施例中,第一数据协作方需要发布本地数据库中存储的用户数据构成的数据集时,此时第一数据协作方可以向第一服务程序实例发起数据注册,生成与该数据集对应的数据属性信息,并在将该数据属性信息存证到数据安全区块链(可以得到该数据属性信息对应的区块链存证标识)后,由该第一服务程序实例通过与第二服务程序实例之间的数据同步通道,将所述区块链存证标识,同步给第二服务程序实例,以使所述第二服务程序实例基于所述区块链存证标识从数据安全区块链上获取所述数据属性信息。
在这种场景下,第一服务程序实例与第二服务程序实例之间通过数据同步通道同步的数据为数据属性信息对应的区块链存证标识。
请参见图5示出的一种服务程序实例中的数据注册流程的示意图,在图2所述实施例基础上,还可以包括:
所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备发送的数据注册请求;其中,所述数据注册请求包括所述目标服务设备请求注册的数据集;
响应于所述数据注册请求,所述第一服务程序实例生成与所述数据集对应的数据属性信息,并将所述数据集以及所述数据属性信息存储至所述目标服务设备的本地数据库;
然后,进一步调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件将与所述数据集对应的数据属性信息发布至所述数据安全区块链进行存证,以获取用于从数据安全区块链查询该上链的数据属性信息的区块链存证标识。
再进一步由所述DataAuth组件基于维护的所述第一服务程序实例的调用地址,发起针对所述第一服务程序实例的服务调用,以将所述区块链存证标识和所述数据属性信息返回给所述第一服务程序实例,并在与所述第一服务程序实例对应的数据库中进行存储,即将所述区块链存证标识和所述数据属性信息进行关联存储。
接着,所述第一服务程序实例调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件调用所述第一服务程序实例中的DIS组件,进一步由所述DIS组件在数据安全区块链上为所述数据集对应的数据属性信息创建包含对应区块链存证标识的数字身份信息,并将创建的数字身份信息返回所述DataAuth组件。其中,所述DIS组件可以通过调用所述数据安全区块链上部署的所述智能合约,为所述数据属性信息在所述数据安全区块链上创建包含区块链存证标识的数字身份信息。
进一步,由所述DataAuth组件基于维护的所述第一服务程序实例的调用地址,发起针对所述第一服务程序实例的服务调用,以将所述数据属性信息的数字身份信息返回给所述第一服务程序实例,并在与所述第一服务程序实例对应的数据库中进行存储,即存储该数据属性信息的数字身份信息;
另外,所述DataAuth组件还可以基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,以通过所述第一服务程序实例与第二服务程序实例之间的数据同步通道将所述数据属性信息的数字身份信息同步至所述第二服务程序实例;以使所述第二服务程序实例基于该数字身份信息中包含的区块链存证标识从所述数据安全区块链上获取所述数据属性信息,并将获取到的数据属性信息在与所述第二服务程序实例对应的数据库中进行同步存储。
数据同步场景四:
在一示例性的实施例中,第一数据协作方需要更新已发布的数据集时,此时第一数据协作方可以向第一服务程序实例发起数据更新,生成与更新后的数据集对应的更新后的数据属性信息,并在将该更新后的数据属性信息存证到数据安全区块链(可以得到更新后的数据属性信息对应的区块链存证标识)后,由该第一服务程序实例通过与第二服务程序实例之间的数据同步通道,将所述更新后的数据属性信息对应的区块链存证标识,同步给第二服务程序实例,以使所述第二服务程序实例基于所述区块链存证标识从数据安全区块链上获取所述更新后的数据属性信息。
在这种场景下,第一服务程序实例与第二服务程序实例之间通过数据同步通道同步的数据为更新后的数据属性信息对应的区块链存证标识。
请参见图6示出的一种服务程序实例中的数据更新流程的示意图,在图2所述实施例基础上,还可以包括:
所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备的数据更新请求;其中,所述数据更新请求包括所述目标服务设备请求更新的数据集;
响应于所述数据更新请求,所述第一服务程序实例重新生成与所述数据集对应的更新后的数据属性信息,并更新所述目标服务设备的本地数据库中存储的所述数据集和所述数据集的数据属性信息;
然后,进一步调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件将与所述数据集对应的更新后的数据属性信息发布至所述数据安全区块链进行存证,以获取用于从数据安全区块链查询该更新后的数据属性信息的区块链存证标识。
再进一步由所述DataAuth组件基于维护的所述第一服务程序实例的调用地址,发起针对所述第一服务程序实例的服务调用,以将所述区块链存证标识和更新后的数据属性信息返回给所述第一服务程序实例,并在与所述第一服务程序实例对应的数据库中进行存储,即将所述区块链存证标识和所述更新后的数据属性信息进行关联存储。
接着,所述第一服务程序实例调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件调用所述第一服务程序实例中的DIS组件,进一步由所述DIS组件在数据安全区块链上对于数据集对应的更新后的数据属性信息的数据身份信息进行更新,并将更新后的数字身份信息返回给所述DataAuth组件。其中,所述DIS组件可以调用所述数据安全区块链上部署的所述智能合约,为所述更新后的数据属性信息在数据安全区块链上创建新的数字身份信息,并将新的数字身份信息与更新前的数据属性信息的旧的数字身份信息进行关联。所创建的新的数字身份信息即为数据集的更新后的数字身份信息。
进一步,由所述DataAuth组件基于维护的所述第一服务程序实例的调用地址,发起针对所述第一服务程序实例的服务调用,以将所述更新后的数字身份信息返回给所述第一服务程序实例,并在与所述第一服务程序实例对应的数据库中进行存储,即存储更新后的的数字身份信息;
另外,所述DataAuth组件还可以基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,以通过所述第一服务程序实例与第二服务程序实例之间的数据同步通道将所述更新后的数字身份信息同步至所述第二服务程序实例;以使所述第二服务程序实例基于该更新后的数字身份信息中包含的区块链存证标识从所述数据安全区块链上获取所述更新后的数据属性信息,并将获取到的更新后的数据属性信息在与所述第二服务程序实例对应的数据库中进行同步更新。
数据同步场景五:
在一示例性的实施例中,第一数据协作方需要删除发布的目标数据集时,此时第一数据协作方可以向第一服务程序实例发起数据下链,删除本地数据库中存储的所述目标数据集和所述目标数据集的数据属性信息,由该第一服务程序实例通过与第二服务程序实例之间的数据同步通道,将目标数据集的删除通知,同步给第二服务程序实例,以使所述第二服务程序实例同步删除目标数据集。
在这种场景下,第一服务程序实例与第二服务程序实例之间通过数据同步通道同步的目标数据集的数据属性信息。
请参见图7示出的一种服务程序实例中的数据注册流程的示意图,在图2所述实施例基础上,还可以包括:
所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备发送的数据删除请求;其中,所述数据删除请求包括所述目标服务设备请求删除的目标数据集的数据集标识;
响应于所述数据删除请求,所述第一服务程序实例删除所述目标服务设备的本地数据库中存储的所述目标数据集和所述目标数据集的数据属性信息;
然后,进一步调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件在数据安全链上将所述数据集的数据属性信息创建的数据身份信息设置为无效状态,以获取设置结果。
再进一步由所述DataAuth组件基于维护的所述第一服务程序实例的调用地址,发起针对所述第一服务程序实例的服务调用,以将所述设置结果返回给所述第一服务程序实例,并在与所述第一服务程序实例对应的数据库中将所述数据集和数据属性信息的状态切换为第三状态;
另外,所述DataAuth组件还可以基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,以通过所述第一服务程序实例与第二服务程序实例之间的数据同步通道将所述目标数据集的删除通知同步至所述第二服务程序实例,以触发所述第二服务程序实例基于所述删除通知将与所述第二服务程序实例对应的数据库中存储的所述目标数据集的数据属性信息同步的进行删除处理,并将该数据库中维护的数据身份信息设置为无效状态。
综上本说明书提供的基于区块链的多实例组网实施例,通过在数据协作平台上为接入该数据协作平台的各个数据协作方分别创建一个独立的服务程序实例,并在为各个数据协作方创建的服务程序实例之间创建数据同步通道,使得接入数据协作平台的各个数据协作方,在具有将维护的用户数据的密文数据跨域转移至其它的数据协作方的需求时,可以基于该数据同步通道与其它的数据协作方实时的进行数据同步。
在介绍了基于区块链的多实例组网之后,下面将进一步介绍与这个多实例组网中的数据跨域授权相关的实施例,
请参见图8,图8是本说明书根据一示例性实施例示出的一种跨域数据授权方法的流程图,该方法可以应用于采用图1示出的网络服务架构的基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;区块链协作平台上创建了与所述多个数据协作方中的第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;以及,与所述多个数据协作方中的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;所述服务程序实例用于对与其关联的服务设备上存储的用户数据的密文数据的跨域转移进行授权管理;所述数据协作平台为所述第一服务程序实例和所述第二服务程序实例之间创建了数据同步通道;所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述方法包括:
步骤310:所述第一服务程序实例接收所述第二数据协作方通过所述数据同步通道发起的针对所述第一数据协作方维护的用户数据的数据授权请求;其中,所述数据授权请求包括所述第二数据协作方请求授权的目标用户数据的数据标识。
本说明书通过在各个数据协作方创建的服务程序实例之间创建数据同步通道,使得接入数据协作平台的各个数据协作方,在具有针对用户数据的密文数据的跨域转移的数据授权需求时,可以基于该数据同步通道与其它的数据协作方实时的进行跨域数据授权。
与前述实施例相同的,所述区块链协作平台包括区块链云服务平台;与所述各个数据协作方对应的服务设备包括在云服务平台上为各个数据协作方创建的虚拟服务设备。
所述数据协作平台为与各个数据协作方创建的服务程序实例之间的数据同步通道,具体可以是基于服务程序实例的调用地址,在服务程序实例之间创建的服务调用通道。
其中,上述调用地址的类型,在本说明书中不进行特别限定;
在一示例性的实施例中,具体可以采用与各个服务程序实例对应的至少一台服务设备共用的域名访问地址(即url地址),来作为各个服务程序实例对应的调用地址。
在这种情况下,各个服务程序实例之间的服务调用通道,则可以是基于各个服务程序实例对应的至少一台服务设备共用的域名访问地址,在各个服务程序实例之间构建的http调用通道。
当然,在实际应用中,上述调用地址具体也可以是其它形式的诸如接口调用地址,各个服务程序实例之间的服务调用通道,具体也可以是接口调用通道,在本说明书中不再进行一一列举。
在一示例性的实施例中,所述步骤310,可以包括:
响应于所述第二服务程序实例基于维护的所述第一服务程序实例的第一调用地址,发起的针对所述第一服务程序实例的服务调用,获取与所述服务调用对应的调用参数中携带的针对所述第一数据协作方维护的用户数据的数据授权请求。
其中,需要说明的是,由于基于调用地址形成的调用通道,通常都是单向的调用通道,因此第一服务程序实例和第二服务程序之间的服务调用通道,通常可以包括基于第一服务程序实例维护的第二服务程序实例的调用地址形成的,由第一服务程序实例作为调用发起方,上述第二服务程序实例作为被调用方的第一服务调用通道;以及,基于第二服务程序实例维护的第一服务程序实例的调用地址形成的,由第二服务程序实例作为调用发起方,上述第一服务程序实例作为被调用方的第二服务调用通道。
当第二数据协作方具有针对第一数据协作方发布的用户数据的密文数据的跨域转移的数据授权需求时,可以通过数据同步通道向所述第一数据协作方对应的第一服务程序实例发起针对所述第一数据协作方维护的用户数据的数据授权请求;其中,所述数据授权请求包括所述第二数据协作方请求授权的目标用户数据的数据标识。
步骤320:所述第一服务程序实例响应于所述数据授权请求,将所述目标用户数据的密文数据的跨域转移权限针对所述第二数据协作方进行授权处理,并将授权结果通过所述数据同步通道返回给所述第二服务程序实例。
下面结合图9所示的数据跨域授权的示意图加以说明,当第一服务程序实例接收到数据授权请求之后,响应于所述数据授权请求,调用所述第一服务程序实例中的DataAuth组件,由所述DataAuth组件将所述目标用户数据的密文数据的跨域转移权限针对所述第二数据协作方进行授权处理,并将授权结果(如图9中的授权凭证)通过所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道返回给所述第二服务程序实例。
在一示例性的实施例中,所述第一数据协作方为维护的用户数据配置了授权审批流程;其中,所述审批流程包括所述第一数据协作方指定的至少一个审批方;
所述步骤320中第一服务程序实例响应于所述数据授权请求,将所述目标用户数据的密文数据的跨域转移权限针对所述第二数据协作方进行授权处理,包括:
所述第一服务程序实例响应于所述数据授权请求,获取所述第一数据协作方为所述目标用户数据配置的授权审批流程,并触发执行所述授权审批流程,以及响应于所述授权审批流程中包含的各个审批方均审批通过,为所述第二数据协作方生成授权凭证,以将所述目标用户数据的密文数据的跨域转移权限授权给所述第二数据协作方。
例如,每个审批方可以产生5种审批状态:待审批、审批通过、拒绝、撤销、免审批;其中,撤销可以是授权审批流程的申请方(如第二数据协作方)在授权审批流程结束前的任何时刻发起,撤销的授权审批流程立即终止,审批结果为撤销审批。
在授权审批时,按照授权审批流程中的顺序,如果当前审批方获取到的授权审批流程的状态为待审批的状态,则该授权审批流程暂停执行,需要等待当前审批方上传审批结果(审批通过、拒绝、免审批中的一种)后继续执行;如果上传的是拒绝,则授权审批流程立即终止,并将拒绝审批的审批结果通知给申请方。如果上传的是审批通过或免审批,按照授权审批流程的顺序确定是否还有下一个审批方,如果有则下一个审批方将成为新的当前审批方,并切换为待审批的状态;如果没有,则结束授权审批流程,审批结果为各个审批方均审批通过。
其中,第一数据协作方可以指定授权审批流程,所述申请审批流程可以包括默认流程、自定义流程和免审批流程等;其中,默认流程可以是指先由第二数据协作方作为审批方进行审批,再由第一数据协作方作为审批方进行审批;所述自定义流程可以是由第一数据协作方自定义的审批流程。
如图9所示,所述第一服务程序实例通过调用第一服务程序实例中的DataAuth组件,由所述DataAuth组件进行授权处理,以为所述第二数据协作方生成授权凭证,以将所述目标用户数据的密文数据的跨域转移权限授权给所述第二数据协作方。
其中,所述将授权结果通过所述数据同步通道返回给所述第二服务程序实例,可以包括:
基于维护的所述第二服务程序实例的第二调用地址,发起针对所述第二服务程序实例的服务调用,将所述授权凭证作为调用参数同步至所述第二服务程序实例。
在一示例性的实施例中,在将所述授权凭证同步至所述第二服务程序实例之前,还包括:
将所述授权凭证发布至所述数据安全区块链进行存证;
相应的,所述将所述授权凭证作为调用参数同步至所述第二服务程序实例,包括:
将所述授权凭证在所述数据安全区块链上的存证标识作为调用参数同步至所述第二服务程序实例,以使所述第二服务程序实例基于所述存证标识从所述数据安全区块链上获取所述授权凭证。
如图9中所示可以通过调用DataAuth组件将所述授权凭证发布至所述数据安全区块链进行存证;通过将授权凭证存证到数据安全区块链,确保授权凭证不被篡改。
由于数据安全区块链中存证的数据会有一个唯一的存证标识,因此所述将所述授权凭证同步至所述第二服务程序实例,可以包括:
将所述授权凭证在所述数据安全区块链上的存证标识,同步至所述第二服务程序实例,以使所述第二服务程序实例基于所述存证标识从所述数据安全区块链上获取所述授权凭证。
在一示例性的实施例中,如图9中所示在将所述授权凭证同步至所述第二服务程序实例之前,还可以包括:
由DataAuth组件生成针对所述目标用户数据的密文数据的跨域转移权限的授权记录,并将生成的所述授权记录发布至所述数据安全区块链进行存证。
在一示例性的实施例中,所述第一数据协作方为维护的用户数据配置了数据使用规则;其中,所述数据使用规则定义了针对所述用户数据的使用的限制规则;
所述方法还包括:
响应于触发的向所述第二数据协作方跨域转移所述目标用户数据的密文数据的转移任务,基于所述数据使用规则生成针对所述目标用户数据进行使用的使用程序,并通过所述数据同步通道,将所述使用程序和所述目标用户数据的密文数据转移至所述第二服务程序实例,以由所述第二服务程序实例运行所述使用程序,基于所述使用程序包含的所述数据使用规则针对所述目标用户数据的密文数据进行密文计算。
其中,所述通过所述数据同步通道,将所述使用程序和所述目标用户数据的密文数据转移至所述第二服务程序实例,包括:
基于维护的所述第二服务程序实例的第二调用地址,发起针对所述第二服务程序实例的服务调用,将所述使用程序和所述目标用户数据的密文数据作为调用参数转移至所述第二服务程序实例。
如图9所示,当第一服务程序实例中的DataAuth组件在监听到数据安全链上针对目标用户数据的授权记录或跨域转移记录时就可以立即触发上述的转移任务。
本说明书中,所述转移任务可以是在所述第一服务程序实例中的DataAuth组件监听到数据安全链上存证的授权记录时触发的;也可以是所述DataAuth组件监听到链上存证的转移记录是触发的。
与前述授权记录类型的,这里DataAuth组件可以生成将所述目标用户数据的密文数据对应的跨域转移记录,并将生成的所述跨域转移记录发布至所述数据安全链进行存证。所述密文数据转移可以是在转移记录成功上链后执行的,也可以是先进行密文数据转移再上链存证转移记录;一般的,前一种方式相对更为安全。
本说明书中,所述数据使用规则,可以包括以下示出的任一或者多个的组合:
使用模式限制规则;其中,所述使用模式限制规则定义了针对所述目标用户数据的密文数据进行操作时限制使用的操作类型;所述操作类型可以包括允许的计算方式和处理方式。例如允许全等查询、允许模糊查询、允许字符串连接、允许字符串长度大小、允许截取子串、允许字符串转小写、允许字符串转大写等等。
使用次数限制规则;其中,所述使用次数限制规则定义了针对所述目标用户数据的密文数据进行操作时限制使用的使用次数。
脱敏限制规则;其中,所述脱敏限制规则定义了针对所述目标用户数据的密文数据进行密文计算得到的密文结果对应的明文内容的脱敏策略。所述脱敏策略例如哈希脱敏、遮羞脱敏、假名脱敏等等。
其中,所述使用程序包括SDK程序包。
本说明书中,所述SDK程序包中包含的是与上述的数据使用规则相关的一些函数。这些函数限制对目标用户数据的密文数据的使用。比如,规定只能对密文数据进行A运算,那SDK程序包只包含与A运算相关的计算函数(算子)。
在一示例性的实施例中,所述方法还可以包括:
所述第一服务程序实例接收所述第二服务程序实例通过所述数据同步通道发起的解密请求;其中,所述解密请求包括针对所述目标用户数据的密文数据进行密文计算得到的密文计算结果和所述授权凭证;
所述第一服务程序实例响应于所述解密请求,针对所述授权凭证进行验证,并响应于针对所述授权凭证的验证通过,对所述密文计算结果进行解密得到明文计算结果,并基于所述数据使用规则中包含的脱敏限制规则中定义的脱敏策略,对所述明文计算结果进行脱敏处理,并通过所述数据同步通道将所述脱敏处理后的明文计算结果同步至所述第二服务程序实例。
进一步参考图10所示的数据跨域转移的示意图,在第一服务程序实例通过数据同步通道将使用程序以及目标用户数据对应的密文数据发送给第二服务程序实例之后,所述第二服务程序实例就可以在使用程序指定的数据使用规则的限制下,对密文数据进行相关业务的密文计算。由于是对密文数据进行密文计算,因此计算得到也是密文的计算结果;由于计算结果是密文的,因此第二服务程序实例还需要调用第二服务程序实例中的DataAuth组件,由所述DataAuth组件通过数据同步通道将这个密文的计算结果和授权凭证发送给第一服务程序实例;进而由所述第一服务程序实例中的DataAuth组件对授权凭证进行验证,验证通过后进一步有DataAuth组件对密文的计算结果进行解密,并将解密的明文的计算结果通过数据同步通道返回给第二服务程序实例。
其中,所述第一服务程序实例接收所述第二服务程序实例通过所述数据同步通道发起的解密请求,包括:
响应于所述第二服务程序实例基于维护的所述第一服务程序实例的第一调用地址,发起的针对所述第一服务程序实例的服务调用,获取与所述服务调用对应的调用参数中携带的解密请求;
通过所述数据同步通道将所述脱敏处理后的明文计算结果同步至所述第二服务程序实例,包括:
基于维护的所述第二服务程序实例的第二调用地址,发起针对所述第二服务程序实例的服务调用,将所述脱敏处理后的明文计算结果作为调用参数同步至所述第二服务程序实例。
综上本说明书提供的数据跨域授权实施例,通过在数据协作平台上为接入该数据协作平台的各个数据协作方分别创建一个独立的服务程序实例,并在为各个数据协作方创建的服务程序实例之间创建数据同步通道,使得接入数据协作平台的各个数据协作方,在具有将维护的用户数据的密文数据跨域转移至其它的数据协作方的需求时,可以基于该数据同步通道与其它的数据协作方实时的进行数据同步。
与前述基于区块链的多实例组网方法实施例相对应,本说明书还提供了基于区块链的多实例组网装置的实施例。所述装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序读取到内存中运行形成的。从硬件层面而言,如图11所示,为本说明书基于区块链的多实例组网装置所在设备的一种硬件结构图,除了图11所示的处理器、网络接口、内存以及非易失性存储器之外,实施例中装置所在的设备通常根据数据同步实际功能,还可以包括其他硬件,对此不再赘述。
请参见图12,为本说明书一实施例提供的基于区块链的多实例组网装置的模块图,所述装置对应了图2所示实施例。所述装置应用于基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;所述装置包括:
接收单元410,接收第一数据协作方发起的接入请求;其中,所述接入请求包括与所述第一数据协作方对应的至少一台服务设备的设备标识;
响应单元420,响应于所述接入请求,将所述至少一台服务设备作为区块链节点加入至所述数据安全区块链,并创建与所述第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;
确定单元430,确定是否创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;
组网单元440,在创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例的情况下,创建所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道;其中,所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述服务程序实例用于对与其关联的服务设备上存储的用户数据对应的密文数据的跨链转移进行授权管理。
在一示例性的实施例中,所述数据同步通道包括基于所述服务程序实例的调用地址,在所述服务程序实例之间创建的服务调用通道。
在一示例性的实施例中,与所述服务程序实例对应的调用地址,包括与所述服务程序实例关联的服务设备的域名访问地址;所述调用通道包括http调用通道。
在一示例性的实施例中,所述装置还包括:
第一接收子单元,所述第一服务程序实例接收设备注册请求;其中,所述设备注册请求包括所述第一数据协作方新增的服务设备的设备信息;
第一响应子单元,响应于所述设备注册请求,所述第一服务程序实例建立所述新增的服务设备和该第一服务程序实例的关联关系,并将所述新增的服务设备的设备信息和所述关联关系在与所述第一服务程序实例对应的数据库中进行存储;以及,
第一同步子单元,基于维护的与所述第二服务程序实例对应的调用地址,发起针对所述第二服务程序实例的服务调用,将所述新增的服务设备的设备信息同步至所述第二服务程序实例,在与所述第二服务程序实例对应的数据库中进行同步存储。
在一示例性的实施例中,所述装置还包括:
第二接收子单元,所述第一服务程序实例接收区块链设备更新请求;其中,所述区块链设备更新请求包括与所述第一服务程序实例关联的任一目标服务设备的待更新的设备信息;
第二响应子单元,响应于所述区块链设备更新请求,所述第一服务程序实例基于待更新的设备信息更新与所述第一服务程序实例对应的数据库中存储的所述目标服务设备的设备信息;以及,
第二同步子单元,基于维护的与所述第二服务程序实例对应的调用地址,发起针对所述第二服务程序实例的服务调用,将所述目标服务设备的更新后的设备信息同步至所述第二服务程序实例,对与所述第二服务程序实例对应的数据库中存储的所述目标服务设备的设备信息进行同步更新。
在一示例性的实施例中,所述装置还包括:
第三接收子单元,所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备发送的数据注册请求;其中,所述数据注册请求包括所述目标服务设备请求注册的数据集;
第三响应子单元,响应于所述数据注册请求,所述第一服务程序实例生成与所述数据集对应的数据属性信息,并将所述数据集以及所述数据属性信息存储至所述目标服务设备的本地数据库;以及,
第三同步子单元,将与所述数据集对应的数据属性信息发布至所述数据安全区块链进行存证,并基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,将与所述数据属性信息对应的区块链存证标识同步至所述第二服务程序实例,以使所述第二服务程序实例基于该区块链存证标识从所述数据安全区块链上获取所述数据属性信息,并将获取到的数据属性信息在与所述第二服务程序实例对应的数据库中进行同步存储。
在一示例性的实施例中,所述装置还包括:
第四接收子单元,所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备的数据更新请求;其中,所述数据更新请求包括所述目标服务设备请求更新的数据集;
第四响应子单元,响应于所述数据更新请求,所述第一服务程序实例重新生成与所述数据集对应的更新后的数据属性信息,并更新所述目标服务设备的本地数据库中存储的所述数据集和所述数据集的数据属性信息;以及,
第四同步子单元,所述第一服务程序实例将与所述数据集对应的更新后的数据属性信息发布至所述数据安全区块链进行存证,基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,将所述更新后的数据属性信息的区块链存证标识同步至所述第二服务程序实例,以使所述第二服务程序实例基于该区块链存证标识从所述数据安全区块链上获取所述更新后的数据属性信息,并基于获取到的更新后的数据属性信息对与所述第二服务程序实例对应的数据库中存储的与所述数据集对应的数据属性信息进行同步更新。
在一示例性的实施例中,所述装置还包括:
第五接收子单元,所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备发送的数据删除请求;其中,所述数据删除请求包括所述目标服务设备请求删除的目标数据集的数据集标识;
第五响应子单元,响应于所述数据删除请求,所述第一服务程序实例删除所述目标服务设备的本地数据库中存储的所述目标数据集和所述目标数据集的数据属性信息;
第五同步子单元,基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,以将所述目标数据集的删除通知同步至所述第二服务程序实例,以触发所述第二服务程序实例基于所述删除通知将与所述第二服务程序实例对应的数据库中存储的所述目标数据集的数据属性信息同步的进行删除处理。
在一示例性的实施例中,所述装置还包括:
所述数据协作平台包括区块链云服务平台;与所述各个数据协作方对应的服务设备包括在云服务平台上为各个数据协作方创建的虚拟服务设备。
请参见图13,为本说明书一实施例提供的数据跨域授权装置的模块图,所述装置对应了图8所示实施例。所述装置应用于基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;区块链协作平台上创建了与所述多个数据协作方中的第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;以及,与所述多个数据协作方中的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;所述服务程序实例用于对与其关联的服务设备上存储的用户数据的密文数据的跨域转移进行授权管理;所述数据协作平台为所述第一服务程序实例和所述第二服务程序实例之间创建了数据同步通道;所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述装置包括:
接收单元510,所述第一服务程序实例接收所述第二数据协作方通过所述数据同步通道发起的针对所述第一数据协作方维护的用户数据的数据授权请求;其中,所述数据授权请求包括所述第二数据协作方请求授权的目标用户数据的数据标识;
授权单元520,所述第一服务程序实例响应于所述数据授权请求,将所述目标用户数据的密文数据的跨域转移权限针对所述第二数据协作方进行授权处理,并将授权结果通过所述数据同步通道返回给所述第二服务程序实例。
在一示例性的实施例中,所述数据同步通道包括基于所述服务程序实例的调用地址,在所述服务程序实例之间创建的服务调用通道。
在一示例性的实施例中,与所述服务程序实例对应的调用地址,包括与所述服务程序实例关联的服务设备的域名访问地址;所述调用通道包括http调用通道。
在一示例性的实施例中,所述接收单元510,包括:
响应于所述第二服务程序实例基于维护的所述第一服务程序实例的第一调用地址,发起的针对所述第一服务程序实例的服务调用,获取与所述服务调用对应的调用参数中携带的针对所述第一数据协作方维护的用户数据的数据授权请求。
在一示例性的实施例中,所述第一数据协作方为维护的用户数据配置了授权审批流程;其中,所述审批流程包括所述第一数据协作方指定的至少一个审批方;
所述授权单元520中的第一服务程序实例响应于所述数据授权请求,将所述目标用户数据的密文数据的跨域转移权限针对所述第二数据协作方进行授权处理,包括:
所述第一服务程序实例响应于所述数据授权请求,获取所述第一数据协作方为所述目标用户数据配置的授权审批流程,并触发执行所述授权审批流程,以及响应于所述授权审批流程中包含的各个审批方均审批通过,为所述第二数据协作方生成授权凭证,以将所述目标用户数据的密文数据的跨域转移权限授权给所述第二数据协作方。
在一示例性的实施例中,所述授权单元520中的将授权结果通过所述数据同步通道返回给所述第二服务程序实例,包括:
基于维护的所述第二服务程序实例的第二调用地址,发起针对所述第二服务程序实例的服务调用,将所述授权凭证作为调用参数同步至所述第二服务程序实例。
在一示例性的实施例中,在所述将授权结果通过所述数据同步通道返回给所述第二服务程序实例,所述授权单元520还包括:
将所述授权凭证发布至所述数据安全区块链进行存证;
所述授权单元520中的将所述授权凭证同步至所述第二服务程序实例,包括:
将所述授权凭证在所述数据安全区块链上的存证标识作为调用参数同步至所述第二服务程序实例,以使所述第二服务程序实例基于所述存证标识从所述数据安全区块链上获取所述授权凭证。
在一示例性的实施例中,在将所述授权凭证同步至所述第二服务程序实例之前,所述授权单元520还包括:
生成针对所述目标用户数据的密文数据的跨域转移权限的授权记录,并将生成的所述授权记录发布至所述数据安全区块链进行存证。
在一示例性的实施例中,所述第一数据协作方为维护的用户数据配置了数据使用规则;其中,所述数据使用规则定义了针对所述用户数据的使用的限制规则;
所述装置还包括:
计算单元,响应于触发的向所述第二数据协作方跨域转移所述目标用户数据的密文数据的转移任务,基于所述数据使用规则生成针对所述目标用户数据进行使用的使用程序,并通过所述数据同步通道,将所述使用程序和所述目标用户数据的密文数据转移至所述第二服务程序实例,以由所述第二服务程序实例运行所述使用程序,基于所述使用程序包含的所述数据使用规则针对所述目标用户数据的密文数据进行密文计算。
在一示例性的实施例中,所述计算单元中的通过所述数据同步通道,将所述使用程序和所述目标用户数据的密文数据转移至所述第二服务程序实例,包括:
基于维护的所述第二服务程序实例的第二调用地址,发起针对所述第二服务程序实例的服务调用,将所述使用程序和所述目标用户数据的密文数据作为调用参数转移至所述第二服务程序实例。
在一示例性的实施例中,还包括:
存证子单元,生成将所述目标用户数据的密文数据对应的跨域转移记录,并将生成的所述跨域转移记录发布至所述数据安全区块链进行存证。
在一示例性的实施例中,所述数据使用规则,包括以下示出的任一或者多个的组合:
使用模式限制规则;其中,所述使用模式限制规则定义了针对所述目标用户数据的密文数据进行操作时限制使用的操作类型;
使用次数限制规则;其中,所述使用次数限制规则定义了针对所述目标用户数据的密文数据进行操作时限制使用的使用次数;
脱敏限制规则;其中,所述脱敏限制规则定义了针对所述目标用户数据的密文数据进行密文计算得到的密文结果对应的明文内容的脱敏策略。
在一示例性的实施例中,所述使用程序包括SDK程序包。
在一示例性的实施例中,所述装置还包括:
接收子单元,所述第一服务程序实例接收所述第二服务程序实例通过所述数据同步通道发起的解密请求;其中,所述解密请求包括针对所述目标用户数据的密文数据进行密文计算得到的密文计算结果和所述授权凭证;
解密子单元,所述第一服务程序实例响应于所述解密请求,针对所述授权凭证进行验证,并响应于针对所述授权凭证的验证通过,对所述密文计算结果进行解密得到明文计算结果,并基于所述数据使用规则中包含的脱敏限制规则中定义的脱敏策略,对所述明文计算结果进行脱敏处理,并通过所述数据同步通道将所述脱敏处理后的明文计算结果同步至所述第二服务程序实例。
在一示例性的实施例中,所述接收子单元,包括:
响应于所述第二服务程序实例基于维护的所述第一服务程序实例的第一调用地址,发起的针对所述第一服务程序实例的服务调用,获取与所述服务调用对应的调用参数中携带的解密请求;
通过所述数据同步通道将所述脱敏处理后的明文计算结果同步至所述第二服务程序实例,包括:
基于维护的所述第二服务程序实例的第二调用地址,发起针对所述第二服务程序实例的服务调用,将所述脱敏处理后的明文计算结果作为调用参数同步至所述第二服务程序实例。
在一示例性的实施例中,所述区块链协作平台包括区块链云服务平台;与所述各个数据协作方对应的服务设备包括在云服务平台上为各个数据协作方创建的虚拟服务设备。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上图12描述的基于区块链的多实例组网装置以及图13描述的数据跨域授权的内部功能模块和结构示意,其实质上的执行主体可以为一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述任一基于区块链的多实例组网方法的实施例。
以上图13描述的数据跨域授权的内部功能模块和结构示意,其实质上的执行主体可以为一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述任一数据跨域授权方法的实施例。
在上述电子设备的实施例中,应理解,该处理器可以是CPU,还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-only memory,缩写:ROM)、随机存取存储器(英文:random access memory,简称:RAM)、快闪存储器、硬盘或者固态硬盘。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
Claims (12)
1.一种基于区块链的多实例组网方法,所述方法应用于基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;所述方法包括:
接收第一数据协作方发起的接入请求;其中,所述接入请求包括与所述第一数据协作方对应的至少一台服务设备的设备标识;
响应于所述接入请求,将所述至少一台服务设备作为区块链节点加入至所述数据安全区块链,并创建与所述第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;以及,
确定是否创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;如果是,创建所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道;
其中,所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述服务程序实例用于对与其关联的服务设备上存储的用户数据对应的密文数据的跨链转移进行授权管理。
2.根据权利要求1所述的方法,所述数据同步通道包括基于所述服务程序实例的调用地址,在所述服务程序实例之间创建的服务调用通道。
3.根据权利要求2所述的方法,与所述服务程序实例对应的调用地址,包括与所述服务程序实例关联的服务设备的域名访问地址;所述调用通道包括http调用通道。
4.根据权利要求2所述的方法,所述方法还包括:
所述第一服务程序实例接收设备注册请求;其中,所述设备注册请求包括所述第一数据协作方新增的服务设备的设备信息;
响应于所述设备注册请求,所述第一服务程序实例建立所述新增的服务设备和该第一服务程序实例的关联关系,并将所述新增的服务设备的设备信息和所述关联关系在与所述第一服务程序实例对应的数据库中进行存储;以及,
基于维护的与所述第二服务程序实例对应的调用地址,发起针对所述第二服务程序实例的服务调用,将所述新增的服务设备的设备信息同步至所述第二服务程序实例,在与所述第二服务程序实例对应的数据库中进行同步存储。
5.根据权利要求4所述的方法,所述方法还包括:
所述第一服务程序实例接收区块链设备更新请求;其中,所述区块链设备更新请求包括与所述第一服务程序实例关联的任一目标服务设备的待更新的设备信息;
响应于所述区块链设备更新请求,所述第一服务程序实例基于待更新的设备信息更新与所述第一服务程序实例对应的数据库中存储的所述目标服务设备的设备信息;以及,
基于维护的与所述第二服务程序实例对应的调用地址,发起针对所述第二服务程序实例的服务调用,将所述目标服务设备的更新后的设备信息同步至所述第二服务程序实例,对与所述第二服务程序实例对应的数据库中存储的所述目标服务设备的设备信息进行同步更新。
6.根据权利要求2所述的方法,所述方法还包括:
所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备发送的数据注册请求;其中,所述数据注册请求包括所述目标服务设备请求注册的数据集;
响应于所述数据注册请求,所述第一服务程序实例生成与所述数据集对应的数据属性信息,并将所述数据集以及所述数据属性信息存储至所述目标服务设备的本地数据库;以及,
将与所述数据集对应的数据属性信息发布至所述数据安全区块链进行存证,并基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,将与所述数据属性信息对应的区块链存证标识同步至所述第二服务程序实例,以使所述第二服务程序实例基于该区块链存证标识从所述数据安全区块链上获取所述数据属性信息,并将获取到的数据属性信息在与所述第二服务程序实例对应的数据库中进行同步存储。
7.根据权利要求6所述的方法,所述方法还包括:
所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备的数据更新请求;其中,所述数据更新请求包括所述目标服务设备请求更新的数据集;
响应于所述数据更新请求,所述第一服务程序实例重新生成与所述数据集对应的更新后的数据属性信息,并更新所述目标服务设备的本地数据库中存储的所述数据集和所述数据集的数据属性信息;以及,
所述第一服务程序实例将与所述数据集对应的更新后的数据属性信息发布至所述数据安全区块链进行存证,基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,将所述更新后的数据属性信息的区块链存证标识同步至所述第二服务程序实例,以使所述第二服务程序实例基于该区块链存证标识从所述数据安全区块链上获取所述更新后的数据属性信息,并基于获取到的更新后的数据属性信息对与所述第二服务程序实例对应的数据库中存储的与所述数据集对应的数据属性信息进行同步更新。
8.根据权利要求7所述的方法,所述方法还包括:
所述第一服务程序实例接收与所述第一服务程序实例关联的任一目标服务设备发送的数据删除请求;其中,所述数据删除请求包括所述目标服务设备请求删除的目标数据集的数据集标识;
响应于所述数据删除请求,所述第一服务程序实例删除所述目标服务设备的本地数据库中存储的所述目标数据集和所述目标数据集的数据属性信息,并基于维护的所述第二服务程序实例的调用地址,发起针对所述第二服务程序实例的服务调用,以将所述目标数据集的删除通知同步至所述第二服务程序实例,以触发所述第二服务程序实例基于所述删除通知将与所述第二服务程序实例对应的数据库中存储的所述目标数据集的数据属性信息同步的进行删除处理。
9.根据权利要求1所述的方法,所述数据协作平台包括区块链云服务平台;与各个数据协作方对应的服务设备包括在云服务平台上为各个数据协作方创建的虚拟服务设备。
10.一种基于区块链的多实例组网装置,所述装置应用于基于数据安全区块链的数据协作平台;所述数据安全区块链中的区块链节点包括与多个数据协作方分别对应的服务设备;所述装置包括:
接收单元,接收第一数据协作方发起的接入请求;其中,所述接入请求包括与所述第一数据协作方对应的至少一台服务设备的设备标识;
响应单元,响应于所述接入请求,将所述至少一台服务设备作为区块链节点加入至所述数据安全区块链,并创建与所述第一数据协作方对应的至少一台服务设备关联的第一服务程序实例;
确定单元,确定是否创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例;
组网单元,在创建了与所述多个数据协作方中除了所述第一数据协作方以外的第二数据协作方对应的至少一台服务设备关联的第二服务程序实例的情况下,创建所述第一服务程序实例和所述第二服务程序实例之间的数据同步通道;其中,所述多个数据协作方分别对应不同的数据域;所述数据同步通道用于在所述第一服务程序实例与所述第二服务程序实例之间进行跨域的数据同步;所述服务程序实例用于对与其关联的服务设备上存储的用户数据对应的密文数据的跨链转移进行授权管理。
11.一种电子设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述权利要求1-9中任一项所述的方法。
12.一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-9中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211352499.3A CN115801344A (zh) | 2022-10-31 | 2022-10-31 | 基于区块链的多实例组网方法及装置和电子设备 |
PCT/CN2022/135245 WO2024092928A1 (zh) | 2022-10-31 | 2022-11-30 | 基于区块链的多实例组网方法及装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211352499.3A CN115801344A (zh) | 2022-10-31 | 2022-10-31 | 基于区块链的多实例组网方法及装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115801344A true CN115801344A (zh) | 2023-03-14 |
Family
ID=85434706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211352499.3A Pending CN115801344A (zh) | 2022-10-31 | 2022-10-31 | 基于区块链的多实例组网方法及装置和电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115801344A (zh) |
WO (1) | WO2024092928A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110046998B (zh) * | 2019-01-31 | 2020-04-14 | 阿里巴巴集团控股有限公司 | 跨链用权***及方法、装置、电子设备、存储介质 |
CN114827135A (zh) * | 2021-01-12 | 2022-07-29 | 腾讯科技(深圳)有限公司 | 一种跨链协同治理***、方法、设备及存储介质 |
CN113986865A (zh) * | 2021-08-17 | 2022-01-28 | 哈尔滨海邻科信息技术有限公司 | 一种基于区块链的跨部门业务协同***及方法 |
CN115766123A (zh) * | 2022-10-31 | 2023-03-07 | 蚂蚁区块链科技(上海)有限公司 | 数据跨域授权方法及装置和电子设备 |
-
2022
- 2022-10-31 CN CN202211352499.3A patent/CN115801344A/zh active Pending
- 2022-11-30 WO PCT/CN2022/135245 patent/WO2024092928A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024092928A1 (zh) | 2024-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10708060B2 (en) | System and method for blockchain-based notification | |
CN110032865B (zh) | 一种权限管理方法、装置和存储介质 | |
CN109522735B (zh) | 一种基于智能合约的数据权限验证方法及装置 | |
CN111461723B (zh) | 基于区块链的数据处理***及方法、装置 | |
CN111144881A (zh) | 对资产转移数据的选择性访问 | |
CN109379336A (zh) | 一种统一认证方法、分布式***和计算机可读存储介质 | |
CN108259413B (zh) | 一种获取证书、鉴权的方法及网络设备 | |
US9871778B1 (en) | Secure authentication to provide mobile access to shared network resources | |
CN113271311B (zh) | 一种跨链网络中的数字身份管理方法及*** | |
WO2020001162A1 (zh) | 容器管理方法、装置和设备 | |
WO2016131171A1 (zh) | 一种针对vnf包进行操作的方法及装置 | |
WO2023124746A1 (zh) | 跨子网交互的权限控制 | |
CN115328645A (zh) | 计算任务调度方法、计算任务调度装置及电子设备 | |
JP2022552110A (ja) | ブロックチェーンベースのワークフローノード認証方法及びデバイス | |
WO2024092929A1 (zh) | 数据跨域授权方法及装置和电子设备 | |
CN113259464B (zh) | 组建区块链子网的方法和区块链*** | |
CN113271366B (zh) | 基于区块链和安全计算的数据共享*** | |
US11481515B2 (en) | Confidential computing workflows | |
US10326833B1 (en) | Systems and method for processing request for network resources | |
Nagy et al. | Peershare: A system secure distribution of sensitive data among social contacts | |
CN115801344A (zh) | 基于区块链的多实例组网方法及装置和电子设备 | |
CN112436946B (zh) | 一种基于区块链的通信授权方法、装置、设备和存储介质 | |
CN113590711A (zh) | 一种高弹性可扩展的多链数据分级共享存储***及方法 | |
CN117118640A (zh) | 一种数据处理方法、装置、计算机设备以及可读存储介质 | |
CN115145976A (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 |