wasmi-labs/wasmi

GitHub: wasmi-labs/wasmi

一款面向嵌入式系统和受限环境的高效轻量级 WebAssembly 解释器,提供确定性执行和全面的安全保障。

Stars: 2132 | Forks: 353

| 持续集成 | 测试覆盖率 | 文档 | Crates.io | |:----------------------:|:--------------------:|:----------------:|:--------------------:| | [![ci](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/54d43ccfb3122743.svg)][2] | [![codecov](https://codecov.io/gh/wasmi-labs/wasmi/branch/main/badge.svg)][4] | [![docs](https://docs.rs/wasmi/badge.svg)][6] | [![crates](https://img.shields.io/crates/v/wasmi.svg)][8] | # Wasmi - WebAssembly (Wasm) 解释器

Wasmi 是一个高效且轻量级的 WebAssembly 解释器,专注于受限和嵌入式系统。 ## 独特功能 - 简单、正确且确定性的 WebAssembly 执行。 - 面向 [`no_std` 嵌入式环境](https://doc.rust-lang.org/stable/rustc/platform-support.html)的高效跨平台 WebAssembly runtime。 - 抵抗 compiler/JIT 炸弹的翻译。 - 松散镜像 [Wasmtime API](https://docs.rs/wasmtime/) 以作为直接替代品。 - 100% 兼容 WebAssembly 规范测试套件。 - 内置 fuel metering 支持。 - 支持官方的 [Wasm C-API](https://github.com/WebAssembly/wasm-c-api)。 ## 安全审计 Wasmi 适用于安全关键型用例,并已通过两次审计。 | Wasmi 版本 | 审计方 | 委托方 | 报告 | |--:|:--|:--|:--| | `0.36.0`-`0.38.0` | [Runtime Verification Inc.] | [Stellar Development Foundation] | [PDF](./resources/audit-2024-11-27.pdf) | | `0.31.0` | [SRLabs] | [Parity Technologies] | [PDF](./resources/audit-2023-12-20.pdf) | ## 文档 - 📖 [使用指南](./docs/usage.md):了解如何正确使用 [Wasmi API](https://crates.io/crates/wasmi)。 - 🛠️ [开发指南](./docs/developement.md):了解如何为 Wasmi 进行开发。 - ✨ [Crate 功能](https://docs.rs/wasmi/latest/wasmi/#crate-features):了解 `wasmi` crate 的功能。 ## WebAssembly 功能 | | WebAssembly 提案 | | | | WebAssembly 提案 | | |:-:|:--|:--|:-:|:--|:--|:--| | ✅ | [`mutable-global`] | ≥ `0.14.0` | | ✅ | [`custom-page-sizes`] | [≥ `0.41.0`][(#1197)] | | ✅ | [`saturating-float-to-int`] | ≥ `0.14.0` | | ✅ | [`memory64`] | [≥ `0.41.0`][(#1357)] | | ✅ | [`sign-extension`] | ≥ `0.14.0` | | ✅ | [`wide-arithmetic`] | [≥ `0.42.0`][(#1369)] | | ✅ | [`multi-value`] | ≥ `0.14.0` | | ✅ | [`simd`] | [≥ `0.43.0`][(#1364)] | | ✅ | [`bulk-memory`] | [≥ `0.24.0`][(#628)] | | ✅ | [`relaxed-simd`] | [≥ `0.44.0`][(#1443)] | | ✅ | [`reference-types`] | [≥ `0.24.0`][(#635)] | | 📅 | [`function-references`] | [追踪 Issue][(#774)] | | ✅ | [`tail-calls`] | [≥ `0.28.0`][(#683)] | | 📅 | [`gc`] | [追踪 Issue][(#775)] | | ✅ | [`extended-const`] | [≥ `0.29.0`][(#707)] | | 📅 | [`threads`] | [追踪 Issue][(#777)] | | ✅ | [`multi-memory`] | [≥ `0.37.0`][(#1191)] | | 📅 | [`exception-handling`] | [追踪 Issue][(#1037)] | | | 嵌入支持 | | |:-:|:--|:--| | ✅ | [WASI] | 通过 [`wasmi_wasi` crate] 支持 WASI (`wasip1`)。 | | ✅ | [C-API] | 通过 [`wasmi_c_api_impl` crate] 支持官方 Wasm C-API。 | ## 使用项目 如果您希望将您的项目列入此列表,请[通知我](mailto:robin.freyler@gmail.com)关于您的项目以及 Wasmi 的使用方式。 Stellar Soroban   Wasmer   Firefly Zero   Typst   Orbitinghail   Smoldot   Munal OS   icu4x   Ayaka   Project Oak   ## 许可证 根据以下任一许可证授权: * Apache License, Version 2.0,([LICENSE-APACHE](LICENSE-APACHE) 或 ) * MIT license,([LICENSE-MIT](LICENSE-MIT) 或 ) 由您自行选择。 ## 贡献 除非您明确声明,否则根据 Apache-2.0 许可证的定义,您有意提交以包含在本作品中的任何贡献,均应按上述方式进行双重许可,无需任何附加条款或条件。
标签:AI工具, Rust, WebAssembly, 可视化界面, 嵌入式系统, 生成式AI安全, 网络流量审计, 虚拟机, 解释器, 运行时, 通知系统