首页 > 解决方案 > JWE 和密钥管理模式

问题描述

围绕 JWE 和密钥管理模式展开我的思考。JWE 的目的是防止第三方看到/更改令牌。只有令牌颁发者和资源服务器应该能够使用它。(这是正确的吗?

要加密令牌的有效负载,我们需要生成 CEK(内容加密密钥)。此密钥提供给“enc”JOSE 字段中指定的对称算法。根据https://www.rfc-editor.org/rfc/rfc7516,我们有 5 种方法可以获得 CEK。

  1. 密钥加密。CEK 是随机生成的,负载使用 CEK 加密,CEK 使用非对称算法 - 公钥加密 - 根据“auth”JOSE 字段,并嵌入到令牌中。资源服务器可以发现-推断出对应的私钥,并使用非对称算法对 CEK 进行解密。资源服务器可以通过多种方式发现对应的公钥。其中之一是 JOSE 标头中的 jkw。jkw 表示对应的公钥。
  2. 密钥包装。CEK 是随机生成的,负载使用 CEK 加密,CEK 使用对称算法加密,并嵌入到令牌中。
    在这种情况下,资源服务器如何破译 CEK?
  3. 直接密钥协议。CEK 是根据密钥协商算法决定的。
    在这种情况下,发行者和资源服务器是否一起工作以首先获得 CEK?他们是否会在生成 CEK 之前保持会话一段时间?这不规范吗?
  4. 与密钥包装的密钥协议。CEK 是随机生成的。
    那我们为什么要提到关键协议呢?
  5. 直接加密。CEK 带外交换。

感谢您的任何反馈。

标签: securityoauth-2.0jwtjwekey-management

解决方案


推荐阅读