区块链领域的先锋 Nick Didson 表示,尽管区块链扩容的技术难题多数已找到解决方案,但状态膨胀问题却尚未找到合适的解决之道。那么,状态膨胀究竟是什么?我们又该如何应对这一挑战?这些问题对于每一个去中心化网络来说,都是必须深思且亟待解决的。
状态膨胀,扩容之路的终极挑战Web3 行业在追求效率的征途中已历经多年,仿佛曙光在前,然而区块链扩容的终极挑战——状态膨胀,似乎至今仍无定论。或许,这个问题将成为扩容过程中最艰巨的瓶颈。
区块链扩容关键技术:状态增长难题待解在区块链扩容的讨论中,我们面临三大技术难题:执行效率、数据可用性(DA)和状态大小控制。前两者已找到明确的解决方案,例如,市场上涌现了更高效的虚拟机(FuelVM、Stylus、SVM、MoveVM),以及并行交易执行方式和更优的预编译。数据可用性与存储方面,引入坎昆升级 EIP-4844、分片设计以及Celestia、EigenDA和Avail等外部资料可用性层,也提供了有效方案。
状态膨胀:持续增长的挑战状态,即去中心化网络最新的账本信息,包括所有账户资料与代币分布。为了确保节点快速存取,状态数据通常需要在磁盘上进行大量读写,成为交易中除签名和杂凑之外的慢速处理过程。随着网络使用年限的增长,状态大小持续膨胀。而状态膨胀问题,往往被视为“未来的问题”,却常常被忽视。
Rollups 无法彻底解决状态膨胀问题目前,Rollups 仅能解决执行层的问题,而一些模块化解决方案如Celestia,进一步解决了数据可用性问题。但若不能解决状态膨胀的核心问题,区块链产业将陷入零和游戏。
解决状态膨胀:挑战与机遇并存Nick 认为,解决状态增长问题将成为 Rollup 生态的下一个催化剂,这与过去 Rollup 针对执行层面技术的革命同样重要。状态的大小增长通常与执行速度成正比,高效率的网络往往伴随着状态大小的快速膨胀,导致各种宣称具有高执行效能的去中心化网络,如 BNB Chain、Sei 到 Base 等,都面临着状态大小快速膨胀的问题。
比特币与以太坊的状态增长对比为什么比特币的状态增长较慢?一方面,网络效率较低;另一方面,其采用 UTXO 帐本模型,无需将没有余额的账户记录在状态中,从而最小化状态增长问题。相比之下,以太坊的状态模型是一个由账户余额、智能合约代码和无数合约状态组成的丰富生态系统,随着网络账户、代币和合约数量的增长,其状态相较于比特币持续快速增加。
状态膨胀:一个亟待解决的问题以账本模型为基础的区块链,随着每一次智能合约的执行和交易,状态都会膨胀,导致网络臃肿、存储需求增加、处理时间变慢,进而抑制创新和用户采用。因此,大多数的区块链都面临着状态增长的问题。
状态膨胀的潜在解决方案尽管目前尚无明确的解决方案,但开发者们已经开始讨论这一挑战,并提出了一些可能的管理状态膨胀的策略。然而,许多技术仍处于理论阶段或存在其他方面的缺点:
放任状态发展、状态空间费用、无状态设计、Un-Merkalizing the state、应用层级的状态压缩等策略,都有其优缺点和可行性待考。随着以太坊状态大小的不断增长,状态膨胀问题越来越受到重视,可以预期未来将出现更有效的解决方案。标签: 比特币挖矿