Privacy & Scaling Explorations

Enhancing Ethereum through cryptographic research.

Explore our work

We explore new use cases for zero-knowledge proofs and other cryptographic primitives through research and proof-of-concepts.

What we work on

Explore how we integrate ZK primitives into decentralized applications


A zk-rollup that can generate zk proofs for general EVM verification. This allows us to build a fully EVM-compatible zk-Rollup, which any existing Ethereum application can easily migrate to.


MACI (Minimal Anti-Collusion Infrastructure) uses zero knowledge proofs for collusion resistance in blockchain voting (such as quadratic funding mechanisms) by making it impossible for anyone other than the vote coordinator to verify how a specific user voted. MACI also ensures correct execution of the votes, allowing anyone to verify the results.

BLS Wallet

Reduce transaction costs on evm-L2s using BLS signatures. The smart contract wallet also includes: recovery, multi-action, gas-less transactions, and upgradability. for Everyone

Infrastructure to make it easy for any community to run their own CLR round with

Trusted Setup
Trusted Setup

Open source infrastructure for running a trusted setup ceremony in which many people participate in generating entropy which will secure a cryptographic protocol. Perpetual Powers of Tau: A universal ceremony for the initial phase of a trusted setup. MPC Phase 2 UI: UI for a CLI or browser-based ceremony for the second, circuit-specific phase for Groth-16 SNARKs. MPC Phase2 Suite: All-in-one suite of tools for conducting Phase 2 Trusted Setup ceremonies for multiple and large Groth-16 SNARKs circuits.


TLSNotary leverages the ubiquitous TLS protocol to allow users to privately export their data from any webserver in a provable way.


Zkopru is an optimistic rollup that uses zero knowledge proofs to enable private, low-cost transactions with ETH, ERC-20s and NFTs on layer 2.


Unirep allows anonymous members of a group to give, receive, and prove reputation without revealing their identity. Applications or people can act as attesters and build their own reputation tokens on top of a shared Unirep contract.

Rate Limiting Nullifier

RLN is a construct based on zero-knowledge proofs that enables spam prevention mechanism for decentralized, anonymous environments. In anonymous environments, the identity of the entities is unknown.


An open-source system for managing privacy-preserving groups.


Private reputation and identity system allowing services to verify that users belong to a certain group or meet certain reputation criteria without revealing their identities. Users can anonymously export reputation from platforms such as Twitter and Github.


ZK-kit is a set of NPM modules (algorithms or utility functions) that can be reused in different projects and zero-knowledge protocols, making it easier for developers to access ready-to-use and tested libraries for common tasks.


Semaphore is a protocol, designed to be a simple and generic privacy layer for Ethereum DApps. Using zero knowledge, Ethereum users can prove their membership of a group and send signals such as votes or endorsements without revealing their original identity.


Crypt-Keeper is a Zero knowledge identity management and proof generation


Collaborative content curation of online communities using a double-or-nothing challenge mechanism.


Anonymous and private chat environments, using Interep for a privacy preserving registry and sybil resistance and RLN for spam protection.

Join our conversation on Discord!


PSE has contributors of all kinds - we are developers, designers, engineers, researchers, communicators, organizers and much more. Meet some of our team members below!


Software Engineer; working on MACI/QFI and Trusted Setup

Geoff Lamperd

Full stack engineer; working on Trusted Setup and Interep

Beyondr (Jeo)

Designer & developer. Main project is ZKOPRU at the moment but also working on other auxiliary projects.


Design strategy for ZK explorations


TLSNotary Project Lead and Software Engineer


All things UX & pretty designs. Unirep and other projects


Product owner; working on Semaphore and other projects


Unirep Project Lead and Software Engineer


Full stack / systems engineer; working on RLN

James Zaki

BLS Wallet project lead and software engineer

Jacob Caban-Tomski

Full stack engineer; working on BLS Wallet


Software engineer; working on Semaphore and related projects