project screenshot 1
project screenshot 2
project screenshot 3

zkEmail Safe

Operate Safe multisigs through email verified using ZK proofs

zkEmail Safe

Created At

ETHOnline 2023

Winner of

trophy

🏊 Scroll — Pool Prize

trophy

🥇 Scroll — Best Use

Project Description

Multisigs are hard to use as a non-crypto native. The need to setup wallets, use a hardware key and knowing how to secure seed phrases create friction for operation teams (finance, legal, ops).

This hackathon submission features a Safe Module that allows emails to be used as a way to sign transactions. On a high level, signers approve multisig transactions through sending an email, generating a zk-proof that is verified on-chain before executing a safe transaction.

  1. The safe module allows a multisig to configure emails address that are verified to sign transactions.
  2. Emails are sent to a relayer address and a ZK proof is created. Optionally, the sender can create the proof manually on their system.
  3. The proof is sent for on-chain verification
  4. The Safe module then instructs the underlying Safe to execute transactions once the necessary signers are verified.

How it's Made

There are 4 parts to this project:

  1. Circom circuits to verify email headers using the DKIM protocol and regex circuits to parse information used by the Safe Module
  2. Singleton Safe Module smart contract that handles all the configuration and on-chain verification of the ZK Proof
  3. An email relayer server that uses POP3 to listen on a email address, creates the ZK Proof and submits the transaction on-chain
  4. A dashboard built using Safe SDK for users to configure and interact with their Safe without the need to download a wallet.
background image mobile

Join the mailing list

Get the latest news and updates