Skip to content

FIDO Functional Certification #155

Open
0 of 2 issues completed
Open

Description

@Bccorb

Tracking issue for FIDO2 Server Functional Certification, the applicable program for a server and relying party. Authenticator Certification levels (L1 to L3+) apply only to authenticator hardware and are not in scope.

This began as a certification readiness review that also covered GovRAMP. GovRAMP is no longer pursued, and the sessions below are kept as the record of what shipped.

Status, 2026-10-12

Narrowed to FIDO Functional Certification. GovRAMP is no longer pursued, and the feature freeze this issue used to declare is lifted; the roadmap now runs through the release epics (#385 onward). Every session below has shipped. What remains is publishing the self-validation results and submitting for certification, tracked as sub-issues.

Update 2026-10-13: publishing the self-validation results (#396) is in v0.19. Interoperability testing and the certification submission (#397) are deferred to v1.0.

Sessions, in order

Each session is intended to be a self-contained working session.

Session 1: what the collateral promises but the code does not do

Highest priority. Each of these is a gap between what is being sold and what ships.

#156 is the single highest value item in this plan. One hardcoded value blocks every
hardware security key scenario in Appendix B of the migration runbook. It shipped in
#180; #182 and #183 are the deployment-default and SDK halves split out of it, both
of which cross a repository boundary.

Session 2: audit trail correctness

#159 and #161 both migrate the same table and are best done together.

Session 3: CI, supply chain and scanning

Independent of the application code, so it can run in parallel with anything else.

Session 4: WebAuthn correctness and FIDO prerequisites

#165 is a prerequisite for Session 5.

Session 5: FIDO attestation and metadata

#170 resolves the synced passkey open decision the public sector README flags. It is
currently unimplemented, so the website text should be corrected until it ships.

Session 6: FIDO conformance

Do not start the 90 day interoperability clock until Sessions 4 and 5 have landed.
Register for tool access early so the tools can be run iteratively.

Session 7: audit and session hardening (originally gated on GovRAMP)

Open decisions

  1. Attestation posture, and whether to require it by default
  2. Audit failure posture: decided in fix(security): stop an audit write failure disabling account lockout #227 (lockout has its own counter, write failures are reported, an unreadable count is treated as locked)

Related

Two findings were handled privately as security advisories per SECURITY.md, and are now published.

Activity

  1. added
    enhancementNew feature or request
    P0Highest: FIDO2 certification track
    fido2FIDO Functional Certification track, see #155
    on Aug 28, 2026
  2. Bccorb commented on Aug 31, 2026

    @Bccorb
    ContributorAuthor

    FIDO Alliance conformance tool registration came through on 2026-08-31. #210 and #172 are no longer blocked on external access, and the blocked label is removed from both.

    That reopens the second half of session 6. Nothing about the engineering changed while they were parked, so the notes on each still stand: #210 needs real certificate chains for the TPM, U2F and SafetyNet statements, and its metadata-absent postures only trigger on full attestation with an x5c chain, which is exactly what the tools provide.

    Session 7 (GovRAMP: #173 to #178, #185) is still gated on the membership and Single Security Snapshot purchase, which is a separate decision.

  3. added
    v0.19Targets the v0.19 release
    secureServes the most-secure promise
    on Oct 13, 2026
  4. added this to the v0.19 milestone on Oct 13, 2026
  5. changed the title [-]Certification readiness: FIDO Functional Certification and GovRAMP[/-] [+]FIDO Functional Certification[/+] on Oct 13, 2026
  6. added theissue type on Oct 13, 2026
  7. added
    P1Security work outside the FIDO2 track
    and removed
    P0Highest: FIDO2 certification track
    on Oct 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1Security work outside the FIDO2 trackenhancementNew feature or requestfido2FIDO Functional Certification track, see #155secureServes the most-secure promisev0.19Targets the v0.19 release

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions