我只要給zip壓縮包設置一個複雜的密碼,世界上任何一個黑客都破解不了了嗎?

10 個回答
犍为真人
2019-05-26

這個問題很好,在軟件破解領域,屬於一個非常經典的問題。

軟件破解在過去很流行,就是一個Windows上面的軟件,需要輸入註冊碼、序列號之類的東西。高手往往可以輕鬆破解出註冊碼。還有一種叫做黑客,就是說一個網站需要輸入密碼才能進去,而黑客通過一定手段,可以設法“破解”密碼或者繞開正常登錄機制。不管密碼設置設多複雜,都難厄運。

於是就有人問,我有一個壓縮包被加密了,有沒有大牛可以破解的?得到的答案基本都是驚人的一致,除了窮舉法,再沒有其他辦法了!不論多高的高手,都沒有辦法“秒破”。密碼太簡單除外。

但是在軟件破解裡面,不論註冊碼算法多麼複雜,註冊碼多長,哪怕是一萬個字符,總是可以破解的。甚至出現一種聲音,理論上沒有不可破解的軟件。這裡說的理論上,沒有包括窮舉。換句話說,理論上都可以“秒破”。

現在的問題,就在於,為什麼會出現這種情況?為什麼軟件註冊碼可以破解,網站登錄可以破解,而壓縮包這麼一個看似簡單的東西卻破解不了呢(密碼太簡單除外)?

軟件註冊碼保護,屬於基於算法的保護。也就是說只要軟件敢公開源代碼,敢公開註冊碼生成算法,則分分鐘就被破解了。比方說office軟件在安裝時就要輸入序列號。它的生成算法是不變的,一旦搞到算法,就能馬上做一個序列號生成器,不管裝在誰的電腦上,都適用,每套office的算法都一樣。顯然,像office這樣的收費軟件不可能公開序列號生成算法。但是它要運行,必然在“我”的電腦上運行(而不是服務器),它的內存必然“我”理論上能完全掌握。只要有耐心,“我”就一定可以反編譯、反彙編、再加上內存分析,從而就一定可以找到算法。除非它不在“我”的電腦上正常運行。

黑客破解,密碼和驗證算法在服務器,不在“我”的電腦上,則不像軟件破解那樣理論上所有都可破解,而是“碰運氣”。它主要是找服務器漏洞,運氣好就找到了,運氣不好找不到。找到了後,就能輕鬆繞開密碼驗證,或輕鬆截獲或查詢密碼。

而壓縮包密碼的破解,則與上面兩種情況有了很大的不同!

壓縮包的加密,不是基於算法的保密,而是基於密鑰的保密。軟件破解是基於算法的保密。軟件破解是知道算法後,根據算法生產註冊碼,通過驗證註冊碼判斷是否合法用戶。那麼有了算法,我們就可以自己算出註冊碼,或者乾脆把判斷註冊碼是否合法的邏輯顛倒一下。比如把代碼改成,如果註冊碼錯誤,就打開主界面正常使用。

而壓縮包的算法是公開的,它加密用的基本以AES算法為主,任何人都可以去網上學習。壓縮包不是程序,不是代碼,不是機器指令。而是實際的加密數據。壓縮包不驗證密碼,沒有密碼正確就顯示內容,密碼錯誤就不顯示這樣的邏輯。我們輸入的密碼是用來全文解密的。隨便輸入一個密碼都可以解密,只不過解密出來的東西可能是亂碼。多數壓縮包管理軟件會提示crc校驗失敗,這就是說東西已經解密了,但是是錯的。正規的提示不會告訴你密碼錯誤,因為壓縮包中壓根兒就並沒有以任何形式存儲密碼,它無法立刻檢測到底什麼密碼才是正確的。只有你用這個錯誤密碼解密到一半,發現“亂碼”後才知道。

我們可以這樣理解,軟件破解中,軟件作者一定,百分比,無一例外地可以反查一個軟件的註冊碼。而壓縮包破解中,任何人都無法通過壓縮包本身反查密碼,包括寫壓縮包管理軟件的作者。剛說過了,壓縮包中壓根兒就沒有關於解密密碼的任何信息!

剛已經說到,壓縮包的加密算法基本是公開的。這裡順便提一下一個思想。有時候,越是公開的東西,越是安全。為什麼?因為這樣的加密算法經過了無數計算機專家、密碼學家、數學家的考驗。算法公開,而密鑰(密碼)保密,就成了加密解密的最佳實踐。多數嘗試自己發明一套加密算法的想法都是愚蠢的(密碼學專家的專業研究除外)。

所以說,壓縮包加密之所以安全,可以認為它是加密算法公開,而密鑰保密的成功典範。它是如此的安全,目前沒有任何人可以通過除窮舉法以外的其他任何辦法破解(未來是否能找到這些公開加密算法的漏洞不好說)。

======分割線======

看到評論很多人關心如果用窮舉法,到底需要多長時間。下邊我們不妨來算算。內容有點長,看結論就直接看粗體字。不太相信的,想自己算的可以詳細看計算過程。

目前zip、rar的主流加密算法是AES。AES分3種規格,主流是256位,此外還有192位、128位(位數越高安全性越高)。128位是指密碼的長度是128計算機位,即16字節。大致相當於20幾個英文字符。換句話說,AES-128加密,用20幾個隨機英文字符足夠安全了。我們就姑且只討論128位的。256位的更難破。

128位密鑰,其可能性總共2^128=3.4×10^38。平均破解次數那就是除以2了,1.7×10^38。現在最厲害的超算之一是天河二號,排名前五,其極限速度是每秒運算6億億次。這個速度是指最簡單的運算,那就是整數加法。普通電腦CPU主頻4GHz,極限速度就是40億次運算每秒。如果是8核CPU就乘以8。那麼一臺天河二號超算大約相當於1百萬臺普通電腦。

概括一下,AES-128加密平均需要窮舉1.7×10^38次可以破解。一臺天河二號超算極限運算速度一秒6*10^16次。這個運算是指整數加法運算,我們就姑且把複雜的AES解密看作加法這麼簡單吧。接下來就是一看就懂的算式:1.7×10^38÷6×10^16=2.8×10^21秒。即90萬億年。

看到沒有,一臺天河二號超算——全球排名前五的超算,破解一個足夠複雜密碼的壓縮包,平均至少需要90萬億年。或許你會反駁,找第一名啊,好吧,第一名也就是天河二號速度的不到4倍。你還可以這樣算,動用一億臺天河二號同時算,也就是把時間由90萬億年變成了90萬年,依然是天文數字。

Japan学生藤原
2019-05-05

哪裡需要幾萬年,現在很多爆庫軟件都用了多線程技術,對電腦配置吃CPU線程

現在很多加密,不管你怎麼加密,最多1-2天給你解密,

比如:採用多線程技術,比如1秒同時運行10萬線程解密,等於每一秒就計算了10萬次解密 ,只要資金夠多,不停的加服務器,什麼密碼都給你解密掉,

D加密耗資幾千萬美金研發的加密系統,輕鬆被黑客破解掉,區區ZIP壓縮密碼,還需要幾萬年?在當今算力計算機面前,分分鐘突破每秒百萬億次運算

圆窗观点
2019-05-28

原理可行。

在目前,大銀行的密碼,大多是一個超過三百位的質數之積,只要這樣設置的密碼,不僅可以做到使用方便,且幾乎無法暴力破解。

如果這段話難理解,那就把它簡化為一句,只要設置個很長很長的密碼,還沒有規律,那別人基本就破解不了。

之前,在一次密碼破解大賽中,凡比較短的密碼,全部都被破解。嘿嘿,別以為自己聰明,別人猜不猜你的密碼,其實破解者根本就不用去猜你的密碼,他只是把所有密碼都組合都試一次,問題自然解決。這全部試一次的方式,就叫做暴力解碼。

但是,若遇到特別長的密碼,比如超過三百位以上,甚至一千位,那麼,暴力解法就不靈了,原因很簡單,算不下去了,這樣的計算量,是目前所有電腦,都搞不定的。別因為電腦的計算很神,可是它也有上限。

可是,另外一個問題來了,那就是這麼長的密碼,你自己也記不住,只好把它寫在紙上,到時慢慢輸入,但估計你也有很大機會,輸錯密碼。如果寫在電腦上,對自己是方便了,可對黑客也方便了,直接偷密碼就行。

