The Web Authentication (WebAuthn) specification defines an API that allows web applications to use strong,
public key-based credentials to authenticate users securely. These credentials are created and stored by
authenticators (devices or software) with user consent and are restricted to the specific Relying Party
(the web application) that created them. This ensures privacy and security, as credentials can't be
accessed by other sites.
There are two main steps:
Registration – A public key credential is created and associated with a user's account.
Authentication – The credential is used to prove the user’s identity to the Relying Party.
The API is accessed via navigator.credentials.create() (for registration) and navigator.credentials.get() (for authentication),
and is part of the broader Credential Management API.
Authenticators can be:
Platform authenticators (built into the device),
or Roaming authenticators (external devices using USB, NFC, or BLE).
Posting soon. Pardon.
What do we want to achieve?
How can we achieve this on the web?
Can we achieve exactly what we want with this API?
Here are some demo videos.
Posting soon. Pardon.
How would we do the implementation?
Additional requirements: