1. Authentication vs. Authorization
Before exploring factors, we must distinguish two related concepts:
- Authentication (AuthN): Verifying who you are (e.g., proving identity through credentials).
- Authorization (AuthZ): Determining what you are permitted to do (e.g., verifying whether your authenticated account has administrator privileges to modify a database).
2. The Three Classical Factors of Identity
True Multi-Factor Authentication requires presenting proofs from at least two distinct categories:
- Knowledge Factor (Something you know): Passwords, PINs, passphrases.
- Possession Factor (Something you have): Hardware security key, smartphone with authenticator app, smart card.
- Inherence Factor (Something you are): Fingerprint, facial recognition, retina scan.
Entering a password followed by your mother's maiden name is not two-factor authentication—it is simply two instances of the knowledge factor!
3. The Fatal Flaws of SMS Verification
SMS text codes are widely deployed because every cellular telephone supports them without installing software. However, from a security engineering standpoint, SMS is the weakest form of 2FA:
- SIM Swapping: Attackers impersonate you at a mobile carrier store or bribe customer service representatives to reassign your phone number to an attacker-controlled SIM card, intercepting all your codes.
- SS7 Signaling Flaws: The global telecom signaling network (SS7) has known architectural interception vulnerabilities allowing sophisticated adversaries to divert SMS messages over the wire.
4. Time-Based One-Time Passwords (TOTP - RFC 6238)
Authenticator apps (such as Aegis, Ente Auth, Google Authenticator) operate offline without cellular connectivity.
When you scan the setup QR code, the service shares a shared secret key (seed). Every 30 seconds, both your phone and the server take the current Unix timestamp divided by 30, run an HMAC-SHA1 hash with the shared secret, and truncate the output into a 6-digit numerical code. Because the math is computed independently on both ends, no network transmission of the seed ever occurs.
5. FIDO2 & Hardware Security Keys: True Phishing Immunity
While TOTP is vastly superior to SMS, it can still be defeated by real-time reverse-proxy phishing kits (like Evilginx). If an attacker lures you to a fake phishing site, the attacker captures your 6-digit TOTP code and replays it to the real service within the 30-second window.
FIDO2 / WebAuthn Hardware Keys (YubiKey) eliminate this vector. The hardware key cryptographically binds its authentication signature to the browser's exact TLS origin domain (origin: "https://rootnode.dev"). If you plug your key into a phishing domain, the cryptographic signature fails, providing 100% mathematical immunity against phishing.
6. The Rise of Passkeys
Built on the FIDO2 WebAuthn standard, Passkeys replace passwords entirely with asymmetric public-key cryptography. Your device's Secure Enclave generates a private key that never leaves your hardware, while the server stores only your public key. Authentication requires only a fingerprint or facial scan.
7. Backup Codes & Device Loss Protocols
Whenever you configure 2FA on any critical service, the platform generates a list of 10 single-use Backup Recovery Codes. You must print these codes or save them inside an encrypted password vault. If your phone is lost, submerged in water, or stolen, recovery codes represent your only lifeline back into your account.