后天型多层结构对于后天型多层结构,原本就存在的区块链结构称为 Layer 1,后来在区块链本身上搭建的多层结构称为 Layer 2。并非所有链下方案都可以算作 Layer 2 层,否则中心化交易所也能算作多层结构。只有在机制设计上能完全保证用户资金安全的方案才可以归入 Layer 2 方案,例如状态通道、Plasma、Rollup 等。 状态通道 状态通道和闪电网络类似,将交易转移到通道中进行,等待通道内的交易结束后,再将资金转移到主链上进行清算。为了保证交易双方的资金安全,用户可以随时把资金撤走。在这种模式下,用户每进行一次资金转移都需要经过双方签名确认,最终版的签名代表了通道内的最终状态。用户需要凭借双方签名的证明提出提现请求,如果一方用户提交了请求,在规定时间内另一方拿出证明表明前者并非使用最新的交易结果,则提出质疑的一方获得所有资金(罚金机制);否则按照提出方的结果进行分配。 虽然状态通道的设置保证了资金安全,但影响了可用性和互操作性,而且状态通道内很难实现智能合约。用户无法对状态通道外的人转账,只能与通道内的人交互。通道只允许双方存在,如果想与其他人交易,只能再设立一个通道或者通过其他人作为路由节点进行交易。每条通道内都要锁定一定资金,这样的话影响全网的资金利用率,并且要求节点长期在线。 Plasma Plasma 由智能合约和默克尔树结构组成,通过在以太坊主链(或者称根链)上创建一条或多条子链实现扩容。每个 Plasma 子链都是由独立的节点运营,他们可以通过不同于主链的共识算法验证和产出区块。运营者将交易数据以默克尔树的形式储存,并且将默克尔根发布到以太坊主链上,这样其他人能快速验证原数据是被储存在 Plasma 链中。 用户在 Plasma 链上的进入和退出需要智能合约处理,这个智能合约包括了状态转换规则,用户可以随时与智能合约交互自行加入和退出 Plasma 链。因此在检测到 Plasma 链上运营者的作恶行为时,可以主动将资金退回到主链。在退出时,用户除了要向以太坊提交期交易记录的证明外,还需要提交保证金且有一定挑战期的限制。如果用户提交了错误的记录,需要有人在挑战期对其进行证明并扣掉他的押金。 与状态通道不同,Plasma 允许将子链中的资产发送给不在子链上的用户,只需要用户在子链中提现,所以在 Plasma 链上的资产与主网没有互操作性。而且不同的 Plasma 链由不同智能合约设立,他们之间也很难实现资产跨链和互操作性。 ZK Rollup Rollup 是一种链下解决方案,主网中的计算放到链下进行,将可验证的结果传回链上,并且能够保证数据可得性。和 Plasma 一样,在链下交易前也需要用户将资金转入 Rollup 地址中。ZK Rollup 的验证者提交链下数据者需要附属一个证明,其内容的正确性可以快速得到主链验证。但有效性证明的成本与交易的复杂度有关,如果对智能合约的操作进行验证,成本会剧增。因此 ZK Rollup 很难支持通用智能合约,限制了它的使用场景。目前 ZK Rollup 的研究团队在开发适用在其上的标准智能合约。 (责任编辑:admin) |