2
所以我需要使用自己的EC公钥将AES密钥发送给多个客户端,因为密钥需要发送给所有客户端,所以我不能使用DH交换。我如何加密pregenrated AES密钥并使用EC公钥对其进行加密?如何在Java中使用ECC对密钥进行非对称加密?
EC:椭圆曲线
所以我需要使用自己的EC公钥将AES密钥发送给多个客户端,因为密钥需要发送给所有客户端,所以我不能使用DH交换。我如何加密pregenrated AES密钥并使用EC公钥对其进行加密?如何在Java中使用ECC对密钥进行非对称加密?
EC:椭圆曲线
您可以使用ECIES。它使用短暂静态Diffie-Hellman来创建一个随机的,共享的对称密钥(当然与绑定的私钥相关联),您可以使用它来加密数据或实际上包裹另一个密钥。
确保您保护传输中的数据,但您可能希望使用经过身份验证的加密方式(例如AES-GCM)确保密钥无法通过填充Oracle攻击进行更改或检索。
为此,您可以使用Bouncy Castle(轻量级)API,但您可能必须更改当前的实现以使用AES-GCM。
欢迎来到stackoverflow ...你到目前为止尝试过什么? – DarkSquirrel42