WebAuthn Attestation purpose and neccessity is incorrect

Open Beginner friendly
#45,753 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
70/100
Issue type
Documentation
Clarity
Clearly specified
Activity status
Active
Tech stack
javascript

Research direction

Open files/en-us/web/api/web_authentication_api/attestation_and_assertion/index.md and locate the Attestation section. Read the linked WebAuthn specification references before assessing the proposed wording and its claims about attestation, multi-factor credentials, and credential backup. Done means the section accurately reflects the agreed WebAuthn guidance and retains appropriate supporting links.

Written by the indexing model from the issue text.

Description

area: WebAuthn Content:WebAPI
MDN URL

https://developer.mozilla.org/en-US/docs/Web/API/Web_Authentication_API/Attestation_and_Assertion

What specific section or headline is this issue about?

Attestation

What information was incorrect, unhelpful, or incomplete?

(Emphasis added)

The purpose of attestation is to cryptographically prove that a newly generated key pair came from a specific device. This provides a root of trust for a newly generated key pair as well as being able to identify the attributes of a device being used (how the private key is protected; if / what kind of biometric is being used; whether a device has been certified; etc.). It should be noted that while attestation provides the capability for a root of trust, validating the root of trust is frequently not necessary.

What did you expect to see?

(Changes in bold)

The purpose of attestation is to cryptographically prove that a newly generated key pair came from a specific device model or batch. This provides a root of trust for a newly generated key pair as well as being able to identify the attributes of a device being used (the provenance of the device; how the private key is protected; if / what kind of biometric is being used; what PIN complexity requirements apply; whether a device has been certified; whether it has been recalled for security defects; etc.). Verifying a credential's attestation is necessary to prove it is a self-contained multi-factor credential.

Do you have any supporting links, references, or citations?

Without valid attestation, credentials cannot be proven to be multi-factor - they only prove "something you know" (a credential's private key).

A multi-device credential can be copied. The user verification bit on these credentials cannot be trusted.

A hardware authenticator that has known security defects can also not be trusted to protect its key material or enforce user verification restrictions.

A credential can only be trusted as a self-contained multi-factor credential by verifying the attestation at registration time, and periodically revalidating attestation (if that was revoked due to defects).

Do you have anything more you want to share?

No response

MDN metadata
Page report details
Dominant language
Markdown
Stars
11k
Forks
23.3k
Avg merge
1d 16h
Merged PRs (30d)
311

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from mdn/content

All issues in mdn/content

Similar issues

More Documentation issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.