有沒有辦法增加暴力破解密碼的時間,但是通過增加密文大小而不是密鑰大小?
如果您的對稱密鑰算法僅限於使用小密鑰大小(例如 40 位),是否有任何方法可以在不增加密鑰大小的情況下增加對暴力攻擊的抵抗力?
我對增加密文消息大小的方法感興趣(例如某種形式的填充,或創建比純文字更大的密文的方法),因為我認為傳輸高達 10 倍的消息仍然是可以承受的原始純文字大小。
有沒有辦法在不增加密鑰大小的情況下大大增加暴力攻擊解密消息所需的時間?
對於現有技術,我可以提供這篇關於在大量隨機數據中隱藏密鑰的論文,以及單詞玩弄認證和加密的Chaffing and winnowing方法。
後來我發現這篇論文問“有什麼方法可以顯著增加對手進行蠻力搜尋的難度,同時保持密鑰大小相同並且不會給合法通信者帶來過多負擔?”,這是我的問題我在問。
有沒有辦法在不增加密鑰大小的情況下大大增加暴力攻擊解密消息所需的時間?
有些事情告訴我你還沒有理解*“蠻力攻擊”是什麼意思。簡而言之,它歸結為:“嘗試所有可能的鍵,直到猜對”*。
作為邏輯結果,當涉及暴力攻擊時,擴大明文或密文不會增加密碼的安全性。你的密碼仍然依賴於它的安全性
…小密鑰大小(比如 40 位)…
這絕對太短,無法使暴力攻擊不可行。
現在,我們不再考慮增加明文和/或密文消息的大小(這甚至可能引入額外的攻擊向量,從而避免暴力攻擊),我們通常會求助於 KDF(密鑰派生函式)來獲得更強的密鑰.
措辭不同:我們不是試圖讓“消息”更強大(這實際上沒有意義),而是讓“秘密”更強大,因為這實際上增加了安全性……這要歸功於 KDF 的算法設計(具有可調整的參數等)。
這樣想——竊賊(閱讀:攻擊者)不在乎你的房子(閱讀:消息)有多大或多小。重要的是鎖的強度(閱讀:密碼算法)和密鑰的強度。一把好的鎖和鑰匙可以在你的後院安全地保存一個小工具棚,而一把帶有易於複製鑰匙的壞鎖可以使軍用掩體像公共公園的長椅一樣容易接近。
總結一下,密碼的安全性主要來自:
- 使用的個人密碼算法,和
- 鑰匙,它應該足夠強大/足夠大,以至於不能簡單地“遍歷所有鑰匙,直到你偶然發現正確的鑰匙”(這就是我們所說的“蠻力攻擊”)
當沒有足夠的密鑰材料可用時,KDF 會派上用場。如果加密算法不支持相應的強密鑰大小,您應該將算法切換為更強大的算法。有充足的、經過嚴格審查的算法可用。
- Nota bene:當然還有一些額外的 nit-bits,如初始化向量等,它們也增加了現代密碼的安全性,但我直言不諱地跳過了所有這些,以保持這個答案簡短而簡單。
$ 256 $ 比特並不“小”——人類在掌握指數增長方面真的很糟糕。我建議閱讀這個問題和 3 個評分最高的答案。如果密鑰具有完整的熵,則完整的搜尋遠遠超出了物理上的可能性——這就是您在問題中考慮的內容。
除此之外:增加數量級是什麼意思?除此之外:您正在嘗試解決我們宇宙範圍內不存在的“問題”。
編輯:原來的問題有 $ 256 $ 代替 $ 56 $ 關鍵位。要回答 $ 56 $ 位案例:這意味著您正在使用 DES(單,而不是三),它已經損壞了幾十年。一個小的常數因子,如 $ 10 $ (或者 $ 100,1000,… $ ) 不會使 DES 再次安全。以下任何內容 $ 128 $ 對於新系統來說,安全性是不可接受的。3DES 仍在遺留系統中使用(只有 2 個獨立的密鑰 $ 112 $ 位) - 但在開發新系統時強烈建議不要這樣做。