CN113132441A - 一种分布式系统的信息处理方法、分布式系统及计算设备 - Google Patents
一种分布式系统的信息处理方法、分布式系统及计算设备 Download PDFInfo
- Publication number
- CN113132441A CN113132441A CN201911423478.4A CN201911423478A CN113132441A CN 113132441 A CN113132441 A CN 113132441A CN 201911423478 A CN201911423478 A CN 201911423478A CN 113132441 A CN113132441 A CN 113132441A
- Authority
- CN
- China
- Prior art keywords
- distributed system
- operation information
- member node
- information
- verification
- 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
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/12—Applying verification of the received information
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- 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/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种分布式系统的信息处理方法,分布式系统包括多个成员节点,该方法包括:第一成员节点调用智能合约,向分布式系统提交第一操作信息;将第一操作信息同步到第二成员节点,第二成员节点包括多个成员节点中除第一成员节点之外的一个或多个;接收第二成员节点对第一操作信息进行验证的验证结果;若验证结果符合第一操作信息对应的执行条件,则执行第一操作;以及将执行结果更新到分布式系统。本发明实施例还公开了相应的分布式系统和计算设备。
Description
技术领域
本发明涉及计算机技术领域,尤其是一种分布式系统的信息处理方法、分布式系统及计算设备。
背景技术
分布式系统是一组计算设备,透过网络相互连接传递消息与通信后并协调它们的行为而形成的系统。
以区块链系统为例,区块链系统是一种特殊的分布式系统。其中,区块链(blockchain)是存储交易列表的数据结构,并且可以被看作记录(一个或多个)源标识符与(一个或多个)目的地标识符之间的交易的分布式电子账本(ledger)。由于区块链系统具有去中心化的特性,链上各节点均可以参与记账,存储在区块链中的数据具备不可篡改,并且各节点之间可以快速的进行数据同步。
区块链系统按照访问和管理权限可以分为公有链系统、私有链系统和联盟链系统。其中,联盟链系统通常是由一些商业联盟出于共同的利益采用区块链技术搭建的区块链系统。联盟链系统不对外公开,只由商业联盟的各个成员进行管理。但是商业联盟的成员之间并没有完全相互信任,不仅达成一致的管理规则费时费力,同时也很难监督规则是否得到遵守、以及很难对管理操作进行审计。
发明内容
为此,本发明实施例提供了一种分布式系统的信息处理方法、分布式系统及计算设备,以力图解决或者至少缓解上面存在的至少一个问题。
根据本发明实施例的一个方面,提供了一种分布式系统的信息处理方法,分布式系统包括多个成员节点,该方法包括:第一成员节点调用智能合约,向分布式系统提交第一操作信息;将第一操作信息同步到第二成员节点,第二成员节点包括多个成员节点中除第一成员节点之外的一个或多个;接收第二成员节点对第一操作信息进行验证的验证结果;若验证结果符合第一操作信息对应的执行条件,则执行第一操作;以及将执行结果更新到分布式系统。
可选地,在根据本发明实施例的方法中,验证结果符合第一操作信息对应的执行条件,包括:若第二成员节点中对第一操作信息验证通过的成员节点数量超过第一阈值,则确定验证结果符合第一操作信息对应的执行条件。
可选地,在根据本发明实施例的方法中,将执行结果更新到分布式系统包括:调用智能合约,向分布式系统提交执行结果;将执行结果同步到第二成员节点。
可选地,在根据本发明实施例的方法中,第一操作信息用于请求执行所述第一操作,第一操作用于:对分布式系统执行管理操作;和/或将第一成员节点的业务信息提交至分布式系统。
可选地,在根据本发明实施例的方法中,对分布式系统执行管理操作,包括:删除分布式系统的成员节点;和/或向分布式系统添加成员节点。
可选地,在根据本发明实施例的方法中,还包括:第一成员节点接收第二操作信息,第二操作信息由第二成员节点中的任一成员节点向分布式系统提交并同步到第一成员节点;对第二操作信息进行验证;调用智能合约,向分布式系统提交第一成员节点对第二操作信息的验证结果;将第一成员节点对第二操作信息的验证结果同步到第二成员节点中的多个成员节点。
可选地,在根据本发明实施例的方法中,还包括:基于第一成员节点对第二操作信息的验证,获取分布式系统对第二操作信息的验证结果;若多个成员节点中对第二操作信息验证通过的成员节点数量超过第二阈值,则确定验证结果符合第二操作信息的执行条件。
可选地,在根据本发明实施例的方法中,分布式系统为区块链系统,第一成员节点存储有区块链系统的账本,区块链系统的账本包括管理账本和业务账本。
可选地,在根据本发明实施例的方法中,区块链系统为联盟链系统,联盟链系统包括的多个成员节点分别对应于联盟的多个组织,第一操作信息经由联盟链系统在联盟的各组织之间同步。
根据本发明实施例的一个方面,提供了一种分布式系统,包括多个成员节点,第一成员节点包括:合约调用模块,适于调用智能合约,向分布式系统提交第一操作信息;数据通信模块,适于将第一操作信息同步到第二成员节点,第二成员节点包括多个成员节点中除第一成员节点之外的一个或多个;还适于接收第二成员节点对所述第一操作信息进行验证的验证结果;操作执行模块,适于若验证结果符合第一操作信息对应的执行条件,则执行第一操作。
根据本发明实施例的又一方面,提供了一种计算设备,包括:至少一个处理器;和存储有程序指令的存储器,其中,程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行如上所述分布式系统的信息处理方法的指令。
根据本发明实施例的分布式系统的信息处理方案,可以由分布式系统的成员节点对系统进行管理,并将分布式系统的管理信息(例如用于执行管理操作的操作信息、对操作信息的验证结果、对管理操作的执行结果等等)存储在分布式系统的成员节点中,进而解决管理信息难以在各成员节点间共享的问题,同时也使得管理信息可追溯可审计。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的分布式系统100的示意图;
图2示出了根据本发明一个实施例的分布式系统100的信息处理方法200的流程图;
图3示出了根据本发明一个实施例的区块链300的示意图;
图4示出了根据本发明一个实施例的区块链系统400的示意图;
图5示出了根据本发明一个实施例的区块链系统400的信息处理方法500的流程图;以及
图6示出了根据本发明一个实施例的分布式系统100的第一成员节点120的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的分布式系统100的示意图。该分布式系统100包括多个成员节点,成员节点通常可以实现为位于一个或多个网络中的计算设备。其中,各成员节点可以经由通信链路110(例如,有线或无线连接、因特网等)彼此通信,以便发送和接收数据。
下面以第一成员节点为例来对分布式系统100的信息处理方法进行描述。应当理解,此处第一成员节点可以是分布式系统100中的任意一个成员节点。
图2示出了根据本发明一个实施例的分布式系统100的信息处理方法200的流程图。该信息处理方法200在分布式系统100的第一成员节点中执行。如图2所示,该信息处理方法200始于步骤S210。
在步骤S210中,第一成员节点调用智能合约,向分布式系统100提交第一操作信息。第一操作信息用于请求执行第一操作。在一些实施例中,第一操作可以用于对分布式系统100执行管理操作,和/或将第一成员节点的业务信息提交至分布式系统100。其中,对分布式系统执行管理操作可以包括:删除分布式系统的成员节点100,和/或向分布式系统100添加成员节点,和/或其他类似操作。本发明实施例对管理操作的具体操作内容不做限制,任何对分布式系统100进行管理的操作均为本发明的保护范围之内。
第一成员节点向分布式系统100提交的业务信息则可以是与第一成员节点本身所承担的业务(而非管理)相关的信息。例如,分布式系统100可以包括多个银行系统,第一成员节点可以是其中某个银行系统。此时第一成员节点向分布式系统100提交的业务信息可以是该银行系统产生的交易信息(例如转账交易等等)。
在步骤S220中,第一成员节点可以将第一操作信息同步到第二成员节点。应当理解,第二成员节点为第一成员节点的相对概念,第二成员节点可以是分布式系统100所包括的多个成员节点中除第一成员节点之外的一个或多个成员节点。
在步骤S230中,第一成员节点还可以接收第二成员节点对第一操作信息进行验证得到的验证结果。该验证结果指示第二成员节点通过或者不通过第一操作。
接收第二成员节点对第一操作信息的验证结果之后,第一成员节点可以判断第二成员节点对第一操作信息的验证结果是否符合第一操作信息对应的执行条件。若验证结果符合第一操作信息对应的执行条件,则可以在步骤S240中,执行第一操作,反之则不执行。
在一些实施例中,验证结果符合第一操作信息对应的执行条件可以包括:若第二成员节点中对第一操作信息验证通过的成员节点数量超过第一阈值,则确定验证结果符合第一操作信息对应的执行条件。其中,第一阈值可以基于第一操作对应的安全级别或优先级来设置。例如,当第一操作的安全级别为最高级时,第一阈值可以设置为除第一成员节点之外的全部成员节点的数量值,即,只有当所有其他成员节点都验证通过,才允许执行该第一操作。当第一操作的安全级别为中级时,第一阈值可以设置为除第一成员节点之外的其他成员节点的比例或数量值。
根据步骤S250,在执行第一操作之后,第一成员节点还可以将执行结果更新到分布式系统100。这样,分布式系统100的各成员节点均可以存储有第一操作信息、分布式系统100对第一操作信息的验证结果以及对第一操作的执行结果。
此外,第一成员节点还可以接收第二操作信息。第二操作信息可以由第二成员节点中的任一成员节点向分布式系统100提交并同步到第一成员节点。第二操作信息可以用于请求执行第二操作。第二操作与第一操作相类似,可以用于对分布式系统100执行管理操作,和/或将第二成员节点的业务信息提交至分布式系统100。其中,对分布式系统100执行管理操作可以包括:删除分布式系统100的成员节点,和/或向分布式系统100添加成员节点,和/或其他类似操作。
第一成员节点接收第二操作信息之后,可以对第二操作信息进行验证,并调用智能合约,向分布式系统100提交第一成员节点对第二操作信息的验证结果。第一成员节点对第二操作信息的验证结果可以指示第一成员节点通过或者不通过第二操作。
第一成员节点将第一成员节点对第二操作信息的验证结果同步到第二成员节点中的多个成员节点(也就是除了第一成员节点之外的其他成员节点)。而后,第一成员节点可以基于第一成员节点对第二操作信息的验证,获取分布式系统100对该第二操作信息的验证结果,也就是获取第二成员节点对该第二操作信息的验证结果。
若分布式系统100所包括的多个成员节点中对第二操作信息验证通过的成员节点数量超过第二阈值,则可以确定分布式系统100对第二操作信息的验证结果符合第二操作信息对应的执行条件。其中,第二阈值可以基于第二操作对应的安全级别或优先级来设置,并可以与第一阈值相同或者不同。
在确定分布式系统100对第二操作信息的验证结果符合第二操作信息对应的执行条件之后,第一成员节点还可以执行第二操作,并将第二操作的执行结果更新到分布式系统100。这样,分布式系统100的各成员节点均可以存储有第二操作信息、分布式系统100对第二操作信息的验证结果以及对第二操作的执行结果。
综上所述,分布式系统的成员节点可以存储分布式系统的管理信息(例如用于执行管理操作的操作信息、对操作信息的验证结果、对管理操作的执行结果等等),解决了管理信息难以在各成员节点间共享的问题,同时也使得管理信息可追溯可审计。
下面以区块链系统为例来描述根据本发明实施例的信息处理方案。应当理解,区块链系统可以被视为是一种特殊的分布式系统,并具有去中心化的特点。
图3示出了根据本发明一个实施例的区块链300的示意图。如图3所示,区块链300可以包括多个数据块(也称之为区块)302。数据块302是包括诸如支付收据之类的交易数据304的数据结构。当新的交易数据304被提交至区块链300、且通过验证后,可以生成包含此交易数据304的新的数据块302并添加至区块链300。每个新数据块302可以包括一组经验证的交易数据304和紧接在前的数据块302的内容的散列(即哈希)306。例如,数据块“2”包括数据块“1”的内容的散列,数据块“n”包括数据块“n-1”的内容的散列等等。
图4示出了根据本发明一个实施例的区块链系统400的示意图。该区块链系统400包括多个成员节点,成员节点通常可以实现为位于一个或多个网络中的计算设备。在一些实施方式中,每个成员节点可以存储区块链300(也就是账本402),并运行智能合约。账本402包括已经验证并添加到区块链300的数据块302。
如图4所示,成员节点可以经由通信链路404(例如,有线或无线连接、因特网等)彼此通信,以便发送和接收与账本402相关的数据。例如,当新数据块302被添加到账本402时,成员节点可以经由通信路径404通信或共享此新数据块302。
下面以第一成员节点为例来对区块链系统400的信息处理方法进行描述。应当理解,此处第一成员节点可以是区块链系统400中的任意一个成员节点。
图5示出了根据本发明一个实施例的区块链系统400的信息处理方法500的流程图。该信息处理方法500在区块链系统400的第一成员节点中执行。如图5所示,该信息处理方法500始于步骤S510。
在步骤S510中,第一成员节点调用智能合约,向区块链系统400提交第一操作信息,以便在各成员节点存储的账本中记录第一操作信息。第一操作信息用于请求执行第一操作。在一些实施例中,第一操作可以用于对区块链系统400执行管理操作,和/或将第一成员节点的业务信息提交至区块链系统400。其中,对区块链系统400执行管理操作可以包括:删除区块链系统400的成员节点,和/或向区块链系统400添加成员节点,和/或其他类似操作。本发明实施例对管理操作的具体操作内容不做限制,任何对区块链系统400进行管理的操作均为本发明的保护范围之内。
第一成员节点向区块链系统400提交的业务信息则可以是与第一成员节点本身所承担的业务(而非管理)相关的信息。
在步骤S520中,第一成员节点可以将第一操作信息同步到第二成员节点。第二成员节点为第一成员节点的相对概念,第二成员节点可以是区块链系统400所包括的多个成员节点中除第一成员节点之外的一个或多个成员节点。
第二成员节点接收第一操作信息之后,可以对第一操作信息进行验证,还可以调用所运行的智能合约,将第二成员节点对第一操作信息的验证结果提交至区块链系统400,并将该验证结果同步到第一成员节点。这样,就可以在各成员节点的账本中记录该验证结果。
第一成员节点可以在步骤S530中,接收第二成员节点对第一操作信息进行验证得到的验证结果。该验证结果指示第二成员节点通过或者不通过第一操作。
接收第二成员节点对第一操作信息的验证结果之后,第一成员节点可以判断第二成员节点对第一操作信息的验证结果是否符合第一操作信息对应的执行条件。若验证结果符合第一操作信息对应的执行条件,则可以在步骤S540中,执行第一操作,反之则不执行第一操作。
在一些实施例中,验证结果符合第一操作信息对应的执行条件可以包括:若第二成员节点中对第一操作信息验证通过的成员节点数量超过第一阈值,则确定验证结果符合第一操作信息对应的执行条件。其中,第一阈值可以基于第一操作对应的安全级别或优先级来设置。例如,当第一操作的安全级别为最高级时,第一阈值可以设置为除第一成员节点之外的全部成员节点的数量值。当第一操作的安全级别为中级时,第一阈值可以设置为除第一成员节点之外的其他成员节点的比例或数量值。
在执行第一操作之后,第一成员节点还可以在步骤S550中,将执行结果更新到区块链系统400,以将执行结果同步到第二成员节点。这样,区块链系统400的各成员节点的账本均可以存储有第一操作信息、分布式系统100对第一操作信息的验证结果以及对第一操作的执行结果。
可以理解,由于区块链系统的数据同步机制,每个成员节点均可以接收到除自身之外的其他成员节点对第一操作信息的验证结果,因此每个成员节点均可以一致地执行或不执行第一操作。
此外,第一成员节点还可以接收第二操作信息。第二操作信息可以由第二成员节点中的任一成员节点向区块链系统400提交并同步到第一成员节点。第二操作信息可以用于请求执行第二操作。第二操作与第一操作相类似,可以用于对区块链系统400执行管理操作,和/或将第二成员节点的业务信息提交至区块链系统400。其中,对区块链系统400执行管理操作可以包括:删除区块链系统400的成员节点,和/或向区块链系统400添加成员节点,和/或其他类似操作。
第一成员节点接收第二操作信息之后,可以对第二操作信息进行验证,并调用智能合约,向区块链系统400提交第一成员节点对第二操作信息的验证结果。第一成员节点对第二操作信息的验证结果可以指示第一成员节点通过或者不通过第二操作。
第一成员节点将第一成员节点对第二操作信息的验证结果同步到第二成员节点中的多个成员节点(也就是除了第一成员节点之外的其他成员节点)。而后,第一成员节点可以基于第一成员节点对第二操作信息的验证,获取区块链系统400对该第二操作信息的验证结果,例如获取多个第二成员节点对该第二操作信息的验证结果。
若区块链系统400所包括的多个成员节点中对第二操作信息验证通过的成员节点数量超过第二阈值,则可以确定区块链系统400对第二操作信息的验证结果符合第二操作信息对应的执行条件。其中,第二阈值可以基于第二操作对应的安全级别或优先级来设置,并可以与第一阈值相同或者不同。
在确定区块链系统400对第二操作信息的验证结果符合第二操作信息对应的执行条件之后,第一成员节点还可以执行第二操作,并将第二操作的执行结果更新到区块链系统400。这样,区块链系统400的各成员节点的账本均可以存储有第二操作信息、区块链系统400对第二操作信息的验证结果以及对第二操作的执行结果。
应当指出,上述任何提交至区块链系统400的数据均需要以区块的形式在各成员节点间同步,并由全部或者部分成员节点对区块进行共识。各成员节点在对包含提交至区块链系统400的数据的区块达成共识的情况下,可以将该区块添加至各自所存储的账本中。
下面对共识过程进行详细描述。
在一些实施方式中,区块链系统300可以以部分或者全部成员节点为共识节点。共识过程在这些共识节点中进行。
这些共识节点需要在接收该区块之后,对该区块所包含的数据进行有效性和合法性验证,例如验证数据是否有效、数据是否符合账本(例如管理账本/业务账本)的规则,又例如验证结果所包含的成员节点的数字签名是否合法等等。在区块所包含的数据通过验证之后,共识节点还需要对该区块进行协商并达成一致,即达成共识。其中,可以采用拜占庭共识机制。还可以采用诸如工作量证明机制(Proof of Work-PoW)和权益证明机制(Proofof Stake-PoS)之类的共识机制,本发明对此不做限制。
在另一些实施方式中,不是共识节点的成员节点可以处理例如接收业务信息/操作信息等的提交、提供成员服务和处理来自用户的应用程序编程接口(API)请求或其他类似功能。以这种方式,可以保留共识节点的处理能力以达到共识和监视其他共识节点等等。
根据本发明的一个实施方式,区块链系统400可以为联盟链系统,联盟链系统包括的多个成员节点分别对应于联盟的多个组织,上述第一操作信息、第二操作信息等等均可以经由联盟链系统在该联盟的各组织之间同步。
根据本发明的一个实施方式,各成员节点向区块链系统400提交的诸如操作信息、验证结果和执行结果之类的信息可以认为是管理信息,该管理信息可以与业务信息一起存储在各成员节点的账本中。但根据本发明的一个实施方式,各成员节点存储的账本可以包括管理账本和业务账本(例如在Hyperledger Fabric的架构下)。其中,管理账本包括成员节点向区块链系统400提交的上述管理信息,业务账本则包括成员节点向区块链系统400提交的业务信息。
这样,即实现了对区块链系统自举式地、可审计地管理,解决了传统的管理方案中区块链系统的各个成员节点很难去保持管理信息的一致性,且历史数据难以追溯的问题。特别是对于联盟链系统来说,虽然联盟链系统的各个节点分布在不同参与方,但整个系统的管理控制台和管理数据库依然还是中心化部署,管理信息容易被窃取和伪造,有安全隐患。根据本发明的信息处理方案,借助了区块链自身的特点,在存储业务信息的基础上,额外还存储管理信息,这样利用区块链的数据同步机制,可以解决管理信息在各个成员之间共享的问题,同时也使得管理信息可追溯可审计。进一步地,由于这些信息仅能追加不能删除,有效解决了联盟的各成员节点在管理时的低效和缺乏信任等问题。并且,又由于区块链系统自身的去中心化特性,使得联盟各成员节点之间关系对等,避免了单点故障。
图6示出了根据本发明一个实施例的分布式系统100的第一成员节点120的示意图。第一成员节点可以是分布式系统100中的任意一个成员节点。如图6所示,第一成员节点120包括合约调用模块121、数据通信模块122、操作执行模块123和结果更新模块124。
合约调用模块121适于调用智能合约,向分布式系统提交第一操作信息。数据通信模块122与合约调用模块121相耦接,适于将第一操作信息同步到第二成员节点,第二成员节点包括多个成员节点中除第一成员节点之外的一个或多个,数据通信模块122还适于接收第二成员节点对第一操作信息进行验证的验证结果。
操作执行模块123与数据通信模块122相耦接,适于若验证结果符合第一操作信息对应的执行条件,则执行第一操作。验证结果符合第一操作信息对应的执行条件可以包括:若第二成员节点中对所述第一操作信息验证通过的成员节点数量超过第一阈值,则确定验证结果符合第一操作信息对应的执行条件。第一操作信息用于请求执行第一操作,第一操作可以用于:对分布式系统执行管理操作;和/或将第一成员节点的业务信息提交至分布式系统。其中,对分布式系统执行管理操作可以包括:删除分布式系统的成员节点;和/或向分布式系统添加成员节点。
结果更新模块124与操作执行模块123相耦接,适于将执行结果更新到分布式系统。例如,结果更新模块124可以调用智能合约,向分布式系统提交执行结果,将执行结果同步到第二成员节点。
此外,根据本发明的一个实施方式,第一成员节点120还包括数据验证模块125(图6未示出)。数据通信模块122还适于接收第二操作信息,第二操作信息由第二成员节点中的任一成员节点向分布式系统提交并同步到第一成员节点。数据验证模块125适于对该第二操作信息进行验证。合约调用模块可以调用智能合约,向分布式系统提交第一成员节点对第二操作信息的验证结果。数据通信模块122还适于将第一成员节点对第二操作信息的验证结果同步到第二成员节点中的多个成员节点。
数据验证模块125还适于基于第一成员节点对第二操作信息的验证,获取分布式系统对第二操作信息的验证结果。操作执行模块124还适于若多个成员节点中对第二操作信息验证通过的成员节点数量超过第二阈值,则确定验证结果符合第二操作信息的执行条件。
在一些实践中,分布式系统100为区块链系统,那么第一成员节点120还可以包括账本存储模块126(图6未示出)。账本存储模块125适于存储区块链系统的账本。区块链系统的账本可以包括管理账本和业务账本。其中,管理账本可以包括成员节点向区块链系统提交的操作信息、验证结果和执行结果,业务账本可以包括成员节点向区块链系统提交的业务信息。
关于第一成员节点120中各模块的详细处理逻辑和实施过程可以参见前文结合图1-图5对分布式系统100以及数据处理方法200、500的相关描述,此处不再赘述。
应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。
Claims (19)
1.一种分布式系统的信息处理方法,所述分布式系统包括多个成员节点,所述方法包括:
第一成员节点调用智能合约,向所述分布式系统提交第一操作信息;
将所述第一操作信息同步到第二成员节点,所述第二成员节点包括所述多个成员节点中除所述第一成员节点之外的一个或多个;
接收所述第二成员节点对所述第一操作信息进行验证的验证结果;
若所述验证结果符合所述第一操作信息对应的执行条件,则执行第一操作;以及
将执行结果更新到所述分布式系统。
2.如权利要求1所述的方法,其中,所述验证结果符合所述第一操作信息对应的执行条件,包括:
若所述第二成员节点中对所述第一操作信息验证通过的成员节点数量超过第一阈值,则确定所述验证结果符合所述第一操作信息对应的执行条件。
3.如权利要求1所述的方法,其中,将所述执行结果更新到所述分布式系统包括:
调用所述智能合约,向所述分布式系统提交所述执行结果;
将所述执行结果同步到所述第二成员节点。
4.如权利要求1所述的方法,其中,所述第一操作信息用于请求执行所述第一操作,所述第一操作用于:
对所述分布式系统执行管理操作;和/或
将所述第一成员节点的业务信息提交至所述分布式系统。
5.如权利要求4所述的方法,其中,对所述分布式系统执行管理操作,包括:
删除所述分布式系统的成员节点;和/或
向所述分布式系统添加成员节点。
6.如权利要求1所述的方法,还包括:
所述第一成员节点接收第二操作信息,所述第二操作信息由所述第二成员节点中的任一成员节点向所述分布式系统提交并同步到所述第一成员节点;
对所述第二操作信息进行验证;
调用智能合约,向所述分布式系统提交所述第一成员节点对所述第二操作信息的验证结果;
将所述第一成员节点对所述第二操作信息的验证结果同步到所述第二成员节点中的多个成员节点。
7.如权利要求6所述的方法,所述方法还包括:
基于所述第一成员节点对所述第二操作信息的验证,获取所述分布式系统对所述第二操作信息的验证结果;
若所述多个成员节点中对所述第二操作信息验证通过的成员节点数量超过第二阈值,则确定所述验证结果符合所述第二操作信息的执行条件。
8.如权利要求1-7中任一项所述的方法,其中,所述分布式系统为区块链系统,所述第一成员节点存储有所述区块链系统的账本,所述区块链系统的账本包括管理账本和业务账本。
9.如权利要求8所述的方法,其中,所述区块链系统为联盟链系统,所述联盟链系统包括的多个成员节点分别对应于联盟的多个组织,所述第一操作信息经由所述联盟链系统在所述联盟的各组织之间同步。
10.一种分布式系统,包括多个成员节点,第一成员节点包括:
合约调用模块,适于调用智能合约,向所述分布式系统提交第一操作信息;
数据通信模块,适于将所述第一操作信息同步到第二成员节点,所述第二成员节点包括所述多个成员节点中除所述第一成员节点之外的一个或多个;还适于接收所述第二成员节点对所述第一操作信息进行验证的验证结果;
操作执行模块,适于若所述验证结果符合所述第一操作信息对应的执行条件,则执行第一操作;以及
结果更新模块,适于将执行结果更新到所述分布式系统。
11.如权利要求10所述的系统,其中,所述验证结果符合所述第一操作信息对应的执行条件,包括:
若所述第二成员节点中对所述第一操作信息验证通过的成员节点数量超过第一阈值,则确定所述验证结果符合所述第一操作信息对应的执行条件。
12.如权利要求10所述的系统,其中,所述结果更新模块适于
调用所述智能合约,向所述分布式系统提交所述执行结果;
将所述执行结果同步到所述第二成员节点。
13.如权利要求10所述的系统,其中,所述第一操作信息用于请求执行所述第一操作,所述第一操作用于:
对所述分布式系统执行管理操作;和/或
将所述第一成员节点的业务信息提交至所述分布式系统。
14.如权利要求13所述的系统,其中,对所述分布式系统执行管理操作,包括:
删除所述分布式系统的成员节点;和/或
向所述分布式系统添加成员节点。
15.如权利要求10所述的系统,所述第一成员节点还包括数据验证模块,
所述数据通信模块还适于接收第二操作信息,所述第二操作信息由所述第二成员节点中的任一成员节点向所述分布式系统提交并同步到所述第一成员节点;
所述数据验证模块适于对所述第二操作信息进行验证;
所述合约调用模块还适于调用智能合约,向所述分布式系统提交所述第一成员节点对所述第二操作信息的验证结果;
所述数据通信模块还适于将所述第一成员节点对所述第二操作信息的验证结果同步到所述第二成员节点中的多个成员节点。
16.如权利要求15所述的系统,其中,所述数据验证模块还适于
基于所述第一成员节点对所述第二操作信息的验证,获取所述分布式系统对所述第二操作信息的验证结果;所述操作执行模块还适于
若所述多个成员节点中对所述第二操作信息验证通过的成员节点数量超过第二阈值,则确定所述验证结果符合所述第二操作信息的执行条件。
17.如权利要求1-16中任一项所述的系统,其中,所述分布式系统为区块链系统,所述第一成员节点还包括账本存储模块,
所述账本存储模块适于存储所述区块链系统的账本,所述区块链系统的账本包括管理账本和业务账本。
18.如权利要求17所述的系统,其中,所述区块链系统为联盟链系统,所述联盟链系统包括的多个成员节点分别对应于联盟的多个组织,所述第一操作信息经由所述联盟链系统在所述联盟的各组织之间同步。
19.一种计算设备,包括:
至少一个处理器;和
存储有程序指令的存储器,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-9中任一项所述的信息处理方法的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911423478.4A CN113132441A (zh) | 2019-12-31 | 2019-12-31 | 一种分布式系统的信息处理方法、分布式系统及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911423478.4A CN113132441A (zh) | 2019-12-31 | 2019-12-31 | 一种分布式系统的信息处理方法、分布式系统及计算设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113132441A true CN113132441A (zh) | 2021-07-16 |
Family
ID=76769745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911423478.4A Pending CN113132441A (zh) | 2019-12-31 | 2019-12-31 | 一种分布式系统的信息处理方法、分布式系统及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113132441A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106952124A (zh) * | 2017-03-16 | 2017-07-14 | 北京牛链科技有限公司 | 基于分布式记账的电子发票管理系统和方法 |
CN108256859A (zh) * | 2018-01-02 | 2018-07-06 | 中国工商银行股份有限公司 | 基于区块链的金融产品交易共识方法、节点及系统 |
CA3039818A1 (en) * | 2017-03-08 | 2018-09-13 | Alibaba Group Holding Limited | Business processing method and apparatus |
CN110138592A (zh) * | 2019-04-09 | 2019-08-16 | 苏宁易购集团股份有限公司 | 一种智能合约的管理方法及系统 |
-
2019
- 2019-12-31 CN CN201911423478.4A patent/CN113132441A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3039818A1 (en) * | 2017-03-08 | 2018-09-13 | Alibaba Group Holding Limited | Business processing method and apparatus |
CN106952124A (zh) * | 2017-03-16 | 2017-07-14 | 北京牛链科技有限公司 | 基于分布式记账的电子发票管理系统和方法 |
CN108256859A (zh) * | 2018-01-02 | 2018-07-06 | 中国工商银行股份有限公司 | 基于区块链的金融产品交易共识方法、节点及系统 |
CN110138592A (zh) * | 2019-04-09 | 2019-08-16 | 苏宁易购集团股份有限公司 | 一种智能合约的管理方法及系统 |
Non-Patent Citations (1)
Title |
---|
范吉立;何蒲;李晓华;聂铁铮;于戈;: "基于区块链的去中心化物品共享交易服务系统", 计算机应用, no. 05 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11651109B2 (en) | Permission management method, permission verification method, and related apparatus | |
JP7454616B2 (ja) | 分散型元帳におけるdagベースのトランザクション処理方法およびシステム | |
CN109189962B (zh) | 一种基于区块链的证照服务实现系统 | |
WO2020258848A1 (zh) | 一种跨链发送资源的方法和装置 | |
CN107147735B (zh) | 一种基于分层结构的分布式账本系统 | |
CN109472572B (zh) | 基于区块链主链加并行多子链的合约系统 | |
US20230316273A1 (en) | Data processing method and apparatus, computer device, and storage medium | |
US11853291B2 (en) | Privacy preserving architecture for permissioned blockchains | |
CN108769230B (zh) | 交易数据存储方法、装置、服务器及存储介质 | |
CN110049048B (zh) | 一种政务公共服务的数据访问方法、设备及可读介质 | |
CN109493052B (zh) | 一种基于主链加并行多子链的跨链合约系统 | |
EP3726774A1 (en) | Transparent blockchain sidechains to support blockchain processing heterogeneity | |
CN107908979B (zh) | 用于在区块链中进行配置和背书的方法和电子设备 | |
CN108537498A (zh) | 基于区块链的跨组织项目管理方法、系统、设备及介质 | |
CN109388957B (zh) | 基于区块链的信息移转方法、装置、介质及电子设备 | |
CN111191283A (zh) | 基于联盟区块链的北斗定位信息安全加密方法及装置 | |
CN113806699B (zh) | 一种云际计算环境中跨区块链身份验证方法及系统 | |
US11038685B1 (en) | Correcting blockchain transactions with cryptocurrency type mistakes | |
CN104580081A (zh) | 一种集成式单点登录系统 | |
CN111612452A (zh) | 一种基于区块链的知识产权管理系统及方法 | |
KR20220050606A (ko) | 개인정보 보호를 위해 개선된 스마트 컨트랙트 기반의 지능형 중개를 위한 장치 및 방법 | |
CN111260475A (zh) | 一种数据处理方法、区块链节点设备及存储介质 | |
CN112837023A (zh) | 机构的业务协同平台、方法、装置及电子设备 | |
CN108170860A (zh) | 数据查询方法、装置、电子设备及计算机可读存储介质 | |
CN110071966B (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 |