CN112685496A - 分布式系统及其数据处理方法 - Google Patents

分布式系统及其数据处理方法 Download PDF

Info

Publication number
CN112685496A
CN112685496A CN201910991365.8A CN201910991365A CN112685496A CN 112685496 A CN112685496 A CN 112685496A CN 201910991365 A CN201910991365 A CN 201910991365A CN 112685496 A CN112685496 A CN 112685496A
Authority
CN
China
Prior art keywords
key
intelligent contract
request
operation request
calling
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910991365.8A
Other languages
English (en)
Other versions
CN112685496B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201910991365.8A priority Critical patent/CN112685496B/zh
Publication of CN112685496A publication Critical patent/CN112685496A/zh
Application granted granted Critical
Publication of CN112685496B publication Critical patent/CN112685496B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本申请提供分布式系统及其数据处理方法,其中所述分布式系统包括:分布式节点,配置有局域智能合约以及系统智能合约;所述分布式节点用于接收来自客户端的操作请求,根据所述操作请求确定至少一个目标局域智能合约以及操作信息,基于所述操作请求调用所述系统智能合约;所述系统智能合约用于根据所述操作请求,利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。

Description

分布式系统及其数据处理方法
技术领域
本申请涉及计算机及信息处理技术领域,特别涉及一种分布式系统、分布式系统的数据处理方法、计算设备、以及计算机可读存储介质。
背景技术
随着计算机与网络技术的不断发展,分布式系统的应用越来越广泛,它将计算资源和存储资源分散到不同的分布式节点,通过网络将各个分布式节点联系起来。区块链是一种特殊的分布式系统,基于分布式账本技术实现,具有去中心化、不可篡改等特点,适用于诸多对数据可靠性具有较高需求的应用场景。
基于区块链的特性,链上的数据与业务逻辑都严格运行在预先约束好的规则之下,故对区块链上的状态进行订正或者修改是较为困难的。然而,在实际应用中,如果区块链上的资产拥有者的密钥丢失,需要重置密钥,或者因区块链的智能合约存在漏洞被黑客攻击,导致链上数据发生异常改变,就需要对区块链上的数据进行修复或者重置。因此,基于数据的安全可靠性要求,需要在不破坏区块链特性的前提下实现数据的订正或修复。
发明内容
有鉴于此,本申请提供了一种分布式系统、分布式系统的数据处理方法、计算设备、以及计算机可读存储介质,实现对分布式系统的数据进行订正和修复,有效提高了分布式系统的安全性和可靠性。
根据本申请实施例的第一方面,提供了一种分布式系统,包括:
分布式节点,配置有局域智能合约以及系统智能合约;
所述分布式节点用于接收来自客户端的操作请求,根据所述操作请求确定至少一个目标局域智能合约以及操作信息,基于所述操作请求调用所述系统智能合约;
所述系统智能合约用于根据所述操作请求,利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
可选的,所述分布式节点还用于:
解析所述操作请求,确定所述操作请求的调用权限,在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约。
可选的,所述分布式节点还用于:
获取所述分布式系统中的对等节点对所述操作请求的验证信息,基于所述验证信息确定所述操作请求的验证结果;
在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约。
根据本申请实施例的第二方面,提供了一种分布式系统的数据处理方法,包括:
接收来自客户端的操作请求;
根据所述操作请求确定至少一个目标局域智能合约以及操作信息,并基于所述操作请求调用系统智能合约;
运行所述系统智能合约,以根据所述操作请求利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
可选的,所述基于所述操作请求调用系统智能合约,包括:
解析所述操作请求,获得所述操作请求的调用权限;
在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约。
可选的,所述基于所述操作请求调用系统智能合约,包括:
获取所述分布式系统的对等节点对所述操作请求的验证信息;
基于所述验证信息确定所述操作请求的验证结果;
在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约。
根据本申请实施例的第三方面,提供了一种计算设备,包括:
存储器,用于存储计算机可执行指令;
处理器,耦合至所述存储器,用于执行所述计算机可执行指令;
所述计算机可执行指令,包括:
接收来自客户端的操作请求;
根据所述操作请求确定至少一个目标局域智能合约以及操作信息,并基于所述操作请求调用系统智能合约;
运行所述系统智能合约,以根据所述操作请求利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
根据本申请实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现任意一项所述分布式系统的数据处理方法的步骤。
本申请提供的分布式系统,通过配置和调用系统智能合约,从而根据操作请求对目标局域智能合约对应的数据进行订正和修复,保障了系统的安全性和可靠性。
附图说明
图1是本申请实施例提供的一种分布式系统的示意图;
图2是本申请实施例提供的一种分布式系统的数据处理的流程图;
图3是本申请实施例提供的一种分布式系统应用于场景一的示意图;
图4是本申请实施例提供的一种分布式系统的数据处理方法应用于场景一的流程图;
图5是本申请实施例提供的一种分布式系统应用于场景二的示意图;
图6是本申请实施例提供的一种分布式系统的数据处理方法应用于场景二的流程图;
图7是本申请实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请提供了一种分布式系统、分布式系统的数据处理方法、计算设备、以及计算机可读存储介质。在下面的实施例中逐一进行详细说明。
图1是根据本申请实施例提供的一种分布式系统的示意图,其中,所述分布式系统100包括分布式节点102,配置有局域智能合约104以及系统智能合约106。
分布式节点102:用于接收来自客户端的操作请求,根据所述操作请求确定至少一个目标局域智能合约以及操作信息,基于所述操作请求调用所述系统智能合约106。
系统智能合约106:用于根据所述操作请求,利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
实际应用中,所述局域智能合约104可以是多个,如包括局域智能合约1,局域智能合约2…局域智能合约n,所述操作请求也可以是多个,如包括操作请求1,操作请求2,操作请求3…操作请求m。
可选的,所述分布式节点102还用于解析所述操作请求,确定所述操作请求的调用权限,在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约106。
可选的,所述分布式节点102还用于获取所述分布式系统100中的对等节点对所述操作请求的验证信息,基于所述验证信息确定所述操作请求的验证结果;在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约106。
可选的,所述分布式节点102还用于解析所述操作请求,确定所述操作请求对应的业务逻辑类型以及业务调用权限,在所述业务调用权限满足所述业务逻辑类型对应的调用条件的情况下,调用所述系统智能合约106。
具体实施时,在所述分布式节点102根据所述操作请求确定至少一个目标局域智能合约的过程中,需要解析所述操作请求,获得至少一个合约标识;基于所述至少一个合约标识确定所述至少一个目标局域智能合约。
可选的,所述分布式系统100还配置有账本模块,所述账本模块用于接收所述分布式系统100中的对等节点对所述操作结果的反馈信息,根据所述反馈信息,统计所述对等节点针对所述操作结果进行签名的签名数目,在所述签名数目大于阈值的情况下,确定所述操作结果经背书。
进一步的,所述账本模块还用于将经背书后的所述操作结果添加至所述至少一个目标局域智能合约对应的账本。
本申请提供的分布式系统,通过配置和调用系统智能合约,从而根据操作请求对目标局域智能合约对应的数据进行订正和修复,保障了系统的安全性和可靠性。
本申请还提供了一种分布式系统的数据处理方法,与上述分布式系统相对应,如图2所示,包括以下步骤:
步骤202:接收来自客户端的操作请求。
步骤204:根据所述操作请求确定至少一个目标局域智能合约以及操作信息,并基于所述操作请求调用系统智能合约。
进一步的,所述基于所述操作请求调用系统智能合约,包括:解析所述操作请求,获得所述操作请求的调用权限;在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约。
更进一步的,所述基于所述操作请求调用系统智能合约,还包括:获取所述分布式系统的对等节点对所述操作请求的验证信息;基于所述验证信息确定所述操作请求的验证结果;在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约。
具体实施时,所述基于所述操作请求调用系统智能合约,包括:解析所述操作请求,确定所述操作请求对应的业务逻辑类型以及业务调用权限;在所述业务调用权限满足所述业务逻辑类型对应的调用条件的情况下,调用所述系统智能合约。
进一步的,所述根据所述操作请求确定至少一个目标局域智能合约,包括:解析所述操作请求,获得至少一个合约标识;基于所述至少一个合约标识确定所述至少一个目标局域智能合约。
步骤206:运行所述系统智能合约,以根据所述操作请求利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
进一步的,在对所述至少一个目标局域智能合约对应的数据执行相应操作之后,还包括:获取所述分布式系统的对等节点对所述操作结果的反馈信息;根据所述反馈信息,统计所述对等节点针对所述至少一个目标局域智能合约对应的数据执行相应操作的操作结果进行签名的签名数目;在所述签名数目大于阈值的情况下,确定所述操作结果经背书。
更进一步的,将经背书后的所述操作结果添加至所述至少一个目标局域智能合约对应的账本。
本申请提供的分布式系统的数据处理方法,通过调用系统智能合约,从而根据操作请求对目标局域智能合约对应的数据进行订正和修复,保障了系统的安全性和可靠性。
本申请还提供了一种分布式系统应用于场景一的实施例,以基于分布式账本技术的区块链为例进行描述,如图3所示,其中,区块链300包括区块链节点302,配置有局域智能合约304以及系统智能合约306。
区块链节点302:用于接收来自客户端的操作请求,根据操作请求确定至少一个目标局域智能合约以及操作信息,基于操作请求调用系统智能合约306。
系统智能合约306:用于根据操作请求,利用操作信息对至少一个目标局域智能合约对应的数据执行相应操作。
如图3所示,所述局域智能合约304包括局域智能合约1,局域智能合约2…局域智能合约n,所述操作请求包括操作请求1,操作请求2,操作请求3…操作请求m。
实际应用中,在区块链节点302接收来自客户端的操作请求,需要根据所述操作请求确定目标局域智能合约。以图3中的操作请求1为例,若根据操作请求1确定其目标局域智能合约为局域智能合约1,且所述操作请求1的权限支持调用局域智能合约1,则响应于该操作请求1,调用局域智能合约1对其域内数据进行操作。在另一种情况下,以图3中的操作请求m为例,若根据操作请求m确定其目标局域智能合约为局域智能合约1,并且所述操作请求m对应于系统智能合约306的调用,则需要确定所述操作请求m对所述系统智能合约306的调用权限,在确定调用权限满足预设的调用条件的情况下,则可以调用系统智能合约306,运行该系统智能合约306对所述局域智能合约1域内的数据进行操作。
具体实施时,区块链节点302接收的操作请求可以是数据修复请求,操作信息可以是修复信息,此时,可以由区块链节点302解析数据修复请求,若确定所述操作请求对应于系统智能合约306的调用,则获取数据修复请求的调用权限,在调用权限满足预设的调用条件的情况下,调用系统智能合约306。
其中,预设的调用条件可以是区块链300中对等节点对区块链节点302调用系统智能合约306的认同率大于或者等于阈值。所述认同率根据认同区块链节点302调用系统智能合约306的对等节点数目与区块链300中的对等节点数目计算确定。该阈值可以根据安全可靠性的实际要求设置,例如70%、80%或90%,或者数目达到预设的数量等。
具体实施时,还可以由区块链节点302获取区块链300中的对等节点对数据修复请求的验证信息,基于验证信息确定数据修复请求的验证结果,在验证结果为验证通过的情况下,确定调用权限满足预设的调用条件,根据所述数据修复请求调用系统智能合约306。
其中,验证结果可以是区块链300中对等节点预设的验证信息与数据修复请求的验证信息的匹配结果。在所述数据修复请求的验证信息与所述区块链300中对等节点预设的验证信息均匹配的情况下,说明验证结果为验证通过,确定所述调用权限满足预设的调用条件。
下面以区块链上的数据发生异常变化需要进行修复的情况为例进行说明。区块链中存在区块链节点p以及区块链节点p的对等节点p1、p2和p3。区块链节点p接收来自客户端的数据修复请求,此时,根据数据修复请求确定目标局域智能合约,如果该数据修复请求对应于系统智能合约的调用,则需要确定数据修复请求对系统智能合约的调用权限,在确定对等节点p1、p2和p3对该数据修复请求的验证信息的验证结果均为匹配的情况下,说明数据修复请求对系统智能合约的调用权限满足预设的调用条件,则区块链节点p有权调用系统智能合约。
进一步的,区块链节点302还可以用于解析数据修复请求,确定数据修复请求对应的业务逻辑类型以及业务调用权限,在业务调用权限满足业务逻辑类型对应的调用条件的情况下,则可调用系统智能合约306。
具体实施时,确定区块链节点302接收到的所述数据修复请求有权调用系统智能合约306的情况下,运行系统智能合约306,利用该修复请求中包含的修复信息(例如键的版本和键值),对至少一个目标局域智能合约对应的数据进行修复,并更新键的版本。
进一步的,区块链300还配置有账本模块,账本模块用于接收区块链300中的对等节点对订正结果的反馈信息,根据反馈信息统计对等节点针对订正结果进行签名的签名数目,在签名数目大于阈值的情况下,确定订正结果经背书。
更进一步的,账本模块还用于将经背书的订正结果添加至目标局域智能合约对应的账本。
其中,账本用于记录区块链300中的数据,在数据发生变化的情况下,将变化后的数据上传至区块链300时需要进行验证,在验证通过的情况下即为经背书。
以区块链中存在区块链节点p3以及区块链节点p3的对等节点p4、p5、p6和p7为例进行说明。区块链节点p3通过系统智能合约对数据进行修复,在将数据修复结果上传至区块链配置的账本模块的过程中,账本模块通过接收对等节点p4、p5、p6和p7针对数据修复结果的反馈信息,根据反馈信息确定对等节点p4、p5和p6进行了签名,签名数目大于阈值,确定所述数据修复结果经背书,此时账本模块可以将经背书的数据修复结果添加至账本。
本申请实施例中,区块链节点302接收来自客户端的操作请求,对操作请求进行解析,判断其调用权限,在满足预设的调用条件的情况下,才能够调用系统智能合约306,通过对系统智能合约306的调用和运行,实现跨域订正/修复功能,保障了链上数据的安全性。
本申请还提供了一种分布式系统的数据处理方法应用于场景一的实施例,与上述区块链300相对应,该方法应用于区块链节点302,包括以下步骤:
接收来自客户端的操作请求。
根据操作请求确定至少一个目标局域智能合约以及操作信息,并基于操作请求调用系统智能合约。
运行所述系统智能合约,以根据操作请求利用操作信息对至少一个目标局域智能合约对应的数据执行相应操作。
实际应用中,在区块链节点接收来自客户端的操作请求,需要根据所述操作请求确定目标局域智能合约。例如,操作请求包括操作请求1,操作请求2,操作请求3…操作请求m,局域智能合约包括局域智能合约1,局域智能合约2,局域智能合约3…局域智能合约n;基于此,若根据操作请求1确定其目标局域智能合约为局域智能合约1,且所述操作请求1的权限是支持调用局域智能合约1,则响应于该操作请求1,调用局域智能合约1对其域内数据进行操作。在另一种情况下,若根据操作请求m确定其目标局域智能合约为局域智能合约1,并且所述操作请求对应于系统智能合约的调用权限,则需要确定所述操作请求m对所述系统智能合约的调用权限,在确定调用权限满足预设的调用条件的情况下,则可以调用系统智能合约,再通过运行该系统智能合约对所述局域智能合约1域内的数据进行操作。
具体实施时,所述操作请求可以是数据修复请求,所述操作信息可以是修复信息,此时,可以解析数据修复请求,若确定所述操作请求对应于系统智能合约的调用,则获取数据修复请求的调用权限,在调用权限满足预设的调用条件的情况下,调用系统智能合约。
其中,预设的调用条件可以是区块链中对等节点对区块链节点调用系统智能合约的认同率大于或者等于阈值。所述认同率根据认同区块链节点调用系统智能合约的对等节点数目与区块链中的对等节点数目计算确定。该阈值可以根据安全可靠性的实际要求设置,例如70%、80%或90%,或者数目达到预设的数量等。
具体实施时,还可以获取对等节点对数据修复请求的验证信息,基于验证信息确定数据修复请求的验证结果,在验证结果为验证通过的情况下,确定调用权限满足预设的调用条件,根据所述数据修复请求调用系统智能合约。
其中,验证结果可以是区块链中对等节点预设的信息与数据修复请求的匹配结果。在所述数据修复请求与所述区块链中对等节点预设的信息均匹配的情况下,说明验证结果为验证通过,则确定所述调用权限满足预设的调用条件。
下面以区块链上的数据发生异常变化需要进行修复的情况为例进行说明。参见图4,该方法包括如下步骤:
步骤402:接收来自客户端的数据修复请求;
步骤404:根据所述数据修复请求确定至少一个目标局域智能合约以及修复信息,并基于所述数据修复请求调用系统智能合约;
步骤406:运行所述系统智能合约,以根据所述数据修复请求利用修复信息对至少一个目标局域智能合约对应的数据执行相应操作。
区块链中存在区块链节点p以及区块链节点p的对等节点p1、p2和p3。区块链节点p接收来自客户端的数据修复请求,此时,根据数据修复请求确定目标局域智能合约,并且数据修复请求对应于系统智能合约的调用,则需要确定数据修复请求对系统智能合约的调用权限,在确定对等节点p1、p2和p3对该数据修复请求的验证信息的验证结果均为匹配的情况下,说明数据修复请求对系统智能合约的调用权限满足预设的调用条件,则区块链节点p有权调用系统智能合约。
进一步的,还可以解析数据修复请求,确定数据修复请求对应的业务逻辑类型以及业务调用权限,在业务调用权限满足业务逻辑类型对应的调用条件的情况下,调用系统智能合约。
在确定所述数据修复请求有权调用系统智能合约的情况下,运行所述系统智能合约,利用该修复请求中包含的修复信息(键的版本和键值),对至少一个目标局域智能合约对应的数据进行修复,并更新键的版本;或者若所述操作请求为数据读取请求,在确定所述数据读取请求有权调用系统智能合约的情况下,利用所述数据读取请求中的读取信息(键的版本和键值),对至少一个目标局域智能合约对应的数据进行读取。
进一步的,在对至少一个目标局域智能合约对应的数据执行相应操作之后,例如对至少一个目标局域智能合约对应的数据进行修复并更新键的版本之后,还可以获取区块链中的对等节点对订正结果的反馈信息,根据反馈信息统计对等节点针对订正结果进行签名的签名数目,在签名数目大于阈值的情况下,确定订正结果经背书。
更进一步的,还可以将经背书的订正结果添加至目标局域智能合约对应的账本。
其中,账本用于记录区块链中的数据,在数据发生变化的情况下,将变化后的数据上传至区块链时需要进行验证,在验证通过的情况下即为经背书。
以区块链中存在区块链节点p3以及区块链节点p3的对等节点p4、p5、p6和p7为例进行说明。区块链节点p3通过系统智能合约完成对数据进行修复,在将数据修复结果上传至账本的过程中,通过接收对等节点p4、p5、p6和p7针对数据修复结果的反馈信息,根据反馈信息确定对等节点p4、p5和p6进行了签名,签名数目大于阈值,确定所述数据修复结果经背书,此时可以将经背书的数据修复结果添加至账本。
本申请实施例中,接收来自客户端的操作请求,对操作请求进行解析判断其调用权限,在满足预设的调用条件的情况下,才能够调用系统智能合约,通过系统智能合约的调用和运行,实现跨域订正/修复功能,保障了链上数据的安全性。
本申请还提供了一种分布式系统应用于场景二的实施例,以基于分布式账本技术的区块链为例进行描述,如图5所示,其中,区块链500包括区块链节点502,配置有局域智能合约504以及系统智能合约506。
区块链节点502:用于接收来自客户端的密钥重置请求,根据密钥重置请求确定与密钥关联的目标局域智能合约以及重置信息,基于密钥重置请求调用系统智能合约506。
系统智能合约506:用于根据密钥重置请求利用重置信息中包含的密钥的版本和密钥的取值对与密钥关联的目标局域智能合约的读写集中的密钥的取值进行重置,更新密钥的版本。
如图5所示,所述局域智能合约504包括局域智能合约1,局域智能合约2…局域智能合约n,所述操作请求包括操作请求1,操作请求2,操作请求3…操作请求m,其中,例如操作请求3为密钥重置请求。
密钥相关的目标局域智能合约的读写集是指在目标局域智能合约中包含有一份唯一的密钥列表和密钥的提交版本,用于在发生密钥改变时的读取,每次密钥发生变化均会将新的版本和密钥的取值添加至读写集中,在读写集中对密钥进行重置,并且需要更新密钥的版本。
其中,所述密钥重置请求对应于系统智能合约506的调用,确定所述密钥操作请求对所述系统智能合约506的调用权限的过程与前述实施例中类似,此处不再赘述。在确定调用权限满足预设的调用条件的情况下,则可以调用系统智能合约506,运行该系统智能合约506对密钥关联的目标局域智能合约域内的数据进行密钥重置的操作。
本申请实施例中,实现了在区块链500中对密钥进行重置的操作,保证了在不破坏目标局域智能合约的读写集中密钥列表完整性的情况下对密钥进行了重置,不仅减少了重置密钥的成本,还减少了重置密钥所消耗的时间。
本申请还提供了一种分布式系统的数据处理方法应用于场景二的实施例,与上述区块链500相对应,该方法应用于区块链节点502,如图6所示,包括以下步骤:
步骤602:接收来自客户端的密钥重置请求。
步骤604:根据密钥重置请求确定与密钥关联的目标局域智能合约以及重置信息,并基于密钥重置请求调用系统智能合约。
步骤606:运行系统智能合约,以根据密钥重置请求利用重置信息中包含的密钥的版本和密钥的取值对与密钥关联的目标局域智能合约的读写集中的密钥的取值进行重置,更新密钥的版本。
具体的,密钥相关的目标局域智能合约的读写集是指在目标局域智能合约中的一个读写数据集,包含有一份唯一的密钥列表和密钥的提交版本,用于在发生密钥改变时的读取,每次密钥发生变化均会将新的版本和密钥的取值添加至读写集中。在读写集中对密钥进行重置,并更新密钥的版本。
本申请实施例中,实现了在区块链中对密钥进行重置的操作,保证了在不破坏目标局域智能合约的读写集中密钥列表完整性的情况下对密钥进行了重置,不仅减少了重置密钥的成本,还减少了重置密钥所消耗的时间。
图7是示出了根据本申请实施例的计算设备700的结构框图。该计算设备700的部件包括但不限于存储器710和处理器720。处理器720与存储器710通过总线730相连接,数据库750用于保存数据。
计算设备700还包括接入设备740,接入设备740使得计算设备700能够经由一个或多个网络760通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备740可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本申请的一个实施例中,计算设备700的上述部件以及图7中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图7所示的计算设备结构框图仅仅是出于示例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备700可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备700还可以是移动式或静止式的服务器。
其中,处理器720用于执行如下计算机可执行指令:
接收来自客户端的操作请求。
根据所述操作请求确定至少一个目标局域智能合约以及操作信息,并基于所述操作请求调用系统智能合约。
运行所述系统智能合约,以根据所述操作请求利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
可选的,所述基于所述操作请求调用系统智能合约,包括:
解析所述操作请求,获得所述操作请求的调用权限;
在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约。
可选的,所述基于所述操作请求调用系统智能合约,包括:
获取所述分布式系统的对等节点对所述操作请求的验证信息;
基于所述验证信息确定所述操作请求的验证结果;
在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约。
可选的,所述基于所述操作请求调用系统智能合约,包括:
解析所述操作请求,确定所述操作请求对应的业务逻辑类型以及业务调用权限;
在所述业务调用权限满足所述业务逻辑类型对应的调用条件的情况下,调用所述系统智能合约。
可选的,所述根据所述操作请求确定至少一个目标局域智能合约,包括:
解析所述操作请求,获得至少一个合约标识;
基于所述至少一个合约标识确定所述至少一个目标局域智能合约。
可选的,所述操作信息包括键的版本和键值,所述操作请求为数据读取请求;
所述执行相应操作包括:
运行所述系统智能合约,以根据所述数据读取请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行访问。
可选的,所述操作信息包括键的版本和键值,所述操作请求为数据订正请求;
所述执行相应操作包括:
运行所述系统智能合约,以根据所述数据订正请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行订正,并更新所述键的版本。
可选的,所述操作信息包括密钥的版本和密钥的取值,所述操作请求为密钥重置请求;
所述执行相应操作包括:
根据所述密钥重置请求确定与所述密钥关联的目标局域智能合约以及重置信息,并基于所述密钥重置请求调用所述系统智能合约;
运行所述系统智能合约,以根据所述密钥重置请求利用所述重置信息中包含的所述密钥的版本和所述密钥的取值对与所述密钥关联的目标局域智能合约的读写集中的所述密钥的取值进行重置,并更新所述密钥的版本。
可选的,处理器720还用于执行如下计算机可执行指令:
获取所述分布式系统的对等节点对所述操作结果的反馈信息;
根据所述反馈信息,统计所述对等节点针对所述至少一个目标局域智能合约对应的数据执行相应操作的操作结果进行签名的签名数目;
在所述签名数目大于阈值的情况下,确定所述操作结果经背书。
可选的,处理器720还用于执行如下计算机可执行指令:
将经背书后的所述操作结果添加至所述至少一个目标局域智能合约对应的账本。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的分布式系统的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述分布式系统的技术方案的描述。
本申请一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:
接收来自客户端的操作请求。
根据所述操作请求确定至少一个目标局域智能合约以及操作信息,并基于所述操作请求调用系统智能合约。
运行所述系统智能合约,以根据所述操作请求利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
可选的,所述基于所述操作请求调用系统智能合约,包括:
解析所述操作请求,获得所述操作请求的调用权限;
在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约。
可选的,所述基于所述操作请求调用系统智能合约,包括:
获取所述分布式系统的对等节点对所述操作请求的验证信息;
基于所述验证信息确定所述操作请求的验证结果;
在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约。
可选的,所述基于所述操作请求调用系统智能合约,包括:
解析所述操作请求,确定所述操作请求对应的业务逻辑类型以及业务调用权限;
在所述业务调用权限满足所述业务逻辑类型对应的调用条件的情况下,调用所述系统智能合约。
可选的,所述根据所述操作请求确定至少一个目标局域智能合约,包括:
解析所述操作请求,获得至少一个合约标识;
基于所述至少一个合约标识确定所述至少一个目标局域智能合约。
可选的,所述操作信息包括键的版本和键值,所述操作请求为数据读取请求;
所述执行相应操作包括:
运行所述系统智能合约,以根据所述数据读取请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行访问。
可选的,所述操作信息包括键的版本和键值,所述操作请求为数据订正请求;
所述执行相应操作包括:
运行所述系统智能合约,以根据所述数据订正请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行订正,并更新所述键的版本。
可选的,所述操作信息包括密钥的版本和密钥的取值,所述操作请求为密钥重置请求;
所述执行相应操作包括:
根据所述密钥重置请求确定与所述密钥关联的目标局域智能合约以及重置信息,并基于所述密钥重置请求调用所述系统智能合约;
运行所述系统智能合约,以根据所述密钥重置请求利用所述重置信息中包含的所述密钥的版本和所述密钥的取值对与所述密钥关联的目标局域智能合约的读写集中的所述密钥的取值进行重置,并更新所述密钥的版本。
可选的,还包括:
获取所述分布式系统的对等节点对所述操作结果的反馈信息;
根据所述反馈信息,统计所述对等节点针对所述至少一个目标局域智能合约对应的数据执行相应操作的操作结果进行签名的签名数目;
在所述签名数目大于阈值的情况下,确定所述操作结果经背书。
可选的,还包括:
将经背书后的所述操作结果添加至所述至少一个目标局域智能合约对应的账本。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的分布式系统的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述分布式系统的技术方案的描述。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本申请优选实施例只是用于帮助阐述本申请。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本申请的内容,可作很多的修改和变化。本申请选取并具体描述这些实施例,是为了更好地解释本申请的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本申请。本申请仅受权利要求书及其全部范围和等效物的限制。

Claims (22)

1.一种分布式系统,其特征在于,包括:
分布式节点,配置有局域智能合约以及系统智能合约;
所述分布式节点用于接收来自客户端的操作请求,根据所述操作请求确定至少一个目标局域智能合约以及操作信息,基于所述操作请求调用所述系统智能合约;
所述系统智能合约用于根据所述操作请求,利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
2.根据权利要求1所述的分布式系统,其特征在于,所述分布式节点还用于:
解析所述操作请求,确定所述操作请求的调用权限,在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约。
3.根据权利要求2所述的分布式系统,其特征在于,所述分布式节点还用于:
获取所述分布式系统中的对等节点对所述操作请求的验证信息,基于所述验证信息确定所述操作请求的验证结果;
在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约。
4.根据权利要求2所述的分布式系统,其特征在于,所述分布式节点还用于:
解析所述操作请求,确定所述操作请求对应的业务逻辑类型以及业务调用权限,在所述业务调用权限满足所述业务逻辑类型对应的调用条件的情况下,调用所述系统智能合约。
5.根据权利要求1所述的分布式系统,其特征在于,所述根据所述操作请求确定至少一个目标局域智能合约,包括:
解析所述操作请求,获得至少一个合约标识;
基于所述至少一个合约标识确定所述至少一个目标局域智能合约。
6.根据权利要求1所述的分布式系统,其特征在于,所述操作信息包括键的版本和键值,在所述操作请求为数据读取请求的情况下,所述系统智能合约还用于:
根据所述数据读取请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行访问。
7.根据权利要求1所述的分布式系统,其特征在于,所述操作信息包括键的版本和键值,在所述操作请求为数据订正请求的情况下,所述系统智能合约还用于:
根据所述数据订正请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行订正,更新所述键的版本。
8.根据权利要求1所述的分布式系统,其特征在于,所述操作信息包括密钥的版本和密钥的取值,在所述操作请求为密钥重置请求的情况下:
所述分布式节点还用于接收来自所述客户端的密钥重置请求,根据所述密钥重置请求确定与所述密钥关联的目标局域智能合约以及重置信息,基于所述密钥重置请求调用所述系统智能合约;
所述系统智能合约还用于根据所述密钥重置请求,利用所述重置信息中包含的所述密钥的版本和所述密钥的取值对与所述密钥关联的目标局域智能合约的读写集中的密钥的取值进行重置,更新所述密钥的版本。
9.根据权利要求1所述的分布式系统,其特征在于,所述分布式系统还配置有账本模块,
所述账本模块用于接收所述分布式系统中的对等节点对所述操作结果的反馈信息,根据所述反馈信息,统计所述对等节点针对所述操作结果进行签名的签名数目,在所述签名数目大于阈值的情况下,确定所述操作结果经背书。
10.根据权利要求9所述的分布式系统,其特征在于,所述账本模块还用于:
将经背书后的所述操作结果添加至所述至少一个目标局域智能合约对应的账本。
11.一种分布式系统的数据处理方法,其特征在于,包括:
接收来自客户端的操作请求;
根据所述操作请求确定至少一个目标局域智能合约以及操作信息,并基于所述操作请求调用系统智能合约;
运行所述系统智能合约,以根据所述操作请求利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
12.根据权利要求11所述的分布式系统的数据处理方法,其特征在于,所述基于所述操作请求调用系统智能合约,包括:
解析所述操作请求,获得所述操作请求的调用权限;
在所述调用权限满足预设的调用条件的情况下,调用所述系统智能合约。
13.根据权利要求12所述的分布式系统的数据处理方法,其特征在于,所述基于所述操作请求调用系统智能合约,包括:
获取所述分布式系统的对等节点对所述操作请求的验证信息;
基于所述验证信息确定所述操作请求的验证结果;
在所述验证结果为验证通过的情况下,确定所述调用权限满足所述预设的调用条件,基于所述操作请求调用所述系统智能合约。
14.根据权利要求12所述的分布式系统的数据处理方法,其特征在于,所述基于所述操作请求调用系统智能合约,包括:
解析所述操作请求,确定所述操作请求对应的业务逻辑类型以及业务调用权限;
在所述业务调用权限满足所述业务逻辑类型对应的调用条件的情况下,调用所述系统智能合约。
15.根据权利要求11所述的分布式系统的数据处理方法,其特征在于,所述根据所述操作请求确定至少一个目标局域智能合约,包括:
解析所述操作请求,获得至少一个合约标识;
基于所述至少一个合约标识确定所述至少一个目标局域智能合约。
16.根据权利要求11所述的分布式系统的数据处理方法,其特征在于,所述操作信息包括键的版本和键值,所述操作请求为数据读取请求;
所述执行相应操作包括:
运行所述系统智能合约,以根据所述数据读取请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行访问。
17.根据权利要求11所述的分布式系统的数据处理方法,其特征在于,所述操作信息包括键的版本和键值,所述操作请求为数据订正请求;
所述执行相应操作包括:
运行所述系统智能合约,以根据所述数据订正请求利用所述键的版本和键值对所述至少一个目标局域智能合约对应的数据进行订正,并更新所述键的版本。
18.根据权利要求11所述的分布式系统的数据处理方法,其特征在于,所述操作信息包括密钥的版本和密钥的取值,所述操作请求为密钥重置请求;
所述执行相应操作包括:
根据所述密钥重置请求确定与所述密钥关联的目标局域智能合约以及重置信息,并基于所述密钥重置请求调用所述系统智能合约;
运行所述系统智能合约,以根据所述密钥重置请求利用所述重置信息中包含的所述密钥的版本和所述密钥的取值对与所述密钥关联的目标局域智能合约的读写集中的所述密钥的取值进行重置,并更新所述密钥的版本。
19.根据权利要求11所述的分布式系统的数据处理方法,其特征在于,所述方法还包括:
获取所述分布式系统的对等节点对所述操作结果的反馈信息;
根据所述反馈信息,统计所述对等节点针对所述至少一个目标局域智能合约对应的数据执行相应操作的操作结果进行签名的签名数目;
在所述签名数目大于阈值的情况下,确定所述操作结果经背书。
20.根据权利要求19所述的分布式系统的数据处理方法,其特征在于,所述方法还包括:
将经背书后的所述操作结果添加至所述至少一个目标局域智能合约对应的账本。
21.一种计算设备,其特征在于,包括:
存储器,用于存储计算机可执行指令;
处理器,耦合至所述存储器,用于执行所述计算机可执行指令;
所述计算机可执行指令,包括:
接收来自客户端的操作请求;
根据所述操作请求确定至少一个目标局域智能合约以及操作信息,并基于所述操作请求调用系统智能合约;
运行所述系统智能合约,以根据所述操作请求利用所述操作信息对所述至少一个目标局域智能合约对应的数据执行相应操作。
22.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求11至20任意一项所述方法的步骤。
CN201910991365.8A 2019-10-18 2019-10-18 分布式系统及其数据处理方法 Active CN112685496B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910991365.8A CN112685496B (zh) 2019-10-18 2019-10-18 分布式系统及其数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910991365.8A CN112685496B (zh) 2019-10-18 2019-10-18 分布式系统及其数据处理方法

