Specialister fra Mozilla har præsenteret projektet WASI (WebAssembly System Interface), der omfatter udvikling af API'er til at skabe almindelige applikationer, der kører uden for browseren. Dette handler oprindeligt om tværplatformskompatibilitet og et højt sikkerhedsniveau for disse applikationer.

Som nævnt kører de i en særlig 'sandbox' og har adgang til filer, filsystemet, netværks sockets, timere osv. Programmet kan kun udføre klart tilladte handlinger.
I betragtning af, at pseudokoden for WebAssembly er en platformuafhængig variant af assembler-sproget, vil brugen af JIT give mulighed for høj ydeevne af koden, på niveau med native applikationer. I øjeblikket er der en implementering af grundlæggende POSIX API'er (filer, sockets osv.), men der er endnu ikke support for låsning og asynkron input/output. I fremtiden forventes moduler til kryptografi, 3D-grafik, sensorer og multimedia.

Det skal også bemærkes, at projektet Fastly har præsenteret compileren Lucet til WebAssembly-applikationer. Den tillader sikkert at køre tredjepartsprogrammer på WebAssembly inden for andre applikationer, for eksempel til plugins. Selve compileren er skrevet i Rust, og den understøtter kode i C, Rust og TypeScript.
Der er naturligvis stadig mange spørgsmål vedrørende sikkerheden ved en sådan tilgang. Kørsel af kode i 'sandboxen' kombineres på en mærkelig måde med adgang til hovedsystemsfunktionerne, så dette spørgsmål kræver stadig afklaring. Desuden er det uklart, hvilke specifikke programmer der skal køre i denne tilstand, og hvordan deres adfærd skal overvåges.
Kilde: 3dnews.ru
