凌晨三点,还在盯着屏幕上的 Rust 代码发呆。最近一直在思考 L1 的状态膨胀问题,越想越觉得现有的扩容方案在某种程度上是在“避重就轻”。我们一直在疯狂地优化 TPS,优化执行层,却好像选择性地忽视了一个房间里的大象:数据到底该放在哪?

刚才又去翻了一遍 @Walrus 🦭/acc 的文档,特别是那篇关于 "Red Stuff" 的论文。说实话,第一次看的时候觉得这是 Mysten Labs 在炫技,但今晚把它和 EIP-4844 以及 Arweave 的机制放在脑子里横向对比了一下,突然有种脊背发凉的感觉——我们可能一直低估了 Walrus 的野心。它不仅仅是 Sui 生态的一个挂件,它很可能是为了解决以太坊乃至整个模块化区块链“数据可用性(DA)”与“长期存储”之间那个尴尬断层的。

#Walrus

这种感觉怎么形容呢?就像是你习惯了用软盘(昂贵的 L1 存储)和光盘(只读的 Arweave),突然有人扔给你一个 AWS S3,但告诉你是去中心化的。

一、 为什么我们需要把存储“剥离”出来?

我现在脑子里一直在回响着 Vitalik 很久以前说过的一句话,大意是区块链不应该被用作大规模数据存储。这在技术上是常识,但在实际开发中是噩梦。

每次写智能合约,为了省那几个 gas,我得抠抠搜搜地优化 calldata。现在的 L1,哪怕是高性能链,本质上还是在做一个权衡:全节点需要同步所有数据。如果我把一张 4K 的 NFT 图片或者一个 AI 模型的权重塞进链上,整个网络就废了。

现有的解决方案让我很纠结。IPFS?那就是个哈希索引,节点没义务帮你存数据,除非你用 Pinata(中心化)或者 Filecoin(即使是 Filecoin,那个检索市场的体验也让我头大)。Arweave?那是永久存储,很棒,但对于那些不需要“永久”只需要“长期且廉价”的数据呢?比如一个社交网络的临时媒体文件,或者一个需要频繁更新的链游状态?

这时候看 Walrus 的架构,就觉得它的切入点非常刁钻。它没有试图去建立一条全新的“存储链”,而是利用 Sui 作为协调层,把 Blob(二进制大对象)的存储扔给了专门的存储节点网络。

我在想,这种设计最聪明的地方在于它解耦了“共识”和“存储”。Sui 只负责记录“谁存了什么、存多久、付了多少钱”这些元数据(Metadata),而真正的重数据(Blobs)是在 Walrus 的存储节点之间流转的。这意味着,存储节点的扩容不会拖累 Sui 的共识速度,而 Sui 的高 TPS 又能保证存储市场的结算效率。这种双层架构,比单纯的存储公链要灵活太多。

二、 纠删码与 "Red Stuff" 的暴力美学

深入看了一下 Walrus 的核心—— "Red Stuff"。这个名字听起来很随意,但背后的数学逻辑非常硬核。

以前我们在做分布式存储时,最笨的办法是“多副本复制”(Replication)。我有 1GB 数据,为了安全,我存 3 份,占用 3GB 空间。这在 Web2 时代无所谓,硬盘便宜。但在去中心化网络里,带宽和存储都是稀缺资源,3 倍冗余简直是犯罪。

Walrus 用的是二维纠删码(2D Erasure Coding)。我试着在脑子里推演这个过程:

它把一个文件切碎,变成矩阵。不是简单的切片,而是通过多项式插值生成的编码块。假设我有 n 个存储节点,即使其中 f 个节点挂了(f < n/3),甚至哪怕有部分节点是恶意的(拜占庭容错),只要我能从剩下的节点里收集到足够的碎片,我就能通过拉格朗日插值法把原始数据在客户端本地还原出来。

这不仅仅是节省空间的问题。我想到了一个更深层的优势:无需完整下载即可验证。

在传统的存储网络里,我要验证一个文件是否损坏,往往需要下载整个文件哈希一下。但在 Walrus 的设计里,因为纠删码的数学特性,加上轻量级的有效性证明(Validity Proofs),我可以只抽查一小部分碎片,就能以极高的概率确信数据是完整的。这对于构建去中心化的 CDN 或者轻客户端来说,简直是降维打击。

而且,"Red Stuff" 优化了异步网络下的数据恢复速度。即使网络状况很差,节点之间也能通过一种高效的 gossip 协议快速补齐丢失的碎片。这让我联想到了 Torrent 协议,但它是带激励层且抗审查的 Torrent。

