Discord Attestation

Discord Attestation

-

Project Context

In the Web3 ecosystem, digital identity remains a major challenge. How do you prove who you are without compromising your privacy? How do you link your social identities to your wallet without relying on a central authority?

Discord Attestation addresses this need by allowing users to create cryptographic proofs of their Discord identity, permanently stored on the Linea blockchain via the Verax protocol.

Key Features

The application offers a smooth user experience in three steps:

  1. Discord Login: user authenticates via OAuth 2.0

  2. Wallet Connection: Ethereum address is linked to Discord identity

  3. Attestation Creation: an onchain proof is generated and stored

Attested Data

Each attestation contains:

  • The unique Discord identifier for the server

  • The Discord server name

This information is encoded according to a standardized Verax schema and signed via EIP-712 to guarantee authenticity.

Technical Architecture

The application uses a serverless architecture, deployed on Netlify:

Frontend

  • React 19 with TypeScript for a reactive interface

  • wagmi v3 and viem v2 for blockchain interactions

  • Reown AppKit for multi-provider wallet connection

  • Verax SDK for attestation creation

Backend

  • Netlify Functions for OAuth processing and EIP-712 signing

  • Secure handling of Discord access tokens

  • Server-side signing with protected private key

Smart Contracts

The attestation is created via a custom Verax Portal that:

  • Verifies the backend’s EIP-712 signature

  • Ensures the issuer matches the attestation subject

  • Collects a minimal fee (0.0001 ETH)

Security

The system implements multiple layers of protection:

  • EIP-712 Signatures: protection against cross-chain replay attacks

  • Server-side Verification: Discord tokens are validated before signing

  • Wallet Binding: Attestation can only be created for the connected wallet

  • Secure Signing Key: private key never leaves the backend

Use Cases

Discord Attestation opens the door to many applications:

  • Community Gating: conditional access based on verified Discord identity

  • Targeted Airdrops: distribution to specific Discord users

  • Cross-platform Reputation: building a portable Web3 identity

  • Member Verification: proof of membership in Discord servers

Technical Stack

Web3

  • Linea (Mainnet & Sepolia)

  • Verax Attestation Registry

  • EIP-712 Typed Data Signatures

  • wagmi / viem

Frontend

  • React

  • TypeScript

  • Vite

  • TanStack Query

Backend

  • Netlify Functions

  • Discord OAuth 2.0 API

  • Node.js

Resources

Note
This project is open source and part of the official Verax examples, demonstrating how to integrate social identities into the onchain attestation ecosystem.