使用JOSE时是否可以使用任何类型的有效负载?
我在想做类似的事情: { “ALG”: “ES512” “CTY”: “XML” }
只是从XML文件中创建一个字符串,在服务器端我检查cty并创建XML。
我很确定它有可能,但我没有看到任何例子,所以我开始认为这可能不是jose背后的想法,而cty只是表示有效载荷是JWT或与jose有关的东西。 / p>
答案 0 :(得分:3)
正如您从http://www.rfc-editor.org/rfc/rfc7515.txt所见:
JWS Payload
要保护的八位字节序列 - a.k.a。消息。该 有效载荷可以包含任意八位字节序列。
所以你的预感是正确的。如https://tools.ietf.org/html/rfc7515#section-4.1.10所示,cty
元素可用于指示http://www.iana.org/assignments/media-types/media-types.xhtml之后的XML内容,省略application/
前缀。因此xml
适用于您的情况,但在(常规)情况下,发送方和接收方都知道他们将要交换XML,cty
元素可以省略。< / p>
对于JWE来说,它是一样的。这里有一个非JSON明文的例子:https://tools.ietf.org/html/rfc7516#appendix-A.3