【发布时间】:2022-10-31 13:52:11
【问题描述】:
JWE 标准定义了一个名为密钥管理模式.根据RFC,有五种:Direct Encryption、Key Encryption、Direct Key Agreement、Key Wrapping、Key Agreement with Key Wrapping。
它们之间有什么区别,拥有这么多的意义何在?
【问题讨论】:
标签: jwe
JWE 标准定义了一个名为密钥管理模式.根据RFC,有五种:Direct Encryption、Key Encryption、Direct Key Agreement、Key Wrapping、Key Agreement with Key Wrapping。
它们之间有什么区别,拥有这么多的意义何在?
【问题讨论】:
标签: jwe
杰威始终使用称为CEK(内容加密密钥)的对称加密密钥加密明文。发送者和接收者并不总是拥有可以用作CEK 的预共享密钥,因此他们必须使用某种形式的公钥密码术才能安全地共享或同意使用CEK。密钥管理模式指定如何确定CEK。
杰威总是提供保密(确保只有接收方可以解密数据),以及正直(确保数据在传输过程中未被第三方更改)。取决于密钥管理模式,它还可以提供验证(确保数据来自它声称的发件人)。
杰威还支持用于多个接收器的令牌,其中每个接收器可能使用不同的密钥管理模式.在这种情况下,杰威不能使用compact serialization,必须使用JSON serialization。此外,无论接收器的数量如何,杰威使用单个CKE 来加密明文。因此,不需要为每个预期的接收者包含不同的密文副本。
以下是支持密钥管理模式经过杰威:
1.直接加密:
CEK。CEK 加密明文。CEK 解密密文。
CEK)。
{ "alg": "dir", "enc": "A256GCM" }
2. 密钥加密:
RSA 密钥。
RSA 密钥。
CEK。CEK 加密明文。CEK。CEK + 密文杰威.CEK。CEK 解密密文。
{ "alg": "RSA-OAEP", "enc": "A256GCM" }
3. 直接密钥协议
EC 密钥(EC 密钥对不能直接用于加密/解密数据)。
EC 公钥/私钥对。CEK。CEK 加密明文。CEK。CEK 解密密文。
{ "alg": "ECDH-ES", "enc": "A256GCM", "epk": { ephemeral public key }, "apu": "(sender)", "apv": "(receiver)" }
4. 密钥包装
CEK。CEK 加密明文。CEK。CEK + 密文杰威.CEK 并使用包装密钥对其进行解密。CEK 解密密文。
{ "alg": "A256KW", "enc": "A256GCM" }
5. 密钥封装的密钥协议
EC 密钥(EC 密钥对不能直接用于加密/解密数据)。
CEK。CEK 加密明文。EC 公钥/私钥对。CEK。CEK + 临时公钥 + 密文杰威.CEK 并使用派生的包装密钥对其进行解密。CEK 解密密文。
{ "alg": "ECDH-ES+A256KW", "enc": "A256GCM", "epk": { ephemeral public key }, "apu": "(sender)", "apv": "(receiver)" }
【讨论】: