“来吧,我们要建造一座城和一座塔,塔顶通天,为了扬我们的名,免得我们被分散到世界各地。”
标题中的Oracle并不是甲骨文,也不是甲骨文公司,是我们之前文章中反复提到很多次的链接区块链物理世界和现实世界的关键所在,在区块链兴起之后被赋予了新的含义。我觉得叫做巴别塔更适合,其使命也是如此(巴别塔的结局并不美好TT)。
额外多说两句,在学习、应用区块链的过程中,几乎重新学习了太多的知识,每天都在不停的学习,比如今天讲的Oracle、后面会讲到的石墨烯技术,甚至同态加密,以及相关的密码学基础。前几天的一篇文章《扒一下互联网公司的区块链布局》中提到:钱包是重要的入口,链接了现实世界和物理世界。在聊过Oracle之后,我们仍旧保持这样的判断。链接的形式和层次是多样的。这个我们介绍完Oracle,大家就能够有所感受。
01
—
价值交换定律
首先正式推出陈老师发明的非著名定律:
“价值交换定律:在不同的空间之间进行价值交换是不可靠的。”
最简单的解释就是,在物理空间和数字空间交换价值时,由于物理空间的信息或价值需要通过人、或是人设计的装置转化到数字空间,反之亦然。由于人这种动物的易变性和不抗诱惑,在信息或价值的交换,很可能发生畸变,从而影响价值交换的可靠性。
陈老师的这个定律非常的抽象,是对所有涉及价值交换的场景的抽象总结。并不仅仅局限于区块链——只是在区块链的场景中更加的凸显。价值交换定律在区块链的具体实现就是:Oracle。
02
—
Oracle
在区块链和智能合约的场景下,Oracle可以认为是一个代理,其能够发现和验证真实世界的事件,并将此信息提交给智能合约使用的区块链。
理解起来还是有些别扭。其实要或多或少理解一下什么是智能合约会有一些帮助,如果知道一些智能合约的开发,应该就更好理解了。
以以太坊为例,以太坊上部署的智能合约原本是不能够访问区块链之外的网络的,更别提像我们自己做个应用直接调用天气等Restful API了。那就明了了,Oracle就是一个这样的第三方服务,提供了智能合约执行需要的数据。这是DApp后续发展的必然趋势,需求缺口巨大。
这里有个很关键的问题,为什么Oracle可以?我们首先来看下具体有哪些类型的Oracle,具象的感受一下Oracle到底是什么?
Software Oracles:通过软件层面的实现,抓取互联网的信息以供智能合约使用。这里详细展开,还有很多的内容,比如说实现一些自动触发的功能。
Hardware Oracles:对比软件的实现,主要依赖硬件的传感器。这里我着实重新学习了一下RFID。
那为什么Oracle可以呢?这里存在什么问题么?
怎么确定数据源是可信的
怎么保证Oracle本身不作恶
针对数据源,我们可以选择多个数据源相互印证。但Oracle本身呢?目前Oraclize公司采用的是TSLNotary技术进行验证。那这样的方案就完美了?并没有,我们不能说这就是最终安全的方案——不过聊胜于无。Oraclize公司的做法算作一个很好的尝试吧。
这块很重要,期待谁先造出巴别塔。
推荐
—
知识星球
从技术、商品、货币等角度聊区块链与数字货币。欢迎各路英豪加入待字闺中区块链知识星球。目前已经近200人加入,后面一些关于数字货币和区块链随想就在这里与大家展开讨论。大家不要错过。
领取专属 10元无门槛券
私享最新 技术干货