Conceptly
← All Concepts
πŸ”‘

WebAuthn

SecurityA web authentication standard that proves the user with a public-key credential instead of a password

WebAuthn is a web standard in which the browser and an authenticator cooperate to authenticate the user with a public-key credential. The server stores only the public key, while the private key stays on the user's device, so there is no need to store or transmit a password. The user verifies themselves with a security-key touch, biometrics, or a PIN, and the site checks the resulting signature to decide whether login should succeed. WebAuthn is the technical foundation behind today's passkey experience.

β–ΆArchitecture Diagram

πŸ”„ Process

Dashed line animations indicate the flow direction of data or requests

Why do you need it?

Passwords have the advantage that people can remember and type them, but that convenience is also their weakness. People reuse them across sites, type them into phishing pages, and when password hashes leak from a server they become targets for offline cracking. Even one-time codes are not always enough against modern phishing proxies. The deeper problem is over-reliance on a secret the user knows and can reproduce anywhere. Sites increasingly need a way to prove that they are talking to the real user through a credential anchored to a device, not just a string that can be copied and replayed.

Why did this approach emerge?

The FIDO Alliance and browser vendors spent years pushing toward passwordless login standards. As hardware security keys and platform authenticators on phones and laptops became common, browsers needed a unified API for websites to work with those authenticators. WebAuthn is the web-standard layer of the FIDO2 ecosystem. The browser acts as the mediator between site and authenticator, and the server can determine login validity with origin checks and a stored public key. That finally made a realistic replacement for password-centric authentication possible on the web.

How does it work inside?

During registration, the server creates a one-time challenge and sends it to the browser. The browser hands the request to an authenticator, which creates a new public-key/private-key pair tied to the current site origin and challenge. The server stores the public key and credential ID, while the private key stays on the device. During login, the server sends a fresh challenge again. After the user verifies themselves through a fingerprint, face unlock, PIN, or security-key touch, the authenticator signs that challenge with the private key. The server verifies the signature using the stored public key and confirms the user. The key property is that the signature is bound to the current site origin. Even if the user visits a convincing phishing page, the credential does not validate against the wrong origin. That is why WebAuthn is far more resistant to phishing than passwords.

What is it often confused with?

WebAuthn and OAuth both appear near login screens, but they solve different problems. WebAuthn is an authentication method through which the current site verifies the current user directly. OAuth is a procedure for delegating permission to another service. Confusing identity proof with permission delegation leads to design mistakes. JWT is also different in nature. WebAuthn is about how the user proves themselves at login time. JWT is about how authentication state is carried on later requests after login has already succeeded. One answers 'how did this user log in?', the other answers 'how is that logged-in state transported afterward?'

When should you use it?

WebAuthn is especially valuable for passkey-based login, strong administrator authentication, and financial or enterprise systems where account takeover risk is high. It reduces both password fatigue for users and phishing risk for the system. In production, device loss and recovery flow design matter just as much as the happy path. If there is no recovery plan, support burden grows quickly. If recovery is too easy, much of WebAuthn's security benefit is erased. Recovery needs to be intentionally designed rather than bolted on later. WebAuthn also does not keep a session alive by itself. After the strong identity check at login time, the system still needs to choose how session or token state will be maintained afterward. In that sense, adopting WebAuthn is less about replacing the entire auth stack and more about making the front door much stronger.

Passkey login -- signing in without a password by using device biometrics or a PINStronger second-factor protection -- adding phishing-resistant verification for administrators or high-risk actionsDevice-bound authentication -- allowing only credentials registered on a user's deviceReducing password recovery burden -- lowering dependence on passwords that are easy to reuse and steal