Skip to content

PLSysSec/ct-wasm-spec

 
 

Repository files navigation

CT-Wasm Spec

This repository, forked from the WebAssembly Spec, contains the CT-Wasm reference interpreter, which also implements a rewrite tool that strips secrecy labels and a simple label inference tool.

Building

The instructions for building and using the reference interpreter may be found in the interpreter directory. We produce two binaries ct_wasm_spec and ct2wasm.

Interpreter

To use the interpreter:

./ct_wasm_spec

Remove CT-Wasm Annotations

The label removing tool can be invoked by passing in the -strip flag:

./ct2wasm -strip -i file_to_strip.{wat, wasm} -o file_to_output.{wat, wasm}

Infer CT-Wasm Annotations

The label inference tool is part of the interpreter and can be invoked by passing in the -r flag:

./ct_wasm_spec -r file_to_infer.{wat, wasm} -o file_to_output.{wat, wasm}

About

Constant-Time WebAssembly

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • WebAssembly 82.1%
  • OCaml 12.0%
  • JavaScript 2.8%
  • Python 1.1%
  • Batchfile 0.9%
  • Makefile 0.5%
  • Other 0.6%