关于智能合约:深度分析DeFi智能合约的数据质量问题

5次阅读

共计 11216 个字符,预计需要花费 29 分钟才能阅读完成。

随着去中心化金融(下文简称 DeFi)的生态一直扩张,区块链预言机保障的价值也在同步增长,二者相辅相成,实现了良性循环。在 DeFi 利用价值飞速增长的同时,倒退创新型 DeFi 生态系统并且晋升其平安和可靠性也成为了一项重要工作。

区块链的“预言机问题”备受关注,有许多文章专门钻研了这一课题。然而,对于预言机“数据品质”的问题却存在许多未知和误会,这种误会源自于许多人感觉预言机能够传输链下数据,也能够本人产生高质量的数据。咱们在钻研和开发平安的预言机解决方案时,发现预言机的作用是将数据传输至区块链,并保证数据无奈被篡改,而不是本人产生数据。

Chainlink 价格参考数据所采纳的去中心化预言机网络将数据传输和数据品质做了辨别,Chainlink 是 DeFi 畛域最受欢迎的预言机网络,服务于以太坊上超过 90% 的去中心化衍生品市场。Chainlink 的预言机网络胜利地为已上线的利用提供优质数据,并甄别出了保障数据品质的五大要害因素。

  1. 将预言机节点连贯至付费数据提供商,确保用户合约连贯至最高品质的数据。这须要预言机协定领有明码和身份认证信息管理能力,让所有节点都能平安贮存 API 密钥并治理付费订阅数据源的账户登录信息。
  2. 通过节点连贯业余链下数据提供商,获取优质精准的价格数据;连贯数据聚合商,笼罩所有市场,获取扣除交易量因素的市场价格数据。利用预言机基于一系列原始数据聚合出寰球市场价格数据是极其艰难的工作,而且这样做会为预言机产生微小的安全漏洞,比方交易量疾速转移以及数据出现异常值等,这些都是加密货币市场常见的危险。
  3. 在预言机网络中实现去中心化,保障平安和可靠性。从多个独立节点聚合数据,确保预言机向智能合约传输数据时具备防篡改性和较高的可用性。从多个优质数据提供商获取数据,并同时保障数据品质,在数据源层面晋升去中心化程度。
  4. 让用户和开发者在设计预言机时能够洞悉每个节点和整个去中心化预言机网络的以后和历史服务水平,以综合所有信息做出感性判断。防止采取“不公开即平安”(security through obscurity)的策略,尽量减少暗藏危险,并尽可能保障各方监督,在重大问题产生前防患未然,杜绝隐患。
  5. 躲避重大危险,如:只从一个交易所获取数据,或预言机网络中的数据品质参差不齐。如果在去中心化的同时不建设品质管制规范,那么智能合约就会面临更多更简单的危险,而这样一来,高质量的预言机计划也将无奈施展其劣势。
  6. 为了进一步扩大这些对数据品质至关重要的性能,咱们将探讨平安的去中心化预言机网络现实的形成因素,如何正确利用 Chainlink 灵便丰盛的服务创立优质数据,以及在设计价格预言机网络时应躲避哪些重大数据危险。

平安的去中心化预言机网络具备哪些因素?

预言机是连贯区块链和链下世界的中间件。有了预言机,智能合约就能够利用贮存在区块链以外的数据,并连通真实世界中的日常事件。这种连通链下世界的能力极大丰富了智能合约的场景,让开发者能够在更多市场捕获价值。随着智能合约连接性的晋升,其攻打外表也不断扩大,如果要放弃智能合约防篡改的外围属性,就必须解决这个问题。

去中心化的预言机网络是 平安的中间件,连贯链上和链下环境,为开发者提供了一个安全可靠的开发框架,让用户能释怀地将价值高达几十亿美元的资产放进具备内部连通性的智能合约中。如果预言机的安全性和可靠性无奈与底层区块链媲美,那么即便其代码写得浑然一体,也同样会面临重大平安危险。

Chainlink 价格参考数据汇合了多个去中心化的预言机网络,是以太坊生态中规模最宏大的链上价格数据集,服务于当先的 DeFi 利用,并且用户规模正一直扩张。Chainlink 的价格预言机网络采纳了可验证去中心化的设计思路和最高数据品质的模式,为用户带来最牢靠的平安保障。以下是 Chainlink 价格参考数据的四大外围特色,所有致力于保障数据品质的去中心化预言机网络都应具备这四个特点。

从付费数据提供商获取优质数据

尽管在区块链上挖矿是广泛通行的做法,但针对具体行业输入优质数据并保障数亿美元资产却不是人人都能做到的。相比起开发者应用预言机基于原始数据生成优质数据,更好的办法是让节点间接从数据聚合商采集优质数据,因为这些数据聚合商通常领有宏大的团队和全栈基础架构,并专门针对某个行业生成优质数据。

外部生成优质数据老本昂扬,因而拜访这类数据须要免费,而且还要签订具备法律约束力的合约。节点必须向数据提供商(即 API)付订阅费,或者取得数据提供商的具体受权(如:企业外部数据)。这两种许可模式都须要建设明码和身份认证信息管理能力,以实现节点和 API 间的交互。因而,节点运营商与付费数据提供商交互时须要建设 API 密钥贮存和登录信息管理能力。

预言机如果无奈治理身份认证信息, 就不能连贯付费 API, 因而只能抉择收费的开源 API 或盗版 API。这些 API 接口的数据通常品质低下、下载速度慢、响应工夫不牢靠且不具备法律约束力或无奈保障服务质量。因而,此类数据源无奈为各类高、中、低值智能合约提供牢靠的服务。如果向智能合约传输低质量的数据,合约将无奈保障其数据的准确性或可靠性,因而会扩充攻打外表。“垃圾进,垃圾出。”这句技术畛域的至理名言放在这里也同样实用。

参加价格参考数据合约的 Chainlink 节点通过内部适配器连贯至所有付费 API 接口。这些 API 接口的数据品质更高、响应速度更快并且能够保障可用性和服务水平。内部适配器采纳模块化设计理念,能够用任何编程语言编写,并能够与 Chainlink 节点放在不同的服务器上。内部适配器能够从数据提供商、web API、企业零碎、物联网设施、领取零碎和其余区块链等各种环境获取数据。

建设去中心化的优质节点运营商

如果没有安全可靠的预言机向智能合约传输数据,那么数据品质将是一纸空谈。要避免意外宕机和防止繁多实体在传输时篡改数据,就必须建设去中心化的优质节点网络。去中心化的共识可能大幅晋升攻打老本,因为即便网络中有几个节点宕机或歹意发动攻打,对最终聚合的后果也不会产生本质影响。

Chainlink 的价格参考合约基于去中心化的预言机网络,聚合来自多个独立节点的数据,这些节点都通过平安评估,且具备抗女巫攻击能力。这些 Chainlink 节点由寰球当先的区块链 DevOps 和平安团队在云端和本地服务器中经营,以躲避预言机单点生效危险。另外还有许多由社区经营的备用节点随时能够退出到网络中,以晋升网络的去中心化程度。

建设去中心化的优质数据源

预言机解决方案能够在不影响任何一个数据源品质的前提下接入多个数据源,以此进步其稳健性。建设去中心化的优质数据源,可能防止某一数据提供商成为惟一数据源,并且能避免惟一数据源下线的状况。然而,有些状况下可能某个优质数据源也是惟一数据源,这时就须要更先进的加密技术来保障数据品质,比方基于权利质押的服务协定(注:下文会具体探讨)、TLS 认证(Town Crier、DECO)以及零常识证实。

Chainlink 价格参考合约在数据源层面实现去中心化。每个价格参考网络都会对立从多个牢靠的独立数据提供商获取市场价格数据。这些数据提供商全部都是付费数据聚合商,他们笼罩了 Brave New Coin、Kaiko 和 Amberdata 等所有交易市场以及其余泛滥优质的数据 API。而后,所有数据将聚合成对立的参考价格数据,贮存在链上,智能合约能够用简略的 read 函数拜访这些数据。

开源的可视化界面和监控

如果 DeFi 利用的底层智能合约实现了开源和实时监控,那么向智能合约提供数据的价格预言机也应该是公开通明的。如果预言机无奈保障公开通明,dApp 用户就无奈验证数据起源、提供数据的节点、响应延时、预言机网络服务历史以及数据品质等信息。