Publications (2)

Publication Number Publication Date
CN112685496A true CN112685496A (zh) 2021-04-20
CN112685496B CN112685496B (zh) 2024-04-23

Family

ID=75444767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910991365.8A Active CN112685496B (zh) 2019-10-18 2019-10-18 分布式系统及其数据处理方法

Country Status (1)

Country Link
CN (1) CN112685496B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106778329A (zh) * 2016-11-28 2017-05-31 中国银行股份有限公司 一种区块链智能合约模板动态更新方法、装置及系统
CN107844294A (zh) * 2017-11-17 2018-03-27 杭州秘猿科技有限公司 一种高可用的合约执行方法及系统
CN109803004A (zh) * 2019-01-03 2019-05-24 深圳壹账通智能科技有限公司 区块链智能合约管理方法与装置、电子设备、存储介质
US20190164153A1 (en) * 2017-11-30 2019-05-30 Shashank Agrawal Blockchain system for confidential and anonymous smart contracts
CN109889503A (zh) * 2019-01-22 2019-06-14 平安科技(深圳)有限公司 基于区块链的身份管理方法、电子装置及存储介质
CN110175913A (zh) * 2019-04-12 2019-08-27 阿里巴巴集团控股有限公司 基于区块链的数据处理系统、方法、计算设备及存储介质
CN110188563A (zh) * 2019-06-02 2019-08-30 四川虹微技术有限公司 一种信任数据更新方法及装置
US20190278852A1 (en) * 2018-03-06 2019-09-12 International Business Machines Corporation Customized endorsement logic for blockchain

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106778329A (zh) * 2016-11-28 2017-05-31 中国银行股份有限公司 一种区块链智能合约模板动态更新方法、装置及系统
CN107844294A (zh) * 2017-11-17 2018-03-27 杭州秘猿科技有限公司 一种高可用的合约执行方法及系统
US20190164153A1 (en) * 2017-11-30 2019-05-30 Shashank Agrawal Blockchain system for confidential and anonymous smart contracts
US20190278852A1 (en) * 2018-03-06 2019-09-12 International Business Machines Corporation Customized endorsement logic for blockchain
CN109803004A (zh) * 2019-01-03 2019-05-24 深圳壹账通智能科技有限公司 区块链智能合约管理方法与装置、电子设备、存储介质
CN109889503A (zh) * 2019-01-22 2019-06-14 平安科技(深圳)有限公司 基于区块链的身份管理方法、电子装置及存储介质
CN110175913A (zh) * 2019-04-12 2019-08-27 阿里巴巴集团控股有限公司 基于区块链的数据处理系统、方法、计算设备及存储介质
CN110188563A (zh) * 2019-06-02 2019-08-30 四川虹微技术有限公司 一种信任数据更新方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
毕宇;: "基于区块链智能合约的PKI-CA体系设计", 金融科技时代, no. 07, 10 July 2018 (2018-07-10) *
贺海武;延安;陈泽华;: "基于区块链的智能合约技术与应用综述", 计算机研究与发展, no. 11, 15 November 2018 (2018-11-15) *

