模块化之后的下一步--关于区块链底层优化路径的探寻

这两周花了不少时间来弄明白新公链&新L2的创新点,并尝试从中寻找模块化之后,下一个公链底层创新可能出现的地方,就有了“拆分&优化&重组”--是我从所有这些创新中提炼出的第一性原则,更是我认为会长期指引区块链不断优化的第一性原则。

TL, DR;

  • 近期的创新(Danksharding,Aptos&Sui,Altlayer),抽象来看都在走 “先拆分,再优化的路线” 的路线,这与模块化区块链的初始理念一致,但又走的更远 ➡️ 这样的理念会持续指引区块链优化的方向
  • 将不同项目创新项目的创新点进行抽离和重组,可以获得更好的效果:将并行计算引入模块化区块链框架
  • 即便给整个框架带来了大量的复杂性,但我们仍应该继续 “拆分&优化” ,区块链还未到“做减法”的时候

什么是细分&优化&重组:

这个理念源于“模块化区块链”(关于为什么不直接用“模块化”,可以去看我的上一个Post),但与当前主流的模块化定义存在一定的不同:

  • 模块化理念意味着将区块链三大块 “存储,计算,共识” 中至少一块拆分成相对独立运行的结构,e.g. Celestia将存储层拆分,并提供通用的存储层以支持更高的效率&更多的自主性;
  • 拆分&优化&重组,代表着在三大块中任意单一块中,按照优化需求做进一步“拆分”,并最终重组成一个更高可能性的区块链,e.g. 在计算层,将所有交易按照分类来独立执行。

这个理念其实很好理解:让每一个结构可以执行尽可能简单的计算,以获得单个结构最大的效率提升。

基础层创新中的 “拆分&优化”

以太坊--Danksharding

在以太坊基金会研发团队第八次AMA中,Justin明确表示“以太坊正在变得越来越模块化”(Ethereum is becoming increasingly modular)

Justin在Reddit中回复的截屏
Justin在Reddit中回复的截屏

但你应该也注意到了,Justin口中的 “模块化” 是超出了当前市场上大量被讨论的 “模块化区块链” 概念的:

  • 第四点 “Proposer Versus Builder” 提出将交易排序与最终出块进行拆分,以获取抗MEV的特性 >>> 此设计并没有在Danksharding之外的项目中看到;
  • 第五点 “Prover Versus Verifier” 提出将部分非关键性共识验证逻辑从关键性共识SNARK验证逻辑中剥离,并以此开发出两套客户端,以获取更好的网络效能 >>> 针对Prover和Verifier提供两套客户端的设计也并未在Danksharding之外的项目中看到,但这样的设计是其他项目能够快速参考 & 上手的理念。

以上这两点均完美契合了“拆分&优化”的定义。

Aptos & Sui

并行计算 是Aptos和Sui 扩容方案中的核心理念。

其实,并行计算是一种已经在Web2中被大量验证过的扩容理念,但其中的前置条件限制了这种理念在当前主流区块链:两两之间存在相关性&冲突性的交易无法直接进行并行计算,e.g. 当两个用户与Uniswap中的同一个交易对进行交互,A用户交易执行后会改变B用户面对的资产兑价,那么先执行A还是先执行B对结果是存在冲突的。

Aptos & Sui 通过一系列的分类处理来解决了这样的限制:

  • Software Transactional Memory (STM)与optimistic concurrency control (OCC)的组合,是一种对内存访问进行检测并管理冲突的方法(从链上对交易的记录最终会修改数据库的视角):先乐观的让并行的多个线程独立完成对共享数据库的修改,完全忽略可能会有其它的线程存在,如果不涉及冲突,则可以轻松的处理超大量的内存修改;如果涉及冲突,则会对单个交易进行回滚,并待冲突交易更新完毕后再执行。

这种分类处理的概念从某种意义上也完全符合 “拆分&优化” 的理念:

  • 将共识层和执行层进一步细分,按照交易的类别来对整个P2P网络中的所有进行分类处理,让每一个结构可以独立完成对共享数据库的修改,这样尽可能优化了单个结构的执行要求。

Altlayer

Altlayer是一个可插拔的&按需加载的L2&L3框架,主要针对应用阶段性的高扩展性需求。

如果你一定要问我Altlayer和其他主流L2的区别,我大概会说:Altlayer是套弹性的扩容方案,而其他主流L2都是非弹性的。

以下的这种场景将最大化弹性扩容的价值:

  • .大量的NFT项目会在其Mint活动期间爆发出超高量的交易,但长期中并不会持续有对高TPS的要求 >>> 弹性扩容方案可以满足NFT项目Mint期间的网络需求,且长期不会给NFT项目带来持续性负担。

Altlayer的核心理念也完美契合“拆分&优化”的理念:

  • 弹性扩容本质上是将用户的需求进行细分,针对阶段性&突发性需求,提供了更加优化的方案--弹性扩容其实在传统云服务中是一种非常常见的解决方案。

简单的归纳一下:

在以太坊诞生至今的数年里,关于最优的区块链的大体框架结构其实已经越来越清晰,但我们仍需要将区块链底层再次优化以适应大规模应用的需求,那优化的方向是?

  • 方向之一:将区块链这个整体进行细分,并对细分结构进行极致的优化;
  • 方向之二:新一代的技术替代,e.g. 零知识证明,10x的网络带宽,10x的固态硬盘空间(如果你一定要我“细分&优化”之外,还有什么方向的话 🙃)

请注意:通过细分&优化的单个结构,重组的方案也可以创新,且最终效果可能远超原计划!

下一代以太坊杀手?

最近社群里其实有很多关于下一代以太坊杀手的讨论:Move匪帮Aptos & Sui V.S. 模块化标杆Celestia

个人认为:不是上述的任何一个,但会包含上述方案中的创新点

  • 大体四层框架:Celestia& Danksharding已经展示了将Monolithic Blockchain拆分成四层再优化的价值(拆分成更多层当然是可以的,但这里为了方便大家理解,就拆成四层)
  • 存储--Celestia:从节点规模层面来看,Celestia可以是目前最安全的独立DA层;
  • 交易排序共识--Celestia:通过引入DAS(Data Availability Sampling),Celestia能够提供高效的对交易顺序的共识;此外,将交易进行分类后的并行计算,也同样能加速此结构。
  • 状态共识--类Aptos&Sui共识:并行计算在理论上拥有极高的处理效能,是当前此层的最效率选项;此外,引入ZK技术,可进一步优化(已出现 ZKmove 的讨论
  • 执行:作为相对独立的一层,现有很多方案已经极大的释放了开发者的可能性;而弹性扩容可作为一个补充以应对各类突发需求。

上述“以太坊杀手” V.S. 以太坊(Danksharding)

以太坊是更安全的选项,但在可扩展性&自定义能力上并不占优--个人观点(可能会update :D)

  • Aptos&Sui的共识涉及到了区块链状态共识部分,意味着该共识天生就和以太坊现有框架无法集成 >>> 以太坊目前还无法集成这类并行计算的创新,至少在短期不太行。

链级别的创新是否让框架变得过于复杂?

从Vitalik在EthCC打趣 “Shall we cancel sharding” ,再到@Polynya的《4844 and Done》,市场上有许多关于 “减缓链创新以降低区块链复杂度” 的讨论。

个人偏向于 “还没到简化的阶段”:如果我们回看云服务行业的发展历程,在前半段的数年里,云服务变得越来越有用的同时也是在变得复杂。直到近几年,我们才看到越来越多的简化措施,e.g. Serverless, IAC

  • 新兴技术的发展大概都是你这样的三部曲:“寻找&确定一套通用且最具价值的大框架” ➡️ “提升能力范围,也变得复杂” ➡️ “简化以获得更好的使用体验和更低的成本”
  • 简化的前提是东西已经足够好用,而当前的区块链底层基础很明显尚未达到 “足够好用” 的级别。我们仍在上半场

我十分坚信:我们能在漫长的熊市中看到更多的 “细分&优化” ! 届时,再回来做更新🥳🥳🥳

Subscribe to toddz
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.