Ethereum(以太坊)是一个平台和一种编程语言,开发人员能够利用其建立和发布下一代分布式应用,它可以用来编程,分散,担保和交易任何事物,比如投票,金融产品, 合同和大部分的协议,知识产权等等。
在今天于上海开幕举行的DEVCON 2以太坊开发者大会上,以太坊智能合约语言Solidity的发明人Christian Reitwiessner博士介绍了链外生态项目研究的最新成果:能够欺骗一个区块链吗?
Christian Reitwiessner表示,以太坊的核心理念是:一条内置图灵机可计算性的编程语言的区块链,允许在上面创建任何种应用。但事实是,目前以太坊的GAS设计对于小额交易而言成本太高,且12s左右的确认时间还是太长。“因此要在链下做。”
比如Truebit,就是以太坊年初面对一系列瓶颈时推行的链外生态合作模式。“目前以太坊智能合约的交易都需要每个矿工去执行和验证,而且每个矿工都需要记录区块链上每个智能合约的状态,这浪费了网络和计算资源且限制了智能合约的潜在应用,同时很容易被利用,”根据以太坊爱好者的介绍,Truebit能够以无需信任的方式让以太坊智能合约去调用外部程序的执行(目前还是异步的方式)。
Christian Reitwiessner解释称,Turebit解决方案是一个验证游戏,通过和第三方研究者LoiLuu与JasonTeutsch合作,研究"如何用合理网络验证计算"。"Canetti、Riva、Rothblum在2011年提出了互动型验证机制。我们希望在想要把这个机制放在区块链上实现同样水平的信任,从而降低成本。”
Truebit的运作方式是这样的:首先发布者发布任务,矿工进行解决。验证的过程是看两个矿工是否就解决方法达成共识,你可以选择服从,也可以尝试对抗,但是后者代价很高,最终获胜的还是服从者。
因为以太坊详细的验证中,梅克尔树(Merkle trees)是基本组成部分,而整个验证过程是从叶子节点发起,直接回溯到root节点。如果骗子要挑战验证结果,无疑是要进行整个梅克尔树的运算,才能试图篡改。而假若服从者要找出异议环节,只需不到20轮的运算。
Dr. Christian Reitwiessner表示,目前该项目已经有了PoC代码,落地时间和风险有待进一步评估。
本文作者:温晓桦
本文转自雷锋网禁止二次转载,原文链接