CT-Wasm: Type-Driven Secure Cryptography for the Web Ecosystem
Conrad Watt, John Renner, Natalie Popescu, Sunjay Cauligi, Deian, Stefan

TL;DR
CT-Wasm introduces a type-driven extension to WebAssembly that enables verifiably secure cryptographic implementations resistant to timing and information flow attacks, enhancing web cryptography security without sacrificing convenience.
Contribution
It presents a new type system for WebAssembly that guarantees security properties, along with verified implementations and tools for secure cryptographic programming.
Findings
CT-Wasm is fast and expressive.
Generated code is experimentally constant-time.
Successfully ported cryptographic primitives and libraries.
Abstract
A significant amount of both client and server-side cryptography is implemented in JavaScript. Despite widespread concerns about its security, no other language has been able to match the convenience that comes from its ubiquitous support on the "web ecosystem" - the wide variety of technologies that collectively underpins the modern World Wide Web. With the new introduction of the WebAssembly bytecode language (Wasm) into the web ecosystem, we have a unique opportunity to advance a principled alternative to existing JavaScript cryptography use cases which does not compromise this convenience. We present Constant-Time WebAssembly (CT-Wasm), a type-driven strict extension to WebAssembly which facilitates the verifiably secure implementation of cryptographic algorithms. CT-Wasm's type system ensures that code written in CT-Wasm is both information flow secure and resistant to timing…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
