预言机(Oracle)是区块链中非常重要的一个功能,前段时间大火的chainlink(Link)的主要作用就是建立在以太坊网络上的一个预言机,而因为DEFI的持续火热需要一定的报价源从而造成Link的不断上涨。
预言机是什么?
图:预言机示意
区块链外信息写入区块链内的机制,一般被称为预言机 (oracle mechanism) 。
预言机的功能就是将外界信息写入到区块链内,完成区块链与现实世界的数据互通。它允许确定的智能合约对不确定的外部世界作出反应,是智能合约与外部进行数据交互的唯一途径,也是区块链与现实世界进行数据交互的接口。
大家会很形象的把公链比作操作系统,DAPP 类比的话就是 APP,那么预言机可以形象的比做 API 接口(API 是一组定义、程序及协议的集合,通过 API 接口实现计算机软件之间的相互通信)。这个类比虽然不准确,而预言机正是扮演这样的角色,预言机是区块链和现实世界之间的纽带,可以实现数据互通的工具。
如何防止预言机作恶?
我们知道,采集链外事件代表一定范围内的人为性质。而人性只会看重利益,如果有人以某个目的而提交错误的数据,那么就会从源头一错到底。
因此,预言机的数据源至关重要。
那么chainlink是如何防止作恶的呢?
Chainlink 目前选取节点运营商的方式主要是通过与可信节点合作,然后用 token 激励节点。但是只要智能合约开发者在选择特定的节点运营商,他们就无法达到跟明星公链相同的抗合谋级别。因为一群已知的节点运营商远比从一个池子中随机选择的节点运营商更容易实现合谋。
为缓解 Chainlink 中节点运营商可能合谋的问题,Medium 上的一位区块链技术爱好者、也是 Chainlink 的头号粉丝 Zak Ayesh 曾给出建议:允许智能合约开发者使用安全的随机信标,从无须许可的节点运营商池中随机选择节点。真正安全的随机信标在区块链中很难达成,不过幸运的是,以太坊已提议要实现安全的通用随机信标,即以太坊 2.0 信标链。
以太坊中的信标链会产生不可预测和没有偏见的随机性的前提假设是:至少有一个验证者是诚实的,并且不存在 VDFASIC 硬件的速度快于商品 VDFASIC 硬件速度很多倍的情况。实际上,Zak 的建议本质上是让 Chainlink 系统借鉴以太坊 2.0 的权益证明工作原理。
假设,特定的数据流在不同的智能合约中都有非常高的需求,且数据流之一就是 ETH/USD 价格对。任何人都可以为这个数据流启动节点,并加入网络。你只需加入节点运营商的池子,在这个池中的所有节点都给智能合约提供相同的数据流。
以太坊随机性信标被触发时,节点运营商的新委员会被选出。其中,某个特定节点被选进委员会的概率将与其在池中质押的 Link 代币数量成正比。这些节点将提供数据流,数据会被汇总,并将根据使用服务的智能合约的定义来接受奖惩。
这套方案的强大之处在于,可以与当前所有计划的安全功能叠加使用。但前提是需要足够大的节点运营商池,才能从根本上消除池中已认证节点之外的女巫攻击威胁。在以太坊中,有数以万计的节点,因此很难被少数运营商控制。
STAR(Interstellar)预言机机制更胜一筹
根据STAR白皮书显示,STAR的9大节点除了有EOS的节点投票和轮序出块功能以外,还具备区块链的预言机功能。
具体操作逻辑为,有九大节点收集全节点的数据进行汇总提交,采用其中超过1/2的全节点数据提交上链。而后9大节点在进行提交汇总,以其中超过5个节点的数据进行加权平均后再确定为最终数据。
这样的操作逻辑是完美的,首先,人人都可以建立全节点介入数据,这大大降低了入场门槛,节点数量的大幅增加避免了中心化的数据控制;其次,经过DPoS节点的二次汇总,将目标数据进行二次过滤(请注意,在此过程中,节点是没有权限拒绝数据的,这再次避免了中心化的数据控制问题)。如此一来,STAR的预言机机制将完美躲避人为控制数据源的问题,是真正的去中心化预言机。
STAR的伟大征程才刚刚开始一小步,未来必将大放异彩。
市场有风险,本文不构成任何投资建议