Cryptanalysis

已知明文攻擊和選擇明文攻擊有什麼區別?

  • March 24, 2014

我對已知明文攻擊和選擇明文攻擊的概念感到非常困惑。在我看來,這兩個是一回事,但絕對不是。

誰能向我解釋這兩者有何不同?

這是主動攻擊者和被動攻擊者之間的區別:

  • **已知明文攻擊:**攻擊者至少知道明文和密文的一個樣本。在大多數情況下,這是記錄的真實交流。例如,如果使用XOR 密碼plaintext xor ciphertext,這將顯示密鑰為.
  • **選擇明文攻擊:**攻擊者可以指定自己的明文並對其進行加密或簽名。他可以精心製作它以了解算法的特徵。例如他可以提供一個空文本,一個由一個“a”,兩個“aa”組成的文本,……例如:如果使用Vigenère密碼,很容易提取密鑰長度並恢復密鑰通過重複一個字母。

所以第二種攻擊的威力要大得多。

已知的明文攻擊是,如果您知道任何已加密的明文並擁有生成的加密文件,那麼您可以使用有缺陷的加密算法來破解其餘的加密。

範例:我們使用舊的 pkzip 加密方法看到了這一點。在這種情況下,如果您在存檔中有任何未加密的文件,您可以使用它來獲取破解其余文件的密鑰。

選擇明文攻擊是一樣的,只是你可以選擇有用的明文。在這種情況下,攻擊者確定將加密的內容,然後使用結果來確定加密的密鑰(或其他不太有用的資訊)。

範例:這裡的一個很好的範例是 XOR 加密。如果您可以選擇明文並查看結果,則可以使用它們輕鬆確定正在使用的密鑰。

您還可以使用帶有非加鹽雜湊的已知明文攻擊。因此,如果我選擇了一個密碼並且可以看到生成的雜湊,我可以搜尋以查看是否有任何其他類似的雜湊,因此知道它們具有相同的密碼。

所以是的,它們基本上是同一件事,這實際上只是你必須使用什麼或你想要完成什麼的問題。

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