SIWE OIDC Provider

An OpenID Connect identity provider that authenticates users with their Ethereum wallets via Sign in with Ethereum.

Any application that supports OIDC can use this provider to let users log in with their Ethereum address. No passwords, no email, no custodial accounts.

See it in action with the example client.

Sign in with Ethereum

Standards-Based

Full OpenID Connect authorization code flow with PKCE. Use your existing OIDC libraries. No custom integration needed.

Self-Sovereign Identity

Your Ethereum wallet is your identity. The user's SIWE signature is their consent. No additional consent screen required.

Dynamic Registration

Clients register automatically via the /reg endpoint. Or pre-configure default clients via environment variable.

ENS Resolution

Resolves ENS names and avatars automatically, returned as preferred_username and picture claims.

Smart Wallet Support

Supports EOA, EIP-1271 contract wallets, and EIP-6492 counterfactual accounts out of the box.

Production Ready

Redis-backed sessions, auto-generated RSA signing keys shared across workers, Docker deployment, and token introspection/revocation.


Endpoints

/.well-known/openid-configurationDiscovery/jwksJSON Web Key Set
/authAuthorization
/tokenToken Exchange
/meUserInfo
/regClient Registration