Encryption

混合密碼系統

  • September 17, 2019

我正在使用 RSA (4096) 和 AES GCM (256) 在 A 和 B 之間交換消息。生成 AES 的隨機密鑰,明文消息使用 AES 加密,隨機 AES 密鑰使用 Bs 公鑰加密。加密的消息和密鑰被發送給 B 人。假設他們使用不安全的伺服器,他們沒有離線共享秘密等。B 人有沒有辦法確保 A 發送消息而不是中間人?

在所描述的內容中,沒有任何東西可以確保 B 確定 A 發送了消息。如果沒有 A 方面的一些秘密,這是無法獲得的。

一個常見的解決方案是讓 A 簽署(例如加密的)消息,然後 B 檢查簽名。

PKI(可能使用數字證書實現)可以幫助確保 B 使用 A 的真實公鑰,這是該證明或來源工作所必需的。它還可以幫助確保 A 使用 B 的真實公鑰,而機密性是問題協議所必需的。

GCM 操作是一種經過身份驗證的加密算法,旨在提供數據真實性(完整性)和機密性。所以 B 可以確保 A 是發送者。

引用自:https://crypto.stackexchange.com/questions/74339