project screenshot 1
project screenshot 2
project screenshot 3

attest

Identity layer for Ethereum, link digital identities together with Ethereum wallet, verify ownership of identities on-chain.

attest

Created At

ETHSanFrancisco 2022

Project Description

This project is meant to make verifying off-chain digital identities within the Ethereum network easy and transparent. The user connects to the web interface and tweets a (public) tweet with a proof of ownership, signed by their Ethereum wallet. They then relay the tweet URL to our system, which associates it with their address from then on. After this, anyone can call our smart contract which returns all proven digital identities for a given wallet address. From there, any dapps' users can bring their Web2 lives on-chain!

How it's Made

The project is distributed over a number of components.

  1. Web2 Frontend
  2. Web2 Backend
  3. Web3 Frontend (dApp) [only for demo purposes]
  4. Web3 Backend (Smart Contract)

The user begins by connecting their wallet {Metamask, WalletConnect, ethers.js} to (1). Then, on (1), they are able to generate proof of ownership to connect an off-chain identity (eg, Twitter) by signing a message.

The proof of ownership is sent to a database (originally intended to use web3.storage/IPFS, but after running into some severe bugs we ended up defaulting to Firebase just to be able to save our proof of concept for demo purposes), where it then becomes associated with that user's Ethereum address.

Then, any dApp can call our smart contract {generated via Midpoint, customized, deployed via Remix} (4) to verify a certain address' off-chain identities. To demonstrate this functionality, we created a simple demo dApp {web3.js, ethers.js} (3).

Currently, the smart contract is only deployed to Goerli, at https://goerli.etherscan.io/address/0xd182C5BaD241be139128a12853Af857aB450df2F.

background image mobile

Join the mailing list

Get the latest news and updates