自從電子遊戲普及以來,盜版遊戲就與正版遊戲形影不離,那麼你知道盜版遊戲的原理是什麼嗎?
據外媒scienceabc介紹,所有的破解方法,基本上都是對遊戲進行“逆向工程”,即對遊戲進行逆向分析和研究。
針對遊戲的逆向工程會首先檢查“注冊系統”,并找到繞過它的方法。破解者往往會提供一個“補丁”,讓用戶運行“被标識的漏洞”,從而繞過注冊表系統。
通常來說,對遊戲進行盜版有3種辦法:十六進制讀數(Hex-Reading)、十六進制編輯(Hex-Editing)和注冊機(Keygen)。
十六進制讀數是比較容易的一種方法,可以在簡單的遊戲中進行,适用于運行“序列号注冊”的單獨EXE文件。比如,當一個遊戲顯示“序列号輸入錯誤”後,十六進制讀數會搜索這句話,并找到一個可能是序列号的字符串(string)。
不過,許多公司已經找到了如何對付這種方法,所以它隻對特定的遊戲有效。
十六進制編輯與十六進制讀數的原理類似,都是尋找注冊的位置。舉個例子,當你輸入錯誤序列号時,遊戲會顯示“注冊失敗”,這時反彙編器會理解遊戲代碼,并将輸入的序列号與預設值進行比較,并記錄偏移量。
最終,無論輸入什麼序列号,都會識别偏移量,從而破解遊戲。當然,也可以通過修改鍊接遊戲的.dll和.so文件來進行破解,這些文件保存了到期日期和注冊表。
最後一招是注冊機,其原理是驗證服務器端存儲的注冊碼是否與本機相匹配,然後模仿注冊碼生成算法,寫出一模一樣的注冊機。期間,必須先将遊戲脫殼,再反彙編或者用調試器跟蹤。
至今,開發商都很難防止遊戲被破解,雖然加密技術越來越好,但有越來越複雜的方法來進行破解。
,