Hill-Cipher

希爾密碼不是完全安全的

  • June 7, 2014

我正在上密碼學課程,並且有一個家庭作業問題表明希爾密碼沒有完美的安全性。

所以假設我們有一個密碼系統 $ (P,C,K) $ , 在哪裡 $ P = C = \mathbb Z_{26}^N $ 和 $ K $ 是可逆的集合 $ N \times N $ -矩陣模 $ 26 $ . 現在我們也有一些機率分佈 $ P $ 還有一些分佈在 $ K $ .

一個密碼系統具有完美的保密性,如果 $ p(x) = p(x|y), \forall x\in P \wedge y\in C. $

現在,我考慮的一個選項是,根據貝氏規則,如果系統具有完美的保密性,這些集合的基數 $ P,C,K $ 必須履行 $ |K| \ge |C| \ge |P| $ . 但這似乎是這種情況,所以我不能使用它。

這 $ p(x) $ 是原始發行版所說的任何內容。現在 $ p(x|y) $ 不能相同 $ p(x) $ 讓這個作業有意義。

$$ p(x|y) = \frac{p(y|x) p(x)}{p(y)} $$ $ p(y) = \sum p(k) p(d_k(y)) $ ,所以使用密鑰的機率是 $ k \in K $ 乘以解密消息的機率 $ d_k(y) $ . 我會認為 $ p(d_k(y)) $ 和 $ p(x) $ , 作為 $ x $ 是 $ y $ 加密並且當我們總結所有密鑰時,對於任何密鑰都有一些 $ y \in C $ 映射回給定的 $ x \in P $ , 這和 $ p(x). $ 因此 $ p(x|y) = p(y|x) $ . 我認為正如我們所知 $ x $ ,並且每個密鑰將每個明文映射到不同的密文,它們將具有相同的分佈,所以 $ p(x|y) = p(y|x) = p(x) $ .

所以我們有完美的保密性。

現在,我沒有得到什麼?我確定我做錯了什麼,但歡迎提供幫助。

您可能會失去的一種可能性:通常相同的密鑰(相同的矩陣)被重新用於加密許多消息。所以現在嘗試計算總熵 $ M $ 長度- $ N $ 消息和熵 $ N\times N $ 矩陣,並比較什麼時候發生 $ M $ 變大了……

您可能遺漏的另一種可能性是您正在模數工作這一事實的後果 $ 26 $ . 我認為你需要計算出來 $ p(y|x) $ 小心。你可以先考慮什麼時候發生 $ N=1 $ . 你能計算出價值嗎 $ p(y|x) $ 和 $ p(x|y) $ , 對於所有可能的值 $ x,y $ ? 也許寫一個程序來做,或者做案例分析,這樣你就不用考慮了 $ 26\times 26 $ 案例詳盡無遺。我想你會發現這足以讓你弄清楚發生了什麼。

我不想多說,因為這是一個練習,應該解決你自己的練習。

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