预言机作为区块链延伸的触角,搭建了链内与链外之间的可信桥梁,构建了相互融合的价值生态。
原文标题:《预言机 - 区块链的触角》 撰文:李世敬,趣链科技基础平台部产品负责人
在保险、金融、随机预测、物联网等各个场景中,预言机在区块链中已经展现出其不可替代的价值:作为区块链延伸的触角,搭建了链内与链外之间的可信桥梁,构建相互融合的价值生态。
本文将从预言机的起源、定义、原理、发展等角度进行介绍。
说起预言机 Oracle 功能,颇具历史和神话色彩,它与 Oracle 甲骨文公司无关,最早起源于古希腊神话中的角色「神谕者」,神谕者可以跟奥林匹斯山上的诸神进行沟通,对未来做出预言,并将神的旨意传达给祈求未来的人民,因此 Oracle 最早有着「先知」的含义;在计算复杂度理论与可计算性理论中,预言机(oracle machine)是一种抽象电脑,用来研究确定性问题。可以被视为一个附加了黑盒子(预言者)的图灵机,这个黑盒子的功能是可以在单一运算之内解答特定问题。根据给定,预言者可以给予「是否」或者确定的计算决策结果。
相信大家已经看出在不同的场景中,预言机都会做着相同的事:在未来的某个时间给予某个系统一个确定的输入。区块链中的预言机也不例外,甚至可以说是天作之合,其作用恰好解决了区块链中的一大痛点问题:外部数据源的输入确定性。
声音 | 汉威科技:正积极创新发展区块链+产品或服务:汉威科技(SZ300007)在互动平台表示,区块链作为底层技术有其特点和优势,但还谈不上转型,公司始终专注于传感器及物联网领域的产品及服务。借助子公司的技术储备,我们正积极地创新发展区块链+产品或服务。[2019/11/29]
图 1:预言机的多种含义
区块链为什么这么在意外部输入的确定性?
因为在分布式系统中,需要确保多个节点最终执行结果的一致性,从而保证系统稳定运行,对于随机数、实时数据等操作是极具风险的,所以区块链牺牲了会导致执行结果不一致的外部动态数据的获取需要,把自己变成了一个封闭的、确定性的沙箱环境。
在这个环境中,链上的数据都是被动得到的(通过交易的形式输入),且区块链在运行智能合约的过程中无法对外部请求获取新数据,只能基于已有数据以一种确定性的方式产生新数据,而区块链上的智能合约或者去中心化应用(DApp)对外界数据又有强烈的交互需求,这与智能合约的执行环境产生了矛盾。
声音 | 中国电信:将充分利用人工智能、区块链、云计算等技术 让上海成为创新策源地:据腾讯大湘网消息,5月30日,中国电信在沪举行“共建双千兆示范城市暨中国电信智慧家庭生态合作大会”。中国电信表示,将基于上海领先的“5G+光网”双千兆网络,充分利用以ABCDHI5G(人工智能、区块链、云计算、大数据、智慧家庭、物联网、5G等)为代表的新一代技术,形成面向各行各业的综合场景解决方案,让上海成为全国乃至全球产业升级的创新策源地。[2019/5/31]
预言机因解决此矛盾而诞生,并且一发而不可收,通过预言机中间件,智能合约可以主动获取外部的数据,触角可以延伸到传统业务系统、公开网站、物联设备、链下计算、链链互通等方面,做到了很多之前做不到的事情:获取传统业务数据、调用公开网站信息、物流快递追踪、保险自动赔付、获取其他链的信息 ... 从此打开了想象力的大门。
听起来好像预言机也没什么了不起,只是一种中间件调用外部数据,然后把数据返回到区块链中,但理想很简单,现实很骨感,如果思考下去,你会发现在使用过程中有几个难点:
如何保证获取的外部数据源真实可信?
如何保证数据在传输和处理过程中的安全?
动态 | 农行贵州分行积极探索将“区块链”技术与农地产权改革有效融合进行探索创新:1月24日,农民日报刊文《农村产权制度改革的“金融答卷”》,文章指出,为进一步提升服务农村产权改革的效率,农行贵州分行积极探索将“区块链”技术与农地产权改革有效融合进行探索创新。历经与当地人行、政府等部门多次沟通,通过筛选客户、与政府平台对接、共建区块链节点等方式,最终成功研发投产农权农地抵押交易系统。[2019/1/24]
时效性、成本 ...?
针对上述问题,我们根据趣链区块链平台预言机架构流程图进行阐述说明。
图 2:预言机架构模型图
首先,预言机一般会作为区块链的一个独立模块或第三方服务与执行引擎进行交互。预言机只负责数据的可信获取,不直接参与交易的执行。首先,用户通过合约调用的形式(也可以通过特殊的 API 接口服务等其他方式发起预言机服务请求)发起预言机的服务请求,通过调用某个内置合约接口(图中「预言机服务」接口),告知区块链执行引擎,用户想要执行一笔含预言机服务的交易。
声音 | 投资人David Johnston:区块链最大的障碍除了监管还来自于技术:据PANews消息,近日BitAngels区块链天使投资机构执行董事David Johnston在接受专访时表示,加密货币短期市场受到各种因素影响会有涨有跌波动很大,但是长期市场价格却由项目的内在价值所决定。并表示自己是不做任何短线操作的。Johnston还认为区块链最大的障碍除了监管还来自于技术,“如果我想让我们的区块链技术被全球的人使用,可能每天需要80亿笔交易,但目前的支持能力远达不到。这就需要很多优秀的技术人员一起来探索区块链的扩展能力和处理能力。[2019/1/15]
其次,执行引擎执行过程中检测到对预言机的服务请求,通过内部通信组件将它转发给预言机模块,这个请求里会封装请求外部数据源的一些信息,如一个 Web 数据请求,会包含常见的 URL、HTTP Headers 等信息。
再次,预言机在收到服务请求后,向外部数据源发起数据获取请求,拿到数据后利用交易生成器产生一笔新的内部回调交易,并对其进行签名(这一过程会使用 TEE 等硬件技术保障安全及不可篡改)。
最后,预言机将这笔回调交易发向执行引擎,执行对获取到的数据组织、管理、存储等一系列操作,至此一个完整的含预言机服务的区块链交易执行流程结束。
动态 | 智利国会议员提交采用区块链技术的提案:据cointelegraph消息,两名智利代表于10月4日星期四向该国议会下院(Camara de Diputados)提出了关于区块链采用的提案。在该项提案中,出席会议的议员Miguel Angel Calisto和Giorgio Jackson以及其他八名议员呼吁智利总统Sebastian Pinera,敦促他在全国所有公共区域实施区块链。该文件还提出了对区块链安全和能源解决方案的优势进行研究。[2018/10/6]
根据上述的生命周期流程,我们对开头的问题进行一一探讨:
这是预言机使用过程中最核心的问题,回答是没有绝对可信,只能做到相对可信。我们在设计过程中主要在数据源认证、数据获取标准流程、数据格式统一等方面进行约束:
数据源选取和可信认证。预言机需要谨慎选择外部数据源,必须保证对每个选取的外部数据源,都可以验证其是可信的,如对于 Web 的数据获取,选取的数据源需持有证书。
数据获取标准流程。开发者必须明确执行引擎、用户、外部数据源与预言机的数据交换流程,且对于不同的数据源类型要能够统一或明确区分数据的交互流程,确保交互方案可执行可落地。
数据交互格式的统一定义。不同的数据源类型有不同的数据交互格式,以传感器作为数据源和以 Web 作为数据源获取到的数据格式是不一样的,针对不同情况,明确统一的数据编解码层,以对不同数据源的数据进行请求和解释。
预言机通过两个阶段对进行中的数据实现可靠保证。
数据从网上到本地,采用 HTTPS 协议(底层采用 TLS 协议)去保障连接和数据的正确性、完整性。
数据从本地到链上,预言机采用可信执行环境 ( TEE ) 技术,TEE 是 CPU 内一块安全区域,和操作系统独立运行,可以确保数据处理过程中的机密性、可靠性,趣链区块链平台研发了基于 SGX 的 TEE 实现以及基于国产芯片的 TEE 实现,进行预言机的安全保护。
链外的数据交互处理相对于链内来说,在数据源可信度、预言机可信度、处理复杂度等方面都会增加,而真实场景中可信度的不同,严重影响着预言机的实现效率以及实现成本。在公有链中,默认多方完全不可信,所以会通过多预言机模型实现聚合处理、共识规则、奖惩机制及声望系统,以达到提高作恶成本的作用,这无疑增加了功能实现的复杂度;在联盟链场景中,预言机使用场景相对可信封闭,且机构节点间可信度高,单预言机实现效率高、成本低,但存在单点作恶的问题,所以各位在使用过程中应该因地制宜,根据场景具体选择最适合的实现方式。
现在市面上预言机的分类主要为中心化预言机和去中心化预言机两种。
中心化预言机因其中心化的思想,需要引入第三方可信机构,如国家或能提供背书的大型企业,验证方式也是通过第三方独立验证。
以预言机项目 Oraclize 为例,作为一个中心化预言机,通过 TLS (Transport Layer Security,传输层安全)协议实现 Web 数据的可靠传输,并结合 Intel SGX (Intel Software Guard Extension)确保数据在本地不可篡改,Oraclize 给用户提供了 API 接口,用户只需要调用预先设计好的合约接口,就可以使用预言机服务获取外部数据。
由于 Oraclize 是中心化预言机,作为一个独立的单点模块,这样的实现具有高性能的优势,但同样也有单点故障、难以拓展的风险,且中心化的思想与区块链的去中心化理念有一些背道而驰,国内主流联盟链趣链区块链平台、蚂蚁链等大都采用中心化预言机的实现方式。
去中心化预言机秉持着与区块链相同的去中心化原则,通常使用多重签名或分布式算法保证数据的正确性、一致性,不需要引入第三方机构,但在实现上会更困难,性能也会成为瓶颈。
以 Chainlink 为例,它建立了一个去中心化的数据网络,每个预言机都是网络中的一个节点,其架构分为链上组件和链下组件。链上组件负责和用户交互,收集、响应用户请求,而链下组件则是之前提到的数据网络,用于处理数据获取和传输。
在这个架构中,由于 Chainlink 是一个分布式的数据网络,所以可以避免单点故障的问题,但同样地,因为增加了分布式的数据一致性需求,其性能和实现难度成为了新的难题。
对比来看,中心化预言机由单机负责数据获取,需要引入第三方可信机构,而去中心化预言机则是多机并行,通过互相验证保证一致性。因此中心化预言机适用于对实时性要求高、可信度高的场景,用户体验较好;而去中心化预言机则相反。
从功能角度来看,预言机的功能比较纯粹,主要解决区块链内外数据可信连通问题。针对不同的信任场景,预言机也采取了中心化和非中心化的两种方式提供服务。
从应用场景来看,链外数据是一个很大的生态,预言机可以应用在公开网站信息、物流追踪、保险自动赔付、获取跨链信息等多场景。预言机的发展一方面依赖于区块链 / 智能合约技术的发展,一方面又助力区块链 / 智能合约的业务延伸,随着区块链在金融、保险、物联网等行业生态规模的扩大,预言机未来的生态价值也很值得期待。
从商业角度来看,预言机模式其实类似一个数据服务提供商,中心化预言机的商业模式本质上是一个数据服务平台,而去中心化预言机是一个多元的数据服务生态,两者发展方向各有千秋。
国内新疆、甘肃、内蒙古多地宣布禁止比特币挖矿,不少矿工准备转战海外之后,国外的一些地区对于比特币挖矿也存在着诸多声音。从经济的角度看,比特币挖矿可以为经济停滞的地区带来福音,促进就业并提高税收.
1900/1/1 0:00:00"2021 年,行情将 DeFi 推到了一个新的高度,而在 DeFi 当中,智能合约起着关键作用.
1900/1/1 0:00:00剑桥替代金融中心(Cambridge Centre for Alternative Finance)称,目前比特币每年消耗约110TWh.
1900/1/1 0:00:00高盛本周发布了一份关于加密货币的研究报告,讨论了加密货币成为机构资产类别的潜力。此外,研究人员还认为,区块链的价值取决于在其之上存储的信息,并声称以太坊可能会在未来成为第一大公链,且将作为价值储.
1900/1/1 0:00:00在赛博朋克谜的理想世界里,最适合做法定货币的是什么?比特币或许会高票当选。近日,这个赛博朋克梦距离现实前所未有的近.
1900/1/1 0:00:00在过去数月里,以太坊核心开发者一直在进行伦敦网络升级的工作。它是继柏林升级(四月在主网实现分叉)后的一次升级。尽管各个网络的升级区块高度目前还未定,但纳入伦敦升级的 EIP 已经确定了.
1900/1/1 0:00:00