背景介绍
从比特币创世开始,一直到以太坊网络中CryptoKitties游戏的出现。主流公链项目最被人诟病的地方就是低下的TPS。以太坊15左右的TPS完全无法给大多数应用提供实时稳定的支持,这与当前互联网行业动辄上万TPS的业务形成了鲜明的对比。甚至有很多人因此觉得公链将长期处于“不可用”状态。然而,公链爱好者不会因为困难而停下脚步。
主流方案对比
对于以太坊而言,过去几年内关于以太坊扩容的方案如雨后春笋般涌出,形成了百家争鸣的态势。其主流的方案如下所示:
1.链上扩容:
分片技术:分片一词本来源于数据库的术语,表示将大型数据库分割为很多更小的、更易管理的部分,从而能够实现更加高效的交互。
区块链分片是指对区块链网络进行分片,从而增加其扩展性。根据最新的以太坊2.0规范,以太坊区块链会被分为1024个分片链,这也意味着以太坊的TPS将提高1000倍以上。但目前Sharding方案仍然在跨分片通信、欺诈识别、随机分配与选举安全性等方面存在不足。
Layer2 ZK Rollup的NFT市场Mint Square上线.stark域名:9月17日消息,基于以太坊Layer2 ZK Rollup的NFT市场Mint Square上线由Starknet.id提供支持的.stark域名。.stark个人资料URL现已支持Mint Square测试网,主网即将推出,目前可按长度过滤或按类别进行搜索浏览。[2022/9/17 7:02:48]
2.链下扩容:
状态通道:指代用于执行交易和其他状态更新的“链下”技术。
但是,一个状态通道内发生的事务仍保持了很高的安全性和不可更改性。如果出现任何问题,我们仍然可以回溯到链上交易中确定的稳定版本。
侧链技术:侧链是平行于主链的一条链,由侧链上的验证者把一条链的最新状态提交给主链上的智能合约,这样持续推进的一类系统。侧链通常使用PoA(Proof-of-Authority)、PoS(ProofofStake)等高效的共识算法。它的优势在于代码和数据与主链独立,不会增加主链的负担,缺陷在于它的安全性弱、不够中心化,无法提供审查抗性、终局性和资金所有权保证。
Layer2互操作性协议Connext上线支持WBTC:12月14日消息,官方消息,Layer2互操作性协议Connext上线支持WBTC,用户可以在跨链桥xPollinate上其他L2和侧链即时直接转入/转出WBTC。[2021/12/14 7:38:33]
Rollup技术:顾名思义,就是把一堆交易卷起来汇总成一个交易,所有接收到这个交易的节点只去验证执行结果,而不会验证逻辑。因此Rollup交易所需Gas费会远小于交易Gas费总和,TPS也增加了。
主流的Rollup技术可以分为两类:
ZkRollup:基于零知识证明的Layer2扩容方案,采用有效性验证方法(VP),默认所有交易都是不诚实的,只有通过有效性验证才会被接受。ZkRollup在链下进行复杂的计算和证明的生成,链上进行证明的校验并存储部分数据保证数据可用性。
OptimisticRollup:乐观的Rollup协议,采用欺诈证明方法,即对链上发布的所有Rollup区块都保持乐观态度并假设其有效,它仅在欺诈发生的情况下提供证据。
dYdX启动由StarkWare支持的Layer 2永续合约alpha版本:据dYdX中文社区消息,经过7个月的研发,dYdX新的通用保证金永续合约现已在第二层主网上发布。为了显著扩大交易量,dYdX和StarkWare在StarkWare的StarkEx可扩展引擎和dYdX的Perpetual智能合约基础上,为通用保证金永续合约建立了Layer 2协议。用户现在可以以零gas成本进行交易,这就降低了交易费用,同时还降低了最低交易门槛。今天将在主网上推出内测Alpha版本,会定向邀请用户、流动性提供商和战略合作伙伴使用。在全面测试系统的稳定性后,将会在几周内进行产品公测。[2021/2/24 17:49:24]
乐观Rollup的优势在于能使得原生Layer1上的solidity合约可以无缝移植到Layer2,从而最大程度提升了技术人员的研发体验,目前主流方案包括Optimism和Arbitrum。
Plasma方案:通过智能合约和Merkel树建立子链,每个子链都是一个可定制的智能合约,子链共存并独立运行,从而大幅降低主链的TPS压力。
动态 | 加密货币恶意软件在Google Play上重新出现:据thenextweb报道,加密货币恶意软件在Google Play上重新出现。Google Play上至少有两个专门用于窃取用户加密货币的应用程序。但这两个应用程序似乎已从Google Play中删除。[2019/5/23]
我们对解决方案进行比较,结果如下:
Rollup机制目前被普遍认为是最有前景的扩容方式,在两种主流的Rollup方案中,最核心的问题便是如何验证Rollup交易中的真实性。
OptimisticRollups和ZKRollups运用了不同的思维逻辑,前者乐观地相信交易的真实性,而后者悲观地不相信,因此生成零知识证明来自证清白。
相比之下,两者的优劣如下:
OptimisticRollup的优势是能够更好地支持EVM合约,劣势在于验证效率低,安全性较低;
动态 | Google Play上发现EOS Rio虚假版本 现已被删除:据pymnts报道,EOS Rio(巴西节点)开发者警告用户有人试图在Google Play上传播其数字货币钱包应用程序的虚假版本。此虚假版本名为SimpIEOS,EOS Rio称已采取适当措施将该应用程序从Play商店中删除。[2018/11/9]
ZkRollup的优势在于高度去中心化,验证效率高,劣势在于生成零知识证明并打包的过程非常复杂,较难兼容EVM,也较难落地。
下面主要对OptimisticRollup的两大方案Optimism和Arbitrum进行介绍。
Optimism和Arbitrum
首先我们来看看OptimisticRollup方案的流程:
Optimism和Arbitrum在基本流程上跟上述描述一样,直截了当来说:Optimism的争议解决方案比Arbitrum更依赖于以太坊虚拟机(EVM)。当有人提交关于Optimism的挑战时,存在问题的交易都会通过EVM再运行一遍。
相比之下,Arbitrum使用链下争议解决流程将争议二分减少到一笔交易中的一个步骤。然后,协议将这个一步的断言发送到EVM进行最终验证。
因此,从概念上讲,Optimism的争议解决过程比Arbitrum简单得多。但Arbitrum大大减少了链上的验证压力。
Arbitrum的整体架构如下所示:
由于Arbitrum是针对以太坊的扩容方案,因此Arbitrum架构自然部分存在于Layer1上,部分存在于Layer2上;
存在于Layer1上的Arbitrum组件为EthBridge,它是一组以太坊合约;
EthBridge负责仲裁ArbitrumRollup协议,以及维护链的inbox和outbox;
链的inbox和outbox允许用户、Layer1合约和完整节点将他们的交易发送到链并观察这些交易的结果;
Arbitrum虚拟机是Layer1和Layer2之间的网关,这也由EthBridge产生;
AVM能够读取输入,并对这些输入执行计算以产生输出;
ArbOS运行在Arbitrum虚拟机之上,负责保证Arbitrum链上智能合约的执行;
ArbOS完全存在于Layer2上,并像在以太坊上运行一样运行EVM合约。
Arbitrum的争议解决过程主要依赖链下的递归二分算法。该算法通过不断二分差异点来迫使”断言者“和”挑战者“缩小分歧,最终在Layer1上解决分歧。解决的具体方案如下所示:
而Optimism则直接让EVM执行整个交易,因此它只需要一轮交互即可完成。出于这个原因,OptimismRollup通常被称为“单轮”,而ArbitrumRollup是“多轮”。两者最大的区别在于:Arbitrum解决争议时间长,因此确认时间较长。Optimism需要执行整个交易,Gas费更高。
Eigen——Layer2Rollup的隐私计算方案
对于隐私计算而言,通常结果是乐观主义的。在隐私计算领域,一笔交易极其复杂,在Layer1执行完这笔交易非常困难,因此,Arbitrum是隐私计算领域中较优的选择,这也是Eigen基于Arbitrum进行开发的原因。
EigenRollup是一套EVM兼容、支持乐观执行和可验证性声明的混合Rollup方案。
乐观执行:类似于CPU的分支预测(BranchPrediction),交易会被预执行,验证者验证交易的合法性;通过挑战协议对有争议的交易进行裁决;
可验证性声明:采用TEE签名和零知识证明技术对计算过程的正确性和结果完整性提供非交互式证明。
EigenRollup基于Arbitrum提供如下技术:
隐私可验证性证明:EigenRollup在Arbitrum的交互式证明方案的基础上,采用TEE进行关键隐私操作指令的执行,从而降低交互式证明消耗,提供交互式证明的隐私保护;
公平定序器:现有的定序器存在中心化程度太高,以及跟验证节点联合作恶的风险。EigenRollup采用一种公平算法来实现定序器,实现了低手续费的同时,也防止了MEV等攻击的可能性。
分布式任务执行引擎:EGVM作为隐私合约的执行虚拟机,支持分布式任务管理。EGVM会将分布式任务调度到EigenCC计算集群进行并行计算,并且生成对应的可验证证明。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。