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