Encryption

在給定密鑰和已知明文的情況下找到秘密密碼?

  • January 28, 2016

讓 $ x,y,k $ 分別是明文、密文和密鑰。還假設 $ \operatorname{Enc} $ 是具有大小的分組密碼的加密算法 $ n $ . 所以我們有

$$ \operatorname{Enc}_k(x)=y $$ 我們知道,如果 $ x,y $ 被給予發現 $ k $ 對於大 $ n $ 太難了。現在我們改變問題:

讓 $ k $ (有大小 $ l $ ) 被給予和 $ \operatorname{Enc} $ 秘密。我們想找到函式 $ \operatorname{Enc} $ . 至少有多少 $ (x,y) $ 需要找到 $ \operatorname{Enc} $ ?

正如 fgrieu 在評論中暗示的那樣,通常不可能找到 $ \operatorname{Enc} $ . 否則,您將能夠破解任意分組密碼,因為任何分組密碼的密鑰都可以作為算法的一部分進行轉換。

即使忽略計算成本,也沒有辦法找到 $ \operatorname{Enc} $ 只給一個值 $ k $ , 即使你知道所有對 $ x, y $ 為那把鑰匙。當然有數量有限的(不同的) $ n $ 位塊密碼 $ l $ -bit 鍵,但不同的鍵可以完全獨立。

例如,我可以定義像 AES 一樣工作的 AES’,除了鍵值 $ 42 $ 它改為執行身份置換。您無法通過觀察任何其他鍵的輸出來了解這種差異。

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