Mozilla 引入了在浏览器之外使用 WebAssembly 的功能

Mozilla 的专家提出了 WASI(WebAssembly 系统接口)项目,该项目涉及开发 API,用于创建在浏览器外部运行的常规应用程序。 同时,我们最初谈论的是此类应用程序的跨平台性和高安全性。

Mozilla 引入了在浏览器之外使用 WebAssembly 的功能

如前所述,它们在特殊的“沙箱”中运行,并且可以访问文件、文件系统、网络套接字、计时器等。 在这种情况下,程序只能执行已知被允许的操作。

考虑到 WebAssembly 伪代码是汇编语言的独立于平台的变体,使用 JIT 将允许您在本机应用程序级别实现高代码性能。 目前,提供了基本 POSIX API(文件、套接字等)的实现,但尚不支持锁和异步 I/O。 未来,预计将出现密码学、3D 图形、传感器和多媒体模块。

还应该指出的是,Fastly 项目为 WebAssembly 应用程序引入了 Lucet 编译器。 它允许第三方 WebAssembly 程序在其他应用程序(例如插件)中安全执行。 编译器本身是用 Rust 语言编写的,它支持 C、Rust 和 TypeScript 代码。

当然,这种方法的安全性还存在很多疑问。 在沙箱中执行代码与访问主系统的功能结合起来非常奇怪,所以这个问题仍然需要澄清。 此外,尚不清楚哪些程序应在此模式下运行以及需要如何监视它们的行为。




来源: 3dnews.ru

添加评论