Skip to content

Implement two-factor authentication (2FA) for wallet operations #338

@Smartdevs17

Description

@Smartdevs17

Description

Add TOTP-based 2FA for sensitive wallet operations (withdrawals, key rotations, high-value payments). Currently wallet security relies solely on single-factor authentication.

Acceptance Criteria

  • TOTP setup with QR code enrollment
  • Recovery codes generation (10 one-time codes)
  • 2FA enforcement on configurable operation types
  • Session-based 2FA grace period (remember device)
  • Backup 2FA method (SMS/email as fallback)
  • Admin override with audit trail

Technical Scope

  • backend/src/services/2fa-service.ts
  • backend/src/routes/2fa.ts
  • frontend/components/auth/TwoFactorSetup.tsx
  • frontend/components/auth/TwoFactorVerification.tsx
  • Edge: clock drift tolerance, recovery code usage tracking, concurrent 2FA setup

Metadata

Metadata

Assignees

Labels

200-points200 point issueStellar WaveIssues in the Stellar wave programdrips-waveIssues in the Drips Wave programhighHigh complexity issue

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions