WASM:引领Web3开发迈向全新时代

WASM:引领Web3开发进入全新时代

当区块链遇上WebAssembly:打造高效、安全和灵活的区块链应用

作者:Mike@Foresight Ventures

TL;DR

WebAssembly(简称Wasm)是一种可移植、高性能的二进制指令格式,可以在Web浏览器中运行。它被设计为一种通用的编译目标,可以用于多种编程语言,并且可以在不同的平台上运行。与此同时,区块链是一种去中心化的分布式账本技术,通过使用密码学和共识算法来确保数据的安全性和可信度。区块链可以用于记录交易、存储数据和执行智能合约等应用。Wasm和区块链之间存在一些关系和应用场景:智能合约、跨链交互、链下计算以及数据隐私保护等。总之,Wasm的可移植性和高性能使得它成为区块链领域的重要技术之一。

WASM:推动Web3开发走向新时代

一、什么是WebAssembly

WebAssembly是由W3C(万维网联盟)开发的一个高效轻量级指令集标准,被誉为网络和高性能的颠覆者,支持跨浏览器执行。它的特点是可以将不同编程语言编译成统一的二进制格式,并将其作为JavaScript的替代品以近乎原生代码的效率在浏览器中运行。WebAssembly具有高效、安全、兼容性等优势。它不仅可以在浏览器中高效地执行,还可以运行在非Web环境下如Node.js、Deno、物联网设备等。WebAssembly的美妙之处在于它就像一个魔法引擎,可以在任何地方运行,只需一次点击,即可在需要时立即运行Web应用。它比直接下载和运行二进制文件更安全,因为浏览器已内建安全机制,使其中运行的代码不会危害你的系统。而且分享Web应用同样简单 – 链接是可以放在任何地方的可点击字符串。

WASM:推动Web3开发走向新时代

除了上述优势之外,Web也是唯一真正的通用平台,可以在任何设备上访问你的应用程序。这还允许你维护单个代码库,简化更新并确保所有用户都可以访问你的应用程序。WASM支持64位和32位整数操作,与CPU指令一一对应。通过移除浮点运算,可以轻松实现确定性,这对共识算法来说是必要的。WASM由谷歌、苹果、微软、Mozilla和Facebook等大公司持续开发,在这几个大公司开发的浏览器的后端都支持WASM编译。不管是在性能还是安全性方面,WebAssembly正成为区块链领域的一项重要技术。

二、为什么我们需要WebAssembly

2.1 Web2

尽管Web已经发展成了一个非常强大和流行的平台,但在Web2时代,Web应用依旧基本上由相同的脚本语言(JavaScript)驱动。然而,JavaScript设计的首要目标从来就不是为了实现这些功能。JavaScript最初是一种简单的脚本语言,旨在为充满轻量级超文本文档的Web应用带来一些交互性。随着时间的推移,浏览器在JavaScript解析上的重大性能改进为JavaScript带来了显著的性能提升。虽然新的API带来了更多的功能,例如交互式图形、视频流和离线浏览,但是JavaScript的性能对于某些应用程序仍然不够。比如游戏、视频编辑、3D渲染和音乐制作等应用程序需要大量计算和高性能,这是JavaScript很难满足的要求。

WebAssembly并不会取代JavaScript,但它的使用会越来越广泛。因为WASM能给网页带来强大的计算能力,比如做图像处理或者游戏之类的。用WASM,可以做出一个网页版的Photoshop并运行得很好,或者是一个在浏览器里能以60帧每秒甚至更高帧率运行的3D游戏。游戏尤其具有挑战性,因为游戏不仅需要同时执行音频和视频处理,还需要协调物理特效和AI。WASM拥有在浏览器上高效运行游戏的能力,将打开把许多其他应用程序带到浏览器上的大门的可能性。

WASM:推动Web3开发走向新时代 WASM:推动Web3开发走向新时代

2.2 Web3

在区块链领域,WebAssembly也发挥着重要作用。WASM可以作为智能合约的执行环境,使得合约可以在不同的区块链平台上运行。WASM的高性能和可移植性使得智能合约可以更加高效地执行,并且可以跨平台使用。此外,WASM还可以用于实现跨链交互的功能。通过将不同区块链的逻辑编译为WASM代码,可以在不同的区块链上执行相同的逻辑,实现跨链的数据传输和交互。另外,WASM还可以用于在区块链之外进行计算,并将计算结果提交到区块链上,从而提高计算的效率和灵活性。此外,通过将敏感数据的处理逻辑编译为WASM代码,并在区块链上执行,可以保护数据的隐私性,同时确保计算的可验证性。WASM通过与智能合约平台的结合,为区块链应用和服务提供了更加高效、安全和灵活的解决方案。

在以太坊生态中,已经有一些项目开始尝试使用WASM。以Stylus为例,它通过引入WASM虚拟机来提高智能合约的执行性能,并支持自定义预编译以及与现有EVM的互操作性。另外,Gear协议正在创建一种可作为Polkadot部署的技术,它将成为托管智能合约的工具。而CosmWasm是一个现代的、功能强大且适应Cosmos生态系统的智能合约平台。此外,还有ZKWASM技术,它使开发者可以验证已执行计算的正确性。通过引入这些WASM相关技术,区块链的可扩展性、灵活性和性能将得到进一步提升。

三、结论

WebAssembly的兴起为区块链和Web带来了更多可能性。WASM不仅具有高效、兼容性和安全性等优势,还降低了开发者进入区块链的门槛。通过WASM,开发者可以用自己熟悉的编程语言在区块链上开发应用程序,而不需要学习新的智能合约语言。这将有助于释放区块链技术的无限力量,加速区块链的大规模应用和发展。随着WASM逐渐被更多的区块链项目接受和采用,Web3的未来将会更加光明。让我们共同期待WebAssembly在区块链领域发挥的更大作用!最后,如果你对WASM技术感兴趣,欢迎和我互动交流!

感谢Maggie和Xinyou Ji(CMU)对本文提供建议和指导。

原文链接

We will continue to update 算娘; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

观点

加密货币挖矿监管的斗争:暂时胜利

Waco, Texas地区有关EIA紧急调查的法庭案件正在积极推进尽管矿工们有可能获得胜利,但保持谨慎非常重要我们必须继续保持警惕...

观点

比特币行业基金的挑战:波动性、风险管理和资产保管

在比特币领域管理基金所面临的独特挑战和复杂性的克服,为传统投资基金的专业知识增添了宝贵的经验

区块链

G20对加密货币的担忧并不重要

“G20可以在加密货币监管方面说什么都可以诺埃尔·阿切森(Noelle Acheson)表示,这对生态系统并不构成威胁”

观点

感谢BlackRock的客户让Larry Fink改变了态度

BlackRock的首席执行官曾经称比特币为“洗钱指数”现在,他改变了他的观点

区块链

比特币已经卷入一场内战——关于“艺术”

Ordinals Protocol正在生成一个循环数字经济体,其中资产通过比特币定价、购买和出售

观点

数字欧元和“P”词

德娅·马尔科娃表示,央行数字货币不必成为隐私的噩梦但是,隐私问题对于央行数字货币的批评者来说是一个方便的攻击点