WebAuthn (Web Authentication) ist ein Webstandard, der vom World Wide Web Consortium (W3C) und der FIDO Alliance entwickelt wurde, um eine sichere, passwortlose Authentifizierung im Web zu ermöglichen. Es ist Teil des umfassenderen FIDO2-Frameworks und zielt darauf ab, die Abhängigkeit von herkömmlichen Passwörtern zu reduzieren, die oft anfällig für Phishing, Credential Stuffing und andere Angriffe sind.
Im Kern ermöglicht WebAuthn Benutzern die Authentifizierung mittels Public-Key-Kryptografie. Anstelle eines Benutzernamens und Passworts registrieren Benutzer ein eindeutiges öffentlich-privates Schlüsselpaar bei einer Webanwendung (der Relying Party). Der private Schlüssel wird sicher auf einem Authenticator gespeichert — wie einem Hardware-Sicherheitsschlüssel, Smartphone oder integriertem biometrischen Gerät —, während der öffentliche Schlüssel auf dem Server gespeichert wird.
Während der Authentifizierung stellt der Server eine Challenge aus, die vom privaten Schlüssel des Benutzers signiert werden muss. Die signierte Challenge wird zurückgegeben und unter Verwendung des gespeicherten öffentlichen Schlüssels verifiziert, wodurch sowohl die Integrität als auch der Ursprung der Antwort sichergestellt werden. Dieser Ansatz verhindert, dass Anmeldedaten abgefangen oder wiederverwendet werden.
WebAuthn unterstützt eine Reihe von Authenticatoren und Geräten, was es sowohl für Entwickler als auch für Benutzer flexibel macht. In Kombination mit anderen Faktoren wie PINs oder Biometrie ermöglicht es zudem Multi-Faktor-Authentifizierung (MFA) und verbessert so die Sicherheit erheblich, ohne die Benutzerfreundlichkeit zu beeinträchtigen.