了解Avail :正式加入 Polygon 扩容全家桶,L2+模块化+数据可用性
作者:月之暗面,PANews
模块化一直是区块链底层扩容的热门议题。11月22日,Polygon Avail宣布完成第一阶段的测试网开发进度,将会在2023年适时上线主网。而在稍早前的8月份,Avail的测试网已经可达420笔每秒的交易速度,在目前的L2扩容方案中名列前茅。
Avail属于模块化(modular)通用扩容方案,其自称为扩展性(scalable)扩容方案,不论如何称呼,究其本质而言,都是在“横向”增加单个区块的数据存储能力。从Avail测试网数据来看,其单个区块数据容量可达2MB,在其生命周期内,平均可容纳8000余笔交易,而在扩展的极限性能条件下,甚至可达50万笔交易。
L2 纵向分层,模块化横向分链,以及单体高性能公链,三者构成了下一代公链总的发展趋势,目前来看,制约公链发展的主要是数据存储和证明的效率,这也是ZK(零知识证明)技术和DA(数据可用性)方案的用武之地。
本文主要聚焦于Polygon Avail在数据可用性领域的解决方案的设计理念和机制特点,而Avail在明年主网上线后是否会成为公链赛道的搅局者也是值得注意的趋势。
Avail 不仅实现了模块化的公链设计,各种链上场景均可以使用 Avail 进行数据排序和可用性调用。同时,Avail 与公链执行层无关,执行层可以是独立的公链或使用 Avail 的链下扩展解决方案,并且托管在这些执行层上的应用享有 Avail 的全部安全性。
总之,Avail的意义在于,将L2、模块化,以及数据可用性的概念集合在一起,可以理解为 Polygon 上的模块化区块链,以太坊版本的 Celestia ,并且也可以透过Avail来一窥Polyon在L2扩容赛道的整体布局。
源起:数据可用性
Polygon Avial目标是用模块化的思路解决数据可用性问题,关于数据可用性,可以拆分为数据存储和可用性证明两个部分,最经典的应用场景是L2在打包数据后,需要和L1进行通信,来确保此次打包数据的有效性。
以以太坊为例,会接收并保存L2传递的数据,还是会受到以太坊主网性能的限制。而在预计的danksharding升级过后,以太坊将转为blob存储机制,也就是只存储有效性证明,而数据本身则设立存储时间限制,以释放以太坊主网的扩容潜力。
不论是以太坊主网,还是L2的解决方案,重点都在于围绕“数据”本身做文章,而模块化扩容方案是转而扩展“空间”,就好像把大象装冰箱的思路,既可以减少大象的体重,也可以把冰箱换成冷库。
各类数据可用性解决方案
模块化扩容方案的思路在于灵活配置区块的容量,以Celestia为例,其设计思路不在于保存全节点数据,而是通过抽样的思路来验证存储节点保存了数据,或者可以设立奖惩机制,来鼓励或惩罚验证节点保存数据。
而Polygon Avial的不同之处在于,其希望通过KZG多项式承诺的验证机制来确保数据得到有效存储,不相信人性,而是相信数学。或者可以将Celestia类比为optimistic的乐观激励机制,而将Avail类比为ZK的数学验证机制。
Avail 通过使用一种极其安全的数学手段,使用纠删码(erasure codes)的机制来提供数据可用性,在多项式承诺方案机制下,避免了欺诈证明的滞后性,也不需要多数节点诚实假设,最重要的是,不需要全节点的主观承诺来建立数据可用层。
但是,Avail的问题也和ZK系L2一样,其构建在数学机制上的安全性导致其开发难度远超Celestia等方案,Avail从2021年中开始进行设计,在历经一年半的开发后仍未能主网上线,而 5 月份 Celestia 已启动其首个测试网 Mamaki,并且在10月份完成5500万美元的融资。
Polygon Avail的开发进展需要提速,才能在商业竞争上建立生态优势。
甚至可以说,Avail的全部设计理念都在于数据可用层的建立,并且这种扩容机制不需要限定在某条公链上,可以和任意公链或者跨链桥进行结合,构建沟通应用层和公链的通用数据解决方案。
进击:Avail 运作模式
Avail的通用性在于其运作机制的普适性,而非针对特定公链进行优化,其目的是为应用层提供最佳的全场景数据可用性解决方案,在提交数据上,针对区块Header和Body进行优化,并且也吸取数据采样等技术的优势,尽可能减少对区块空间的占用。
我们从以太坊的运作机制出发来说明Avail的运作逻辑,一般而言,一条公链存在三种角色,验证节点、全节点和轻节点,验证节点负责检验数据的正确性,全节点保存完整数据,而轻节点只保存区块头数据。
比如钱包就属于典型的轻节点,其本身无需保存全节点数据,而只需在交易过程中验证自身的区块头能否被验证,只有全节点才需要保存交易的完整数据。
这样做的好处是便利钱包等应用的推广和普及,但问题在于其上的区块数据有效性存在隐患,而Avail的创新点在于将区块数据验证的问题简化为数据可用性验证,Avail不纠结于区块数据是否可被验证,而是确保数据有效性是被“验证”过的,也就是需要传递的数据本身已经被证明有效,随后只是传递这种有效性证明的数据,而不是区块数据本身。
Avail数据可用性只要求单个轻节点从链上区块中抽取少量随机数据块,甚至可以利用一组轻节点对整个区块链进行集体采样,Alice可以保存数据块的开头,Bob可以保存数据块的中间,而Tony保存数据块的末尾,他们之间可以相互交换验证后的有效性,进而组合成关于数据块的整体有效性,而单个节点只需要验证1/N的有效性,从而达到减轻存储空间压力的效果。
Avail运作模式说明
其次,是通过在Avail上使用的KZG多项式承诺来确保数据在进行“擦除”后仍旧是有效的,包括三个部分:
- 数据冗余,确保有足量的数据可参与运算
- 抗欺诈证明,保证擦除后的数据有效性可得到证明
- 承诺机制,允许全节点将轻节点纳入全部交易数据
并且使用多项式承诺可更为方便的扩展至通用数据可用性方案,只需要通过核验数据的有效性,那么Avail便可进行数据有效性证明和广播至全节点,通过和Cosmos SDK的配合,任意PoS机制的公链都可快速和Avail进行对接。
Avail也可以抽象成数据可用性的验证层,某个应用程序可以只查询与之相关的数据,而不需要下载整个数据块进行验证,有利于更多DApp的开发和“瘦身”,而无需像Web 2时代的应用无限制占用宝贵的内存空间。
本质上,Avail是一个挂载于公链之上的数据可用性SDK,而在Web 3.0时代的亿级应用上,Avail验证空间可随着用户数量的增加而逐步扩大,这也是其模块化的重要特点,无限的横向扩展能力。
Polygon 扩容布局
通过对Avail的相关介绍,Polygon在L2赛道的布局也值得一提。
从以太坊侧链Matic起步,Polygon始终是扩容赛道的时代弄潮儿,很难直接概括Polygon的特定路线,因为几乎所有的扩容方案其都在实验和探索,或自研、或收购,比如对hermez的收购确保其卡位zkEVM赛道。
单就Rollup赛道,其就实验了Plonk算法赛道的Polygon Zero,STARK路线的Miden,以及专注隐私赛道的Nightfall,以及EVM等效性赛道的Hermez。
Polygon各类解决方案
甚至Polygon也在布局自己的模块化公链开发框架Edge,用于开发者构建与Ethereum兼容的公链,并且在其上建立了Supernets,主打一个模块化和可扩展的框架,这已经高度接近Cosmos本身的概念。
而Avail也是其较为重点的扩展性(模块化)扩容方案,在其上搭建的扩容方案也承担了突破单一以太坊应用的重任,L2本身并不局限于以太坊主网之上,而随着各类公链的蓄力和加入战局,通用的数据可用性扩容方案也会迎来新的市场空间。
在目前的竞争格局上,Celestia占据了Cosmos生态上的先发优势,而Avail从以太坊上起步与其撞了个满怀,至于接下来两者的输赢,还需要等到Polygon如何发挥扩容方案的协同优势。