.wasm
要注意WebAssembly
ブラウザ上でネイティブに近い性能で動作するバイナリ命令形式。Rust / C / C++ などからコンパイルされ、複雑な計算や高速 Web アプリで使われます。
MIME タイプ
- application/wasm
カテゴリ
web
何で開けるか
- ブラウザ(Chrome / Firefox / Safari / Edge)
- Wasmtime
- Node.js
OS 別の開き方
Windows
- ブラウザ、Node.js、Wasmtime
macOS
- 同上
Linux
- 同上
iOS
- Safari 11+
Android
- Chrome 57+
危険性と注意点
- WebAssembly 自体はサンドボックス内で実行されるが、ブリッジを経由した I/O が脆弱性の発生源になる
- ブラウザ外の Wasmtime / WasmEdge ではホスト関数の呼び出しに制限をかける(capability-based security)
よくある間違い
- MIME を
application/wasmで返さないと instantiateStreaming が動かない - 巨大な .wasm を gzip 圧縮せず配信するとロードが遅い