Wasm 历史、未来和在 Web3 面对的挑战
Wasm 允许开发人员用Rust、Go、C和c++等语言编写高性能代码。在web3世界中,Wasm已被Cosmos、NEAR和Polkadot等区块链项目采用。以太坊考虑采用Wasm,但决定坚持使用EVM执行。
原文标题:The History of Wasm in Blockchain
原文作者:krinza.eth & Dino,Fluent Labs
原文来源:mirror
编译:登链翻译小组
Wasm 的起源
自 1989 年以来,Web 已经发展了很长一段时间。从最初的简单静态页面到支持数十亿用户的完整应用程序的世界。
因为 Web“应用程序”需要与 HTML 文档中的元素进行动态交互,所以引入了JavaScript。它广受欢迎,并且一度是浏览器中唯一使用的编程语言。
JavaScript 作为一种标准语言很有用,但也有局限性。如果有些开发人员不懂 JavaScript 怎么办?如果 JavaScript 不是某些用例的最佳语言怎么办?
于是诞生了WebAssembly:一种低级、可移植、二进制格式和高级编程语言的编译目标。它高效、安全且灵活。
引入 WebAssembly(Wasm)意味着 JavaScript 不再需要成为 Web 的唯一语言。开发人员可以使用诸如 Rust、Go、C、C++等语言编写高性能代码,并将其编译为 Wasm 模块在浏览器中执行。这为高性能 Web 应用程序(如 3D 图形、视频编辑、游戏等)打开了新的可能性。
Wasm 在 Web2 中的流行程度
Wasm 的故事并没有在浏览器中结束。随着时间的推移,它摆脱了最初目标,并开始为世界上最复杂的分布式应用程序提供动力。
以下是 Wasm 的一些应用方式:
电子商务和后端优化:
- Shopify:使用 Wasm 来优化后端操作以提高速度和效率。
设计和协作工具:
- Figma:从 asm.js 转向 WebAssembly,使性能提升了三倍。
- AutoCAD 的迁移:与 Figma 类似,AutoCAD 采用了 Wasm 来解决复杂的 Windows 操作系统依赖性问题。
多媒体和娱乐:
- Netflix:采用 Wasm 技术创建沉浸式视频交互,提升用户参与度和娱乐体验。
软件开发和工具:
- Adobe:大力投资于 WebAssembly,拓展了在浏览器环境下的软件开发可能性。
- Microsoft:将 Wasm 整合到 Azure Functions、Visual Studio Code 和 Edge 中,塑造了现代化的开发工具。
游戏和互动体验:
- Unity:使用 Wasm 技术打造跨平台的高性能游戏。
- Pinterest:利用 Wasm 技术打造动态用户体验。
基础设施和金融科技:
- Fastly/Cloudflare:采用 Wasm 技术提升网络性能,优化内容传输。
- Visa:使用 Wasm 技术保障支付处理和保护敏感用户数据的安全。
Wasm 技术在许多领域推动了创新。在电子商务、娱乐、软件开发、游戏、网络和关键系统之间,Wasm 的影响力无疑是革命性的。
Wasm 在 Web3 中的受欢迎程度
快进到 Web3,Wasm 也变得非常受欢迎。在过去五年中,它已成为许多顶级区块链项目的执行环境。以下是一些值得注意的示例:
- Cosmos 的 L1 SDK
- NEAR 的分片 L1
- Polkadot 的 L1 SDK
Wasm 在 Web3 中的受欢迎程度与 Web2 并没有太大差异。高效性、标准化、安全性以及编程语言的灵活性是其受欢迎的原因。以下是 Dfinity 技术负责人(当时)Andreas Rossberg(也是 Wasm 的共同创造者)在 Internet Computer 的愿景 中的表述。
“我们的愿景是,开发者可以使用任何他们喜欢的语言在互联网计算机上进行编程。”
对通用编程语言的支持不仅为 Web3 原生开发者提供了更直观的体验,还可以让数百万新开发者构建链上应用。上述项目(以及其他一些项目,如 Tezos、EOS 等)都认为 Wasm 执行是一个强大的想法。
Web3 中的 Wasm 挑战
但为什么没有数百万开发者在链上构建应用?为什么我们还没有实现大规模采用?等一下 - 先不谈大规模采用 - 为什么 Wasm 在我们这个仍然非常小众的 Web3 世界中甚至都不是最受欢迎的执行环境?
关于【Wasm 历史、未来和在 Web3 面对的挑战】的延伸阅读
Movement的公链新解:“将 Move 引入 EVM”如何重塑以太坊与 Move?
LFG Labs推出基于Move语言的以太坊L2,旨在将Move系智能合约的安全性和高性能与EVM系的流动性和用户群结合。Movement SDK提供了模块化的MoveVM虚拟机、编译器和自定义适配器,解决了Move生态系统的破碎化问题。M1和M2公链架构集成了以太坊虚拟机,允许开发者在M2上启动并引入EVM系的DApp。M2使用零知识证明提高隐私和安全性,同时支持EVM和Move语言编写的智能合约。顶级VC机构已开始布局,为新的场景用例和生态增长奠定基础。
比特币与以太坊——根植于基本原则的文化之战
比特币和以太坊是推动加密货币和区块链技术发展的双重力量,但基于不同信念而相互对立。加密货币世界还有其他选择,如门罗币和Solana。跨链连接是解决不同加密货币互操作性的方式,但也存在安全和中心化风险。比特币和以太坊可能通过引入去中心化的EVM侧链来共存。
没有人比 EigenLayer 的 Sreeram Kannan更好地阐述了问题的关键所在。从历史上看,要在执行环境(以及任何其他核心基础设施)上进行创新,你必须启动一个去中心化的信任网络。你必须获得一组验证者,并且你必须获得一大笔资金的承诺。
这是非常难以持续做到的。启动一个真正去中心化和无许可的信任网络(不靠风险投资或补贴贪图轻松获利者)就像发动一场革命,这需要与工程分布式系统非常不同的技能。
“创建一个去中心化的信任网络就像找到独角兽一样。” — Sreeram Kannan
事实是,很少有区块链项目 - 即使是具有令人印象深刻的技术创新的项目 - 能够启动可持续的信任网络。可以说,迄今为止只有两个区块链做到了这一点:比特币和以太坊。这使得像 Wasm 这样的新执行环境很难达到逃逸速度。
以太坊的 Wasm 实验
一个自然的问题是:“如果 Wasm 执行如此令人向往,为什么比特币和以太坊没有采用它呢?”
对于比特币来说,答案很简单。比特币的信任网络提供了几个关键承诺, 其中之一是“没有硬分叉”。这就立即排除了用更可编程的 Wasm 环境替换比特币有限的脚本环境。
对于以太坊,我们需要回顾一下历史。
以太坊风味的 Wasm(Ewasm)最初在 2015 年提出,并考虑了多年。明确地说,Ewasm 是“以太坊合约中使用的一种受限制的 Wasm 子集”。
Ewasm 项目的目标包括 EVM 转译器、虚拟机实现、嵌入的计量器等。要更好地了解 Ewasm 背后的思想,请查看以下资源:
- 动机和好处
- 与其他虚拟机的比较
- 3.5 年的进展
那么,Ewasm 在哪里?
以太坊基金会最终决定不采用 Ewasm,而是继续使用 EVM 执行。虽然在向后兼容性和执行分片方面确实存在挑战,但这个决定是更广泛战略转变的一部分。这个转变由Vitalik Buterin和Casey Detrio探讨过,后来正式制定为“以 Rollup 为中心的以太坊路线图”。
一个无需许可的未来
为什么要转变?
当时以太坊社区没有这样表达,但他们已经认识到模块化区块链架构的力量,以及它如何在技术栈的更高层面上实现了无需许可的创新。他们知道这是一种更好的方法。
回到现在。以太坊正在全力推进以 Rollup 为中心的路线图,以实现可信的中立性、可验证性、安全性和数据吞吐量,同时成千上万个(Rollup)花朵盛开。
与其进行一次执行分片实验,不如让世界上的任何人都可以根据自己的需求自定义一个 Rollup,无论是任何用例。有些 Rollup 将使用 EVM,而其他一些将使用 Wasm。有些 Rollup 将使用欺诈证明,而其他一些将使用零知识证明。有些将成功,有些将失败。但它们都将是无需许可的尝试。
在哪里适用 Fluent ?
在 Fluent 中,我们的使命是将 Wasm 执行引入以太坊。
我们认为 Wasm 团队已经找到了一些方法,并且我们与以太坊的价值观高度一致。我们认为 ZK 技术为解决问题开启了一种新的方式,并且需要提供更好的开发者体验,以解锁对安全区块空间的访问。
如果这与你共鸣,请与我们一起构建
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:krinza.eth & Dino,如有侵权请联系删除。转载或引用请注明文章出处!