CN113010561A - 基于超级账本的数据获取方法、装置、计算机系统 - Google Patents

基于超级账本的数据获取方法、装置、计算机系统 Download PDF

Info

Publication number
CN113010561A
CN113010561A CN202110354729.9A CN202110354729A CN113010561A CN 113010561 A CN113010561 A CN 113010561A CN 202110354729 A CN202110354729 A CN 202110354729A CN 113010561 A CN113010561 A CN 113010561A
Authority
CN
China
Prior art keywords
contract
target data
data
chain
query
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
CN202110354729.9A
Other languages
English (en)
Other versions
CN113010561B (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.)
Industrial and Commercial Bank of China Ltd ICBC
ICBC Technology Co Ltd
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
ICBC Technology Co 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 Industrial and Commercial Bank of China Ltd ICBC, ICBC Technology Co Ltd filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110354729.9A priority Critical patent/CN113010561B/zh
Publication of CN113010561A publication Critical patent/CN113010561A/zh
Application granted granted Critical
Publication of CN113010561B publication Critical patent/CN113010561B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24556Aggregation; Duplicate elimination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本公开提供了一种基于超级账本的数据获取方法、装置、计算机系统、计算机可读存储介质和计算机程序产品,可用于区块链技术领域或其他领域。该方法包括:获取客户端向区块链系统发送的链上请求,其中,链上请求用于请求获取目标数据,区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约;以及响应于链上请求,按照智能合约的执行顺序,调用目标智能合约,以获取目标数据;其中,执行顺序包括先执行查询合约或订单匹配合约,在执行完查询合约或订单匹配合约后,返回用于表征目标数据获取失败的结果的情况下,再执行预言机合约,以便从预言机网络获取目标数据。

Description

