跳到主要内容

layer2

所谓二层协议,是区块链技术领域的特定说法,将一个主要区块链本身作为第一层(Layer 1),将其下的一层(即数据在网络中的传输机制)称为第零层(Layer 0),将其上一层称为第二层(Layer 2)。这分别对应着扩展一个区块链的性能的三个方向。在第零层上改进是,加快数据在全网各个节点之间的传输速度。以太坊2.0的思路是着眼于第一层,通过改进让这一区块链本身的性能变得更好。二层协议的改进思路是,既然这一区块链性能存在不足,那么将一些运算移到链下去,由其他的区块链网络甚至中心化服务器完成

区块链性能的改进主要集中在第一层与第二层。第一层的改进思路有:①改进区块链的数据层,如增加区块

大小、改进区块结构、改进链式结构等;②分片,将一条区块链分成多个分片链;③改变共识协议,如从PoW转变为PoS、DPoS、PoA(权威证明)等。 第二层的改进思路有:①状态通道,如比特币的闪电网络,允许用户将多个转账在链下进行,等多方确认后将最终结果上链; ②侧链、子链,以太坊的Plasma是其中的典型,任何人都可以创建自己独有的Plasma子链以支持自己的业务需求;③异构跨链,如波卡、Cosmos等,它们试图将多种链连接起来,实现性能的提升。 维塔利克在2021年年初撰写的技术文章则是将Rollup列为上述第二层改进的一种新思路,且可能是主要思路。按他的测算,采用Rollup后,以太币转账的效率最大提升可达105倍,而ERC20标准通证的转账效率最大提升达187倍。 接下来,我们以Rollup为例讲述二层协议的原理,我们尽量用非技术的语言来解释原理。所谓的二层协议,就是将数据和计算从链上转移到链下。ZK Rollup与Optimistic Rollup的做法是,既然链下可以大量增加计算能力,那么采用复杂的技巧用计算替代数据,将最终要存储到链上的数据减少到尽可能少。 这样的思路一次性解决了两个问题:一是在链下进行复杂的计算,解决了链上计算成本昂贵的问题;二是将最终要存到区块中的数据减到最少,使每个区块可以容纳更多的交易,从而提高了区块链的性能。按维塔利克的计算,这带来的改进是:以太坊ERC20资产转账成本约为45 000gas,而利用Rollups进行ERC20资产转账则仅仅占用16字节的链上空间,消耗的燃料量低于300gas。 要实现这一切有一个前提条件,就是即使仅将这少量数据(也就是运算结果)存储到链上,区块链的参与者依然可以按原有的安全标准监测欺诈,也就是不降低以太坊的安全性。 Rollup的工作方式是,在以太坊上部署一个Rollup智能合约(见图3-15),其中一个存储字节数非常小的状态根就包括了多个交易的信息。通过这个状态根,我们可以验证所有的交易。智能合约可以方便地验算新的状态根是不是符合计算逻辑,如果符合,则将它存储在链上。这其实就是Rollup这个说法的来源,将多个交易“卷起来”。 接下来的问题是,如何判断这些交易卷起来的结果就是正确结果呢?这就形成了Optimistic Rollup与ZK Rollup两种方案,以下是维塔利克的比较: ·Optimistic Rollup,使用欺诈证明(Fraud Proofs):Rollup追踪状态根的所有历史和每批打包交易的哈希摘要。如果任何人发现某一批打包交易中存在问题,并且导致了错误的状态根,那么用户就可以通过向链上提交证明的方式将其揭露出来。Rollup合约将进行验证,如果确定,则会回滚该批次的交易以及该批次之后的所有交易。(事后验证,如果出错则回滚修改。) ·ZK Rollup,使用有效性证明(Validity Proofs):每批打包交易都包含一个称为ZK-SNARK的加密证明,用于证明状态根是执行新打包交易的正确结果。无论计算量有多大,这种方式都可以非常快速地在链上验证。(事前验证,保证记录的信息都是对的。) 除了性能之外,Rollup带来的另一个重要变化是,将以太坊虚拟机(EVM)搬到链下,也就是搬到二层协议中去。因此,现在为以太坊开发的智能合约程序可以直接在二层协议中的EVM中更快、更便宜地运行,最后将结果提交到链上。应用的开发者显然很欢迎这样的方式,因为他们可以不更改自己的智能合约就让它们在二层协议中运行起来。 Rollup目前仍在紧张的开发过程中,有多个技术团队正齐头并进。在2021年年初,Optimism团队的Optimistic Ethereum已经开启公开的测试运行,知名的衍生品项目Synthetix已经进行了部署。 不过,以上这些解决方案还只是承诺在或近或远的未来会解决问题。现在马上就要面对这些问题的应用需要怎么办? 在2020年年中,一种新的解决方案出现了。这种解决方案在技术上看起来不那么“优雅”,在区块链技术领域,优雅的技术方案应当是去中心化的。2020年年中开始兴起、2021年初获得大量用户的解决方案却是中心化的。为了运行以太坊上的应用,一些公司推出了完全兼容以太坊的区块链(如火币生态链HECO、币安智能链BSC等),以太坊的智能合约程序无须修改就可以在其中运行。他们以自己公司的资产与声誉做背书,将以太坊上的数字资产挂钩(pegged)到这些链上,其基本原理是在以太坊上锁定资产,然后在新链上生成等值的资产。 这些链通常采用的是PoA共识机制,每秒交易事务量、运算速度要快得多,同时交易成本极低。这是用降低去中心化程度换取更快的性能。某种意义上,这些链相当于是以太坊的侧链或子链。由于这些链完全兼容以太坊,拥有更高的性能、更低的燃料成本,2020年大热的DeFi应用纷纷被复制到其上,形成了繁荣的应用生态。