Glossary · Protocols and standards
JSON Web Signature (JWS)
JWS (RFC 7515) is the IETF format for content protected by a digital signature or MAC using JSON structures. A2A uses it to sign Agent Cards.
JSON Web Signature (JWS) is the IETF standard, RFC 7515 (May 2015), for representing content that is protected by a digital signature or a message authentication code (MAC) using JSON-based data structures.
How it works. A JWS has three parts. The protected header is a JSON object that names the algorithm in alg and often identifies the key in kid. The payload is the content being protected. The signature is computed over the base64url-encoded header, a period, and the base64url-encoded payload. RFC 7515 defines two serializations. The compact serialization joins the three parts with periods and is the form that JSON Web Tokens use. The JSON serialization is an object with protected, payload and signature members. It can also carry an unprotected header and more than one signature. Appendix F of the RFC describes detached content: the sender removes the payload, and the recipient rebuilds it from data it already has.
In A2A. Section 8.4 of the A2A specification lets a provider sign its Agent Card. Each entry in the card’s signatures array holds a base64url protected header, a base64url signature, and an optional unprotected header. The card does not repeat the payload. The payload is the card itself, with signatures and default-valued fields removed, canonicalized with RFC 8785 (JCS). The protected header must include alg, typ and kid, with JOSE as the recommended typ value, and may carry jku, the URL of a JWK Set that holds the public key. Decoded, the specification’s example header is:
{"alg": "ES256", "typ": "JOSE", "kid": "key-1", "jku": "https://example.com/agent/jwks.json"}
What a signature proves. A valid signature shows that the content has not changed since someone holding the private key signed it. It does not show who that key holder is. Binding a key to a real organization needs a separate step, such as a trusted key store for known providers, which the A2A specification permits but does not define.
Neighbouring terms. A JWKS publishes the public keys that verifiers use. JCS produces the exact bytes that get signed. A signed Agent Card is the A2A object that carries these signatures.
Sources
- RFC 7515: JSON Web Signature (JWS) (accessed )
- A2A Protocol Specification, section 8.4: Agent Card Signing (accessed )