Encryption

使用 Diffie-Hellman 密鑰加密/解密數據?

  • March 14, 2019

我的最終目標是使用 AES-128 加密數據,將其發送到其他程序並在那裡解密。在使用 DH 密鑰交換協議時。

我已經使用 DH 生成了一個 256 字節的共享密鑰,但我無法使用該密鑰來適應 128 位加密功能。

我讀到秘密需要通過“基於密鑰的密鑰派生函式”(KBKDF)提供,但據我所知,這會給你一個雜湊,然後你將無法去雜湊……那麼其他程序可以解密消息嗎?

我可以將秘密消息截斷為 128 位嗎?(雖然我認為這不是正確的解決方案)。

散列秘密的加密和解密將如何工作?

邊注。我正在嘗試使用 C 中的 OpenSSL 庫來完成所有這些工作

謝謝。

我讀到秘密需要通過“基於密鑰的密鑰派生函式”(KBKDF)提供,但據我所知,這會給你一個雜湊,然後你將無法去雜湊……那麼其他程序如何可以解密消息嗎?

加密器通過 KDF 發送 DH 共享密鑰,這給了他一個密鑰,他將其用作(例如)AES 密鑰,並使用該 AES 密鑰來加密他的數據。

解密器通過 KDF 發送相同的 DH 共享密鑰,這給了他相同的密鑰,他將其用作 AES 密鑰,並使用該 AES 密鑰來解密他的數據。

無需“反轉” KDF;雙方正向使用

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