zip密碼破解相比RAR為什麼那麼快?

我看到幾個軟體上有破解ZIP和RAR密碼的效率,不知道RAR破解為什麼比ZIP慢


這種軟體算是帶有壓縮功能的歸檔器,具體用了什麼加密演算法和加密流程,ZIP似乎是不太規定的、RAR則是自己可以決定自己的實現。這類東西僅僅看用到的加密演算法基本上差不多,都是AES之類的,至於「破解」速度快不快,除了看本身壓縮演算法解壓縮部分需要的計算量(解壓縮後才能驗證密碼是否正確)還要看具體實現的水平。當然,不依賴早期版本漏洞同時密碼精心選擇不被字典過早猜到的情況下,都應該是「幾乎永遠無法破解」,談不上快慢。


WINRAR的解密我沒做過,所以不太清楚。但是zip的解密是有取巧的辦法的,只需要驗證crc32的值就可以了,無需解壓文件,無形中少了很多計算量。

我自己寫的程序:crackzip/crack.cpp at master · tianheng/crackzip · GitHub,你可以看一看。


rar密碼生成密鑰的時候要做上萬次(0x4000)hash,比較費時。最重要的是有時破解速度還要取決與rar文件的大小。

第一種情況,沒有加密文件名的,就是打開rar可以看到裡面有什麼文件,但是解壓需要密碼。這種破解比較困難。因為需要把文件解壓完,計算crc值,與之前保存的crc值對比,不一樣說明密碼錯誤,一樣說明正確。

第二種情況,加密文件名的情況,rar尾部有16位元組的數據,解密後是固定的(或有明顯特徵),只要對這很短的16位元組解密,判斷,就可以知道密碼是否正確,這種情況會比上面快很多。

好,現在開始說如何破解。用神器hashcat。它可以用gpu計算,對的gpu不光可以用來玩遊戲,還可以用來計算,而且比cpu快很多。

可以從這裡下載,http://hashcat.net,我的筆記本gpu是gtx 750m,大概每秒可以嘗試4000次。網上有人測過gtx 1080 ti,可以每秒4萬次,是我顯卡的整整10倍,我看了下,京東上大概賣8000元。hashcat具體怎麼用先不說了。自己看網站上的說明吧。另外第一種情況hashcat是不支持的。


推薦閱讀:

TAG:破解 | 壓縮軟體 | 密碼 | 壓縮 | WinRAR |