基于超级账本的数据获取方法、装置、计算机系统
技术领域
本公开涉及区块链技术领域,更具体地,涉及一种基于超级账本的数据获取方法、装置、计算机系统、计算机可读存储介质和计算机程序产品。
背景技术
Hyperledger Fabric(超级账本)是一个联盟链开发平台。Hyperledger fabric联盟链是Linux基金会下的开源项目,通过使用模块化的框架如共识机制、底层存储、身份认证和访问控制等,开发区块链和分布式账本应用来促进跨行业的协作。
在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:由于区块链协议自身存在的局限性,使其上构建的应用或智能合约不能简单、高效地与外部内容进行交互,导致区块链存在孤岛效应。
发明内容
有鉴于此,本公开提供了一种基于超级账本的数据获取方法、装置、计算机系统、计算机可读存储介质和计算机程序产品。
本公开的一个方面提供了一种基于超级账本的数据获取方法,应用于区块链网络,包括:获取客户端向区块链系统发送的链上请求,其中,所述链上请求用于请求获取目标数据,所述区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,所述预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,所述预言机网络中包括去中心化的多个预言机节点;以及响应于所述链上请求,按照所述智能合约的执行顺序,调用目标智能合约,以获取所述目标数据;其中,所述执行顺序包括先执行所述查询合约或所述订单匹配合约,在执行完所述查询合约或所述订单匹配合约后,返回用于表征所述目标数据获取失败的结果的情况下,再执行所述预言机合约,以便从所述预言机网络获取所述目标数据。
本公开的另一个方面提供了一种基于超级账本的数据获取装置,应用于区块链网络,包括:获取模块,用于获取客户端向区块链系统发送的链上请求,其中,所述链上请求用于请求获取目标数据,所述区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,所述预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,所述预言机网络中包括去中心化的多个预言机节点;以及第一调用模块,用于响应于所述链上请求,按照所述智能合约的执行顺序,调用目标智能合约,以获取所述目标数据;其中,所述执行顺序包括先执行所述查询合约或所述订单匹配合约,在执行完所述查询合约或所述订单匹配合约后,返回用于表征所述目标数据获取失败的结果的情况下,再执行所述预言机合约,以便从所述预言机网络获取所述目标数据。
本公开的另一方面提供了一种计算机系统,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的基于超级账本的数据获取方法。
本公开的另一方面提供了一种计算机可读存储介质,其上存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的基于超级账本的数据获取方法。
本公开的另一方面提供了一种计算机程序产品,所述计算机程序产品包括计算机可执行指令,所述指令在被执行时用于实现如上所述的基于超级账本的数据获取方法。
根据本公开的实施例,通过采用了获取客户端向区块链系统发送的链上请求,其中,链上请求用于请求获取目标数据,区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,预言机网络中包括去中心化的多个预言机节点;以及响应于链上请求,按照智能合约的执行顺序,调用目标智能合约,以获取目标数据;其中,执行顺序包括先执行查询合约或订单匹配合约,在执行完查询合约或订单匹配合约后,返回用于表征目标数据获取失败的结果的情况下,再执行预言机合约,以便从预言机网络获取目标数据的技术手段,由于引入了查询合约、订单匹配合约和预言机合约,可以从链上和链下获取数据,至少部分的解决了区块链不能简单、高效地与外部内容进行交互的技术问题,进而达到了打破区块链中存在的孤岛效应的技术效果。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的可以应用基于超级账本的数据获取方法的示例性系统架构;
图2示意性示出了根据本公开实施例的基于超级账本的数据获取方法的流程图;
图3示意性示出了根据本公开实施例的基于Hyperledger Fabric和去中心化预言机形成的系统的架构图;
图4示意性示出了根据本公开实施例的的电子设备的结构图;
图5示意性示出了根据本公开的实施例的基于超级账本的数据获取装置的框图;以及
图6示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
智能合约是现代区块链最重要的部分之一。智能合约部署在区块链上,自动触发且部署后无法修改。这些特征使智能合约成为传统数字合约的最佳去中心化方案。
由于区块链封闭环境的特性,区块链链上无法主动获取链外真实世界的数据。主要是因为区块链无法主动发起Network call(网络调用),而链上智能合约是被动接收数据的。其次,智能合约其实并不“智能”,它只是在满足相应条件下,才达到触发状态的程序。同时,智能合约最终的执行需要合约参与方的私钥签署,智能合约本身没有办法自动执行。当智能合约的触发条件取决于区块链外信息时,这些信息需先写入区块链内记录。
发明人在实现本公开构思的过程中发现,智能合约无法与区块链外部的数据进行通信,导致Hyperledger Fabric联盟链中存在孤岛效应。
本公开的实施例提供了一种基于超级账本的数据获取方法、装置、计算机系统、计算机可读存储介质和计算机程序产品。该方法包括获取客户端向区块链系统发送的链上请求,其中,链上请求用于请求获取目标数据,区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,预言机网络中包括去中心化的多个预言机节点;以及响应于链上请求,按照智能合约的执行顺序,调用目标智能合约,以获取目标数据;其中,执行顺序包括先执行查询合约或订单匹配合约,在执行完查询合约或订单匹配合约后,返回用于表征目标数据获取失败的结果的情况下,再执行预言机合约,以便从预言机网络获取目标数据。
图1示意性示出了根据本公开实施例的可以应用基于超级账本的数据获取方法的示例性系统架构100。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括区块链节点101、102、103、104、105、106……(其他区块链节点图中未示出),由这多个区块链节点构成HyperledgerFabric区块链网络,每个区块链节点对应一个区块链数据库,这多个区块链节点形成了一个分布在全球各地、能够协同运转的数据库存储系统,各区块链节点享有同其他所有区块链节点同样的权利与义务,各区块链节点会通过某种共识机制来确定一些区块链节点作为共识区块链节点,任意一个共识区块链节点在其对应的区块链数据库中进行读写操作,其他区块链节点会根据某种机制完成同步,从而实现在区块链网络中所有区块链节点对应的区块链数据库中的数据完全一致。
这多个区块链节点分别是部署于全球各地的服务器或电子设备,每个区块链节点可以是终端设备、服务器或集群。
终端设备可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。终端设备上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
服务器可以是提供各种服务的服务器,例如对用户利用终端设备所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的基于超级账本的数据获取方法一般可以由服务器执行。相应地,本公开实施例所提供的基于超级账本的数据获取装置一般可以设置于服务器中。本公开实施例所提供的基于超级账本的数据获取方法也可以由不同于服务器且能够与终端设备和/或服务器通信的服务器或服务器集群执行。相应地,本公开实施例所提供的基于超级账本的数据获取装置也可以设置于不同于服务器且能够与终端设备和/或服务器通信的服务器或服务器集群中。或者,本公开实施例所提供的基于超级账本的数据获取方法也可以由终端设备执行,或者也可以由不同于终端设备的其他终端设备执行。相应地,本公开实施例所提供的基于超级账本的数据获取装置也可以设置于终端设备中,或设置于不同于终端设备的其他终端设备中。
应该理解,图1示出的区块链节点的数目仅仅是示意性的。根据实现需要,可以具有任意数目的区块链节点。
需要说明的是,本公开基于超级账本的数据获取方法、装置、计算机系统、计算机可读存储介质和计算机程序产品可用于区块链技术领域,也可用于除区块链技术领域之外的任意领域,本公开基于超级账本的数据获取方法、装置、计算机系统、计算机可读存储介质和计算机程序产品的应用领域不做限定。
图2示意性示出了根据本公开实施例的基于超级账本的数据获取方法的流程图。
如图2所示,该方法包括操作S201~S202。
在操作S201,获取客户端向区块链系统发送的链上请求,其中,链上请求用于请求获取目标数据,区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,预言机网络中包括去中心化的多个预言机节点。
根据本公开的实施例,上述区块链系统例如为Hyperledger Fabric联盟链系统,上述客户端例如可以是Fabric系统中的一个节点,或者也可以是独立于上述Fabric系统之外的其他外接设备。上述链上请求例如可以包括天气、股票等数据查询请求等,上述目标数据可以对应为天气、股票等的车讯结果等。上述预言机合约例如为与请求合约交互(用于请求调用预言机网络)的接口本身。
在操作S202,响应于链上请求,按照智能合约的执行顺序,调用目标智能合约,以获取目标数据,其中,执行顺序包括先执行查询合约或订单匹配合约,在执行完查询合约或订单匹配合约后,返回用于表征目标数据获取失败的结果的情况下,再执行预言机合约,以便从预言机网络获取目标数据。
需要说明的是,上述目标智能合约例如还可以为查询合约、订单匹配合约和预言机合约其中至少之一,并且对该查询合约、订单匹配合约和预言机合约三者的执行顺序不做限定,以最终获取上述目标数据。
通过本公开的上述实施例,针对Hyperledger Fabric联盟链存在的孤岛效应等数据交互问题,引入了查询合约、订单匹配合约以及预言机合约,并结合去中心化预言机网络,由于网络是完全去中心化的,通过该种模式模式极大降低了合约方彼此间的信任需求,将智能合约防篡改的特性扩展到了数据从API端到智能合约端的整个传输过程。同时,让智能合约具有外部连接性,使其能够与链下资源交互,为智能合约替代传统数字合约提供了先决条件。
下面参考图3~图4,结合具体实施例对图2所示的方法做进一步说明。
图3示意性示出了根据本公开实施例的基于Hyperledger Fabric和去中心化预言机形成的系统的架构图。
如图3所示,该系统包括Hyperledger Fabric链上系统和由去中心化预言机和互联网数据源构成的链下系统两个部分。其中,用户1和用户2例如即为上述向区块链系统发送链上请求的客户端,其例如可以是Hyperledger Fabric联盟链的节点,或者也可以是独立于联盟链之外并能与该联盟链通信的其他电子设备。去中心化预言机节点例如为上述预言机网络的其中一个节点,其内部配置有适配器,用于接收互联网数据源中不同来源的数据。预言机网络是分布式的预言机节点构成的网络(图3中仅示出预言机网络中的一个预言机节点)。互联网数据源包括URL(链接)、IPFS(InterPlanetary File System,星际文件系统,一种点对点(P2P)的分布式文件存储协议)、搜索引擎、过渡链数据、去中心化应用和其他数据等等。适配器是配置了最小化REST API(一种燃机架构风格)的外部服务,用户可以通过创建适配器来定制子任务,配置了适配器之后,任何语言开发的程序都可以通过添加中间API来轻松实现。
根据本公开的实施例,上述区块链系统还部署有用户合约,上述操作S202例如可以包括:响应于链上请求,调用用户合约,对客户端进行身份验证;以及在验证通过的情况下,调用目标智能合约,以获取目标数据。
根据本公开的实施例,参见图3所示,Hyperledger Fabric系统中例如还皮遏制有用户合约,用户合约是由智能合约发起的数据请求,用于进行身份验证。例如,在发起一个链上请求之后,需要首先调用用户合约,对发起链上请求的客户端(如用户1或用户2)进行身份验证,验证通过之后才能继续调用其他智能合约(即上述目标智能合约,如查询合约、订单匹配合约、预言机合约等)。
根据本公开的实施例,上述客户端具有多个,上述操作S202中执行查询合约或订单匹配合约例如可以包括:调用查询合约,从多个客户端的相关数据中查询目标数据;以及接收目标数据,并返回用于表征目标数据获取成功的结果。
根据本公开的实施例,上述查询合约用于不同用户的数据查询。例如,参见图3所示,由用户1发起的链上请求,在调用查询合约后,可以从用户2和Hyperledger Fabric系统中的其他用户的数据库中查询相关目标数据,并可在查询到该目标数据后返回给用户合约与查询成功相关的结果,在未查询到相关目标数据时返回给用户合约与查询失败相关的结果,以便通过其他查询方式(如订单匹配合约和/或预言机合约)继续查询。
根据本公开的实施例,上述操作S202中执行查询合约或订单匹配合约例如还可以包括:调用订单匹配合约,从区块链系统的区块链上查询目标数据;以及接收目标数据,并返回用于表征目标数据获取成功的结果。
根据本公开的实施例,上述订单匹配合约中例如包含一个服务水平协议(SLA),该服务水平协议例如可以为用户匹配需求,如包括针对用户调用智能合约发起的梁上请求的查询需求,和用户合约调用预言机合约的调用需求,通过记录协议中的具体参数,例如还可最终敲定预言机的服务水平协议。例如,参见图3所示,由用户1或用户2中的任一用户发起一个链上请求,在开启订单匹配合约进行数据查询时,可以基于订单匹配合约中的服务水平协议确定从Hyperledger Fabric系统的链上查询相关目标数据,并在查询到该目标数据后返回查询成功的结果,在未查询到相关目标数据时返回查询失败的结果,以告知用户合约相关目标数据是否可以在链上查询到,以及在链上未能查询到的情况下,通过其他查询方式(如查询合约和/或预言机合约)继续查询,如由用户合约调用预言机合约继续查询。
根据本公开的实施例,上述操作S202中执行预言机合约,以便从预言机网络获取目标数据例如可以包括:在监测到预言机合约被触发的情况下,调用预言机网络,以便于利用每个预言机节点获取目标数据,得到多个链下数据;以及根据针对多个链下数据的校验结果,将校验通过的链下数据作为目标数据。
根据本公开的实施例,上述预言机合约被触发的条件例如可以包括查询合约和/或订单匹配合约返回查询失败的信息之后,或是用户合约需要调用预言机合约之时。例如,参见图3所示,在查询合约和订单匹配合约均返回查询识别的信息的情况下,用户合约开始调用预言机合约,从而预言机合约进一步调用预言机网络,以通过预言机网络中的去中心化预言机节点从互联网数据源获取相关目标数据。
根据本公开的实施例,上述监测和校验的过程例如可以由一个电子设备实现,如图3所示,通过将电子设备设置于预言机合约和预言机网络之间,来实现监测和校验的功能。
需要说明的是,为与电子设备和互联网请求相适配,每一个去中心化预言机节点中例如均配置了去中心化预言机核心软件(Core),该软件例如可以负责与区块链交互、调度任务以及工作量平衡等工作。去中心化预言机节点完成的工作被称为任务,每个任务能够被拆分成若干个子任务,子任务拥有更细小而具体的职责,前一个子任务完成工作后会将结果传递给下一个子任务,最终得到结果。去中心化预言机节点例如可以包括以下几个内置的子任务:HTTP请求、JSON解析以及转换成符合Hyperledger Fabric区块链的格式等。
通过配置该去中心化预言机核心软件,能够在电子设备监测到事件(如需要调用哪些预言机节点)时接收相关信息,并实现电子设备与预言机节点间的数据交互。
图4示意性示出了根据本公开实施例的的电子设备的结构图。
如图4所示,该电子设备包括监测预言机合约模块、与去中心化预言机交互模块、数据采集接收模块、数据校验模块和形成新的预言机记录模块。
监测预言机合约模块,用于监测预言机合约是否被触发。
与去中心化预言机交互模块,与去中心化预言机核心软件相交互,用于在监测到预言机合约被触发的情况下,调用预言机网络中的去中心化预言机节点,并将相关事件记录发送至去中心化预言机核心软件,在去中心化预言机核心软件收到事件记录后随即向适配器发送任务,使得适配器向外部API(如互联网数据源)请求数据(即链下数据),适配器可以对来源不同的数据进行结构化处理,并返回至去中心化预言机核心软件,从而去中心化预言机核心软件可以将相关信息(即链下数据)发送给电子设备。
数据采集接收模块,用于接收预言机网络中的所有预言机节点获取的链下数据。
数据校验模块,用于对接收到的所有链下数据进行校验,滤除空数据,确定目标数据。
形成新的预言机记录模块,用于更新预言机网络中预言机节点的相关信息,以及将目标数据发送至预言机合约。
通过本公开的上述实施例,由于设计了具有监测和校验功能的电子设备,可以对预言机节点返回结果信息进行验证,可进一步保证请求结果的有效性。
根据本公开的实施例,上述区块链系统还部署有聚合合约,上述基于超级账本的数据获取方法还可以包括:调用聚合合约,将目标数据聚合成数据表单;以及将数据表单返回至用户合约。
根据本公开的实施例,上述聚合合约例如可以收集预言机服务商返回的结果,聚合所有数据,计算出一个最终结果。例如,参见图3所示,在预言机合约接收到目标数据之后,可以把该目标数据发送至聚合合约,并基于聚合合约将目标数据进行聚合,得到最终的请求结果,通过将最终的请求结果返回至用户合约,可以为链上请求提供对应的请求结果。
需要说明的是,上述聚合合约的聚合方式例如可以包括聚合成表单、取平均值、取中间值等方式,在此不做限定。
通过本公开的上述实施例,由于给Hyperledger Fabric链上的应用提供了查询合约、订单匹配合约和预言机合约等相关服务,能够从链上和链下等多个方向获取目标数据,同时可以利用该方案利用去参与其他区块链网络的生态,打破了Hyperledger Fabric系统的孤岛效应。
根据本公开的实施例,上述客户端具有多个,每两个客户端之间设置有用户通道,上述智能合约部署于该用户通道上。
根据本公开的实施例,参见图3所示,上述智能合约(包括查询合约、订单匹配合约、用户合约、预言机合约和聚合合约)例如都部署在Hyperledger Fabric的公共通道(Global channel)上,同时不同用户(如用户1和用户2)之间也可以建立相应的用户通道(user channel),并可部署上述智能合约。
需要说明的是,Hyperledger Fabric的channel(通道)是Orderer(提供共识服务的网络节点)的一个模块,Fabric的启动会创建一个内建的system channel(systemchannel=Global channel),是系统的一个默认链,用于管理其他的user channel。Fabric的channel之间是相互隔离的,仅有的联系是user channel需要通过system channel进行创建,但是创建完之后,该些channel相互之间没有任何影响。智能合约是区块链中一个非常重要的概念和组成部分。在Fabric中内成为Chaincode,Fabric的Chaincode是一段运行在容器中的程序。Chaincode是客户端程序和Fabric之间的桥梁。
根据本公开的实施例,通过Chaincode客户端程序可以发起交易,查询交易。channel建立完成后,可以在channel上部署chaincode,任何channel上都可以部署多个chaincode,并且该些chaincode可以相互调用,在同一个channel上的智能合约互相调用可以修改数据,不同channel上的智能合约也可以互相调用,但是只能读取数据,不能修改数据,不同的chaincode组织起来可以完成一个复杂的业务逻辑。基于此,例如可以创建具有复杂业务逻辑的Hyperledger Fabric系统,如本实施例中,在预言机合约后方还设置了一个Hyperledger Fabric链上模块,包括“查询合约”、“订单匹配合约”和“聚合合约”等智能合约。
结合本公开的上述实施例,参见图3所示,例如为针对智能合约的连接性问题,提供的一种基于Hyperledger Fabric区块链公共通道的智能合约访问关键链外资源、网站API和Dapps(去中心化应用)等的去中心化预言机系统。在该系统中,去中心化预言机节点可以用来提供数据,依托Hyperledger Fabric的链上部分收集链上请求的需求,收集合适的节点的回答,并在加权得到结论后反馈给信息请求方。利用电子设备来监测数据服务过程,本系统可以负责维护“事实”类账目。
根据本公开的上述实施例,其他组织可以通过Hyperledger Fabric公共通道的智能合约之间互相调用,以进行访问,查询数据。需要说明的是,在存在其他阻值的情况下,本系统可以负责数据更新,其他组织仅仅可以查看。
通过本公开的上述实施例,实现了一种安全开放的去中心化系统,由于去中心化不仅是区块链防篡改属性的基础,而且还决定了区块链无需许可的本质,通过上述实施例,在持续打造去中心化系统的过程中,可以进一步提升Hyperledger Fabric生态系统无需许可的属性。同时,由于简单的模块灵活性高,在上述实施例中,通过用模块化理念设计简单灵活的系统,可以安全地集成至大规模系统中,不仅有利于系统升级,还能推动去中心化发展。进一步的,通过给Hyperledger Fabric链上的应用提供预言机服务,能够参与其他区块链网络的生态,打破孤岛效应。最终可设计得到一个允许各种不同的实现方式互相竞争,避免预言机核心部件的管理过于集中的生态系统。
图5示意性示出了根据本公开的实施例的基于超级账本的数据获取装置的框图。
如图5所示,基于超级账本的数据获取装置500包括获取模块510和调用模块520。
获取模块510,用于获取客户端向区块链系统发送的链上请求,其中,链上请求用于请求获取目标数据,区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,预言机网络中包括去中心化的多个预言机节点。
第一调用模块520,用于响应于链上请求,按照智能合约的执行顺序,调用目标智能合约,以获取目标数据。其中,执行顺序包括先执行查询合约或订单匹配合约,在执行完查询合约或订单匹配合约后,返回用于表征目标数据获取失败的结果的情况下,再执行预言机合约,以便从预言机网络获取目标数据。
通过本公开的上述实施例,针对Hyperledger Fabric联盟链存在的孤岛效应等数据交互问题,引入了查询合约、订单匹配合约以及预言机合约,并结合去中心化预言机网络,由于网络是完全去中心化的,通过该种模式模式极大降低了合约方彼此间的信任需求,将智能合约防篡改的特性扩展到了数据从API端到智能合约端的整个传输过程。同时,让智能合约具有外部连接性,使其能够与链下资源交互,为智能合约替代传统数字合约提供了先决条件。
根据本公开的实施例,上述区块链系统还部署有用户合约,上述调用模块包括第一调用单元和第二调用单元。
第一调用单元,用于响应于链上请求,调用用户合约,对客户端进行身份验证。
第二调用单元,用于在验证通过的情况下,调用目标智能合约,以获取目标数据。
根据本公开的实施例,上述客户端具有多个,上述调用模块还包括第一调用子单元和第一接收子单元。
第一调用子单元,用于调用查询合约,从多个客户端的相关数据中查询目标数据。
第一接收子单元,用于接收目标数据,并返回用于表征目标数据获取成功的结果。
根据本公开的实施例,上述调用模块还包括第二调用子单元和第二接收子单元。
第二调用子单元,用于调用订单匹配合约,从区块链系统的区块链上查询目标数据。
第二接收子单元,用于接收目标数据,并返回用于表征目标数据获取成功的结果。
根据本公开的实施例,上述调用模块还包括第三调用子单元和定义子单元。
第三调用子单元,用于在监测到预言机合约被触发的情况下,调用预言机网络,以便于利用每个预言机节点获取链下数据,得到多个链下数据。
定义子单元,用于根据针对多个链下数据的校验结果,将校验通过的链下数据作为目标数据。
根据本公开的实施例,上述区块链系统还部署有用户合约和聚合合约,上述基于超级账本的数据获取装置500还包括第二调用模块和返回模块。
第二调用模块,用于调用聚合合约,将目标数据聚合成数据表单。
返回模块,用于将数据表单返回至用户合约。
根据本公开的实施例,上述客户端具有多个,每两个客户端之间设置有用户通道,上述智能合约部署于该用户通道上。
根据本公开的实施例的模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,获取模块510和调用模块520中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,获取模块510和调用模块520中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,获取模块510和调用模块520中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中基于超级账本的数据获取装置部分与本公开的实施例中基于超级账本的数据获取方法部分是相对应的,基于超级账本的数据获取装置部分的描述具体参考基于超级账本的数据获取方法部分,在此不再赘述。
图6示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的框图。图6示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,根据本公开实施例的计算机系统600包括处理器601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。处理器601例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器601还可以包括用于缓存用途的板载存储器。处理器601可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 603中,存储有系统600操作所需的各种程序和数据。处理器601、ROM 602以及RAM 603通过总线604彼此相连。处理器601通过执行ROM 602和/或RAM 603中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 602和RAM 603以外的一个或多个存储器中。处理器601也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,系统600还可以包括输入/输出(I/O)接口605,输入/输出(I/O)接口605也连接至总线604。系统600还可以包括连接至I/O接口605的以下部件中的一项或多项:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被处理器601执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 602和/或RAM 603和/或ROM 602和RAM 603以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行本公开实施例所提供的方法的程序代码,当计算机程序产品在电子设备上运行时,该程序代码用于使电子设备实现本公开实施例所提供的基于超级账本的数据获取方法。
在该计算机程序被处理器601执行时,执行本公开实施例的系统/装置中限定的上述功能。根据本公开的实施例,上文描述的系统、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分609被下载和安装,和/或从可拆卸介质611被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (11)

1.一种基于超级账本的数据获取方法,应用于区块链网络,包括:
获取客户端向区块链系统发送的链上请求,其中,所述链上请求用于请求获取目标数据,所述区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,所述预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,所述预言机网络中包括去中心化的多个预言机节点;以及
响应于所述链上请求,按照所述智能合约的执行顺序,调用目标智能合约,以获取所述目标数据;
其中,所述执行顺序包括先执行所述查询合约或所述订单匹配合约,在执行完所述查询合约或所述订单匹配合约后,返回用于表征所述目标数据获取失败的结果的情况下,再执行所述预言机合约,以便从所述预言机网络获取所述目标数据。
2.根据权利要求1所述的方法,其中,所述区块链系统还部署有用户合约,响应于所述链上请求,按照所述智能合约的执行顺序,调用目标智能合约,以获取所述目标数据包括:
响应于所述链上请求,调用所述用户合约,对所述客户端进行身份验证;以及
在验证通过的情况下,调用所述目标智能合约,以获取所述目标数据。
3.根据权利要求1所述的方法,其中,所述客户端具有多个,执行所述查询合约或所述订单匹配合约包括:
调用所述查询合约,从多个所述客户端的相关数据中查询所述目标数据;以及
接收所述目标数据,并返回用于表征所述目标数据获取成功的结果。
4.根据权利要求1所述的方法,其中,执行所述查询合约或所述订单匹配合约包括:
调用所述订单匹配合约,从所述区块链系统的区块链上查询所述目标数据;以及
接收所述目标数据,并返回用于表征所述目标数据获取成功的结果。
5.根据权利要求1所述的方法,其中,所述执行所述预言机合约,以便从所述预言机网络获取所述目标数据包括:
在监测到所述预言机合约被触发的情况下,调用所述预言机网络,以便于利用每个所述预言机节点获取链下数据,得到多个链下数据;以及
根据针对所述多个链下数据的校验结果,将校验通过的链下数据作为所述目标数据。
6.根据权利要求1所述的方法,其中,所述区块链系统还部署有用户合约和聚合合约,所述方法还包括:
调用所述聚合合约,将所述目标数据聚合成数据表单;以及
将所述数据表单返回至所述用户合约。
7.根据权利要求1所述的方法,其中,所述客户端具有多个,每两个所述客户端之间设置有用户通道,所述智能合约部署于所述用户通道上。
8.一种基于超级账本的数据获取装置,应用于区块链网络,包括:
获取模块,用于获取客户端向区块链系统发送的链上请求,其中,所述链上请求用于请求获取目标数据,所述区块链系统预先部署有以下智能合约:查询合约、订单匹配合约和预言机合约,其中,所述预言机合约中包括能够被调用的预言机网络中的预言机节点的标识信息,所述预言机网络中包括去中心化的多个预言机节点;以及
第一调用模块,用于响应于所述链上请求,按照所述智能合约的执行顺序,调用目标智能合约,以获取所述目标数据;
其中,所述执行顺序包括先执行所述查询合约或所述订单匹配合约,在执行完所述查询合约或所述订单匹配合约后,返回用于表征所述目标数据获取失败的结果的情况下,再执行所述预言机合约,以便从所述预言机网络获取所述目标数据。
9.一种计算机系统,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至7中任一项所述的方法。
11.一种计算机程序产品,包括计算机可执行指令,所述指令在被执行时用于实现权利要求1至7中任一项所述的方法。
CN202110354729.9A 2021-03-31 2021-03-31 基于超级账本的数据获取方法、装置、计算机系统 Active CN113010561B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110354729.9A CN113010561B (zh) 2021-03-31 2021-03-31 基于超级账本的数据获取方法、装置、计算机系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110354729.9A CN113010561B (zh) 2021-03-31 2021-03-31 基于超级账本的数据获取方法、装置、计算机系统

Publications (2)

Publication Number Publication Date
CN113010561A true CN113010561A (zh) 2021-06-22
CN113010561B CN113010561B (zh) 2022-09-06

Family

ID=76387620

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110354729.9A Active CN113010561B (zh) 2021-03-31 2021-03-31 基于超级账本的数据获取方法、装置、计算机系统

Country Status (1)

Country Link
CN (1) CN113010561B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113643157A (zh) * 2021-07-05 2021-11-12 中国人民银行数字货币研究所 智能合约的执行方法和装置
CN113762900A (zh) * 2021-11-08 2021-12-07 江苏荣泽信息科技股份有限公司 一种基于区块链预言机的供应链管理系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110633286A (zh) * 2019-09-29 2019-12-31 山东爱城市网信息技术有限公司 一种基于区块链的授时预言机实现方法
CN111145019A (zh) * 2018-11-05 2020-05-12 北京彩球世纪科技有限公司 一种在区块链上获取链外数据的方式和系统
CN111176668A (zh) * 2019-12-30 2020-05-19 支付宝(杭州)信息技术有限公司 预言机部署方法、装置、电子设备及存储介质
CN111401903A (zh) * 2020-06-03 2020-07-10 腾讯科技(深圳)有限公司 区块链消息处理方法、装置、计算机以及可读存储介质
CN112100277A (zh) * 2020-09-14 2020-12-18 泰链智能技术(济南)有限公司 一种企业数据上链预言机实现方法、系统、设备及产品

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111145019A (zh) * 2018-11-05 2020-05-12 北京彩球世纪科技有限公司 一种在区块链上获取链外数据的方式和系统
CN110633286A (zh) * 2019-09-29 2019-12-31 山东爱城市网信息技术有限公司 一种基于区块链的授时预言机实现方法
CN111176668A (zh) * 2019-12-30 2020-05-19 支付宝(杭州)信息技术有限公司 预言机部署方法、装置、电子设备及存储介质
CN111401903A (zh) * 2020-06-03 2020-07-10 腾讯科技(深圳)有限公司 区块链消息处理方法、装置、计算机以及可读存储介质
CN112100277A (zh) * 2020-09-14 2020-12-18 泰链智能技术(济南)有限公司 一种企业数据上链预言机实现方法、系统、设备及产品

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113643157A (zh) * 2021-07-05 2021-11-12 中国人民银行数字货币研究所 智能合约的执行方法和装置
CN113762900A (zh) * 2021-11-08 2021-12-07 江苏荣泽信息科技股份有限公司 一种基于区块链预言机的供应链管理系统及方法
CN113762900B (zh) * 2021-11-08 2022-02-11 江苏荣泽信息科技股份有限公司 一种基于区块链预言机的供应链管理系统及方法

Also Published As

Publication number Publication date
CN113010561B (zh) 2022-09-06

Similar Documents

Publication Publication Date Title
US20210073051A1 (en) Late connection binding for bots
CN109284197B (zh) 基于智能合约的分布式应用平台及实现方法
KR102121159B1 (ko) 이벤트-구동 블록체인 워크플로우 프로세싱
CN106462467B (zh) 在不同分布式网络上针对消费服务的集成api和ui
CN110191063B (zh) 服务请求的处理方法、装置、设备及存储介质
CN112948900A (zh) 应用于区块链系统的链下数据获取方法和装置
CN113010561B (zh) 基于超级账本的数据获取方法、装置、计算机系统
US10701057B2 (en) Assembly manager
CN115277855A (zh) 请求处理方法、装置、电子设备及存储介质
Patterson Learn AWS Serverless Computing: A Beginner's Guide to Using AWS Lambda, Amazon API Gateway, and Services from Amazon Web Services
KR102245358B1 (ko) 네트워크 리소스 요청을 제로 레이팅 네트워크 요청으로 변환하는 기술
CN113132400B (zh) 业务处理方法、装置、计算机系统及存储介质
CN115514632A (zh) 云服务的资源模板编排方法、装置、设备及存储介质
CN114780361A (zh) 日志生成方法、装置、计算机系统及可读存储介质
CN113076371A (zh) 基于预言机即服务平台的服务管理方法、装置、系统
CN114490136A (zh) 服务调用和提供方法、装置、电子设备、介质和程序产品
CN113176907A (zh) 接口数据调用方法、装置、计算机系统及可读存储介质
CN115686813A (zh) 一种资源调度方法、装置、电子设备和存储介质
US20130290830A1 (en) System and method for managing a viewstate of a web application
CN112565340B (zh) 分布式应用的服务调度方法、装置、计算机系统及介质
CN114745316B (zh) 路由方法、装置、设备和介质
CN112817573B (zh) 用于构建流式计算应用的方法、装置、计算机系统和介质
Choudhary et al. Case Study: use of AWS lambda for building a serverless chat application
CN116401319B (zh) 数据同步方法及装置、电子设备和计算机可读存储介质
CN110321250B (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
GR01 Patent grant
GR01 Patent grant