[發明專利]校驗熱補丁或者動態庫的方法及裝置有效
| 申請號: | 201610234498.7 | 申請日: | 2016-04-14 |
| 公開(公告)號: | CN107301105B | 公開(公告)日: | 2020-03-10 |
| 發明(設計)人: | 高峰 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F11/10 | 分類號: | G06F11/10 |
| 代理公司: | 北京中博世達專利商標代理有限公司 11274 | 代理人: | 申健 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 校驗 補丁 或者 動態 方法 裝置 | ||
本發明公開了一種校驗熱補丁或者動態庫的方法及裝置,涉及信息技術領域,可以降低校驗熱補丁文件或者動態庫文件的時延,進而可以提升用戶體驗。所述方法包括:首先獲取目標程序符號文件的代碼段,其次根據目標程序符號文件的代碼段,計算第一校驗值,其中,第一校驗值為目標程序對應的校驗值,然后加載第一文件,并獲取第二校驗值,其中,第一文件為熱補丁文件或者動態庫文件,第二校驗值為熱補丁文件或者動態庫文件的校驗值,最后判斷第一校驗值與第二校驗值是否相同,若第一校驗值與第二校驗值相同,則運行熱補丁文件或者動態庫文件。本發明適用于在加載熱補丁文件或者動態庫文件之前,校驗熱補丁文件或者動態庫文件的安全性。
技術領域
本發明涉及信息技術領域,特別涉及一種校驗熱補丁或者動態庫的方法及裝置。
背景技術
應用程序在運行的過程中時常出現問題,當應用程序在運行的過程中出現問題時,程序人員通常需要將熱補丁文件或者動態庫文件導入至出現問題的目標程序,以使得跳轉至熱補丁文件或者動態庫文件中的新目標函數的指令位置運行,然而在將熱補丁文件或者動態庫文件導入到目標程序時,目標程序需要對熱補丁文件或者動態庫文件進行校驗,以確定該熱補丁文件以及動態庫文件的安全性。
目前,一種校驗熱補丁文件或者動態庫文件的方法,目標程序首先解析將導入的熱補丁文件或者動態庫文件,獲取熱補丁文件或者動態庫文件中攜帶的代碼段的校驗值,然后計算自身的代碼段對應的循環冗余碼(英文全稱:Cyclic Redundancy Code,英文縮寫:CRC)校驗值,最后判斷自身代碼段對應的CRC校驗值與熱補丁文件或者動態庫文件中攜帶的校驗值是否相同,若相同,則將該熱補丁文件或者動態庫文件導入其中。
然而,當目標程序在加載熱補丁文件或者動態庫文件時,校驗熱補丁文件或者動態庫文件,由于當目標程序在加載熱補丁文件或者動態庫文件時,需要計算自身的CRC校驗值,并且計算目標程序代碼段的CRC校驗值需要較長的時間,從而導致校驗熱補丁文件或者動態庫文件的時延較長,進而導致用戶的體驗度較低。
發明內容
本發明提供一種檢驗熱補丁或者動態庫的方法及裝置,可以降低檢驗熱補丁文件或者動態庫文件的時延,進而可以提升用戶的體驗度。
第一方面,本發明實施例提供了一種校驗熱補丁或者動態庫的方法,包括:
獲取目標程序符號文件的代碼段;
根據所述目標程序符號文件的代碼段,計算第一校驗值,所述第一校驗值為所述目標程序對應的校驗值;
加載第一文件,并獲取第二校驗值,所述第一文件為熱補丁文件或者動態庫文件,所述第二校驗值為所述熱補丁文件或者所述動態庫文件的校驗值;
判斷所述第一校驗值與所述第二校驗值是否相同;
若所述第一校驗值與所述第二校驗值相同,則運行所述熱補丁文件或者所述動態庫文件。
結合第一方面,在第一方面的第一種可能的實現方式中,
所述獲取目標程序符號文件的代碼段的步驟,之前還包括:
在所述目標程序代碼中添加第一全局變量;
根據所述目標程序代碼生成所述目標程序的符號文件,所述目標程序的符號文件中攜帶有所述第一全局變量;
所述根據所述目標程序的符號文件的代碼段,計算第一校驗值的步驟,具體包括:
根據所述目標程序的符號文件的代碼段,進行消息摘要算法第五版MD5計算,得到所述第一校驗值。
第一方面的第一種可能的實現方式,通過將目標程序的符號文件的代碼段,進行MD5計算,能夠得到第一校驗值,由于MD5計算比CRC計算的安全性更高,從而可以進一步地提高校驗熱補丁文件或者動態庫文件的安全性。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610234498.7/2.html,轉載請聲明來源鉆瓜專利網。





