WaTZ: A Trusted WebAssembly Runtime Environment with Remote Attestation for TrustZone

06/17/2022
by   Jämes Ménétrey, et al.
0

WebAssembly (Wasm) is a novel low-level bytecode format that swiftly gained popularity for its efficiency, versatility and security, with near-native performance. Besides, trusted execution environments (TEEs) shield critical software assets against compromised infrastructures. However, TEEs do not guarantee the code to be trustworthy or that it was not tampered with. Instead, one relies on remote attestation to assess the code before execution. This paper describes WaTZ, which is (i) an efficient and secure runtime for trusted execution of Wasm code for Arm's TrustZone TEE, and (ii) a lightweight remote attestation system optimised for Wasm applications running in TrustZone, as it lacks built-in mechanisms for attestation. The remote attestation protocol is formally verified using a state-of-the-art analyser and model checker. Our extensive evaluation of Arm-based hardware uses synthetic and real-world benchmarks, illustrating typical tasks IoT devices achieve. WaTZ's execution speed is on par with Wasm runtimes in the normal world and reaches roughly half the speed of native execution, which is compensated by the additional security guarantees and the interoperability offered by Wasm. WaTZ is open-source and available on GitHub along with instructions to reproduce our experiments.

READ FULL TEXT

page 1

page 6

research
03/29/2021

Twine: An Embedded Trusted Runtime for WebAssembly

WebAssembly is an increasingly popular lightweight binary instruction fo...
research
05/01/2023

Montsalvat: Intel SGX Shielding for GraalVM Native Images

The popularity of the Java programming language has led to its wide adop...
research
04/19/2017

TrustShadow: Secure Execution of Unmodified Applications with ARM TrustZone

The rapid evolution of Internet-of-Things (IoT) technologies has led to ...
research
05/02/2022

A fast in-place interpreter for WebAssembly

WebAssembly (Wasm) is a compact, well-specified bytecode format that off...
research
12/15/2022

On (the Lack of) Code Confidentiality in Trusted Execution Environments

Trusted Execution Environments (TEEs) have been proposed as a solution t...
research
03/31/2022

A Framework to capture and reproduce the Absolute State of Jupyter Notebooks

Jupyter Notebooks are an enormously popular tool for creating and narrat...
research
05/06/2021

Analysis and Improvement of Heterogeneous Hardware Support in Docker Images

Docker images are used to distribute and deploy cloud-native application...

Please sign up or login with your details

Forgot password? Click here to reset