#authentication#WebAuthn#passkeys#security#OAuth#compliance

Authentication in 2026: Passkeys, WebAuthn, and the OAuth3 Discussion

webhani·

Passkeys Are No Longer a Nice-to-Have

By mid-2026, passkey adoption has shifted from a security best practice to an operational necessity. WebAuthn now has approximately 95% browser and OS coverage across Chrome 67+, Edge 18+, Safari 13+ (iOS 14.5+), major Chromium derivatives, iOS 16+, Android 9+, and Windows 10+. Last May, Microsoft made passkeys the default for new consumer accounts. Simultaneously, NIST SP 800-63-4 (published July 2025) classifies synced passkey authenticators as meeting AAL2 (Authenticator Assurance Level 2) requirements, and the EU NIS2 Directive explicitly discourages password-only authentication for critical services.

What was once a forward-looking implementation choice has become a compliance and operational reality. Organizations that deferred passkey pilots until late 2025 are now running against regulatory and platform timelines.

The Practical Case for Passkeys

Numbers matter when evaluating a technology shift. According to industry reports, passkey sign-in succeeds at roughly 93% vs. 63% for password-based authentication. Completion times are approximately 73% faster. Organizations that have enabled passkeys at scale report an 81% drop in authentication-related help desk incidents. These figures alone make passkeys worth serious implementation effort.

The technical foundation is mature. The W3C WebAuthn standard is stable, server-side libraries exist across all major languages, and the user experience is straightforward: sign in with a face, fingerprint, or device PIN. No codes, no apps, no second device.

A Typical Implementation Flow

On the frontend, the browser's navigator.credentials API is the integration point:

// Registration: create and register a passkey
async function registerPasskey(userId, userName, userEmail) {
  const credential = await navigator.credentials.create({
    publicKey: {
      challenge: crypto.getRandomValues(new Uint8Array(32)),
      rp: {
        name: "example.com",
        id: "example.com"
      },
      user: {
        id: crypto.getRandomValues(new Uint8Array(16)),
        name: userEmail,
        displayName: userName
      },
      pubKeyCredParams: [
        { alg: -7, type: "public-key" },   // ES256
        { alg: -257, type: "public-key" }  // RS256
      ],
      timeout: 60000,
      attestation: "direct",
      userVerification: "preferred"
    }
  });
  
  if (!credential) return null;
  // Send credential to server for storage
  return credential;
}
 
// Authentication: use passkey to sign in
async function authenticateWithPasskey(challenge) {
  const assertion = await navigator.credentials.get({
    publicKey: {
      challenge: challenge,
      timeout: 60000,
      userVerification: "preferred",
      rpId: "example.com"
    }
  });
  
  if (!assertion) return null;
  // Send assertion to server for verification
  return assertion;
}

On the backend, the work is straightforward: store the public key and authenticator metadata during registration, then verify the cryptographic signature during authentication. Libraries like go-webauthn, @simplewebauthn/server, and webauthn (Python) handle the crypto details. The secret key never leaves the user's device.

Phased Migration, Not a Cutover

Few organizations can flip a switch from passwords to passkeys overnight. The realistic approach runs in stages, which Webhani has implemented across several enterprise clients:

Phase 1: Passkey as an Option

Add passkey registration and authentication alongside existing password flows. Users can choose. Session management (JWT, OAuth 2.0) doesn't change—passkey is simply a new credential type. This phase typically runs for 3–6 months, giving users and support teams time to adapt.

Phase 2: Passkey as the Default

Once enrollment reaches 40–50% of active users, make passkey the recommended path for new signups and account recovery. Existing password users can still authenticate, but new accounts default to passkey. Support tickets stabilize during this phase as UX and edge cases become known.

Phase 3: Password Sunsetting

When 80%+ of your user base actively uses passkeys, deprecate password authentication. Keep recovery codes and admin-assisted account recovery as fallbacks. This phase typically begins 6–12 months after Phase 2 starts.

