区研大咖问回顾|快速了解去中心化预言机网络

嘉宾介绍

团长

Chainlink中国技术社区负责人

热身

Chainlink是业内顶尖的智能合约去中心化预言机网络解决方案,使智能合约能够安全地访问链外数据源、网站API和传统的银行支付。Chainlink始终被高德纳咨询公司(Gartner)等领先独立调研公司选为顶级区块链技术之一。 它为大型企业(谷歌、甲骨文、SWIFT)和领先的智能合约开发团队(Polkadot、Hedera Hashgraph、Synthetix等)提供高度安全并可靠的预言机。

Q&A

1.预言机是什么?加密世界为什么需要去中心化预言机?它作用于哪些领域?

预言机这个名字并不是区块链领域首创的,它其实是计算机行业的祖师爷图灵第一次提出来的。他在图灵机的基础上,加入了一个黑盒,称之为Oracle,意思是预言者,它可以向图灵机系统内部输入信息,帮助图灵机完成运算。

以太坊的智能合约是“图灵完备(Turing Complete)”的,某种意义上可以看做一个图灵机,所以以太坊的设计者借鉴这个概念,把向“图灵完备的智能合约”这个图灵机输入信息的也被称为预言机oracle。

预言机提供了一种无信任(或至少近乎无信任)的方式来获取外在的(即“真实世界”或“链外”)信息,例如足球比赛的结果、黄金的价格或真正的随机数字,用于以太坊平台上的智能合约。它们还可用于直接将数据安全地中继到DApp前端。

因此,可以将预言机视为弥合链外世界与智能合约之间差距的机制。允许智能合约基于真实世界的事件和数据来强制执行合约关系,从而大大扩展了它们的应用范围。

在解释预言机的之前,就不能不提智能合约。因为区块链预言机其实就是为智能合约来服务的。

智能合约最早由尼克萨博提出的一种,旨在以信息化方式传播、验证或执行合同的计算机协议。虽然智能合约的概念在很早就提出来了,但是在当时由于缺少可信的执行环境,智能合约并没有被应用到实际产业中。

自比特币诞生后,人们认识到比特币的底层技术区块链天生可以为智能合约提供可信的执行环境,以太坊首先看到了区块链和智能合约的契合,发布了白皮书《以太坊:下一代智能合约和去中心化应用平台》A Next-Generation Smart Contract and Decentralized Application Platform,希望可以将以太坊打造成最佳智能合约平台。

但是我们现在所熟知的智能合约已经与最初的概念有了区别。Vitalik在参与比特币的社区开发工作期间,希望可以扩充比特币功能有限的脚本和操作码,设计一个更加功能更加强大的脚本,实现更多的功能。

他的想法没能在比特币上实现,但是他另起炉灶,创立了以太坊,实现了一个专门运行去中心化程序的虚拟环境EVM,并且了一个设计了一个“图灵完备”编程语言,将这种程序取名为智能合约。

“智能合约”这个名字,很容易让人产生一些“不切实际的幻想”,很多人听到名字就会认为,智能合约,应该是能完成我们现在各类合约的功能,并且可以更加智能的完成。但是实际上,智能合约能做的事情非常有限,它既不智能,也不像我们传统的合约那也有法律效力。连Vitalik自己都说,”智能合约“是一个糟糕的名字,我们应该称之为”持久化脚本(persistent scripts)“这类更技术的名字,以免人们对其功能产生误会。

智能合约之所以不够智能,除了受区块链的本身的各类限制之外,还因为它缺乏种类丰富的外部数据信息的输入。就像虽然厨师厨艺高超,但是却没有丰富的食材,自然做不出好吃的菜来。

我们以以太坊为例,以太坊平台的一个关键组件是EVM,它能够在去中心化的网络中的任何节点上执行程序,并获得与以太坊网络内其他节点一致的状态。为了保持共识,EVM的执行过程必须完全确定,并且仅基于以太坊状态和签名交易而改变。这产生了两个特别重要的后果:一个是EVM和智能合约没有内在的随机性来源,因为一切都是确定的;另一个是外部数据只能作为交易的数据载荷引入。

所以我们现在能看到的大部分的合约都是token或者围绕token建立的应用。如果我们想要扩大智能合约的应用场景,就必须建立一个智能合约的与外部世界的连接通道,将外部世界的种类繁多的数据输入到“虚拟环境”中。就像有人所说的那样:“在将智能合约带入到这个世界上之后,这个世界也需要被带入到智能合约中。”

我们假想一个猜硬币决胜负的游戏场景,这个游戏依赖于扔硬币正反面的随意性。矿工可以轻易破解这个游戏:他们只需要打包那些对其有利的随机结果即可。比如某以菠菜竞猜项目而知名的公链(EOS)由于在竞猜时需要随机数,所以经常被黑客进行随机数的攻击,根本原因就是区块链内部的确定性太高而随机性太差。那么我们如何解决这个问题呢?既然所有节点都可以就签名交易的内容达成一致,那么我们就可以引入外部信息,包括随机性、价格信息、天气预报等,作为发送到网络的交易的数据部分。

那么我们有没有办法做到呢,可不可以建立这样一座数据之桥呢。我们可以使用预言机尝试解决这些问题。需要注意的是,并不是有一个叫预言机的东西,可以帮助区块链来实现数据的连通性,而是我们把可以实现数据联通的这种组件,起个名字叫“预言机”。

那么那些领域需要预言机呢?

所有需要连接链上链下数据的地方都需要用到预言机。目前看来应用很成功的是DeFi领域。我们知道目前在区块链或者说加密世界里应用最成功的方向可能就是DeFi了。智能合约是一个由数据驱动的工具,它的运行结果是由输入的数据决定的。而 DeFi 作为金融类的智能合约,就更加依赖高质量金融数据。将数据送到智能合约的装置就是预言机。

一个 DiFi 项目,即使代码是完美的,算法是高效的,但是没有可靠的预言机作为数据输入装置,也是不可能成功的。所以在DeF领域,预言机的应用是最为广泛和成功的,几乎所有的DeFi应用都需要预言机,比如去中心化数字资产抵押借贷、去中心化数字资产期权、稳定币、DEX 等 DeFi 产品和服务,都需要引入真实世界的价格信息,来完成产品自身的逻辑闭环。目前主流的defi都使用我们,我们也正在和更多的defi项目接触中。

热门 DeFi 协议都在使用什么预言机?Chainlink 恐成最大赢家

Aave、Augur、bZx、Compound 等 11 个 DeFi 协议中,有 5 个正在或计划使用 Chainlink 作为预言机。

值得一提的是,很多项目是在出现了预言机攻击的情况之后,开始选择了Chainlink,比如这也印证出了在价格数据方面,Chainlink的安全性是得到了业界的广泛认可的。除了DeFi领域,预言机还可以在金融衍生品、债券、贸易融资、市场数据、数字资产、支付、预测市场、保险、身份信息、生物识别等非常多的领域有这广阔的应用前景。

2.去中心化预言机面临着哪些挑战和攻击?要如何保证它的诚实和安全?

其实对于预言机来说,面临的最大的挑战还是安全性,就是如何保证送上链的数据的可靠性。这里的可靠性有两个方面,我们以DeFi行业举例子一是数据本身是真实的,是真正反映市场的。有很多 DeFi 项目使用 DEX (去中心化交易所)的数据所谓输入,但其实很多 DEX 因为流动性不够,上面的价格根本无法反映真实的市场价格,所以这个数据送到 DeFi 合约中,自然就会被黑客利用。所以真正真实的数据,一定是实时发生的,有高流动行的,聚合多个数据源而产生的最终结果。二是数据在传递过程中,不会被黑客篡改和利用。

Chainlink从技术和制度两个大方面来保证预言机的可靠性。

