第五百三十九章 橢圓曲線算法
廣永元的辦公室內,靜悄悄地,只能听到偶爾有手指敲擊鍵盤的聲音。
廣永元站在林鴻的身後,一臉地驚詫和激動。
林鴻的表現,讓他非常震驚的同時也升起了一種期待。
這種期待,並不是因為如果林鴻將其破解出來,他們公司這次就不用遭受損失,而是能夠親眼目睹一個破解大師全稱破解一個游戲的榮譽感。
要是林鴻真的能夠將其破解出來,則說明,他的水平很有可能達到大師級別。
廣永元此刻就好像是一位骨灰級的追星族,懷著激動的心情正在听一個歌手在唱歌,如果林鴻能將這首歌唱出來,則說明他是世界級的天皇巨星!
想象一下那些歌迷的瘋狂就能了解到廣永元此刻的情緒。
前面一路的破解都非常的順利,這也可以理解,畢竟林鴻之前已經對這個流程研究了一番。
現在,他來到了整個破解的關鍵之處,速度也漸漸暫緩了下來。
林鴻一步一步地按著調試鍵,顯示器中的一個窗口將當前程序在內存中的變量名和對應的數值顯示出來,隨著他的動作,不斷地變化著。
原本是十六進制的機器碼,被反編譯軟件直接翻譯成了匯編代碼。
林鴻持續地按了幾十次,最終發現又回到了原來的地方,他的眉頭皺了皺。
一直沒有吭聲的廣永元這個時候輕聲問道︰“怎麼了?”
林鴻道︰“沒事,踫到反破解陷阱了。”
反編譯軟件畢竟是死的。只能根據特定的規則進行翻譯,而一些有經驗的程序員,則會專門進行反破解設置,他們會故意設置一些無效的變量用于干擾視線,甚至可以直接讓你的跟蹤軟件死掉,讓跟蹤無法進行下去。
像現在遇到的這種反破解陷阱,卻是其中非常高級的技術。非常具有迷惑性,一般很難發現,就算是發現了。也得花大量的時間去一一分析。
不過,這卻難不倒林鴻。
他將這段代碼直接通過眼楮“復制”到了超腦系統中,然後進行推演模擬。幾秒鐘就將其中的真正入口找了出來。
然後,他通過調試軟件,修改了其中的兩個地址,重新反編譯,代碼又完全不同了。
廣永元驚訝地張了張口,最終還是沒有問出來。
他完全看不懂,林鴻這一步到底是如何做到的。在他眼里,這段代碼完全沒有問題,要想找出其中的入口,肯定是需要每一步都下斷點跟蹤的。可是他看到林鴻卻只是盯著顯示器看了一會兒,然後便準確地將其找了出來。
這到底是什麼情況?
廣永元告訴自己,這肯定是巧合。
可是,一次可以認為是巧合,接下來卻接二連三地出現了這種情況。
不得不說。《英雄無敵》的確在這方面投入了極大的精力,反破解陷阱竟然隨處可見。
廣永元終于確定,林鴻之前並不是運氣,而是真的擁有能夠僅僅憑借心算,就能準確地找出反破解陷阱入口的能力。
“這就是大師?”廣永元自問道。
在之前,他一直不能理解。為什麼大家說要成為大師,除了時間、毅力和勤奮,還需要天賦,在這一刻,他總算有了深切的體會。
這個時候,林鴻再次來到了一個重要關口。
他回頭看了廣永元一眼,說道︰“難怪這麼難破解,原來是使用了ecc加密算法。”
ecc加密算法,即橢圓曲線加密算法。
其實,加密算法最終可以歸結為數學問題,很多加密算法,就是根據至今未能解決的數學問題而發明的。加密算法安不安全,直接跟這個數學問題有沒有解決直接掛鉤。
而橢圓加密算法的原理也是這樣,問題為︰給定素數p和橢圓曲線e,對q=kp,在已知p,q的情況下求出小于p的正整數k。
可以證明,已知k和p計算q比較容易,而由q和p計算k則比較困難,至今沒有有效的方法來解決這個問題,這就是橢圓曲線加密算法原理之所在。
橢圓曲線公鑰系統是代替rsa的強有力的競爭者,與rsa相比,這個算法還擁有安全性更高、計算量小以及存儲空間佔用小的優點,故而有著非常廣泛的應用。
廣永元身為業內人士,對一些知名的算法自然非常了解。雖然他早有心理準備,但是听到林鴻的話之後,還是被震了一下,畢竟ecc加密算法實在是太出名,太復雜。
廣永元原本升起的希望頓時又破滅了。
難怪這麼多人搞不定這個游戲的破解,原來關鍵在于這個ecc算法。
他幾乎已經對林鴻的這次破解不抱什麼希望。
剛想說什麼安慰一下林鴻,說就算破解不出來也可以理解,可是還沒等他說出口,林鴻又說話了。
“咦?有點意思!沒想到里面還藏了一個rijndael加密算法。”
這次廣永元徹底懵了。
ri什麼算法?
這是什麼算法?在他的腦海中,從來沒有這個算法的任何信息。
而這個時候,他才反應過來,不由愣愣地問道︰“你……這麼快就看到第二個算法了?”
林鴻笑笑,道︰“橢圓加密算法雖然復雜,但是他們並沒有很好的發揮出它的作用。”
在林鴻看來,他們只要將橢圓加密算法充分發揮一下,別人要想破解,難度肯定可以再次翻倍,根本不用再到後面加上這個rijndael算法,簡直有點畫蛇添足的感覺。
廣永元問道︰“你剛剛說的什麼算法?”
“r-i……”
林鴻將這個算法的名字重新拼了一遍,廣永元連忙用筆在紙上記了下來。
最終他確認自己之前從來沒有接觸過,非常的陌生。
林鴻解釋道︰“這個算法是aes標準的一個實現,他們所使用的是其中一個比較小的版本,只有52位,屬于對稱算法……”
rijndael最早由比利時計算機科學家開發,後來被美國國家標準技術研究所選擇作為美國政府加密標準的加密算法,取代早期的數據加密標準des。
正當廣永元在心中驚嘆于林鴻對這些加密算法了若指掌,其中典故順手拈來的時候,卻听到林鴻突然說道︰
“搞定了。居然用了三十三分鐘,不好意思,不小心說了大話,原本以為半個小時就能搞定。”
廣永元︰ |