[發明專利]一種可執行文件的保護方法和裝置在審
| 申請號: | 201711304325.9 | 申請日: | 2017-12-11 |
| 公開(公告)號: | CN107944233A | 公開(公告)日: | 2018-04-20 |
| 發明(設計)人: | 孫吉平;朱慶芬 | 申請(專利權)人: | 北京深思數盾科技股份有限公司 |
| 主分類號: | G06F21/12 | 分類號: | G06F21/12;G06F21/62 |
| 代理公司: | 北京德琦知識產權代理有限公司11018 | 代理人: | 孫清然,王琦 |
| 地址: | 100193 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 可執行文件 保護 方法 裝置 | ||
技術領域
本發明涉及軟件保護技術,特別是涉及一種可執行文件的保護方法和裝置。
背景技術
軟件作為一種特殊的產品,由于其數字化的特征,從問世起就一直遭受盜版的困擾。盜版的存在不僅給軟件開發者造成了巨大的損失,也極大的阻礙了整個軟件行業的發展。
目前的軟件保護方式通常是對被保護的程序代碼進行處理,以阻止非法用戶對程序代碼的反編譯。例如,加殼作為一種軟件保護方式,是將被保護的程序代碼轉換為虛擬機代碼。程序運行時,虛擬機將模擬程序執行,進入和離開虛擬機都有高級代碼混淆。該種軟件保護方式,通過將虛擬機配合代碼混淆可以達到很好的保護效果,尤其是開發者的私有邏輯,同時,采用高級混淆可充分干擾靜態分析,并且應用程序的解壓縮含有動態密碼,可以讓一切自動脫殼工具失效,有效的阻止.Net、PE程序的直接反編譯。
上述軟件保護方式雖然能可以較大程度地阻止軟件的非法使用,但是在實際應用中,仍存在數據泄露及破壞的問題。
發明內容
有鑒于此,本發明的主要目的在于提供一種可執行文件的保護方法和裝置,可以提高軟件的安全性。
為了達到上述目的,本發明提出的技術方案為:
一種可執行文件的保護方法,包括:
獲取可執行文件的附加數據;
利用預設的加密代碼段對所述附加數據進行加密;
將預設的掛鉤代碼段、所述加密代碼段和預設的解密代碼段,作為殼代碼增加至所述可執行文件中,利用經過所述加密的附加數據替換所述可執行文件中的附加數據;
其中,所述掛鉤代碼段用于在所述可執行文件啟動時,利用所述解密代碼段對文件中的附加數據進行解密,利用解密后的附加數據替換所啟動的可執行文件中的附加數據,在所述可執行文件退出時,利用所述加密代碼段對所述附加數據進行加密,利用加密后的附加數據替換所退出的可執行文件中的附加數據。
較佳地,所述加密代碼段通過調用預設的保護裝置對所述附加數據進行加密。
較佳地,所述保護裝置為精銳5加密鎖。
較佳地,所述獲取可執行文件的附加數據包括:
確定所述可執行文件中最后一個區塊表的文件偏移和區塊表的文件大小;
根據所述文件偏移和區塊表的文件大小,計算所述附加數據的起始地址;
讀取從所述起始地址開始到文件末尾的文件數據,得到所述附加數據。
本發明還提供了一種可執行文件的保護裝置,包括:
附加數據獲取單元,用于獲取可執行文件的附加數據;
附加數據處理單元,用于利用預設的加密代碼段對所述附加數據進行加密;
文件保護單元,用于將預設的掛鉤代碼段、所述加密代碼段和預設的解密代碼段,作為殼代碼增加至所述可執行文件中,利用經過所述加密的附加數據替換所述可執行文件中的附加數據;其中,所述掛鉤代碼段用于在所述可執行文件啟動時,利用所述解密代碼段對文件中的附加數據進行解密,利用解密后的附加數據替換所啟動的可執行文件中的附加數據,在所述可執行文件退出時,利用所述加密代碼段對所述附加數據進行加密,利用加密后的附加數據替換所退出的可執行文件中的附加數據。
較佳地,所述加密代碼段通過調用預設的保護裝置對所述附加數據進行加密。
較佳地,所述保護裝置為精銳5加密鎖。
較佳地,所述附加數據獲取單元,用于確定所述可執行文件中最后一個區塊表的文件偏移和區塊表的文件大小;根據所述文件偏移和區塊表的文件大小,計算所述附加數據的起始地址;讀取從所述起始地址開始到文件末尾的文件數據,得到所述附加數據。
綜上所述,本發明提出的可執行文件的保護方法和裝置,將對可執行文件中的附加數據進行加密保護處理,經過保護后的可執行文件運行時,需要先利用殼代碼對附加數據進行解密,運行結束時再對附加數據進行加密,如此,可以增加可執行文件的反編譯和分析的難度,從而可以大大提高軟件的安全性。
附圖說明
圖1為本發明實施例的方法流程示意圖;
圖2為Windows系統的PE文件結構示意圖;
圖3為本發明實施例的裝置結構示意圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面將結合附圖及具體實施例對本發明作進一步地詳細描述。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京深思數盾科技股份有限公司,未經北京深思數盾科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711304325.9/2.html,轉載請聲明來源鉆瓜專利網。





