Skip to content
This repository has been archived by the owner on Jul 16, 2020. It is now read-only.

WASM/SGX: Modify basic demo to run on SGX #36

Open
mbestavros opened this issue Nov 13, 2019 · 2 comments
Open

WASM/SGX: Modify basic demo to run on SGX #36

mbestavros opened this issue Nov 13, 2019 · 2 comments
Assignees

Comments

@mbestavros
Copy link
Contributor

With SGX and WASM components developing nicely on their own, we'd like to begin bringing them together by running the Wasmtime runtime inside an SGX enclave.

While the eventual goal is to run WASI-enabled programs on Wasmtime in SGX, WASI presents a host of unresolved blockers (some of which are being worked on upstream and elsewhere in Enarx). As a starting point, we'd like to get the basic demo, with pure non-WASI WebAssembly, running on top of SGX.

The lack of a filesystem means we will at least need to modify the demo to read files differently (i.e. not from disk). This is probably a good place to start.

@lkatalin
Copy link
Contributor

  • Compile a rust program that has a wasmtime dependency for the Fortanix SGX target
  • Split current wasmtime-basic into binary (adds numbers) vs. wasmtime receiver (runs binary inside enclave)

@lkatalin
Copy link
Contributor

lkatalin commented Nov 15, 2019

Currently, a Rust program with a wasmtime dependency does not compile for the SGX target due to the sys module not being pulled in, ex. here. But we can't just pull in arbitrary sys functionality for the SGX target, because some things like errno are not supported.

Should we strip out this functionality or try to build support for it? The former is obviously easier.

@mbestavros mbestavros removed their assignment Jul 17, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants