These questions separate deterministic key identification from key provenance, proof of possession, key attributes, and authorization. Section numbers refer to RFC 7638.
Two agents receive semantically equivalent JWKs with different member order, whitespace, and optional metadata. Their current code hashes each received JSON document unchanged, so it produces different identifiers for the same key.
A verifier receives an RSA public JWK containing alg, e, kid, kty, n, use, and x5c. It must recompute the RFC 7638 thumbprint used by its peer.
A signing service stores a private RSA JWK, while a verifier stores only the corresponding public JWK. The components must independently derive the same RFC 7638 identifier without exposing private parameters.
Profile P requires independent thumbprint recomputation across agents. Profile Q only transports a producer-generated thumbprint as an opaque kid lookup value. Neither profile currently states a hash function.
Library A hashes JSON.stringify(receivedJwk), preserving input order and alg. Library B constructs a new object containing only required members, sorts member names by Unicode code point, emits no whitespace, and hashes its UTF-8 bytes.
An Agent Card records thumbprint T for a public key. A later JWK independently computes to T under the profile's agreed SHA-256 rule, but the card itself came from an untrusted directory.
A service publishes SHA-256 thumbprints of low-entropy symmetric keys in logs. It also accepts non-canonical RSA encodings and uses thumbprint inequality as a blacklist for banned keys.
An OAuth token names JWK Thumbprint T. An A2A gateway verifies a fresh proof made with a JWK that computes to T, then forwards only X-Key-Thumbprint: T to a backend that owns authorization. The header is not integrity-protected from other internal callers.