Какой тип MIME используется для JSON Web Encryption
Глядя на RFC 7515 и RFC 7516, я пытался понять, каким должен быть правильный тип пантомимы для JWE. Похоже, что JWE и JWS совместно используют информацию заголовка JOSE, а JWS определяет его тип mime как application/jose
, JWE не имеет явной информации о типе носителя. Но так как имя "jose", и оба используют заголовок JOSE, я предполагаю, что оба должны использовать один и тот же тип MIME (также потому, что JOSE обозначает… Signing and Encryption).
В таком случае, как мне различать подписанные и / или зашифрованные сообщения? По значению alg
имущество? Или по наличию / стоимости enc
имущество?
Подвести итоги:
- Является ли "application/jose" типом пантомимы для использования в JWE? Если нет, то что это должно быть?
- Если да, то как достоверно определить между сообщениями JWE и JWS?
1 ответ
Если бы я только уделил больше внимания оригинальному RFC, я бы заметил, что для этой конкретной цели есть раздел ( раздел 9).
Короче говоря, код должен проверять наличие payload
, ciphertext
или же enc
свойства, или путем проверки значения alg
, В качестве альтернативы можно использовать разделители периодов, если используется компактная сериализация.
Это также подразумевает, что тип пантомимы для обоих одинаков.