Layer1作为一种分布式系统,为了达成共识需要高昂的通讯代价,并且大量的计算也会消耗昂贵的gas。所以,作为Layer1的扩展,Layer2的设计可以有效地提升Layer1的效率。但是从这个角度来说,Layer2的设计仍然面临着和Layer1一样的一大难题,就是如何平衡去中心化程度和高效性。
zkRollup是非常有前景的Layer2扩容方案,通过将计算搬到链下并向Layer1链上提供零知识证明的方式来实现。在实现zkRollup的方案当中,FOX系统采用了当下主流结构,主要有两种节点,分别是Sequencer和Folder。简单来说,Sequencer负责对用户提交的交易进行排序打包,并且更新Layer2链上状态,Folder负责对Sequencer打包的交易生成证明并提交到Layer1。
一个有意义的问题是,Layer2的节点是否应该是去中心化的,如果是,如何设计激励机制来保证这一点。因为可以想象,Layer1效率低的本质就是,为了实现去中心化每个节点都需要进行大量的计算和通讯。而使用了Layer2系统,将计算过程解耦,如果在这部分依然用完全等效于Layer1的去中心化模式,则又会因为同样的原因造成Layer2的拥堵,所以这里需要做权衡。
激励机制的设计就是通过调整Layer2节点获得激励手续费的方式以及平衡支付给Layer2节点的费用,来鼓励节点参与Layer2系统维护。本质上,Layer2节点收到的激励费用来源与以太坊一样,来自于提交交易的用户付出的Gas费。本文会探讨在FOX的系统当中,FOX的节点如何参与系统收取手续费,以及这样做的原因。