Объединение JWE и JWS - PullRequest
       76

Объединение JWE и JWS

0 голосов
/ 11 октября 2018

Просто изучая JOSE, я понимаю, что JWE - для шифрования, а JWS - для подписи.Мне кажется, что я не могу найти примеров полезных данных, которые зашифрованы и подписаны.

Давайте представим, что у меня есть полезная нагрузка hello world.Правильно ли делать что-то подобное?JWS(JWE('hello world') с зашифрованным JWE в качестве полезной нагрузки JWS?

1 Ответ

0 голосов
/ 11 октября 2018

JSON Web Token (JWT) - это открытый стандарт, определяющий компактный и автономный способ безопасной передачи информации между сторонами в виде объекта JSON.JWT - это универсальное имя для следующих типов токенов:

  • JSON Web Signature (JWS): полезная нагрузка кодируется и подписали , чтобы можно было проверить целостность утверждений.

  • JSON Web Encryption (JWE): Их полезная нагрузка равна зашифровано , поэтому претензии скрыты от других сторон.

JWT, JWS and JWE
Изображениебыло извлечено из этой страницы .


Правильно ли делать что-то подобное?JWS(JWE('hello world') с зашифрованным JWE в качестве полезной нагрузки JWS?

Это вложенный JWT , и его концепция определена в RFC 7519 :

JWT, в котором используются вложенные подписи и / или шифрование.Во вложенных JWT JWT используется в качестве полезной нагрузки или значения открытого текста вмещающей структуры JWS или JWE соответственно.

Вы могли бы добавить JWE в качестве требования JWSполезная нагрузка, однако рекомендуется другой способ: Сначала подпишите сообщение, а затем зашифруйте результат , как указано в том же документе:

11.2.Порядок подписи и шифрования

Хотя синтаксически операции подписи и шифрования для вложенных JWT могут применяться в любом порядке, если необходимы как подпись, так и шифрование, обычно производители должныподписать сообщение, а затем зашифровать результат (тем самым зашифровав подпись).Это предотвращает атаки, при которых подпись удаляется, оставляя только зашифрованное сообщение, а также обеспечивая конфиденциальность для подписывающего лица.Кроме того, подписи на зашифрованном тексте не считаются действительными во многих юрисдикциях.

...