Layer2 | 链下计算

在上文中,咱们为你们介绍了「链下」技术中的状态通道、Plasma。接下来咱们会为你们介绍链外计算的两种方案。安全

链下计算( Off Chain Computation )

以太坊声称要作计算机,EOS 要作全球操做系统,但不管是作计算机仍是作操做系统都得正视计算这个问题,链上计算的开销是很是大的,链上每个 EVM 的 Code 计算须要全球计算机都算一遍,才能得出结果,因此有人作了这么一个计算的扩展,在链外作 Computation。

这个方式大体有两种框架

TEE( Trusted Execution Environment )

第一种是在可信的执行的环境中,把这个计算算出来,而后传到链上去,再加上可信环境的一个证实。

这个证实不是计算结果的对和错,而是证实这个计算是在安全的环境里运行的。

可信的执行环境在工业界相对来讲仍是比较成熟,ARM 芯片是支持 TrustZone 方案的,咱们用的苹果和安卓手机的指纹,它的秘钥信息都是存在 TrustZone 里面的。它的优缺点经过介绍其实也比较清楚了。

优势性能

  • 隐私性很强,由于全部东西都是在黑箱子里面的。
  • 性能也很是的高,单个机器执行便可,由于我信任的不是这台机器,而是这个 Trust Zone。
  • 功能很是的灵活,不像 Plasma 比较单一,它能够作各类各样的东西甚至是远超过 EVM 的东西,由于 EVM 里面作一些加密运算是很难的


缺点区块链

  • 黑箱计算引入了未知的风险
  • 依赖于硬件限制了它的扩展性,由于不可能每一个人都有一个符合硬件要求的设备来运行这套系统。
  • 系统的安全性是依赖于厂商的,厂商是能够在 Trustware 里面作任何的事情,这个也引入了风险.


因此这种依赖于安全执行环境的 Layer 2 方案通常是由联盟链或者是企业内部的链来使用的。加密

Truebit

第二种叫 Trurbit,它解决的也是链外运算的问题,这个项目颇有趣。这里面有好几个角色,包括用户、Solver 和 Challenger。spa

第一个是计算需求的提出者(用户),这个计算需求是用 Truebit 的 VM 来描述的,在实际操做的时候,Truebit 的 VM 是用 Rust 实现的操作系统


用户能够选择悬赏的方式找人来帮他作运算,运算的执行人叫作 Solver。Solver 把每一步的运算状态都算成一个哈希折叠到默克尔树里面,在最后,Solver 把全部运算结果的默克尔树的根哈希,以及运算的最终结果提交到区块链上。

而 Challenger 须要本身算一遍生成结果,若是他发现算的结果和 Sovler 算的不同,他就能根据错误信息找到哪一步或者是哪几步错了。Challenger 就能把这个状态和状态运行的指针上传到区块链上,挑战这个 Solver。

由于 Truebit 在链上拥有指令集,并且 State 能够证实它在原来的默克尔树里面,因而链能够计算这个 State 加指令获得一个新的 State,经过这个链能够开始判断,这个 State 是 Solver 生成的 State 仍是 Challenger 生成的 State,谁对谁错。

Truebit 只须要链上的一步运算,就可以证实全部运算是正确的仍是错误的,它能把普通运算折叠成了最关键的计算,交给主链去运算,验证。.net

 

延伸阅读:指针

Layer2 | 区块链发展新思潮
Layer2 | 状态通道 State Channel 
Layer2 | Plasma 框架 
Layer2 | 链下计算 
Layer2 | 链间通讯 ​​​​​​​blog

相关文章
相关标签/搜索