Dear JOSE,

tl;dr: Let's please add a simple JSON encoding to the base JW* specs.

I've been complaining for a while that the JW* documents aren't JSON, and
that the JSON serialization documents are too complex (because of the
integrity check issues).  So I thought it was about time that I made an
actual proposal for encoding the base JOSE object as JSON objects.  The
approach would be essentially the same as in the JSON serialization
documents, except with a focus on single objects.

JWE and JWS objects currently have the following form

jws = header.data.signature
jwe = header.key.iv.ciphertext.mac

The JSON encoding of a JWE/JWS would just take each of these Base64-encoded
pieces and assign them a name in a JSON structure.

jws = {
    "header": header,
    "data": data,
    "signature": signature
}

jwe = {
    "header": header,
    "key": key,
    "iv": iv,
    "data": ciphertext,
    "mac": mac
}

It seems to me that these encodings are simple enough that they could be
handled in a short section, in parallel to what I would call the "text
serialization" in the current documents.  So I would like to propose that
they be added to the base JWE and JWS documents.

Thanks,
--Richard
_______________________________________________
jose mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/jose

Reply via email to