Vigenere
對於很長的密碼密鑰,Vigenere 的密碼真的可以破解嗎?
有人認為,使用 Babbage 的解決方案很容易破解 Vigenere 密碼。但是這個解決方案依賴於找到重複出現的字母組(如果你願意的話)。如果我的密鑰是一千個字母怎麼辦。那麼,同一個詞是否不太可能用相同部分的密鑰加密,導致幾乎不可能破解?
是的,它會變得更難,如果只是因為你首先必須找到密鑰的大小,然後你可能不能使用舊技術。
會安全嗎?不,當然不是。查找單詞可能是使用筆和紙進行分析的最簡單方法,但還有許多其他洩露資訊的方法。您可以對每個位置進行暴力破解,然後檢查每個位置的結果是否有意義(模數密鑰的長度,但這也可以是暴力破解)。請注意,如果洩露任何資訊,則認為密碼被破壞,並且 Vigenère 在位置 N 處開始洩露資訊,即重複密鑰的第一個字元。
當然,如果您的明文比您的密鑰短,那麼您就沒有任何重複,然後它就變成了一次性密碼。您對關鍵字的重複次數越多,數據點就越多(可以全部配對),因此每添加 1000 個密文字元,獲得解決方案就會變得更加容易。
攻擊不一定取決於單詞,而只是英語中的字母頻率(或任何語言,假設統計數據不平坦)。
是的,由於顯而易見的原因,更長的密鑰需要更多的計算才能找到……
…但是,儘管消息長度至少是密鑰長度的三倍,但統計附加似乎非常成功。多年前,當我讀到這個的時候,我簡直不敢相信,做了很多實驗,然後……信服了。:)