Aes
加密部分已知的純文字
我即將使用 AES128 實現我的第一個加密系統。(仍在嘗試確定使用哪種模式)
加密攻擊者知道 50% 的純文字是否存在弱點?攻擊者是否能夠解密未知的 50%。
讓我解釋。在我的項目中,我需要加密字典(鍵/值列表)。我想攻擊者知道所有的密鑰(通過逆向工程),因為這樣的攻擊者知道或多或少一半的純文字。這會使值的加密更弱嗎?
對於我對選擇純文字攻擊的理解,知道純文字的一部分應該不是問題。但是比我聰明的人的認可會讓我從焦慮中解脫出來。
謝謝
不,部分已知的純文字不會幫助對手猜測未知的內容,在任何通常的安全模式下使用 AES-128 時,例如帶有隨機 IV 的常見CTR(注意:在使用ECB或執行其他操作時可能會有所幫助傻瓜)
這延伸到任何現代密碼,以及對手可以選擇明文的一部分的更一般(並且通常是現實的)假設。所有現代密碼的設計都有一個明確的目標,即對手無法說出任何未知的明文。這形式化為IND-CPA或IND-CCA1(取決於對手可以做什麼的假設)。
另外:在某種程度上,鮮為人知的明文有助於暴力攻擊(旨在通過列舉可能的密鑰來找到密鑰,然後允許完全解密),以及對實現的攻擊。但是,AES-128 目前對暴力破解非常安全,因此可以忽略這種威脅。在第一段中,我默默地做了以下假設: