We've been experimenting with certificating JWK public key values. Like X.509 certificates, this key sharing scheme minimizes the need for fetching public keys used for encryption and signature verification. We're calling this JSON Web Certificates (JWC).
A JSON Web Certificate is created by adding descriptive properties to a JSON Web Key, representing the issuer (iss), subject (sub), and other key metadata, such as time of issue (iat), expiration (exp), and certificate identifier (jti). This JWK is then used as the payload of a JSON Web Token or JSON Web Document.
The following JWC is represented as a JSON Web Document signed with KS256.
We've been experimenting with certificating JWK public key values. Like X.509 certificates, this key sharing scheme minimizes the need for fetching public keys used for encryption and signature verification. We're calling this JSON Web Certificates (JWC).
A JSON Web Certificate is created by adding descriptive properties to a JSON Web Key, representing the issuer (
iss
), subject (sub
), and other key metadata, such as time of issue (iat
), expiration (exp
), and certificate identifier (jti
). This JWK is then used as the payload of a JSON Web Token or JSON Web Document.The following JWC is represented as a JSON Web Document signed with KS256.
A certificate can also be serialized as a compact JWT (line breaks for readability):
A JWC can be included in a JOSE Protected Header object like so:
We now need to consider drafting a specification targeting IETF and incorporating necessary functions into this package.