Client to Authenticator Protocol
CTAP is a protocol that lets a computer, phone, or browser talk to a separate authentication device, such as a security key you plug in or tap. It defines how those two components exchange messages so the external device can help verify who you are during sign-in.
CTAP is a FIDO Alliance application-layer protocol that specifies communication between a client or platform (for example, a browser or operating system) and an external or roaming authenticator (such as a hardware security key), typically over transports like USB, NFC, or Bluetooth. It is a companion specification to WebAuthn within the broader FIDO2 framework: WebAuthn defines the web-facing API between a relying party and the client, while CTAP defines the client-to-authenticator interface used to invoke credential creation and assertion operations on the authenticator. CTAP has evolved across published versions (including 2.0, 2.1, 2.2, and 2.3 as reflected in FIDO Alliance specification drafts and releases); specific features, capabilities, and transport support depend on the CTAP version and the authenticator implementation. Note that CTAP addresses the message exchange for authentication ceremonies and does not by itself constitute an identity federation or authorization protocol.
Why it matters
CTAP is one of the two protocols that make hardware-backed, phishing-resistant authentication practical across the web and operating systems. Within the FIDO2 framework, WebAuthn defines how a relying party's web application talks to the client, but that alone cannot reach an external security key plugged into USB or tapped over NFC. CTAP fills that gap by specifying how the client or platform communicates with a roaming authenticator, so that credential creation and assertion operations can actually be invoked on the device holding the private key. Without an agreed client-to-authenticator protocol, hardware authenticators from different vendors would not interoperate with browsers and operating systems in a consistent way.
For security architects and IAM engineers, CTAP matters because it underpins the interoperability that lets an organization deploy security keys and passkeys without locking into a single vendor's proprietary stack. Because specific features, capabilities, and transport support depend on the CTAP version (published versions include 2.0, 2.1, 2.2, and 2.3 as reflected in FIDO Alliance specification drafts and releases) and on the individual authenticator implementation, understanding CTAP is essential when evaluating which authenticators satisfy a given requirement. A capability assumed from one authenticator may not be present in another that implements an earlier CTAP version.
It is equally important to scope CTAP correctly. CTAP addresses the message exchange for authentication ceremonies between a client and an authenticator; it is not, by itself, an identity federation or authorization protocol. Treating it as a substitute for federation standards or authorization frameworks would be a category error. In practice CTAP sits below the WebAuthn API and complements, rather than replaces, the broader identity and access infrastructure an organization already operates.
Who it's relevant to
Inside CTAP
Common questions
Answers to the questions practitioners most commonly ask about CTAP.
