簡體   English   中英

AES加密中的脆弱IV和鹽

[英]Vulnerable IV and salt in AES encryption

我正在檢查此AES加密/解密項目http://www.codeproject.com/Articles/769741/Csharp-AES-bits-Encryption-Library-with-Salt

但我讀到它具有IV和鹽析的漏洞。 這些漏洞如何發生?

我知道AES不受已知的明文攻擊的影響,但是如果此實現錯誤,是否有簡單的方法可以將其破解並獲取密鑰或明文?

該代碼包含多個版本。 帶有隨機鹽的最新版本( 使用Salt獲取隨機加密結果 )幾乎可以。

如您所見,IV是從PBKDF2生成的,這意味着使用相同的salt和密碼將產生相同的IV 這是不希望有的效果,因為這意味着相同的明文將創建相同的密文。 攻擊者可能僅通過觀察密文來推斷出您再次發送了相同的消息。 當然這在語義上是不安全的,這就是為什么需要一定的隨機性的原因。 解決該問題的一種方法是使用隨機鹽。

該代碼的另一個問題是迭代計數低至1000 如今,應該使用至少60,000到數百萬的迭代次數。 否則,攻擊者很容易嘗試使用許多常用密碼並找到您使用的一個密碼。 因此,增加迭代次數也會嚴重限制離線攻擊者的吞吐量。

該代碼的另一個重要問題是沒有對密文進行身份驗證 根據您的系統體系結構,攻擊者可能會發起填充oracle攻擊並解密您通過多個在線查詢發送的任何密文。 防止這種情況發生的方法是使用經過身份驗證的操作模式(例如GCM或EAX),或者采用帶有強MAC的先加密后MAC方案,例如HMAC-SHA256。

最后一個問題是,PBKDF2用於從密碼中派生密鑰 IV。 這不是一個好主意。

我發現此代碼似乎沒有上面討論的任何問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM