Arbitrum Rollup的设计方案里有一个验证人的角色,验证人需要在链上记录,就需要发送一个主张到以太坊上。同时验证人需要存一笔保证金。如果验证人的主张是假的,那么验证节点的保证金就会丧失。当验证人把主张发送到链上,会有一段时间任何人都可以提出自己的质疑。如果你不同意就会有争端,争端的解决机制就是 Arbitrum 能够实现可扩展性最核心和关键的所在。Arbitrum争端解决机制是这样的,如果双方对某件事持不同意见,有效的解决机制是由大到小进行拆分。比如某笔交易涉及到 10 亿步产生了争议,那么便将 10 亿步拆分成 100 份更小的主张,每个主张包含 1000 万步,这样就把 10 亿规模的争端缩小成了千万规模的。不同意的一方再从这 1000 万中挑出他不同意的,再进一步的由大化小,直到找到最关键的有争议的那一步。找到关键的一步之后,再动用以太坊的合约来决定这一步到底是正确还是错误的。通过这样的方式就可以实现高效的争端的解决。 总体过程如下,当一个节点发送了一个主张,主张是正确的,没有问题,那每 10 分钟发一个哈希。哈希到以太坊链上后没有争端,系统就可以顺利的运行下去。如果有争端则可以通过刚才介绍的高效的方式将争端由大化小,最终得到很好的仲裁,这就是Arbitrum系统高效的所在。 目前为止,这三种Rollup的方式都有了一些支持者,也有一些应用开始尝试部署。 2、状态通道(State Channel) 相当于是用户和用户之间直接建立了一条通道,举个例子,用户A和用户B经常发生转账,因此他们决定直接建立一条通道,然后每个人都在这个通道里存放一定数量的代币,当需要转账时,就从这里直接进行转账交易就好了。 如果用上面的例子进行解释,那么就是用户A和用户B经常有货物往来,他们觉得每次都用公共货车太麻烦,于是干脆两个人一起买了辆货车,来回运货,一起分担费用。但是这里面有两个问题,第一A和B不可能一直做交易,第二是因为这辆车的使用者只有A和B,所以如果一方没有按照约定支付费用的话是没有办法验证的(此处忽略转账证据这类的说法,因为转账证据也可以伪造,同时也没有一个公平的仲裁机制可以快速解决纠纷),因此状态通道的方案不可能大规模的复用,尤其是我们回到以太坊上的交易上来,我们会发现,大部分的交易都是和不同的用户在进行,因此这类方案并没有真正解决以太坊拥堵的问题。 3、侧链(SideChain) 侧链相对来说比较容易理解,就是干脆直接另外运行一条公链,然后把大部分的运算都转移到这条公链上,然后在需要返回结果的时候再把结果返回到以太坊上。这个方案听上去好像非常可行,但是有一个最大的问题就是这条公链的安全性问题。以太坊上之所以能吸引这么多的应用和用户,正是因为它的生态已经构建成形,有足够多的算力(ETH2.0实现以后是节点)来保证以太坊的安全性,但是其他公链并不具备这个安全系数。打个比方,以太坊就像一条非常完备的高速公路,有警察,有救护车,一旦发生问题,可以及时解决,但是如果你在其他路上开车运货,不管是遇到车祸还是遇到抢匪,可能都没有保护措施,那么用户怎么敢在这条路上运货呢。 (责任编辑:admin) |