Bitcoin-based authentication with zero server secrets. Your keys, your identity.
Simple, secure authentication in three steps
Generate your cryptographic identity locally in your browser
Prove ownership by signing a cryptographic challenge
Receive a secure session token for authenticated access
Backup and restore your identity across all your devices with encrypted cloud sync
Works with any OAuth 2.0 compatible application or service
Gate access based on on-chain asset ownership
Require specific NFT ownership
Minimum balance requirements
Governance token holders only
Subscription NFT passes
Bitcoin, Ethereum, and EVM chains
Certificates and achievements
Admission and attendance proof
Resellable NFT subscriptions on open markets
Encrypted cloud backup for cross-device access
Sign in from any device with your password
Your password encrypts your keys
Completely optional feature
The most secure, open, and cost-effective authentication solution
Deploy as a standalone service or embed into existing applications. Works with any framework or platform.
Runs entirely on your infrastructure. Deploy on Node.js, Bun, AWS Lambda, or Cloudflare Workers.
Implements OAuth 2.0 spec and web standards. Any OAuth client can use it.
Verify NFT ownership and token holdings with on-chain cryptographic proof.
Restore your identity across all your devices with just your password.
Handles all backup file formats. Import your backup file to sign in.
Supports BAP profiles automatically when you sign in with associated keys.
Use our public OAuth 2.0 API, or host your own
Redirect to authorization endpoint
Point users to /login with your client_id and redirect_uri
User completes Bitcoin authentication
Users sign with Bitcoin keys or restore from backup, returns authorization code
Exchange code for JWT access token
POST to /token endpoint with authorization code
Use token for authenticated API calls
Include Bearer token in Authorization header
Deploy to Vercel (managed) or Dokploy (self-hosted VPS)