正如以太坊的定义,区块链是一个交易驱动的状态机(a transaction-based state machine),它能做的事情非常简单,就是通过向区块链提交事务/交易(transaction),来将区块链从一个状态转变成另一个状态。为了保持共识,EVM 的执行过程必须完全确定,并且仅基于以太坊状态和签名交易的共享上下文。这产生了两个特别重要的后果:一个是 EVM 和智能合约没有内在的随机性来源;另一个是外部数据只能作为交易的数据载荷引入。用通俗的话讲,区块链没有主动获取数据的能力,它能用的只有区块链自己本身的数据。数据的缺失导致智能合约的应用范围非常少,目前大部分的应用都是围绕着 token 来展开的。
Chainlink 预言机的原理解析 | 登链社区 | 区块链技术社区