Powdr: a modular stack for zkVMs

Project Name

powdr

Project Description and why it’s classified as a Public Good

powdr (GitHub - powdr-labs/powdr: A modular stack for zkVMs, with a focus on productivity, security and performance.) is a modern compiler toolkit based on a modular stack designed to build zkVMs, focusing on the best DevX without compromising performance. It does not contain a built-in ISA, but in fact enables anyone to design and implement their own ISA in powdr-IR, which brings ZK proofs to programs written in any high level language that compiles to an ISA implemented in powdr-IR.

powdr’s goal is to develop the core of the tool, while users can benefit directly from a standard library of optimized low-level circuits, already built VMs such as RISCV and EVM, as well as extend powdr with new frontends and backends as we have already seen.

All features and ongoing development are and will stay open source. We are committed to building a toolkit that can be used by anyone.

Main Project Funding Sources

Ethereum Foundation

Seeking project-specific funding or funding for general operations

Funding for general operations.

Team Information, including backgrounds and roles

powdr was created by Christian Reitwiessner, Leo Alt and Thibaut Schaeffer. The core team also includes Georg Wiese and Lucas Vella.

  • Christian is the creator of the Solidity language and led the Solidity team at the Ethereum Foundation. Chris has immense experience in core Ethereum, EVM, programming languages and SNARKs.

github: chriseth · GitHub
twitter: https://twitter.com/ethchris/

  • Leo was the Formal Verification lead and a Solidity core dev at the Ethereum Foundation for many years, working on compilers, security and SMT solving related things until he got involved with ZK.

github: leonardoalt (Leo) · GitHub
twitter: https://twitter.com/leonardoalt

  • Thibaut led the ZoKrates project at the Ethereum Foundation, and has been pushing ZK tooling since Ethereum added support for zkSNARK verification.

github: Schaeff (Thibaut Schaeffer) · GitHub
twitter: https://twitter.com/vanderkriek/

  • Georg has a background in Computer Science and ML and entered ZK through working on zkML with PSE. He is now working on powdr witness generation, custom circuits, and zk-continuations.

github: georgwiese (Georg Wiese) · GitHub
twitter: https://twitter.com/georgwiese/

  • Lucas worked on formal methods for ZK security at the Ethereum Foundation, and now works on VMs and provers inside powdr.

github: lvella (Lucas Clemente Vella) · GitHub
twitter: https://twitter.com/lcvella/

Social Credibility (development progress, awards, notable GitHub commits, referrals)

By building and using powdr, we have implemented the RISC-V imac instruction sets in less than 400 lines of powdr-IR code and a few hundred lines of Rust code used to link assembly programs, core libraries, and low level accelerators. This allows us (and everyone else) to build ZK proofs for the execution of no-std Rust programs out of the box, including EVM implementations and Ethereum clients. New VM implementations are under development such as WASM, and they will benefit from every feature built so far.

We have a lot of features we’re excited about in our roadmap (Projects · powdr · GitHub), and all funding is currently used to paying developers.

Docs: https://docs.powdr.org/
Roadmap: Projects · powdr · GitHub
Source code: GitHub - powdr-labs/powdr: A modular stack for zkVMs, with a focus on productivity, security and performance.
Ethereum tests running within powdr as a zkEVM: GitHub - powdr-labs/powdr_revm: Powdr application using revm in no-std mode.
zkRISCV: powdr/riscv at main · powdr-labs/powdr · GitHub
Standard Library: powdr/std at main · powdr-labs/powdr · GitHub
Twitter: https://twitter.com/powdr_labs

Discord contact

Leo Alt (leonardoalt, originally leonardoalt#4895)

Eligibility Criteria:

  • Do you have a commitment to open-source (i.e. every open-source license accepted by the Open-Source Initiative) technology and sharing results publicly?
    Yes we use the MIT license and all finished and ongoing development are publicly available.
  • Have you provided transparency about how exactly funding will be used?
    All funding is currently used to paying developers.
  • Are you advancing values of freedom and privacy (no surveillance and handling of personal data)?
  • Are you supporting decentralization in various fields (for example building Web3 projects)?
  • Have you provided social media channels to the extent that we can confirm social proof of your project?
    github: https://github.com/powdr-labs/powdrhttps://github.com/powdr-labs/powdr
    twitter: https://twitter.com/powdr_labs