今日链见:区块链扩容的不同技术方案

2018-08-02 20:12:36 innov100  点击量: 评论 (0)
以太坊是最大的工程化的区块链“计算机”。它同时做到了数字资产交易和合约的上链。但由于数字资产交易记账和各类智能合约应用的性能要求不同,经常性的出现了“道窄车多”的问题。扩容就成了当前基础公链技术的主要拓展方向,扩块、共识算法创新、分片和分层是主要的四种解决

今日链见,和大家谈谈区块链扩容的不同技术方案。

以太坊是最大的工程化的区块链“计算机”。它同时做到了数字资产交易和合约的上链。但由于数字资产交易记账和各类智能合约应用的性能要求不同,经常性的出现了“道窄车多”的问题。扩容就成了当前基础公链技术的主要拓展方向,扩块、共识算法创新、分片和分层是主要的四种解决方案。

扩块是一种作法,比如比特黄金,针对比特币2M大小的块扩展到8M。但对公链全网共识来说,块可扩展的容量是有限的,同时这意味着每个节点更大的工作量,对单个节点的性能要求更强,某种程度上它可能带来矿机生产和运营的更加专业化和集中化。

共识算法创新,是一种解决方案,从POW到POS、甚至DPOS,牺牲掉去中心化的公平性,来换取效率的提升,比如EOS共识算法变成了DPOS,选举出21个超级节点来做共识,效率自然很大提升。以太坊也试图进行新版本Casper分叉,切换到POS的共识算法。而且,Vitalik认为,POS是分片的前提。

分片是Vitalik重点推进的以太坊扩容方案。分片是在以太坊的基础级协议中实现的,一个区块链网络被分割成不同的片,比如100个,每一个片都可以独立处理交易。相当于建立了100个子链,帐户交易信息都是储存在子链上的,不同分片处理不同的区块和交易。作为验证节点要干两件事,一是验证主链上的区块,二是验证分片上的区块。区块可能被分配到100甚至更多的分片中,交易也是分开到不同分片的,由不同的验证者来验证不同的区块和交易。但需要某种机制来知道每个节点执行了哪个分片,这种机制还要能保证系统安全又高效。主链就能发挥这个作用,主链负责生成随机数,随机选择哪个验证节点进入哪个分片,并且保持对验证节点的追踪,比如节点被分配到什么分片、当前的奖励和惩罚是什么,还可以追踪到子链上的区块,所有这些信息都是由主链完成的。通常主链追踪分片的方式,不是追踪每个分片中的每个区块,只会追踪交联(cross-link)。子链就只做交易处理,并且存储帐户状态和合约状态。子链之间使用收据来实现跨分片通信。假设一个计算机可以来处理N个交易,主链就可以来追踪N个分片,每个分片本身都能够处理N个交易。系统可以处理的是2倍N的交易。通过分片,全网交易通量成倍增长。

分层是以太坊采取的另一种扩容解决方案。基本思路是分出层次,主链只处理关键数字资产记账,把很多交易和应用在主链之外进行处理,也称为离链方案或者“第2层”扩容方案,主要技术方案包括状态通道(state channels)、Plasma和 Truebit。这些链下的技术方案,不需要更改基本级别的协议,只是作为以太坊上的智能合约,用于与链下软件进行交互,既保证了主链的公平性和稳定性,又增加了链下高效和灵活性。

状态通道(State Channel)是一种用于执行交易和其他状态更新的离链技术,但也确保了一个状态通道“中”发生的事务仍保持了很高的安全性和权威性。闪电网络是比特币的支付通道,雷电网络是以太坊上的支付通道,很多小额交易在支付通道中进行,只有初始和最终值被记录在主链上。状态通道是支付通道泛化出来的形式,它不仅可用于支付,还可用于区块链上任意的“状态更新”,比如智能合约中的更改。某个应用合约的琐碎执行就在状态通道中进行,直到提交“最终状态”后关闭该通道,在以太坊主链上就只用付一次交易费,用来记录初始和最终状态。

2017 年 8 月 11 日,Vitalik和Joseph发表了一篇题为 Plasma: Autonomous Smart Contracts的文档,提出了Plasma 技术。Plasma是一种自治的智能合约,是一种用于管理链下交易的技术,同时依靠底层的以太坊区块链来实现其安全性。Plasma是通过创建依附于“主”以太坊区块链的“子”区块链,这些子链又可以循序产生它们自己的子链,并能依次循环往复。结果是可以在子链层级中执行许多复杂的操作,在与以太坊主链保持最低限度交互的情况下,运行拥有数千名用户的完整应用程序。Plasma 子链可以更快迁移,并承担更低的交易费用,因为其上的操作无需在整个以太坊区块链上进行重复。为了保证安全性,Plasma设置了用户能将他们的资产随时收回到主链上的机制、以及用户可以向根节点合约发布欺诈证明(fraud proof)的机制,来确保一旦发生安全风险,可以采取及时保护措施。

Truebit也是一种链下进行繁重或者复杂运算的技术,可以让基于以太坊的智能合约处理更复杂的事务并仍能被主链验证。TrueBit系统由两个层级组成:问题解答层和奖励层。同时,在问题解答层级中使用 “验证游戏” ,作为判断解答是否正确的方法,来确保外包出去的链下计算任务能够安全正确。解答层支付给智能合约一份押金,开始执行外包计算任务,并返回结果。如果结果是正确的,它们的押金将被退回。如果结果被证实没有正确执行运算,比如,欺诈或者犯错,它们会失去押金。

在很多新的公链中,沿着基础链分层的思路,提出了很多新的“双链”或“链下”解决方案,主要思路也是主链保持公平性和稳定性,链下去解决效率问题。总之,扩容是当前和一段时间内基础公链技术创新的主要领域。

大云网官方微信售电那点事儿

责任编辑:售电衡衡

免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
我要收藏
个赞