NEAR Protocol 开发团队完成了区块链史上最为优雅且技术难度最高的操作之一:在主网正常运行状态下,他们完整替换了负责执行所有智能合约的虚拟机。正如预期,用户对此毫无察觉。

长期以来,NEAR 依赖的是 NearVM——基于 Wasmer 引擎的分支。这个方案本质上构成了发展的"私有税":每次 Rust 语言更新、每个新安全功能都只能由协议团队独自承担。正如一位前核心开发者所言,项目曾侥幸逃过一劫:他们因未能及时同步原始 Wasmer 的更新,意外避开了其关键漏洞。

新的基础架构采用了 Wasmtime——由 Bytecode Alliance 联盟支持的行业标准。为验证迁移安全性,网络节点并行运行真实流量通过新旧两台虚拟机,逐一比对结果。最终数据令人惊叹:手续费差异不足 0.002%,合约执行速度提升约四倍。

禁忌方案与编译器"炸弹"

然而最大挑战并非执行本身,而在于合约编译。在 NEAR 架构中,合约部署需要在仅 600 毫秒的区块时间内完成编译。优化编译器没有运行时间上限,这为攻击敞开了大门。专家们创建了一个 128KB 的合约,其编译耗时约 7 秒——足以"错过"区块并拖慢整个网络。

显而易见的解决方案——对编译时间设置上限——却成了禁忌。工程师解释称,不同验证节点编译耗时各异,临界合约可能被部分节点接受而遭其他节点拒绝。这将导致因单一编译器配置引发的网络分叉。共识机制要求绝对的可预测性,即便在编译时间层面也不例外。

团队另辟蹊径。他们引入 Wasmtime 的单通道后端 Winch,并为其补充缺失功能。最终"最差编译情况"从 7.6 秒骤降至 36 毫秒。脱离区块链运行的优势带来了协议无法企及的灵活性:编译被转移至独立于执行节点的专用处理器类型。

Nearcore 2.12 版本将 NEAR 执行环境从 NearVM 迁移至 Wasmtime。对开发者和用户而言一切如常——这正是关键所在:团队在零故障的前提下清除了关键的技术债务。

分析师观点:此案例堪称工程文化的典范,将网络安全与稳定性置于炒作之上。在负载状态下更换引擎如同进行心脏手术,而 NEAR 以零失误完成了操作。这从技术层面极大增强了人们对协议的信赖。