The timeline is not arbitrary. Each phase requires testing: can users sign in from new devices? Does the enrollment flow work on older browsers and devices where you still have users? Are support escalations manageable? Rushing collapses under operational friction.

Regulatory Tailwinds

NIST SP 800-63-4's AAL2 classification matters because it moves passkeys from "nice security improvement" to "compliance requirement" in government, finance, healthcare, and critical infrastructure sectors. An organization subject to NIST 800-63 compliance now has a concrete mandate to evaluate passkeys.

The EU NIS2 Directive, which enters enforcement in October 2024 and applies more broadly after October 2025, requires "authentication methods that cannot be compromised" for critical services. Passkeys fit that requirement cleanly; password-only systems do not. This has triggered a wave of enterprise passkey pilots across Europe, with many moving to production in 2026–2027.

For IT consulting firms advising these organizations, this is leverage. Clients no longer ask "should we do passkeys?" They ask "how fast can you implement and certify them for compliance?"

OAuth3: A Future Standard, Not a Present One

The term "OAuth3" appears increasingly in security and protocol design circles, but clarity is essential: OAuth 3.0 does not yet exist as a ratified standard. What exists is an industry discussion among protocol designers and security researchers about what a next-generation OAuth should look like.

OAuth 2.0, published in 2012 and updated to OAuth 2.1 in 2023, remains the de facto authorization standard. It has served well but carries design cruft: PKCE was a later addition rather than built-in; refresh token management is operationally complex; and enterprise use cases (fine-grained consent, delegation, audit) benefit from external policy layers.

The informal OAuth3 discussion centers on:

  • Modern cryptography as the foundation (not bolted on later)
  • Simpler refresh token lifecycle
  • Better defaults for enterprise scenarios
  • Closer alignment with emerging authentication standards (passkeys, etc.)

This is valuable industry conversation, but it is not a standard yet. No IETF working group has chartered it. No draft RFC exists in wide circulation. Implementations are research prototypes, not production libraries.

For implementation teams in 2026, OAuth 2.0 remains the correct choice. If your authorization flow is straightforward, OAuth 2.0 is sufficient and well-tested. If you need fine-grained permissions or enterprise delegation, OAuth 2.0 can be extended (via custom scopes, policy layers, or grant types). Planning a migration to OAuth3 in 2026 has no practical basis yet.

Monitor the standards process—by 2027–2028, OAuth3 may move from discussion to draft to implementation. But today, it is not a decision you need to make.

A Phased Implementation Mindset

For clients and development teams, here is how Webhani thinks about passkey implementation strategy:

  1. Start with opt-in. Add passkey registration and login as an option alongside existing auth. Measure adoption. Learn failure modes in production.

  2. Invest in UX and support. Passkeys are simpler for most users than passwords, but edge cases exist: cross-device flows, device loss, older browsers. Test thoroughly and staff support.

  3. Plan compliance and audit. If NIST 800-63 or NIS2 applies to your organization, map passkey features to compliance requirements explicitly. Audit trails and device registration metadata matter.

  4. Do not abandon backups. Passkeys are cryptographically strong, but user convenience depends on recovery. Backup codes, security keys as fallbacks, and admin-assisted recovery are essential.

  5. Stay informed on OAuth3, but do not wait. Begin passkey migration now. OAuth 3.0 is a future conversation; passkey adoption is an immediate business case.

Closing: The Transition Is Underway

Passkey adoption in 2026 is no longer about pilot programs or early-adopter enthusiasm. It is about meeting user expectations, satisfying regulatory requirements, and reducing operational overhead in authentication. The technology is mature, browser support is ubiquitous, and organizational demand is rising.

OAuth3 remains an industry discussion—valuable context for long-term architecture thinking, but not a decision point for today's implementations.

Webhani guides organizations through both fronts: passkey deployment strategies, compliance mapping, and architectural decisions around authentication infrastructure. The convergence of user experience, security, and regulation has made this an urgent conversation.


References: WebAuthn Level 3 (w3.org), NIST SP 800-63-4 Digital Identity Guidelines (nist.gov), State of Passkeys 2026 (state-of-passkeys.io)