每个 Chainlink 价格参考数据合约都领有一个开源可视化界面,其中包含具体的链上数据,比方:

  • 每个参考数据源的最新价格
  • 提供数据源的 DeFi 我的项目
  • 保障价格数据安全的节点(且节点通过了平安评估)
  • 数据更新工夫
  • 触发数据聚合所需的起码节点响应数量
  • 对于每个节点和整个节点网络的其余要害信息


Chainlink 价格参考数据应用去中心化的节点网络和数据提供商为智能合约提供优质的价格数据;上图为比特币 / 美元价数据。

除此之外,还能够查看某一节点为每次数据申请提供的服务质量,以判断节点是否有能力胜利实现数据申请工作。节点运营商、数据提供商和用户能够应用 Chainlink Explorer 查看网络中每个节点的体现,以及为甄别谬误采取的具体措施。

应用 Chainlink 预言机灵便采集数据

通用型预言机网络要成为 DeFi 行业标准,必须具备灵活性,让开发者可能依据集体须要灵便创立预言机,满足对安全性和可靠性的具体需要。尽管 Chainlink 价格参考数据网络中有许多数据聚合商奉献寰球市场数据,但 Chainlink 协定不会对预言机网络的模式或数据源做强制性要求。相同,Chainlink 会为用户提供市场上凋谢水平最高的模块化框架,以满足任何具体的需要。

可随便配置数据源、节点和聚合模式

开发者能够通过内部适配器疾速将智能合约连贯至任何所需的数据源。除此之外,开发者还能够随便设置所需的去中心化程度、数据源、聚合算法以及数据更新频率。因而,智能合约连贯内部数据的形式变得极其灵便。


market.link 是一个第三方网站,开发者能够在下面抉择预构建的内部适配器,并拜访丰盛的数据源

这个定制化的框架让开发者能够依照智能合约所需的平安保障轻松扩充或放大预言机网络的规模。Chainlink 领有规模最宏大的平安节点运营商,同时还有许多社区节点相互竞争岗位,如果用户须要额定的平安保障,可将这些节点疾速增加至任何预言机网络中。另外,数据源的格局也在不断丰富,聚合数据毋庸任何后期开发工作。

Chainlink 用户还能够抉择不同的聚合形式,比方取平均数、中位数或甚至应用加权和剔除异样值等更加简单的算法。另外还能够设置数据更新频率,用户能够抉择定时更新、基于价格偏差更新(比方价格每高低浮动 0.5% 时更新一次)或采纳基于多个参数的混合模式。

数据提供商能够是传统 API 接口,也能够本人运行 Chainlink 节点

Chainlink 具备灵便的框架,数据提供商能够抉择以何种形式在新兴智能合约经济中提供数据,他们能够是传统的 API 接口,也能够间接运行 Chainlin 节点。

传统 API 接口

数据提供商能够放弃现有的模式,向订阅用户收取以法币计价的数据服务费。Chainlink 节点能够订阅这些 API,并在节点中装置 Chainlink 内部适配器,将 API 数据传输至链上合约。这个模式实用于任何一个数据提供商,Chainlink 价格参考数据网络曾经开始采纳这个模式,网络中的节点订阅了 Amberdata 和 CoinGecko 等优质付费数据。Chainlink 还针对交易所 API 开发了内部适配器,能够连贯币安和 Coinbase 等节点。

这个模式十分高效,因为数据提供商毋庸扭转任何现有的商业模式或基础架构。即便数据提供商自身不太违心被动为智能合约提供服务,Chainlink 节点也能够通过内部适配器模块向开发者凋谢所需数据源。另外,节点还能够订阅自身就是 Chainlink 节点的数据提供商的数据服务(下文将具体论述),进一步晋升数据的去中心化水平。

既是数据提供商,也是 Chainlink 节点

另一个模式是让数据提供商成为 Chainlink 节点,间接向智能合约发售数据。这个模式能够丰盛数据提供商的变现模式,目前曾经被几个当先的数据提供商采纳,比方 Kaiko 和 Alpha Vantage(市场数据聚合商),以及火币(加密货币交易所)。

数据提供商成为 Chainlink 节点将领有一个举世无双的劣势,那就是能够在本人的数据上进行加密签名。用户和智能合约能够确信价格数据是间接来源于数据提供商或交易所的 Chainlink 节点,并且数据在传输过程中没有通过篡改,因为节点在链上播送前会用举世无双的私钥在数据上进行加密签名。签名过的数据能够通过节点的公钥在链上进行验证,确保数据的完整性和真实性。

