WebAssembly (WASM) — fichier .wasm
pérenneFormat de bytecode binaire exécutable dans le navigateur à une vitesse proche du code natif.
Le WebAssembly (WASM), porté conjointement par les principaux éditeurs de navigateurs à partir de 2017, fournit un format de bytecode compact que le navigateur exécute à une vitesse proche du code natif, permettant de porter sur le web des applications auparavant réservées au natif (jeux, montage vidéo, CAO) écrites en C++, Rust ou Go.
Sa signature “\0asm” (l’octet nul suivi du texte “asm”) ouvre systématiquement le fichier, suivie d’un numéro de version sur 4 octets. Contrairement à JavaScript, WASM n’est pas conçu pour être lisible directement par un humain : il s’agit d’une cible de compilation, généralement invisible dans le code source d’une application.
Le format s’exécute dans un bac à sable strictement isolé de la mémoire et des API du navigateur : par défaut, un module WASM ne peut ni accéder au disque ni faire de requête réseau sans que le code JavaScript hôte ne lui expose explicitement ces capacités, un modèle de sécurité déterminant pour son adoption dans un contexte web.
Une représentation texte équivalente, le WAT (WebAssembly Text format), existe en parallèle du binaire pour faciliter le débogage humain ; les deux représentations se convertissent l’une vers l’autre sans perte, le binaire restant la seule forme réellement exécutée par le navigateur.
Figma illustre bien l’intérêt pratique du WASM : une bonne partie de son moteur de rendu, écrit en C++, est compilée en WebAssembly pour tourner directement dans le navigateur à une vitesse proche du natif, ce qui a permis à l’éditeur de proposer un logiciel de design aussi réactif qu’une application de bureau sans jamais quitter l’onglet du navigateur.
Signature binaire
| Hexadécimal | Offset |
|---|---|
00 61 73 6D | 0 |
Vérifier qu'un fichier porte bien cette signature →
Sécurité
Exécute du code arbitraire dans un bac à sable ; comme tout format exécutable, sa provenance doit être fiable avant exécution hors navigateur (runtimes WASM serveur).
Auditer les métadonnées de ce format →
Questions fréquentes
Comment ouvrir un fichier .wasm ?
Navigateurs web modernes permet d'ouvrir gratuitement un fichier .wasm. Voir la liste complète des logiciels compatibles ci-contre.
Quel est le type MIME du format WebAssembly (WASM) ?
Le type MIME du format WebAssembly (WASM) est application/wasm.
Le format WebAssembly (WASM) (.wasm) est-il encore utilisé aujourd'hui ?
Oui, le format WebAssembly (WASM) est pérenne : il reste activement utilisé et pris en charge par les logiciels actuels.
Peut-on ouvrir un fichier .wasm sur mobile, sans installer d'application ?
Oui : Navigateurs web modernes fonctionne directement depuis le navigateur d'un smartphone ou d'une tablette, sans application dédiée à installer.
Pourquoi mon fichier .wasm ne s'ouvre-t-il pas ?
Les causes les plus fréquentes sont l'absence de logiciel compatible installé, un téléchargement ou un transfert incomplet, ou une extension qui ne correspond plus au contenu réel du fichier. Voir le guide complet sur les causes possibles, ou vérifier le format réel avec l'identifieur de fichier.
Un fichier .wasm présente-t-il des risques de sécurité ?
Exécute du code arbitraire dans un bac à sable ; comme tout format exécutable, sa provenance doit être fiable avant exécution hors navigateur (runtimes WASM serveur).
Un fichier ne s'ouvre pas : les causes possibles →
Comment savoir si un fichier est corrompu →
Sources
Dernière mise à jour :