世紀史詩提示您:看後求收藏(八零中文www.80zw.tw),接著再看更方便。
使用這個軟體。
難就難在了這個解密程式的執行效率太高了,整個解密過程只需要不到200毫秒,在這麼短的時間內,要找出那些鑰匙孔都已經是很困難了,更別提插鑰匙了,就算是你發現了鑰匙孔,等你下手再去插的時候,鑰匙孔就已經不知道轉到哪裡去了。何況這些鑰匙孔的位置差異也太大了,有的*近錶盤裡面的地方,有的*近錶盤的邊緣,但是你又不能插錯順序,只能從第一個字元填到最後一個。跳著填,就算最後所有字元填入的位置都是正確的,程式也會判斷你輸入了錯誤的註冊碼。
雪風做了一個小程式,嵌入到那軟體的開頭,用來完成這個填字遊戲,可是完成最好的一次,也只是成功插入了前面的三個字元,後面的就跟不上了。因為雪風的這個程式多了一個判斷過程的,它得先判斷是不是出現了鑰匙孔,如果出現了,還得判斷是不是該插入鑰匙,插入哪把鑰匙,等判斷完,那原本存在的鑰匙孔已經轉過去,或許就在你判斷上一個鑰匙孔的這段時間裡,下一個鑰匙孔也轉了過去。
此路看來是行不通了,計算機也有它的一個負載極限,雪風只好再去想別的的辦法。既然把這16個字元準確填入解密程式的介面是如此地困難,那麼原本的解密程式又是怎麼完成這一過程的呢?雪風不由好奇起來,自己的寫的那個小程式已經把計算機的執行速度發揮到了極限,尚且無法準確插入,那麼解密程式的設計者,又是如何保證自己的程式就能把16個字元準確填入各自的位置,而且順序還不會錯亂呢?
雪風對自己機器的CPU進行了降低頻率的處理,現在CPU執行的速度只有原來的四分之一,與之相應,那個解密程式執行的速度也就慢了好多,原來需要200毫秒就能完成的解密過程,現在就至少需要一秒才能完成,這就給雪風很富裕的時間來捕捉整個解密過程。
雪風把自己剛才嵌入的用來填字的小程式又剔除了出來,讓解密程式重新執行,他開啟記憶體監視器,然後重新執行那個軟體。現在,他要做的,就是仔細觀察整個解密過程中,記憶體的變化情況。
連續執行了幾次,記憶體監視器幫雪風以50毫秒為一單位,對解密過程中記憶體的變化情況進行了“拍照”,這也是記憶體監視器所能達到的最快速度了。雪風對照了幾次的記錄,發現沒有大致的差異,隨即關掉了軟體,把CPU頻率又回覆到原本的頻率。
雪風把記憶體記錄調了出來,一邊仔細對比,一邊在心裡揣摩著那個解密程式的執行流程。或許,只有雪風這樣的瘋子才會使用這樣的方法來破解軟體,一般人就是有工具的配合,面對如此密密麻麻的資料,頭也已經大了,可是雪風這個傢伙,卻是能一眼就看出其中的變化規律,並由此來推測解密軟體的執行流程。
上次破解量子密碼,雪風采用的方法是快,因為量子密碼紛繁複雜,解密過程十分緩慢,所以雪風選擇了“以快打慢”,所謂的“一快打三慢”,大概就是如此。而這次,雪風又選擇了慢,人為放緩了對方解密程式的解密過程,企圖透過慢鏡頭,找到對方招式中的破綻,這也就是武學招式中的“以靜制動,後發制人”吧。
“奶奶個腿,原來是這麼回事!”很快,雪風就發現了其中的問題,所有拍下來的記憶體記錄中,每個時段的記憶體都是無規律的,只有一個時段,記憶體卻出奇地一致。根據這一點,雪風大膽判斷,程式的設計者當初為了讓自己解密程式能準確填入這個16個字元,在讀入16個字元後,做了一次校對,就是為了做到字元填入時的同步。
這就好象是我們平時的“校表”,在填字遊戲開始前,轉動錶盤的一方把錶盤復原到一個預設的位置,然後和插入鑰匙的一方把各自的表都調整到同一時刻,再約好幾點幾分,到什麼位置,插入第幾把鑰匙。等