这个框架能够让数据提供商间接在区块链上播送数据,毋庸通过内部第三方将数据传输到链上。这样一来,数据提供商就可能控制数据在链上播送的频率,并保障数据从生成到传输整个过程的安全性。因而,数据提供商能够领有足够的灵活性,同时向多个不同的利用以独特的形式传输数据,比方向一组利用以每分钟一次的频率更新数据,同时向另一组利用基于价格偏差值更新数据(比方价格每高低浮动 0.5% 更新一次)。


数据提供商能够将数据卖给 Chainlink 节点运营商,也能够抉择本人运行 Chainlink 节点

同一网关面向所有区块链环境

数据提供商不可能相熟所有区块链环境,也不可能在每个区块链上都别离设立平安机制,特地是思考到区块链是一个新很难理解所有区块链环境。

Chainlink 预言机网络能够利用已有或新建的内部适配器 / 发动程序迅速接入任何区块链环境。Chainlink 是开源网络,外围开发者无需任何许可就能集成 Chainlink 预言机,因而可打消开发瓶颈,实现横向扩大。以太坊、Polkadot、Tezos、和 Cosmos 等泛滥当先的区块链都曾经将 Chainlink 集成至其区块链网络。

这个机制能够为数据提供商和智能合约提供对立的网关,面向任何区块链发售和拜访数据,最终向区块链上的 dApp 提供更多数据,并为数据提供商取得更多支出。值得一提的是,这个机制非常灵活,因而数据提供商毋庸抉择把资源部署在哪里。

为数据和服务质量提供加密经济保障

在 Chainlink 预言机网络中,节点运营商和发动数据申请的智能合约会签订具备约束力的服务协定,协定将约定节点在服务期间必须满足的各项参数。参数包含数据交付(响应提早)、数据品质(准确性)、质押的 LINK 金额(加密经济担保)、经济惩办(罚款)以及其余由申请方约定的条款。节点运营商的报酬将取决于其是否胜利履行了服务协定并按时将优质数据传输到链上。在这个机制下,运行 Chainlink 节点的数据提供商能够在最大水平上灵便设置数据服务保障,晋升数据可信度、完整性、可靠性以及准确性。


具备约束力的服务协定为数据品质和数据交付提供加密经济保障。

服务协定建设在权利质押根底上,最终能让数据提供商为其预言机服务进行抵押担保,为申请数据的智能合约提供相似品质保险一样的保障机制,如果预言机守约,质押的权利将被没收。如果没有服务协定,预言机网络的数据交付和数据品质就不能失去束缚,这样会导致数据申请方取得的数据品质或预言机服务无奈失去很好的保障。

利用名誉框架和节点市场做出感性判断

实现灵活性最重要的一点是让用户能够综合判断将什么内容增加至预言机网络中。有两个性能能够实现这一点,即:名誉零碎和节点市场。

名誉框架

名誉零碎为用户提供了不可篡改的链上数据记录,其中记录了节点运营商和数据提供商的所有历史服务。当前,数据申请方能够查看节点历史服务的加密证实,并以此判断节点是否牢靠。

通过第三方服务,能够在 Chainlink 节点中进行比拟,选出最牢靠的节点。这些网站中能够查看 Chainlink 网络整体的原始数据以及剖析提炼出的数据,还能够看到每个预言机节点的具体数据,其中包含交易数量、响应工夫、支出和成功率等。


Reputation.link 让开发者和用户能够深刻洞悉 Chainlink 预言机网络整体的体现和性能,还能够查看每个独自的预言机和数据源。

节点市场

