project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4

Ethereum Social Contract

The Ethereum Social Contract proposes a decentralized and compliant justice system for web3.

Ethereum Social Contract

Created At


Winner of


🏗 Polygon — Deployed on Polygon

Project Description

Problem Definition: Web3 cannot exist in a bubble, it co-exists with traditional social and governmental requirements that will increase as we grow in adoption and scope. Web3 faces an existential risk, if we as a community cannot comply to these basic social norms. Technologies like ZK snarks provide absolute privacy that cannot be broken to abide legal subpoenas resulting in entire projects being banned (e.g. Tornado Cash).

The Ethereum Social Contract provides a simple and elegant solution to this threat by introducing minor modifications in ERC token standards to allow for the development of an arbitration ecosystem. Also, it accounts for the implementation of justified transparency in ZK dapps without adding a cryptographic backdoor.

Our reimagination of Tornado Cash requires withdrawals to include all of the information necessary to link a deposit, encrypted by the arbitrator's public key.

Process/architecture diagram of ESC Semaphore Tornado Cash/mixing pool protocol:

Our example ERC20 and ERC721 contracts implement a function only callable by the arbitrator to transfer stolen tokens back to their rightful owner.

In the case of a crime, the user contacts the arbitrator to open an investigation into their case. If the arbitrator decides in the user's favor, they will perform a transaction without needing approval from the criminal's wallet.

We imagine an open ecosystem of arbitrators who compete to gain the trust of token projects by building secure systems to store their keys and provide high-quality forensic investigations.

Our focus on minimum vertical integration accounts for the design decision to make this highly-scalable, decentralized justice system.

Process/architecture diagram of ESC Semaphore Tornado Cash/mixing pool protocol:

How it's Made

The Semaphore library provides the ZKSNARK underpinning for our private transaction dApp.

OpenZeppelin contracts are the basis for our ERC20 and ERC721 architecture.

MetaMask Snaps will provide extra information about flagged accounts.

Polygon stores our example contracts. Because arbitrators are identified by only their wallet address, they may operate on any EVM chain.

We are opening the doors for what could be a billion dollar arbitration industry. By doing this, we are offering many people and institutions who are afraid of web3 a safe and secure way to enter the crypto space.

All of these features are opt-in by deciding to use the tokens that incorporate the Ethereum Social Contract.

background image mobile

Join the mailing list

Get the latest news and updates