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

添加評論