Skip to main content

Architecture

The mobile app communicates directly with both auth-svc and duo-server — auth-svc is not a proxy. When an MPC operation runs, duo-server calls auth-svc hooks server-to-server to authorize it.

ComponentRole
Identity ProviderIssues JWTs (Auth0, Firebase, or any OIDC provider). Runs in your own infrastructure.
Auth-svc REST APIUser and device registration, keyshare backup/recovery, key listing
Auth-svc HooksServer-to-server endpoints called by duo-server to authorize keygen and signing operations
duo-serverMPC node — runs keygen, sign etc. Verifies device signatures.
FaceTecBiometric step-up auth for backup and recovery
Google DriveStores the user's encryption key Ek — kept client-side so no single party holds the full backup