在一篇迅速在以太坊开发者社区引发广泛讨论的长帖中,Vitalik Buterin 本周强烈提出了他所称的“被低估”的去中心化支柱:协议的简洁性。Buterin 在X上发帖,认为像以太坊这样的区块链的长期韧性,更多地依赖于协议是否保持足够简洁,便于普通开发者和研究人员进行有意义的检查、理解和重现,而不是依赖奇异的密码学或庞大的去中心化数字。
Buterin 的观点直截了当但简单明了。即使一个网络拥有数十万节点、49%的拜占庭容错率和最先进的验证工具,如果这些保证只能由少数专家解释,那么它仍然无法真正实现“无信任”、通过“离开测试”或实现真正的自主治理。“如果协议是由数十万行代码和五种博士级密码学组成的难以驾驭的混乱,”他写道,“最终这个协议会失败所有三个测试。” 简而言之,复杂性会带来新的中心化形式。
简洁性是一种安全特性
这一观察的影响既具有实际意义,也具有哲学意义。Buterin 警告说,堆叠的功能和狭隘目标的密码学补充可以在短期内带来益处,但会削弱生态系统在未来几十年的生存能力。当客户端团队解散或新贡献者试图接手维护时,一个庞大的代码库就成为一道障碍。如果即使是高度技术性的参与者也无法合理审计系统,那么它声称的“属于你”就会变得脆弱。
Buterin 提出了他所称的“简化”的三重定义。首先,最小化总代码行数。原则上可以放在一页甚至几页内的协议,本质上更易于推理。第二,避免对根本异类技术原语的无谓依赖。
可以简化为少量假设的安全性,理想情况下只依赖单一哈希函数,比起混合哈希、晶格和同源变换(他承认后者“没人理解”),更为优越。第三,增加不变量的数量:明确陈述、严格执行的属性,使客户端开发更为简便。他指出,近期的 EIP(以太坊提案)如自毁移除和每笔交易的 Gas 上限,就是增加有用不变量、降低实现复杂度的例子。
这篇帖子不仅仅是呼吁,还试图勾勒出具体路径。Buterin 主张在协议开发中持续进行“垃圾收集”:有意削减或降级那些复杂、使用少或可以安全放在客户端之外的功能。这可以逐步进行,他提到的近期 Gas 费用改革旨在用与资源消耗相关的成本模型取代任意 Gas 数字,或者进行一次更大规模的整体改造。他指出,从工作量证明到权益证明的转变本身就是一次重大清理,并建议 Lean 共识可能为“同时修正大量错误”提供另一个机会。
他还提出了类似 Rosetta 兼容性的想法。不是强制每个客户端实现链上的所有老旧特性,而是将少用但复杂的功能降级为可选的智能合约层。在这种模式下,原生账户抽象可以让旧的交易类型在智能合约层处理,而遗留的预编译合约可以重新编码为合约或迁移到像 RISC-V 这样更简单的虚拟机。担心遗留支持的开发者可以在容器中运行旧客户端,而新客户端保持更轻量。
以太坊未来的路线图
从 Buterin 的帖子中可以看出,这不仅是技术上的呼吁,更是文化上的变革。他敦促社区不要只以协议的规模来评判提案,这种思维倾向于为了向后兼容而偏向增加变更。相反,他认为,过程应包括一个明确的“简化”功能:一种有纪律、持续的努力,既要增加也要减少。
许多转发该帖的配图——三台复杂的火箭引擎并排排列,每个都是管道、电线和工程细节的研究——被广泛用作比喻。就像火箭系统一样,具有许多交互部分的协议可能变得脆弱:部件越多、越专业,出错的可能性也越大。Buterin 的核心信息是,最适合长久存在的超结构,是那种核心可以放在一页纸上交给新手的设计。
对于一个旨在超越政治体制和技术潮流的协议来说,这些新手尤为重要。“这前十五年,”他写道,指的是以太坊迄今的生命周期,“应部分被视为青少年阶段”,这是一个充满创造性实验的时期。他认为,挑战在于既要保留有用的实验,又要防止无用的实验变成永久的臃肿。
这篇帖子已经引发了热烈的讨论。一些开发者警告说,简洁性必须与强大的原语和灵活性相平衡,而另一些则认为迫切需要像 Buterin 所倡导的那样进行系统性修剪。无论如何,这场对话标志着一种日益增长的共识:去中心化的衡量标准不仅仅是节点数或密码学的花哨功能,而是系统对那些构建、维护、最终离开再回来理解它的人们的可访问性。
相关文章