No-code cryptographic virtual machine
Zenroom is a tiny, secure, fully isolated, open source, virtual machine that runs on any platform, even on a chip or a web page.
It performs cryptography (signatures, hash, zkp, homomorphic, post-quantum […]) on multiple curves, blockchain intereoperability and general computation.
Zenroom is programmable in the no-code English-like language Zencode.
All curves + Lattice
Zenroom supports signatures and pairing with most elliptic curves, see the full list here. The curves SECP256K1, BLS 12-381, ED25519 are all built in by default and can be used together. Also supports Dilithium, Kyber, ML-DSA and ML-KEM.
Features
Deterministic execution end-to-end: in-browser, in-memory or distributed to a blockchain. Fully isolated (no access to fs, network, time). Grants integrity across different platforms.
Tiny library or executable (~1MB), low memory usage (600KB to ~2MB). No external dependencies. Has bindings for most languages.
Zenroom runs on Linux, Windows, Mac, Android, iOS, in the browser (WASM), integrated Cortex chips, see downloads.
low on resources
Highly scalable
all the signatures
on all the curves*
🟩 ECDSA on secp256k1 and P-256
🟩 EDDSA on ed25519
🟩 Schnorr, BLS and Reflow multisig on BLS12381
🟩 Ethereum and Bitcoin signatures on secp256k1
🟩 Dilithium and ML-DSA (PQC) on Lattice
🟩 BBS+ and Coconut zkp credentials on BLS12381
🟩 SD-JWT on P-256.
*Secp256k1 is the default non-pairing curve supported in Zenroom, a different one can be selected at build time, full list here.
secp256k1* | BLS-12381 | ed25519 | P-256 | Lattice (PQC) | |
Signatures | |||||
ECDSA | 🟩 | 🟩 | |||
EDDSA | 🟩 | ||||
Schnorr | 🟩 | ||||
Reflow (multisig) | 🟩 | ||||
BLS | 🟩 | ||||
Ethereum | 🟩 | ||||
Bitcoin | 🟩 | ||||
Dillithium | 🟩 | ||||
ML-DSA | 🟩 | ||||
Credentials | |||||
BBS | 🟩 | ||||
Coconut | 🟩 | ||||
SD-JWT | 🟩 |
* Secp256k1 is the default non-pairing curve supported in Zenroom, a different one can be selected at build time, full list here.
No-code cryptography
ZKP, Multisig, Post-Quantum
Zenroom uses Coconut and BBS zero knowledge proof flows, allowing developers to implement zero knowledge proof credentials in minutes.
Implements BLS homomorphic multisignatures, free of rogue attacks based on Reflow.
Also support for NIST Post-Quantum signatures and KEM (Dilithium, Kyber, ML-DSA, ML-KEM).
End-to-end, fully deterministic cryptography in full isolation
Fully deterministic and replicable cryptography, thanks to the multiplatform virtual machine running on any platform.
The VM is fully isolated from the OS (no access to fs, network or clock). Read more
No-code: smart contracts natural English
Design cryptographic flows, data processing and business logic in a natural English-like language, that can be read by non-programmers and written with minimal training. Read more
AGPL3 and Commercial licensing
Community
Open Source
All our software is free and open source, we’re building inter-operability and coordinating efforts with DECODE, Sovrin, OW2, Cosmos and other communities.
Enterprise
support
We offer professional support for the integration with enterprise infrastructure and commercial products, along with dual licensing. Let us know about your project!
developer resources
Docs
Explore Zenroom documentation:
+ Command line interface
+ Zencode reference
+ Binders
+ Build, integrate and embed
+ Zenroom extensions
Sandbox
Learn Zencode with the auto-complete and with the examples on apiroom.net.
Play with Zenroom in-the-browser, powered Zenroom’s Webassembly build (WASM) and expose your smart-contracts into APIs.
Binaries
Zenroom builds on Linux/Windows/Mac, Android/iOS, on X86/X64/Arm32/Arm64. The most widely used builds are built in CI and available under Releases. For all the other builds, please see the build instructions.
Bindings/Embed
Zenroom ecosystem
Microservices
Easy REST API builder executing Zencode: place a .zen file in a folder to expose an API.
Interoperability
Blockchain interop for Ethereum, Bitcoin, Hyperledger Sawtooth and Fabric, Plenetmint, Redis, MySQL, InfluxDB and more.
Sign documents
Web-based service, leveraging Zenroom’s cryptographic capabilities, allowing users sign documents and objects, using W3C-DID identities.
Zenroom based W3C-DID implementation. DIDs are built in Zenroom. Controller runs on nodejs, DIDs are stored on redis and anchored on blockchain.
Zenroom live demo
Watch a presentation of Zenroom's zero knowledge proof and attribute based credential flow, with a live demo of the crypto flow in a multiplatform setup.
Proudly crafted in the EU
This project received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement nr. 732546 (DECODE), and 820937 (REFLOW) by the NGI ASSURE program and by the EBSI PCP.
Our projects in the press
2017-2024© Copyright dyne.org