CN113420336B - 一种分布式预言机实现方法及系统 - Google Patents

一种分布式预言机实现方法及系统 Download PDF

Info

Publication number
CN113420336B
CN113420336B CN202110640161.7A CN202110640161A CN113420336B CN 113420336 B CN113420336 B CN 113420336B CN 202110640161 A CN202110640161 A CN 202110640161A CN 113420336 B CN113420336 B CN 113420336B
Authority
CN
China
Prior art keywords
distributed
data
predictor
intelligent
user
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.)
Active
Application number
CN202110640161.7A
Other languages
English (en)
Other versions
CN113420336A (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.)
Beihang University
Original Assignee
Beihang University
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 Beihang University filed Critical Beihang University
Priority to CN202110640161.7A priority Critical patent/CN113420336B/zh
Publication of CN113420336A publication Critical patent/CN113420336A/zh
Application granted granted Critical
Publication of CN113420336B publication Critical patent/CN113420336B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开一种分布式预言机实现方法及系统,涉及区块链技术领域,该方法包括:用户智能合约调用预言机智能合约API,发送数据请求,预言机智能合约转发用户智能合约的数据请求给分布式预言机,分布式预言机从外部数据源获取数据并接受预言机审计区块链的检查验证,并将验证过的数据返回给预言机智能合约,预言机智能合约转发给用户智能合约,最终完成用户智能合约数据请求。一种分布式预言机(Scalable Data Feed Service,简称SDFS)实现系统,包括预言机智能合约、分布式预言机和预言机审计区块链。本发明通过分布式预言机各组成部分的分工协作确保数据采集请求和响应过程没有被篡改,数据是可信的,保证系统服务具有可扩展性,同时提高了隐私数据的安全性。

Description

一种分布式预言机实现方法及系统
技术领域
本发明涉及针对区块链领域,特别是涉及一种分布式预言机实现方法及系统。
背景技术
本发明中包含的英文简称如下:
SDFS:Scalable Data Feed Service可扩展数据馈送服务
TLS:Transport Layer Security安全传输层协议
预言机是一个提供外部信息的平台,提供了智能合约在合约满足运行时的必要条件。通过在区块链与互联网之间建立一道可信的数据网关,打破智能合约获取数据的束缚,使其具有访问互联网数据的能力。区块链通过数据馈送服务接入API、URL、搜索引擎等方式进行获取互联网中的数据。
目前最常用的数据馈送服务是Oraclize,采用TLSNotary算法,证明Oraclize没有篡改检索到的数据,但是无法证明没有篡改数据请求。基于英特尔SGX技术预言机TownCrier允许特殊应用程序与支持HTTPS的网站进行交互,这样的应用程序在SGX飞地内执行,但是安全性依赖于SGX框架的安全性。
发明内容
本发明所要解决的技术问题是:解决现有预言机存在的数据可靠性、通信可靠性、可扩展性问题。
本发明通过下述技术方案实现:
一种分布式预言机实现方法,该方法包括:
S01、用户智能合约调用预言机智能合约API,发送数据请求;
S02、预言机智能合约转发用户智能合约的数据请求给分布式预言机;
S03、分布式预言机将该请求的散列值转发给系统审计区块链作为证据。同时,分布式预言机节点向Web服务器发送请求;
S04、Web服务器接收请求并将响应发送到分布式预言机节点。分布式预言机节点将响应的散列转发给审计区块链作为证据;
S05、分布式预言机将验证过的数据返回给预言机智能合约,预言机智能合约转发给用户智能合约,最终完成用户智能合约数据请求。
S06、用户智能合约数据接收到分布式预言机提供的数据,能够提供查询审计区块链确保数据请求和响应都没被篡改。
其次,本发明还提供一种分布式预言机系统,其包括:
(1)预言机智能合约,为用户智能合约提供数据请求和转发;
(2)分布式预言机,由很多个预言机节点组成,采用可扩展分布式的架构;
(3)审计区块链,为分布式预言机提供审计服务,记录分布式预言机的数据请求和响应哈希值。
具体的,所涉及用户智能合约和预言机智能合约是部署在区块链上,区块链可以是公有链、联盟链或私有链。用户智能合约调用预言机智能合约API,用户智能合约开发时候嵌入预言机的SDK,通过预言机的接口API进行调用。
分布式预言机是由很多个预言机节点组成,采用可扩展分布式的架构,并且能够根据智能合约数据需求情况来动态部署。每个预言机节点可以独立的从不同数据源获取数据,在数据处理过程中不同节点可以有不同的处理方式。
审计区块链用于验证预言机馈送数据的真实性,在验证通过之后,数据将被返回给智能合约,请求和响应的哈希值会记录在审计区块链中,用户智能合约可以验证请求和响应的哈希值。Web服务器可以是多种数据源服务器,包括网页数据、数据搜索引擎、API接口、文件资源等。
附图说明
后文将参照附图以示例性而非限制性的方式详细描述本发明的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比例绘制的。本发明的目标及特征考虑到如下结合附图的描述将更加明显,附图中:
图1为本发明所述的一种分布式预言机系统总体架构的示意图。
图2为本发明所述的一种分布式预言机实现方法的流程图示意图。
具体实施方式
为了清晰地阐述本发明,使本发明实施例的目的、技术方案和优点更加清楚,下面结合了本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,以令本领域技术人员参照说明书文字能够据以实施。下面将附图结合具体实施方式对本发明的技术加以详细说明。
本发明本实施例提出一种分布式预言机实现方法,该方法的实现过程包括:
S01、用户智能合约调用预言机智能合约API,发送数据请求;
S02、预言机智能合约转发用户智能合约的数据请求给分布式预言机;
S03、分布式预言机将该请求的散列值转发给系统审计区块链作为证据。同时,分布式预言机节点向Web服务器发送ClientHello;
S04、审计区块链接收到请求,经过链上所有节点的一致同意,将请求散列值放在审计区块链上作为证据,然后每个审计区块链节点生成一个随机数,并将其广播给其他审计区块链节点;
S05、每个审计区块链节点从其他节点接收到随机数后,对所有随机数进行异或运算,得到最终的随机数S2,并使用RSA算法对随机数S2进行加密;
S06、审计区块链将加密随机数发送到分布式预言机节点。分布式预言机节点在从审计区块链接收到加密数后,生成一个新的随机数,并运算之后作为消息发送给Web服务器;
S07、分布式预言机节点使用算法计算S1,生成H11和H12,并将H12发送给审计区块链。审计区块链以相同的方式从S2生成H21和H22,并将H21发送到分布式预言机节点。
S08、审计区块链从H12和H22生成Secret_Key2,并将其中一部分发送到分布式预言机节点;
S09、分布式预言机节点使用Secret_Key2、H11和H21的部分来生成用于加密通信的五个密钥。因为审计区块链还有一部分密钥,所以有一个密钥不能生成;
S10、分布式预言机节点将请求发送到Web服务器。Web服务器接收请求并将响应发送到分布式预言机节点。分布式预言机节点将响应的散列转发给审计区块链作为证据;
S11、审计区块链接收到响应,经过链上所有节点的一致同意,将响应的散列放到审计区块链上作为证据。然后审计区块链将剩余的Secret_Key2发送到分布式预言机节点;
S12、分布式预言机节点接收剩余的密钥并生成最后一个密钥,分布式预言机节点可以使用这六个密钥与客户端进行安全通信;
S13、分布式预言机将验证过的数据返回给预言机智能合约,预言机智能合约转发给用户智能合约,最终完成用户智能合约数据请求;
S14、用户智能合约数据接收到分布式预言机提供的数据,能够提供查询审计区块链确保数据请求和响应都没被篡改。

Claims (8)

1.一种分布式预言机实现方法,其特征在于,该方法包括:
S01、用户智能合约调用预言机智能合约API,发送数据请求;
S02、预言机智能合约转发用户智能合约的数据请求给分布式预言机;
S03、分布式预言机将该请求的散列值转发给系统审计区块链作为证据,同时分布式预言机节点向Web服务器发送请求;
S04、Web服务器接收请求并将响应发送到分布式预言机节点,分布式预言机节点将响应的散列转发给审计区块链作为证据;
S05、分布式预言机将验证过的数据返回给预言机智能合约,预言机智能合约转发给用户智能合约,最终完成用户智能合约数据请求;
S06、用户智能合约数据接收到分布式预言机提供的数据,能够提供查询审计区块链确保数据请求和响应都没被篡改。
2.根据权利要求1所述的一种分布式预言机实现方法,其特征在于,所述步骤S01中用户智能合约和预言机智能合约是部署在区块链上,区块链是公有链、联盟链或私有链。
3.根据权利要求1所述的一种分布式预言机实现方法,其特征在于,所述步骤S01中用户智能合约调用预言机智能合约API,用户智能合约开发时候嵌入预言机的SDK,通过预言机的接口API进行调用。
4.根据权利要求1所述的一种分布式预言机实现方法,其特征在于,所述步骤S03中分布式预言机是由很多个预言机节点组成,采用可扩展分布式的架构,并且能够根据智能合约数据需求情况来动态部署。
5.根据权利要求1所述的一种分布式预言机实现方法,其特征在于,所述步骤S03中分布式预言机,每个节点独立的从不同数据源获取数据,在数据处理过程中不同节点有不同的处理方式。
6.根据权利要求1所述的一种分布式预言机实现方法,其特征在于,所述步骤S03中审计区块链用于验证预言机馈送数据的真实性,在验证通过之后,数据将被返回给智能合约,请求和响应的哈希值会记录在审计区块链中,用户智能合约验证请求和响应的哈希值。
7.根据权利要求1所述的一种分布式预言机实现方法,其特征在于,所述步骤S04中Web服务器是多种数据源服务器,包括URL访问、数据搜索引擎、API接口、文件资源。
8.一种分布式预言机实现系统,其特征在于,包括以下组件:
(1)预言机智能合约,为用户智能合约提供数据请求和转发;
(2)分布式预言机,由很多个预言机节点组成,采用可扩展分布式的架构;
(3)审计区块链,为分布式预言机提供审计服务,记录分布式预言机的数据请求和响应哈希值;
该系统用于实现权利要求1-7中任意一项所述的方法。
CN202110640161.7A 2021-06-09 2021-06-09 一种分布式预言机实现方法及系统 Active CN113420336B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110640161.7A CN113420336B (zh) 2021-06-09 2021-06-09 一种分布式预言机实现方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110640161.7A CN113420336B (zh) 2021-06-09 2021-06-09 一种分布式预言机实现方法及系统

Publications (2)

Publication Number Publication Date
CN113420336A CN113420336A (zh) 2021-09-21
CN113420336B true CN113420336B (zh) 2024-02-20

Family

ID=77788065

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110640161.7A Active CN113420336B (zh) 2021-06-09 2021-06-09 一种分布式预言机实现方法及系统

Country Status (1)

Country Link
CN (1) CN113420336B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114969724B (zh) * 2022-07-28 2022-11-04 山东省计算中心(国家超级计算济南中心) 一种外部数据源数据可信上链方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738480A (zh) * 2019-03-21 2020-10-02 塔莱斯公司 用于管理航空中的数据的生命周期的分布式账本
CN111930852A (zh) * 2020-09-29 2020-11-13 北京百度网讯科技有限公司 基于区块链的数据处理方法、装置、设备以及存储介质
CN112016105A (zh) * 2020-08-17 2020-12-01 东北大学秦皇岛分校 基于分布式预言机和同态加密的链上链下数据共享方案
CN112650605A (zh) * 2020-12-30 2021-04-13 杭州趣链科技有限公司 一种基于智能合约的预言机调用过程实现方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108447183A (zh) * 2018-04-17 2018-08-24 赫普科技发展(北京)有限公司 一种带轻钱包的智能电表系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738480A (zh) * 2019-03-21 2020-10-02 塔莱斯公司 用于管理航空中的数据的生命周期的分布式账本
CN112016105A (zh) * 2020-08-17 2020-12-01 东北大学秦皇岛分校 基于分布式预言机和同态加密的链上链下数据共享方案
CN111930852A (zh) * 2020-09-29 2020-11-13 北京百度网讯科技有限公司 基于区块链的数据处理方法、装置、设备以及存储介质
CN112650605A (zh) * 2020-12-30 2021-04-13 杭州趣链科技有限公司 一种基于智能合约的预言机调用过程实现方法及装置

Also Published As

Publication number Publication date
CN113420336A (zh) 2021-09-21

Similar Documents

Publication Publication Date Title
CN109981561B (zh) 单体架构系统迁移到微服务架构的用户认证方法
US10880732B2 (en) Authentication of phone caller identity
CN110099104B (zh) 文件传输方法、系统和存储介质
US11303431B2 (en) Method and system for performing SSL handshake
US20130283056A1 (en) Providing security services on the cloud
US20110035582A1 (en) Network authentication service system and method
CN112686668A (zh) 联盟链跨链系统及方法
US10686604B2 (en) Key device, key cloud system, decryption method, and program
US11936772B1 (en) System and method for supply chain tamper resistant content verification, inspection, and approval
CN107342861B (zh) 一种数据处理方法、装置及系统
CN102754386A (zh) 用于多媒体通信系统中的安全通信的分级密钥管理
CN108768928B (zh) 一种信息获取方法、终端及服务器
CN107196918B (zh) 一种匹配数据的方法和装置
CN113420336B (zh) 一种分布式预言机实现方法及系统
CN112307504A (zh) 一种安全多方计算方法、装置、电子设备及存储介质
CN117081813A (zh) 业务数据的加解密方法、系统、装置、设备及介质
CN111934888B (zh) 一种改进软件定义网络的安全通信系统
CN110825797B (zh) 数据交换方法和装置
CN113761566A (zh) 一种数据处理方法和装置
KR102700273B1 (ko) 서비스 제공자 네트워크로부터의 데이터의 제공
CN115118426A (zh) 区块链系统的数据处理方法、装置、设备及存储介质
CN113656821A (zh) 客户端服务器传输url加密方法
US20240121111A1 (en) Enhanced security in communication networks
CN116582298A (zh) 一种跨域登录方法、服务器和可读存储介质
CN116684097A (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