還有另外一種方式,就是蘋果手機採用的方式,改為限制輸入次數,也可以防止暴力破解,道理很簡單,輸入的錯誤次數多了,就鎖定文件。但若遇到個二愣子,他搶先胡亂輸入後,也會把你的文件鎖死。

作為普通人,只要設置個20位左右的密碼,黑客也就懶得動手了,你又沒什麼驚天大祕密,密碼搞得差不多就行了。

IT与隐私安全
2019-04-18

跟加密方式和密碼複雜度有關。理論上任何加密都可以破解,只是時間問題。

此前的zip加密方式很簡單,並未採用AES-256加密,用一個小軟件,不需要暴力破解,只需要幾秒就可以打開。

現在winrar引入了AES-256加密,那安全性就與密碼複雜度有關了。採用窮舉法暴力破解,如果密碼簡單,比如123456,那麼最少只需要嘗試一次,最多嘗試10的6次方次,即100萬次,就可以破解,如果每秒可窮舉60次,4.6小時可以完成。

而採用大寫字母、小寫字母、數字和特殊字符組成的,長度超過15位的密碼,則需要78的15次方次,即2.4後面27個0。用一臺每秒1億億次的超級計算機窮舉,假設一秒可以窮舉1億億次(實際完全達不到),則需要7.7萬億年,如果用一萬臺同時窮舉,也需要7.7億年。用1萬臺量子計算機,假設速度是當前超算的1億倍,也需要7.7年。

建議使用keepass軟件保存敏感數據,開源、高強度加密。支持使用電腦中的任意文件作為key,和密碼一起加密文件,雙重保護。僅知道密碼,沒有key文件,一樣解不開。key加密方式,強度遠超中文密碼。

keepass既可保存密碼登敏感信息,也可把敏感文件作為附件扔裡面保存。

得胜居经典时尚
2019-06-02

zip可以基於已知明文的破解。明文就是你加密前的內容。有人要說了那不廢話麼,要知道加密的文件還用破解麼。不然,比如你的壓縮包包含很多文件,而其中有個文件別人能得到加密前的文件,那其它文件就可以被破解了。其二就算我不知道加密前的文件內容,但是可以推測,因為一般一個類型的文件,文件頭部的幾個字節是固定的,因此可以按文件類型去嘗試破解,一般也容易得手。所以zip是不可靠的弱加密。rar為了防止已知明文被破解,甚至可以選擇把目錄和文件名都加密了。

公务员技能
2019-05-27

理論上,採取窮舉法任何密碼都可破解。關鍵是時間和資源成本的衡量。貌似某大學的一個助教採取特殊碰撞算法大幅提高了MD5密碼的破解速度,不知真假,不敢隨意評論。

湖南金桥电脑
2019-05-26

十年前拍了前女友很多照片,包括裸照,因為自己做電腦的所以保密工作做的很好,全部壓縮打包設了複雜密碼,然後在放文件夾,再壓縮打包設密碼,一直存在電腦裡,早幾年突然想起還有這個,特別想回味一下,哪知道最後一道密碼怎麼也套不開了,真的是全忘了,真是失誤啊!

实体企业加油
2019-04-21

我就是把密碼設置成這樣,你再厲害的黑客到死都破不出來,不服可以來戰,WMV98dfhgvcc8745%89@#g45+sdfmnj:6✔

瞄准我的蛋蛋
2019-05-27

10年前把拍的照片整成壓縮包,設置了一個比較複雜的密碼,過了兩三年後發現把密碼忘了~~~然後就杯具了~~~~3年前試過用自制字典破解,把自己常用的數字,字母,標點,字符組成上百萬種組合,折騰了很久也沒搞定~~~現在壓縮包還在網盤裡存著,等待未來的計算機能暴力破解的那一天~~

那些随风逝去的青春
2019-04-21

我想問問可不可以物理破解,用電子顯微鏡掃描內部字節,甚至原子的排列方式,加密應該不是每個字節都加密,這樣也太複雜了,掃描完後再把他的鎖去掉,這樣就可以看到部分信息了,可行嗎?

相關推薦

推薦中...