1 stable release
12.0.2 | Sep 19, 2023 |
---|
#1397 in WebAssembly
1.5MB
2.5K
SLoC
Wasmtime and libwasmtime, with crypto extensions
The currently stable version of the Wasmtime WebAssembly runtime, with support for the WASI Cryptography APIs.
Installation
Install the Rust compiler and compile with:
cargo build --release
The resulting executable will be in the target/release
directory.
The library (libwasmtime.so
, libwasmtime.dylib
, libwasmtime.a
)
can be compiled with the following command:
cargo build --release -p wasmtime-c-api
The files can be found in target/release
and
crates/c-api/wasm-c-api/include
.
In this build, the function to enable WASI (wasmtime_linker_define_wasi
)
will also enable the crypto extensions, so that no code change to
existing code depending on libwasmtime
is necessary.
Usage
wasmtime run --wasi-modules experimental-wasi-crypto module.wasm
WASI-Crypto when wasmtime is used as a Rust dependency
In Rust applications, wasi-crypto
can be used directly with
the stock wasmtime
crate downloaded from crates.io
.
See the wasmtime-crate-usage-example
directory for an example that runs a WebAssembly module with WASI
and WASI-Crypto.
Dependencies
~121MB
~3M SLoC