[发明专利]校验热补丁或者动态库的方法及装置有效
申请号: | 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.vipzhuanli.com/pat/books/201610234498.7/2.html,转载请声明来源钻瓜专利网。