Q1: What does a cnf claim establish by itself?
Multiple ChoiceA signed A2A task token contains a cnf claim with the presenter's public key. The request carries the token but no separate proof made with the corresponding private key.
These questions separate identification of a confirmation key from proof of possession, replay protection, token validation, and resource authorization. Section numbers refer to RFC 7800.
A signed A2A task token contains a cnf claim with the presenter's public key. The request carries the token but no separate proof made with the corresponding private key.
An A2A profile considers placing either an asymmetric public JWK or a symmetric MAC key directly in cnf of a signed but unencrypted JWT.
A presenter signs a fixed string with the cnf private key. The same signature is sent with every A2A request; it covers no method, URI, body digest, nonce, or time value. The profile requires proof bound to each request and resistant to replay.
Two A2A tenants both use cnf kid "signing-key-1" for different keys. The verifier looks up kid in a single global table without first binding it to the trusted token issuer or tenant context.
An A2A resource accepts a token with the correct audience and a cnf claim. If the request has no valid holder proof, the implementation ignores cnf and processes the token as a bearer token. The profile requires proof of possession.
A gateway validates a cnf token and holder proof for an incoming request, then forwards only X-Proof-Valid: true to a backend over another connection. The backend owns the resource and cannot inspect the original proof.
To support rollover, an issuer puts both jwk and jku in one cnf object. The jku points to a backup key, and kid accompanies it. The recipient implements RFC 7800 without an extension that defines multiple confirmation keys.
A cnf jku uses an http URL. The returned JWK Set contains three keys, but cnf has no kid. The recipient happens to recognize one key from an earlier response.
An A2A profile requires a registered cnf member named agent_proof. A JWT library does not understand that member, ignores it, and accepts the token after ordinary JWT validation.
An agent reuses one long-lived confirmation key in JWTs sent to unrelated recipients. Each recipient logs the key identifier, and the logs are later combined. The protocol otherwise verifies possession correctly.