另一个要害因素是建设一个市场让用户能够发现预言机节点,通过筛选比拟最终挑出最适宜的节点退出预言机网络。目前有多个针对 Chainlink 节点的第三方分类信息平台,比方 LinkPool 的 [Chainlink
Market](http://market.link/) 和 CLCG 的 Honeycomb Marketplace。开发者能够齐全管制其预言机网络的架构,因为他们能够自行决定抉择哪些节点以及节点的数量。

除此之外,还能够看到每个节点运营商的资质认证、平安评估后果、身份证明、内部适配器、数据源以及具体能为智能合约提供哪些链下服务。节点运营商能够为每个工作设置具体的价格和参数,建设一个自在市场经济,其中节点能够在不同的维度上竞争上岗。

market.link 上的节点能够在链上积攒名誉,并向开发者展现其名誉记录。

如何灵便地打造价格预言机,以躲避重大数据源危险?

为了保障数据品质,在设计预言机时就必须提前思考到一些可能呈现的攻打向量,并防患于未然。如果开发者疏忽了这些问题,就会导致用户资金面临微小危险,并最终威逼到整个 dApp 的平安。

交易量转移 / 交易所锁定

加密货币市场与传统金融市场有所不同,因为交易所不会独家发行资产,因而无奈锁定用户或占据某一资产 100% 的交易量。区块链技术的特点是毋庸许可,因而任何人都能够在其交易所中发行加密货币通证,交易者能够在任何工夫交易这些通证。在这种状况下,加密货币的交易量散布在许多不同的交易所中,而且交易量会在各个交易所之间疾速转移。因而,为了防止市场操纵攻打(比方绝大多数交易量转移到了某个不在聚合范畴内的交易所),预言机必须要正视这个问题。

闪电崩盘

加密货币交易所通常没有熔断机制,因而很容易呈现闪电崩盘,某一交易所的价格可能会与其余交易所呈现重大偏差。即便规模再大的交易所都存在这种危险,在过来几年中多个交易平台都遭逢了闪电崩盘。比方 Kraken 就遭逢过闪电崩盘,BTC/CAD 价格从 11,200 断崖式上涨至 100CAD,跌幅靠近 99%。Coinbase 也遭逢过一次极其的闪电崩盘,以太币价格临时从 322 美元跳水至 0.1 美元。在 2020 年初,加密货币衍生品交易平台 Bitmex 也遭逢了闪电崩盘,XRP 价格在一分钟内大跌 60%,从 0.33 美元跌至 0.13 美元。

品质浓缩

实现去中心化必须要同步建设品质管制规范,以防止低质量的数据源浓缩聚合后果的品质。如果数据提供商和节点运营商的历史服务水平较低、没有名誉记录或无奈证实其基础架构的安全性,则应被禁止退出任何预言机网络。要确保节点运营商和数据提供商有足够的资源和技能解决可能呈现的任何问题,并建设预警机制和 failsafe 平安模式。

须要留神的是,发动向量攻打的歹意攻击者不肯定都是经验丰富的开发者。任何散户交易者或一小群交易者只有发现了机会,都能够利用交易平台的 UI 操纵市场并篡改某一预言机的参考价格数据点,而单个预言机笼罩的市场是无限的。这在很大水平上扩充了攻打外表,因为任何人只有有网络连接和交易平台账户都能够操控存在危险破绽的预言机。

Chainlink 价格参考数据合约连贯数据汇集商而非某一个交易平台的 API 或多个交易平台的 API 汇合,因而能够躲避这类危险。

优质的数据聚合商笼罩所有价格数据源

Chainlink 价格参考数据可独家接入数据聚合商,笼罩最多的交易量。加密货币交易量绝对传统金融市场依然较小,有了这个性能,就能够确保向这些市场传输精确的数据。预言机网络创建者缺乏经验和资源,很难继续追踪交易所交易量,因而将这个工作交给业余的数据聚合商。

数据聚合商的团队遍布寰球,在市场笼罩和精准价格数据保护方面领有丰盛的业余教训。他们会综合考量各个参数,比方流动性、交易量、工夫以及不同交易所之间的参数差别。除此之外,聚合商还会剔除任何异样值。Chainlink 价格参考合约的这些性能能够很好地应答交易量转移、闪电崩盘和品质浓缩等问题。

另外,Chainlink 价格参考合约还利用多个数据聚合商保障价格数据免受任何一个数据源的操控。这为 dApp 开发者和终端用户提供了更高的平安和可靠性。除此之外,通过平安评估的节点运营商以及业内顶尖的监控团队也会提供反对。


Chainlink 价格参考数据合约的端到端流程

采集数据时不当应用预言机可能造成的重大危险

预言机网络如果疏忽交易量转移危险或只从一个 API 获取数据,将导致重大危险,要充沛理解这些危险,就须要探讨具体利用的案例以及最终会导致的后果。

忠告:防止预言机网络只从一个交易平台 API 获取数据

预言机网络如果只从一个交易平台获取价格数据,不仅在平台遇到宕机、闪电崩盘和价格操纵时无奈提供无效爱护,而且平台的市场笼罩将受到极大限度。这种模式在最后价格稳定较低的时候仿佛是无效的,但当市场价格稳定回升,交易者会开始套利,交易量会在各个交易所之间频繁转移。即使降级预言机,使其从另一个交易所获取数据,新的价格点也可能十分不精确,因为市场交易量可能会呈现新的变动。这就导致尽管数据源变了,依然无奈维持牢靠的市场笼罩。

上面,我将与大家分享一个例子,一步步阐明繁多数据源的危害:

  • Joe 是一名开发者,他开发了一个智能合约利用,须要从链下获取加密资产的价格数据。他决定建设一个预言机网络,从他指定的 C 交易所获取价格数据。在他创立预言机的那天,C 交易所占资产交易量的 80%,所以他感觉这是一个不错的抉择。
  • 一周后,用户资金量一直增长。尽管 C 交易所当初只占资产交易量的 50%,但市场价格稳定较低,因而目前这个预言机模式并没有什么问题。Joe 感觉他能够为他的 dApp 持续开发更多功能,对于预言机市场覆盖率越来越小这件事并没有想太多,因为毕竟也没出什么问题。
  • 又过了一个月,有一天中午,Joe 被一通电话吵醒,得悉他的 dApp 中高达几百万的用户资金被卷走了。他很快发现 C 交易所大部分的交易量都转移到了别处,而 C 交易所是他预言机惟一的数据源,当初只占交易量的 5%。而这个交易所被一个大型交易者操控,导致预言机报告了谬误的价格数据,因而让其有机会通过不偏心的形式吸走了一大笔用户资金。

  • Joe 的 dApp 因为失去了用户信赖,目前曾经经营不上来了,而这件事也让他作为开发者的声誉重大受损。如果 Joe 的预言机建设了更好的市场笼罩机制,是齐全能够防止这种状况的。

上述例子阐明了预言机网络只从一个交易所获取数据可能导致的严重后果。市场笼罩是决定利用成败的关键因素,如果遇到闪电崩盘,那么结果将更加不堪设想。

预言机从事后设定的交易所聚合数据,无奈躲避交易量转移的危险

预言机如果间接从事后设定的交易所获取数据,那么当交易量转移到聚合范畴以外的交易所,将产生微小危险。在最后建设预言机网络时,被选为数据源的交易所可能的确具备短缺的流动性,但随着时间推移,无奈保障交易量是否还会持续留在这些交易所。这会升高歹意攻击者的攻打老本,因为他们只需操控一小部分资产交易量就能够达到攻打目标。

这仿佛是一个很小的攻打向量,但设想一下这样的状况:

  • Bob 也是一名智能合约开发者,他汲取了 Joe 只从一个交易所获取数据的经验教训,决定让预言机从一组事后设定的交易所 A、B 和 C 中获取加密资产价格数据。他的逻辑是:在各个交易所价格数据中取中位数,就能防止市场操纵行为。

  • 几周后,Bob 很确信他的做法是对的,因为他的预言机从多个交易所获取数据,可能继续输入正确的后果,就算某一个交易所被操控也无奈扭转后果。因而,他将注意力转移到了晋升利用的外围商业逻辑上。而后他就开始专一于开发新性能,并没有留神到市场上呈现了两家新的交易所,并占到了 85% 的资产交易量。

  • 几天后,Bob 猛然发现他遇到了和 Joe 一样的危机,他的智能合约也散失了几百万用户资金。最初他发现尽管他当初在建设预言机网络时抉择的交易所流动性都是短缺的,但随着时间推移,交易量逐步转移到了新的交易所,而这些交易所不在他最后设置的聚合范畴内。因而,他的预言机网络最终仅笼罩了 15% 的交易量,并可怜被交易者操控,从而谋取私利。

  • 尽管 Bob 建设去中心化预言机数据源这个想法是好的,然而他并没有思考到交易量会在各个交易所之间转移,也没有想到新呈现的交易所会占据某一资产大部分的交易量。即便不呈现新的交易所,交易量仍有可能最终集中至一两家交易所,那么剩下流动性较低的交易所就可能被操控,中位数计算结果也可能受到篡改。

Joe 和 Bob 都没能保障短缺的市场笼罩,因为他们想用预言机来生成数据。如果他们用预言机从数据聚合商采集数据,就齐全能够防止这样的喜剧产生。因为数据聚合商在避免市场被操控和保障市场覆盖率方面领有几十年的业余教训。

将低质量的预言机与高质量的预言机混用

一些人为了防止出现异常值,会同时接入多个不同的预言机并聚合出一个最终价格数据。同时接入多个预言机实现去中心化,听下来仿佛是个不错的计划,但与此同时它也带来了更大的危险,因为很难确保网络中每个预言机的可靠性和数据品质都放弃同一程度。

Chainlink 价格参考数据网络领有十分安全可靠的价格数据,而相比之下一些预言机则十分不成熟,透明度较低,不仅无奈连贯至付费 API,还无奈间接从交易所 API 获取市场数据,这类预言机输入的数据品质十分差。将 Chainlink 优质的预言机数据与某些劣质数据混合在一起,可能会产生极大的危险。随着 DeFi 利用的价值越来越高,这个问题将变得至关重要,因为通过预言机破绽攻打 DeFi dApp 的经济引诱会越来越大。

构想当初聚合了三个预言机解决方案,一个是 Chainlink 价格参考数据,它通过优质节点从付费数据聚合商获取数据;还有一个计划是从事后设定的一组交易所 API 获取价格数据;最初一个计划不反对身份认证信息管理,因而只能连贯一个低质量的数据源或交易所 API。


将 Chainlink 的优质数据与其余不平安的预言机输入的低质量数据聚合在一起,会升高最终聚合数据的品质。

在这个例子中:

  • 左手边是Chainlink 的价格参考数据,从多个优质数据聚合商获取数据,最终输入交易量和流动性加权价格,这些价格笼罩了所有交易价格是 100 美元的交易环境。
  • 左上方的预言机计划从 事后设定的一组交易所 API(A、B、C)获取数据,过后仅占 15% 的市场交易量,而 D 和 E 交易所占 85% 的交易量。这将使最终数据后果受到篡改,导致预言机报告了谬误的价格:70 美元。
  • 左下方的预言机计划只连贯了 一个低质量的数据源,这个数据源因为市场波动性较高而中断了服务。因为单点生效,因而预言机报告的价格是 0 美元。

智能合约在 0 美元、70 美元和 100 美元三个值中取中位数,最终聚合出了谬误的数值:70 美元,而正确的市场价格是 100 美元。更蹩脚的是,三个数值的均值是 57 美元。在这两种状况下,其余两个预言机解决方案传输的低质量数据会浓缩 Chainlink 价格参考数据传输的高质量数据。

这种状况会导致最终生成低质量的数据,后果容易受到操纵,并浓缩了 Chainlink 的优质数据(即扣除交易量因素的数据)。在预言机层面实现去中心化诚然重要,但同时也应保障数据或节点的品质。将参差不齐的数据掺在一起,会浓缩 Chainlinik 价格参考数据网络的价值。咱们强烈建议大家不要应用未知数据源的价格数据,不要接入算法存在显著破绽的预言机,也不要应用无奈获取付费数据或加密经济机制较弱的预言机。

为下一代利用提供优质数据

咱们应该将预言机和数据源离开对待,这两个环节必须领有同样高的抗危险能力,联合在一起能力实现全面的、端到端的安全性。为了为 DeFi 生态建设牢靠的预言机网络,并保障几十亿甚至几万亿美元的资产,必须确保传输至 DeFi 利用的数据是安全可靠的。Chainlink 始终以来都致力于打造平安的预言机和牢靠的数据,实现端到端的平安,助力 DeFi 在将来几年一直凋敝倒退,成为支流的解决方案。

如果你正在做 DeFi 我的项目,并心愿开发本人的价格参考预言机网络或接入已有的预言机网络,请拜访咱们的开发者文档、退出咱们在 Discord 上的技术探讨或点击此处安顿一次电话会议与咱们深入探讨集成相干事宜。你能够轻松疾速在主网或测试网集成一个或多个 Chainlink 预言机网络,晋升智能合约的安全性和并丰盛其性能。

退出 Chainlink 开发者社区

正文完
 0