Mozilla introduceerde de mogelijkheid om WebAssembly buiten de browser te gebruiken

Specialisten van Mozilla presenteerden het WASI-project (WebAssembly System Interface), dat de ontwikkeling omvat van een API voor het maken van reguliere applicaties die buiten de browser draaien. Tegelijkertijd hebben we het in eerste instantie over het platformonafhankelijke en hoge beveiligingsniveau van dergelijke applicaties.

Mozilla introduceerde de mogelijkheid om WebAssembly buiten de browser te gebruiken

Zoals opgemerkt draaien ze in een speciale “sandbox” en hebben ze toegang tot bestanden, het bestandssysteem, netwerksockets, timers, enzovoort. In dit geval kan het programma alleen acties uitvoeren waarvan bekend is dat ze zijn toegestaan.

Aangezien WebAssembly-pseudocode een platformonafhankelijke variant van de Assembler-taal is, kunt u met JIT hoge codeprestaties bereiken op het niveau van native applicaties. Op dit moment is er een implementatie van de basis POSIX API's (bestanden, sockets, etc.) beschikbaar, maar deze ondersteunt nog geen vergrendelingen en asynchrone I/O. In de toekomst zullen naar verwachting modules voor cryptografie, 3D-graphics, sensoren en multimedia verschijnen.

Er moet ook worden opgemerkt dat het Fastly-project de Lucet-compiler voor WebAssembly-applicaties introduceerde. Hiermee kunnen WebAssembly-programma's van derden veilig worden uitgevoerd in andere applicaties, zoals plug-ins. De compiler zelf is geschreven in de Rust-taal en ondersteunt code in C, Rust en TypeScript.

Natuurlijk zijn er nog steeds veel vragen over de veiligheid van deze aanpak. Het uitvoeren van code in de sandbox wordt heel vreemd gecombineerd met toegang tot de functies van het hoofdsysteem, dus dit probleem behoeft nog steeds verduidelijking. Bovendien is het niet duidelijk welke programma's in deze modus moeten draaien en hoe hun gedrag moet worden gecontroleerd.




Bron: 3dnews.ru

Voeg een reactie