#sgx #sev #kvm #tee #linux #intel-sgx #wasm-module

已删除 enarx_test_011

Enarx Keep Loader

0.1.0 2021年10月27日

#5 in #sev

Apache-2.0

670KB
15K SLoC

lint enarxbot Workflow Status Average time to resolve an issue Percentage of issues still open Maintenance

enarx

该crate提供了enarx可执行文件,这是一个在Enarx Keep中运行代码的工具 - 即使用Intel SGX或AMD SEV等技术实现的硬件隔离环境。

有关项目和所使用技术的更多信息,请访问Enarx项目主页

SGX和SEV机器设置

请参阅此维基页面获取说明。

构建和测试

请参阅BUILD.md获取说明。

安装

首先安装所有构建依赖项(见BUILD.md)。

直接从crates.io

$ cargo install --bin enarx -- enarx

或从已签出的git仓库安装

$ cargo install --bin enarx --path ./

构建并运行WebAssembly模块

安装Webassembly rust工具链

$ rustup target install wasm32-wasi

创建简单的rust程序

$ cargo init --bin hello-world
$ cd hello-world
$ echo 'fn main() { println!("Hello, Enarx!"); }' > src/main.rs
$ cargo build --release --target=wasm32-wasi

假设您已安装enarx二进制文件并将其放在您的$PATH中,现在您可以在Enarx keep中运行Webassembly程序。

$ enarx run target/wasm32-wasi/release/hello-world.wasm
[…]
Hello, Enarx!

如果您想抑制调试输出,请添加2>/dev/null

选择不同的后端

enarx将尝试探测它正在运行的机器,以推断适当的部署后端。要查看您的系统支持哪些后端,请运行

$ enarx info

您可以使用--backend选项手动选择后端,或者通过设置ENARX_BACKEND环境变量

$ enarx run --backend=sgx target/wasm32-wasi/release/hello-world.wasm
$ ENARX_BACKEND=sgx enarx run target/wasm32-wasi/release/hello-world.wasm

许可证:Apache-2.0

依赖项

~11-21MB
~292K SLoC