mc-sgx-urts

Crates.iomc-sgx-urts
lib.rsmc-sgx-urts
version0.11.0
sourcesrc
created_at2022-10-14 20:39:17.298272
updated_at2024-03-22 20:21:21.727062
descriptionRust wrapper for `sgx_urts`.
homepage
repositoryhttps://github.com/mobilecoinfoundation/sgx
max_upload_size
id688548
size12,882
Eran Rundstein (eranrund)

documentation

README

MobileCoin's Rust Interface for uRTS

Project ChatLicenseTargetCrates.ioDocs StatusDependency Status

Provides a rust interface for creating (sgx_create_enclave_from_buffer_ex()) and persisting SGX enclaves.

Example usage:

let enclave = EnclaveBuilder::new(&mut enclave_bytes).create().unrwap()
let result = unsafe { ecall_foo(*enclave, arg1, arg2) };

Users are responsible for providing their own bindings to their ECALLs.

Table of Contents

License

Look for the LICENSE file at the root of the repo for more information.

Build Instructions

The workspace can be built with cargo build and tested with cargo test. Either command will recognize the cargo --release flag to build with optimizations.

The Intel SGX SDK needs to be installed.

Intel SGX SDK

See https://github.com/intel/linux-sgx#build-the-intelr-sgx-sdk-and-intelr-sgx-psw-package for installation instructions.

The environment variable SGX_SDK can be used to specify where the SDK is installed. When unset the location will default to /opt/intel/sgxsdk

Features

When no features are present the SGX hardware libraries will be linked in. When the sim feature is present the simulation SGX libraries will be linked in.

References

Commit count: 1096

cargo fmt