首先Chainlink设计了一个由多个独立节点和多个数据源组成的多层次的去中心化机制,Chainlink网络有非常多的独立节点,这些节点都可以独立的完成向区块链传输数据的功能,利用去中心化形成的高度冗余来保障来自各个预言机节点的数据安全。我们可以在Chainlink节点市场上查看所有的节点
https://market.link/search/nodes

预言机节点也是可以从多个数据源来获取数据,也就避免了单个数据源可能出现的数据错误或者数据源不可访问等单点失效的问题。用户可以直接使用预言机节点选择的数据源,也可以自己来指定自己信任的数据源。

用户在使用的时候不仅可以自主地选择自己所信任的节点或数据源,也可以同时选择从多个节点聚合最终结果,降低数据失真的风险。此外,Chainlink还针对DeFi行业所用的到的价格数据,还进行更进一步的组织。Chainlink官方审核了21个独立的节点,根据他们的业内声誉、资金实力、技术实力,节点稳定性等多方面的因素,筛选出来提供DeFi项目的价格数据。这样也就避免了女巫攻击的可能性。让大家有兴趣可以去了解看看 有非常多的喂价数据 https://feeds.chain.link/

女巫攻击简单来说就是在匿名的分布式系统中,多个节点可能被一个人操纵,这样就整个系统其实就会被何可控制。

另外一方面,Chainlink还围绕LINK token设计了一个系统内所有参与者都能获益的经济生态,用户通过可靠的数据获得盈利,节点通过提供数据获得LINK奖励,当系统内所有参与者都获益的时候,大家就会自然的去维护这个系统的良性循环。为此,Chainlink还专门设计了ERC677的通证标准,并在此基础上发行了LINK,所以LINK有其真正的应用场景。

3.为我们介绍一下Chainlink的技术结构,和它的特色吧~

好的。Chainlink最大的特点就是去中心化,构建了一个去中心化的预言机平台,这是一个综合平台,旨在为开发者提供全面的工具和数据,帮助其开发任何种类的智能合约预言机。

Chainlink有很多的独特优势。Chainlink是目前唯一一个在主网上线的去中心化预言机网络。相较于其他预言机平台,它具有许多独特的优势,比如去中心化预言机、去中心化数据源、数据聚合方式、可信执行环境(隐私计算和链下计算)、信誉系统、惩罚机制、门限签名等。另外Chainlink还收购了市场上顶尖的TEE预言机公司Town Crier,这家公司在学术界拥有很好的口碑。

网络效应 -预言机是不同系统之间进行交互的通用媒介,这与互联网的作用类似。正因如此,预言机也可能由于网络效应而成为整个市场通用的中间件。Chainlink目前已在100多个项目中宣布接入预言机网络,在实际应用方面远超其他同类竞争者,更有可能脱颖而出成为行业标准。另外,Chainlink还为谷歌、甲骨文和SWIFT等世界顶尖企业提供可靠的区块链数据连接服务,并因此受到高度赞誉。

团队 - Chainlink拥有强大的学术、技术和商业团队。Sergey Nazarov和Steve Ellis是联合创始人,从2014年开始就一直从事智能合约和企业预言机的开发工作。团队中的高级顾问包括Ari Juels(IC3联合主任和RSA前首席科学家、POW概念的发明者)、Tom Gonser(领先电子签名企业DocuSign创始人)和Evan Cheng(Facebook工程和区块链负责人)等。

Chainlink预言机(节点)能够格式化信息并验证数据,让智能合约安全可靠地连接到各种链下资源,包括数据提供商、web API、企业系统、云平台、物联网设备以及支付系统等。

Chainlink拥有独一无二的能力,可以将预言机和数据源都去中心化。

去中心化的预言机网络能让开发者在智能合约中选择任意数量的预言机。使用多个预言机不仅能防止单个预言机宕机对整个系统造成的影响,而且还能防止单个预言机遭到黑客攻击、被收买或者出现问题的现象。Chainlink最近在门限签名领域实现了突破,门限签名技术让智能合约可以同时使用多个预言机,但只需支付链上费用。这项技术史无前例地大幅降低了去中心化预言机的使用成本。

将数据源去中心化让预言机能够从多个来源采集数据,并将数据整合至单一数据点,并且触发智能合约。由于数据存在多个来源,智能合约就能够避免单一数据源出现误差。Chainlink支持多种数据聚合模式,比如取平均值和/或去除异常值。

Chainlink另一个特色就是其信誉系统。与阿里巴巴和滴滴平台中卖家和司机的信誉系统类似,Chainlink也为预言机开发了一套信誉系统。声誉由各种衡量指标构成,其中包括运行时间、响应时间以及成功完成的任务。智能合约的数据请求方可以根据预言机评分来选择,或者也可随机选择。这个信誉系统不仅为开发者提供了可靠的参考指标,还约束了各个节点为其提供的服务负责。

另外,Chainlink还针对智能合约的具体需求提供不同程度的安全保障。除了标准化预言机之外,Chainlink另外一个主推的解决方案就是在可信执行环境(TEE)中使用可信硬件(比如英特尔的SGX)运行预言机。

预言机在可信执行环境中运行的主要优势是节点无法看到数据请求的具体内容,比如传输至智能合约或从智能合约输出的数据以及数据请求方的具体信息。可信执行环境是一个颇具吸引力的技术,因为它可以安全地处理密码和私钥等私密信息,并保障信息绝对不会泄露给节点或其他人,同时还能证明数据未经篡改。可信执行环境还可以实现智能合约链下计算,因此可以降低gas费用并提高可扩展性。

最后,Chainlink还建立了保证金惩罚制度,激励节点诚实守信。在中心化的预言机模式中,用户可以约束私营企业的行为。而为了要约束节点的行为,那就需要建立一定的保险机制。节点必须预存一定数额的LINK代币作为保证金,才能有机会接收处理某一个数据请求。如果该节点的数据被发现是异常数据,那么其保证金将被没收并退还给数据请求方作为补偿。Chainlink采用博弈论的原理激励节点提供准确的数据,否则节点就将受到罚款。

智能合约如果要获得大规模应用,必须保障安全性和可靠性,而且必须能够与外部世界联通。因此Chainlink正致力于开发去中心化的开源协议,让智能合约开发者在连接链下数据和系统的同时能够选择并控制去中心化和保密的程度。

4.Chainlink作为当下最富盛名的预言机项目,已和很多领域的团队公司达成合作,可以跟我们介绍下有哪些。并就其中几家给我们讲讲你们合作的情况吧~~

好的,Chainlink除了有非常强大的技术实力,在构建生态系统方面也非常专业,目前已经有非常多的项目与使用Chainlink或与Chainlink达成合作。这其中既包括了谷歌、甲骨文、英特尔等传统500强企业,也包括波卡,Conflux、Ontology等业内明星项目,还有币安,etherscan等数据提供方,还有Synthesix、Loopring等DeFi项目,种类和数量都非常多。

大家可以在下面这张图上看到很多熟悉的logo,这些都是Chainlink生态系统内的成员。而且目前我们正在以每一两天一个公告的频率扩大这个系统成员的规模。

大家如果对Chainlink项目感兴趣可以关注我们的推特或微博
https://twitter.com/chainlink
https://twitter.com/Smart_Contract
https://weibo.com/chainlinkofficial

下面我就举几个合作的案例

我们以谷歌的合作为例

Google首次尝试将其云端资源在区块链上变现,将八个不同区块链(其中包括以太坊)上的数据加载至Google的大数据分析平台BigQuery中,并开发一套成熟的软件,在各个区块链上搜索和分析数据。有许多新项目都在分析区块链索引数据,并在此基础上开发各种应用程序,比如比特币价格预测。然而,Chainlink并非只将区块链数据向云服务开放,而是将云服务向链上智能合约开放。

开发者使用Chainlink预言机可以在开发智能合约应用的同时读取云端数据,并利用这些数据触发链上合约。许多大型企业都在云端储存数据并执行业务流程,因此Chainlink预言机可以将这些数据连接至智能合约,以此将数据变现。

通过Chainlink预言机将云端数据连接至智能合约,为企业解锁了新的市场和商业模式,企业可以将原始数据或加工过的数据打包出售。其中一个颇具潜力的应用是衍生品合约,特别是通过BitQuery访问区块链数据而开发出的衍生品合约。Google Cloud开发者目前可以基于某个时段的以太坊平均Gas价格开发期货和期权合约等衍生品。以太坊智能合约也可以利用Chainlink预言机从BitQuery请求Gas价格数据执行合约。

再比如与甲骨文合作开发的Oracle for Startups项目。该项目与全球各地拥有各项技术专长的初创企业和创新者展开合作,为初创企业提供cloud credit、大幅折扣以及指导帮助,而且还会提供甲骨文的客户和市场资源。与区块链项目Chainlink的合作只是甲骨文诸多计划中的一个,而这项计划专注于帮助初创企业通过销售数据获得额外收入,并以此助力其发展。项目中将利用Chainlink的去中心化预言机技术,在甲骨文区块链平台上通过智能合约将API数据变现。

因此,Oracle for Startups项目中的初创企业一旦接入Chainlink网络并且在甲骨文区块链平台上使用Chainlink的去中心化预言机服务,就意味着这些企业可以在甲骨文平台上轻松创收,而大部分的工作都可以在智能合约上自动完成。

最近我们的商务拓展也来到了亚洲,我们刚刚和国产明星项目Conflux达成合作意向,昨天又与韩国现代集团的hdac公链项目宣布合作。Chainlink未来会更重视中国和亚洲市场。

5.新人如何加入chainlink的生态开发呢?可以推荐一条学习路线和实战开发路线吗~

好的。Chainlink的开发其实就是智能合约的开发,所以如果你掌握了智能合约的开发,就可以很方面的使用Chainlink。Chainlink为开发者提供了开箱即用的开发库,可以非常简单的开发Dapp。大家可以去B站搜Chainlink资讯,https://space.bilibili.com/482973600

里面有我前几天录的一个Workshop,教大家如何开发一个竞猜应用。目前Chainlink是部署在以太坊的上的,所以我们提供的是solidity开发工具包。未来我们也会支持波卡等其他支持智能合约的公链。另外大家也可以通过编写一个适配器,将Chainlink与你们现在的工作的系统或区块链项目进行连接,我们文档中都有介绍。大家如果对Chainlink的开发有兴趣的话,欢迎来加我索要跟多的开发资料。

6.跟我们介绍一下chainlink的开发者社区和chainlink组织的活动吧

好的。
从去年开始,Chainlink在中国就以每月一次的频率在上海北京杭州深圳巡回举办Meetup。Chainlink的meetup并不是为了宣传Chainlink而举办的,而是旨在提供一个供所有区块链社区成员、项目方进行社交的场合,参与meetup可以获得知识、人脉等非常宝贵的资源。

今年以来,Chainlink在全球平均几天就有一场meetup, 我们甚至最近在非洲和沙特阿拉伯也举办了chainlink为主题的meetup。我们也专门有一个活动的页面,https://events.chain.link/ 通过这个网页可以看到全球各地未来的活动计划以及过去活动的回顾。在国内,我们也会在微博、微信、币乎等各大媒体预告我们的meetup活动。因为疫情的关系最近中国的活动我们更多是在线上做,包括直播和AMA,大家感兴趣的可以在上面的活动页面中国区注册newsletter, 有活动就会邮件给大家。我们以往的活动视频也都会放在B站。

另外需要重点说的是,Chainlink特别重视开发者社区,希望能有更多的开发者使用Chainlink,传播Chainlink,让Chainlink赋能区块链应用真正走向落地,为智能合约产生革命性的推送作用。所以我们最近也正在计划一个开发者的奖励计划,鼓励开发者能在各个场合使用Chainlink来开发他们的应用。我们不光有丰厚的物质上的激励,还会给开发者提供独一无二的资源,帮助开发者扩展自己的影响力。有兴趣的可以加我了解更多细节。

