Cryptanalysis

堅持仿射密碼練習

  • December 4, 2017

我很累,似乎無法得到以下練習的正確答案:

Alice 向 Bob 發送消息,但他不知道密鑰。他只知道前兩個明文字母是 C 和 R。

  • 密文是turgifsfsferbi
  • 明文是cryptananalyst.

前兩個明文字母是 $ {\rm C} = 2 $ 和 $ {\rm R} = 17 $ , 而對應的密文字母為 $ {\rm T} = 19 $ 和 $ {\rm U} = 20 $ . 加密公式為 $ f(x) = ax+b $ ,所以我們有:

$$ \begin{aligned} 19 &= \phantom{0}2a+b \ 20 &= 17a+b, \end{aligned} $$ 我解決了 $ -1=-15a \implies a=15 $ 和 $ b=3 $ .

對於解密,我們使用公式 $ f(c)=a^{-1}(c-b) \bmod 26 $ . 的倒數 $ a=15 $ 模組 $ 26 $ 是 $ a^{-1} = 7 $ ,所以對於我得到的第一個密文字母:

$$ 7 \times (19-3) \bmod 26 = 7 \times 16 \bmod 26 = 8 = {\rm I} \ne {\rm C}. $$ 那麼我的錯誤在哪裡?

如果我沒看錯你的問題,那麼你犯了兩個簡單的數學錯誤:

  1. 解決方案 $ -1 \equiv -15a \pmod{26} $ 不是 $ a = 15 $ ; 它是 $ a \equiv 15^{-1} \pmod{26} $ , 或者 $ a = 7 $ .
  2. 我不確定你在哪裡 $ b = 3 $ ,但這也不正確。正確的解決方案,使用正確的值 $ a = 7 $ , 是 $ b = 19 - 2a = 19 - 14 = 5 $ .

(FWIW,使用不正確的值 $ a = 15 $ 應該給你 $ b = 15 $ 或者 $ b = 25 $ ,這取決於您插入錯誤的兩個原始同餘項中的哪一個 $ a $ 進入。)

具有正確的值 $ a $ 和 $ b $ ,你的解密公式工作得很好: $ a^{-1} = 7^{-1} \equiv 15 \pmod{26} $ , 所以:

$$ \begin{aligned} 15 \times (19 - 5) &\equiv \phantom{0}2 \pmod{26} \ 15 \times (20 - 5) &\equiv 17 \pmod{26}. \end{aligned} $$ 你的兩個錯誤似乎都是簡單的注意力不集中。也許你只需要從你的家庭作業中休息一下,然後先去睡覺。

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