gpt4 book ai didi

java - 如何使用 RSA 加密对 http 响应进行加密

转载 作者:行者123 更新时间:2023-12-02 01:06:14 24 4
gpt4 key购买 nike

我正在开发一个 Web 服务,我使用 RSA 加密来加密请求响应。我已与客户端共享公钥,并且可以使用我的私钥解密传入的请求。现在我的问题是如何加密要返回给客户端的响应。我对此有两个选择:

(1) 使用我的私钥加密响应,客户端将使用已共享的公钥对其进行解密。

(2) 要求客户端提供其公钥并使用该公钥对响应进行加密。

请建议使用哪种策略来加密响应?

最佳答案

您无法使用私钥加密,因为公钥应该是公开的。使用私钥加密本质上是不安全的,编程 API 通常不允许使用它。

所以(2)实际上是唯一的选择:拥有客户端公钥并让他们用私钥解密。但这还不是故事的全部:

  1. 公钥需要可信,并且您可能需要设置完整的 PKI 才能信任这些 key ;
  2. 较大的消息无法轻松使用 RSA 加密,因此您可能需要混合加密(加密随机 AES key 并用该 key 加密消息);
  3. 填充预言机攻击非常真实,并且确实适用于 RSA,因此仅执行 RSA 是相当危险的。

这就是为什么通常建议(仅)依赖 TLS。 TLS 并不总是安全的,但它几乎总是比自制方案更安全。

关于java - 如何使用 RSA 加密对 http 响应进行加密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60039874/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com