Prerequisites
⚠️ Backend Required: This authentication method requires a backend service
that handles Stytch Email OTP operations. The auth service already has the
implementation in place with the
/stytch/email/send-otp
and
/stytch/email/verify-otp
endpoints, but they are disabled by default. Simply
run your auth service at the configured URL to enable Stytch Email OTP
functionality.Lit Auth Server URLs. Please refer to Auth
Services section.
(Prerequisite) TOTP Registration
Existing Stytch User Account required. (from primary authentication methods, such as Email, SMS, or WhatsApp) This step must be completed before you can authenticate with TOTP 2FA.- See Step 3 in Stytch Email OTP for more details.
- See Step 3 in Stytch SMS OTP for more details.
- See Step 3 in Stytch WhatsApp OTP for more details.
1
Create TOTP Registration
Create TOTP registration with the user ID from your email/sms/whatsapp auth
2
Verify TOTP Setup
Verify TOTP setup with code from authenticator app
TOTP Authentication
1
Authenticate with TOTP 2FA
Enter your Stytch User ID (from your primary authentication) and the current 6-digit TOTP code from your authenticator app to authenticate and generate authentication data.
2
Verify OTP
Enter the OTP code sent to your WhatsApp to verify your identity and generate authentication data.
3
Get or Mint a PKP
You can select an existing PKP associated with your account or mint a new one.
4
Generate Auth Context
Use your newly minted PKP to create an AuthContext. This method will cache two things:
- session key pair - a temporary cryptographic key pair generated on the client side that acts as a temporary identity for the client application. It consists of:
- A public key - shared with the Lit nodes
- A secret key (private key) - kept securely on the client
- Delegation AuthSig aka. the inner auth sig - a cryptographic attestation from the Lit Protocol nodes that authorises your session key to act on behalf of your PKP.