这是Chainlink去年举办的线上黑客马拉松比赛的奖金,大家可以参考一下,这样规模的奖励显示出了Chainlink对于开发者社区建设的重视:

而且现在发展阶段,拿奖其实并不是很难。希望有更多的人参与到Chainlink开发者社区中,欢迎大家加我的微信。

最后给大家发一下Chainlink社区入口,欢迎关注:

官网: https://chain.link/cn

博客: https://blog.chain.link

微博: https://weibo.com/chainlinkofficial

微信公众号:Chainlink_Official

接待微信:ChainlinkOfficial

币乎: https://bihu.com/people/1869894547

合作联系: [email protected]

GitHub: https://github.com/smartcontractkit/chainlink

Discord:https://discord.gg/aSK4zew

Twitter: https://twitter.com/chainlinkofficial

Telegram: https://t.me/chainlinkofficial

中文开发资料站:https://github.com/vlyl/awesome-chainlink-cn

开发者社区管理员:团长(微信号:neils_)

自由提问

F1:有个小问题,就是怎么成为Chainlink独立节点呢?是大家都有权成为节点么,然后通过信誉系统优胜略汰

我们有个节点市场,market.link 直接在上面申请就可以成为Chainlink节点。节点可以通过提供获取数据的服务挣LINK获得收益。

F2:我对刚才说的那个信誉系统和保证金制度挺感兴趣,能更详细说说吗

Chainlink提出的信誉系统将记录和发布预言机提供者和节点的用户评级,为用户提供一种全面评估预言机性能的方法。验证程序系统报告可能是决定预言机声誉和将这些声誉置于信任的稳固基础上的一个主要因素。不过,链上历史之外的因素可以提供关于预言机节点安全配置文件的基本信息。这些可能包括用户对预言机品牌、运营实体和架构的熟悉程度。我们设想Chainlink的信誉系统包括一个基本的链上组件,以便用户评级可供其他智能合约参考。此外,信誉指标应该容易地被链下访问,在那里大量数据可以被有效地处理和更灵活地加权。

对于给定的预言机操作者,信誉系统最初被建议为支持以下指标,无论是在特定赋值类型的颗粒度(见第2节),还是通常也适用于由节点支持的所有类型:

分配请求的总数:预言机已经同意的过去请求的总数,无论是满足的还是未满足的。
已完成的请求总数:预言机已满足的过去请求总数。这可以在分配给计算完成率的请求数上取平均值。

已接受的请求总数:与同行响应相比,通过计算合约而被视为可接受的请求总数。这可以在分配的总请求数或完成的总请求数上取平均值,以深入了解准确率。
平均响应时间:有必要提供预言机确认响应时间,他们的响应的及时性将有助于确定未来的及时性。平均响应时间根据完成的请求来计算。
罚款金额:如果惩罚支付被锁定以确保节点操作者的性能,结果将是预言机提供商承诺不参与“退出骗局”攻击的财务指标,在这种情况下,提供商获取用户的钱而不提供服务。这一指标将涉及时间和财务两个方面。

这是白皮书里对于声誉系统的设计。Staking实际上是Chainlink网络中的罚金存款(节点保证金)。请求者可以指定LINK的数量,如果节点没有满足请求,则所有节点必须将该数量的LINK作为罚金。然而由于罚金是可选的,不是所有的请求都需要它。更多关于罚款保证金的细节参见:https://github.com/smartcontractkit/chainlink/wiki/Protocol-Information#penalty-deposits

F3:近期会在北京有线下活动吗

只要疫情结束,我们的meetup就会举办起来。去年在北京开了两场,今年肯定还会去。

采访策划:11,Shawn,Even

执行:11,Shawn

主持:11

Leave a Reply

Your email address will not be published.