Also Published As

Publication number Publication date
CN112685496B (zh) 2024-04-23

Similar Documents

Publication Publication Date Title
US11082291B2 (en) Changing an existing blockchain trust configuration
Whig et al. The economic impact of AI-enabled blockchain in 6G-based industry
CN110349056B (zh) 基于区块链的业务处理系统以及方法
US11088854B2 (en) Securing blockchain access through a gateway on behalf of a communication device
US11321783B2 (en) Method and device for data processing based on blockchain
US11677542B2 (en) Ad-hoc smart contract generation in a blockchain
US11544794B2 (en) Claim settlement method and apparatus employing blockchain technology
US20180205558A1 (en) Method and apparatus for the limitation of the mining of blocks on a block chain
US20240080205A1 (en) System and method for off-chain cryptographic transaction verification
US11367055B2 (en) Decentralized pooled mining for enabling proof-of-work on blockchains
US11270388B2 (en) Blockchain-based data processing method and apparatus
CN110400217B (zh) 智能合约的规则变更处理方法及装置
CN111667267A (zh) 一种区块链交易风险识别方法及装置
CN110471982B (zh) 基于区块链的数据处理方法和装置
CN111178894A (zh) 资产类型注册、交易记录验证方法及系统
US20230246835A1 (en) System for generation of substitutable configurations of secure electronic distributed register tokens
CN110223075B (zh) 身份认证方法、装置、计算机设备和存储介质
CN114971827A (zh) 一种基于区块链的对账方法、装置、电子设备及存储介质
Li et al. Reputation-based trustworthy supply chain management using smart contract
CN112685496B (zh) 分布式系统及其数据处理方法
US11799712B2 (en) System for integration and interoperability between disparate distributed server technologies
Martins et al. Recoverable token: Recovering from intrusions against digital assets in Ethereum
CN114493850A (zh) 基于人工智能的在线公证方法、系统及存储介质
CN111194441B (zh) 一种基于区块链的数据管理方法及相关系统
US11902176B2 (en) System for detecting multi-dimensional linkage and layering of resource transfers using a distributed server network

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