三、 所谓的“Silos”与经济模型的可编程性

翻文档的时候,"Silos"(筒仓)这个概念让我停顿了很久。

一开始我以为它就是个文件夹或者 Bucket 的别名。但仔细想想,它其实是把存储资源变成了一种可编程的资源对象(Object)。在 Sui 的 Move 语言环境下,这个特性太可怕了。

想象一下,我创建一个 Silo,把它定义为一个 NFT。谁拥有这个 NFT,谁就拥有这个 Silo 里的读写权限。或者,我把这个 Silo 的存储空间由一个 DAO 来管理,通过智能合约自动续费。

这解决了我之前开发 DApp 时的一个痛点:资源管理的僵化。在 Arweave 上,我付一次钱存进去,就永远在那了(虽然这也好)。但在 Walrus 上,我可以根据需求动态调整。如果我的 DApp 倒闭了,我不续费,数据被清理,资源释放。这更符合经济规律。

而且,Walrus 的存储是以 Epoch(纪元)为单位计费的。这意味着存储节点必须在每个 Epoch 结束时证明他们还存着数据,才能拿到钱。这种“时空证明”的变体,配合 Sui 的极速确认,让存储资源的买卖变得像代币交易一样流畅。

我甚至在构思一个场景:未来的 AI Agent 可能会自主在 Walrus 上租用空间,用来存储它的长期记忆或者微调后的模型权重。它不需要人类干预,通过 Move 合约自动用 SUI 或者 WAL 代币支付租金。这种机器对机器(M2M)的存储经济,才是 Web3 的星辰大海。

四、 对以太坊生态的降维打击?还是互补?

这里必须得辩证地看一下。现在以太坊那边的 Layer 2 都在搞 Data Availability (DA) 层,像 Celestia 或者是 EigenDA。

但是,DA 和 Storage 是两码事。DA 关注的是“数据发布了没有”,通常几周后就会丢弃数据。而 Walrus 关注的是“数据存下来了没有”,而且是可以长期检索的。

我在想,Walrus 其实有机会吃掉一部分 DA 市场,尤其是那些需要长期保存交易历史的应用链。更重要的是,对于 NFT 项目方来说,Walrus 提供了一个比 IPFS 更可靠的后端。现在很多 NFT 的元数据存在 IPFS 上,如果那个 Pin 的节点挂了,图片就变成了 404。如果用 Walrus,数据分散在几十个节点上,挂掉一半都没事,这才是真正的“资产永续”。

五、 隐忧与未解之谜

当然,也不是没有担心的点。哪怕是自己在想,也要诚实面对技术风险。

首先是网络启动的门槛。基于纠删码的系统,需要一定数量的诚实节点才能启动飞轮效应。如果早期节点太少,抗攻击能力是比较弱的。Mysten Labs 需要在主网启动时通过激励机制强行把节点数量拉上去。

其次是检索延迟。虽然恢复算法很强,但在去中心化网络里,从分布在全球的节点拼凑出 1GB 的文件,速度肯定比不上 Cloudflare CDN。对于视频流媒体这种对延迟极度敏感的应用,Walrus 可能目前还不是最优解,除非它上面再架一层缓存网络。

还有一个很有趣的点:内容的审查与合规。既然是去中心化存储,如果有节点存了非法内容怎么办?Walrus 的协议层似乎是不可知论的(agnostic),这意味着节点可能只知道自己存了一堆加密碎片,根本不知道拼出来是什么。这保护了节点,但也可能带来监管的压力。这在技术上是 Feature,在合规上是 Bug,未来怎么演变还得观察。

六、 最后的脑洞

写到这里,窗外天都快亮了。

我觉得我们正在见证 Web3 基础设施的又一次范式转移。以前我们还在纠结“链上计算”太慢,现在 Sui 解决了计算速度;然后我们纠结“链上存储”太贵,现在 Walrus 来了。

当计算和存储都不再是瓶颈,真正的全链游戏(FOCG)和去中心化社交媒体(DeSoc)才有可能爆发。我甚至能想象一个完全运行在 Walrus 上的静态前端网站,后端逻辑跑在 Sui 上,完全不需要 AWS,不需要阿里云,这才是真正的 Serverless,真正的 Unstoppable Application。

这不仅是技术的胜利,更是架构哲学的回归。把计算还给 CPU,把存储还给硬盘,把所有权还给用户。#walrus $WAL