运行中映像文件验证的方法.pdf

上传人:奻奴 文档编号:628886 上传时间:2018-02-28 格式:PDF 页数:6 大小:685.63KB
返回 下载 相关 举报
摘要
申请专利号:

CN201410379381.9

申请日:

2014.08.04

公开号:

CN104123510A

公开日:

2014.10.29

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 21/62申请日:20140804|||公开

IPC分类号:

G06F21/62(2013.01)I

主分类号:

G06F21/62

申请人:

上海斐讯数据通信技术有限公司

发明人:

常玉芳; 刘驰

地址:

201616 上海市松江区思贤路3666号

优先权:

专利代理机构:

代理人:

PDF下载: PDF下载
内容摘要

本发明提出了一种运行中映像文件验证的方法,其根据算法计算得到初始的验证值,再将初始的验证值与第一映像文件合并生成第二映像文件;由引导程序加载第二映像文件,先取出初始的验证值保存到非易失存储器,再运行第一映像文件;初始化系统和验证模块从而激活验证模块,验证模块定期运用所述算法计算出第一映像文件的验证值;比较所述验证值和所述初始的验证值,若相等,则等待验证模块进行下次验证;若不相等,则提示告警。本发明是针对运行中的映像文件进行验证,当内存中的映像文件运行时,映像文件中的验证模块会定期的对映像文件进行验证,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。

权利要求书

1.  一种运行中映像文件验证的方法,其特征在于,包括以下步骤:
步骤1:根据算法将由源文件编译生成的第一映像文件计算得到初始的验证值,再将所述初始的验证值与第一映像文件合并生成第二映像文件;
步骤2:由引导程序加载第二映像文件,先取出所述初始的验证值保存到非易失存储器,再运行第二映像文件中的第一映像文件;
步骤3:在第一映像文件运行的过程中,初始化系统和验证模块以激活验证模块,验证模块定期运用所述算法计算出第一映像文件的验证值;
步骤4:比较所述验证值和所述初始的验证值,若相等,则等待验证模块进行下次验证;若不相等,则提示告警。

2.
  根据权利要求1所述的运行中映像文件验证的方法,其特征在于,所述第一映像文件包括代码段、数据段和BBS段,通过所述算法得到验证值的步骤是计算第一映像文件中的代码段。

3.
  根据权利要求1所述的运行中映像文件验证的方法,其特征在于,所述非易失存储器包括电可擦可编程只读存储器。

4.
  根据权利要求1所述的运行中映像文件验证的方法,其特征在于,所述提示告警的方式包括不间断通告用户系统不稳定或打开蜂鸣器。

5.
  根据权利要求1所述的运行中映像文件验证的方法,其特征在于,在初始化验证模块时,创建一个定时器,验证模块首先判断定时器是否超时,若未超时,则继续等待,若超时,则再运用所述算法计算出第一映像文件的验证值。

6.
  根据权利要求5所述的运行中映像文件验证的方法,其特征在于,在所述验证值和所述初始的验证值相等时,创建新的定时器,验证模块根据新的定时器超时进行下次验证。

说明书

运行中映像文件验证的方法
技术领域
本发明涉及一种可执行系统的映像文件的验证方法,尤其是在映像文件的运行中验证。
背景技术
目前,对于可执行系统的映像文件的验证方法,主要是将未运行的映像文件本身进行加密,防止映像文件在存储或传输过程中被篡改。而对运行过程中的映像文件则没有相关的技术方法进行验证。
2008年10月15日公开、公告号为CN101288083、名称为“程序可执行映像加密”的专利文献公开了一种对未运行的映像文件进行加密的方法,通过使用源文件中的命令将可执行映像的节区标记为要被加密,并编译所述可执行映像以生产目标文件,使用连接器来连接所述可执行映像中的一个或更多个,以产生最终的可执行映像,将所述连接的可执行映像传递至连接器之后的加密引擎,以对重定位修正补丁表以及被标记为加密的可执行映像的节区进行加密,并在加载时间对该可执行映像进行解密、重定位和执行。
另,2014年3月26日公开、公开号为CN103679052A的专利技术文献也是公开了一种对未运行的映像文件进行加密的方法,将整个映像文件实施认证算法以得到一个固定大小的数据作为认证摘要,并将所述认证摘要添加到映像文件尾部;将含认证摘要的映像文件经过加密引擎进行加密以生成一个加密映像文件。在验证时,将加密的映像文件经过解密引擎进行解密,去除解密后的映像文件尾部的认证摘要,然后再试试相同的认证算法以得到新的认证摘要;将新的认证摘要与之前的认证摘要进行对比,如果两者相同,则说明映像文件未被篡改,若两者不同,则说明映像文件已经被篡改。
现有的验证方法只能在映像文件存储或传输过程中,对映像进行加密 保护,但是在运行映像文件之后被篡改或破坏之后,用户就无法得知,当映像文件遭到严重的破坏时可能会导致系统瘫痪和用户丢失重要的数据。
发明内容
本发明需解决的技术问题是提供一种运行中映像文件验证的方法,是针对运行中的映像文件进行验证的,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。
为了解决上述的问题,本发明设计了一种运行中映像文件验证的方法,其包括以下步骤:步骤1:根据算法将由源文件编译生成的第一映像文件计算得到初始的验证值,再将所述初始的验证值与第一映像文件合并生成第二映像文件;步骤2:由引导程序加载第二映像文件,先取出所述初始的验证值保存到非易失存储器,再运行第二映像文件中的第一映像文件;步骤3:在第一映像文件运行的过程中,初始化系统和验证模块以激活验证模块,验证模块定期运用所述算法计算出第一映像文件的验证值;步骤4:比较所述验证值和所述初始的验证值,若相等,则等待验证模块进行下次验证;若不相等,则提示告警。
作为本发明进一步改进,所述第一映像文件包括代码段、数据段和BSS段,通过所述算法得到验证值的步骤是计算第一映像文件中的代码段。
作为本发明进一步改进,所述非易失存储器包括电可擦可编程只读存储器。
作为本发明进一步改进,所述提示告警的方式包括不间断通告用户系统不稳定或打开蜂鸣器。
作为本发明进一步改进,在初始化验证模块时,创建一个定时器,验证模块首先判断定时器是否超时,若未超时,则继续等待,若超时,则再运用所述算法计算出第一映像文件的验证值。
作为本发明进一步改进,在所述验证值和所述初始的验证值相等时,创建新的定时器,验证模块根据新的定时器超时进行下次验证。
本发明是针对运行中的映像文件进行验证,当内存中的映像文件运行时,映像文件中的验证模块会定期的对映像文件进行验证,防止映像文件 在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。
附图说明
图1是本发明运行中映像文件验证的方法的流程图;
图2是本发明第二映像文件的结构图;
图3是本发明第一映像文件的结构图。
具体实施方式
为了使本领域相关技术人员更好地理解本发明的技术方案,下面将结合附图和实施方式,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。
本发明提供了一种运行中映像文件验证的方法,是针对运行中的映像文件进行验证的,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。
本发明是对运行中的映像文件进行验证,其包括以下步骤,如图1所示:
步骤1:首先,映像文件是通过源文件编译而生成的,本发明根据算法将由源文件编译生成的第一映像文件计算得到初始的验证值V1,再将初始的验证值与第一映像文件合并生成第二映像文件,如图2所示第二映像文件的结构。在本实施例中,算法是成熟的算法MD5,但不限于此算法。如图3所示,所述第一映像文件包括代码段、数据段和BSS段,本实施例,通过算法得到验证值的步骤是计算第一映像文件中的代码段。代码段又称文本段,通常用来存放程序执行代码,属于只读,验证模块包含在代码段中。数据段通常用来存放程序中已经出售的全局变量,可读写。BSS段通常用来存放程序中未初始化的全局变量,内容一般会由系统初始化为0,不占用可执行文件的空间。由于只有代码段是只读,本发明的验证手段可只针对映像文件的代码段进行验证即可。
步骤2:由引导程序加载第二映像文件,先取出初始的验证值V1保存到非易失存储器,再运行第二映像文件中的第一映像文件。在本实施例中,非易失存储器为电可擦可编程只读存储器,但不限于此存储器。由于初始的验证值V1保存在非易失存储器中,因而,运行第一映像文件时,不会影响到初始的验证值V1。
步骤3:在第一映像文件运行的过程中,首先系统和验证模块会进行初始化以激活验证模块,验证模块定期运用算法计算出第一映像文件的验证值V2。该算法与步骤1中的算法应当保持一致。在本实施例中,在初始化验证模块,会创建一个定时器从而实现验证模块定期运用算法计算出第一映像文件的验证值。首先,验证模块判断定时器是否超时,若未超时,则继续等待,若超时(即到了定时器定制的时间),验证模块运用算法计算出第一映像文件的验证值V2。
步骤4:得到运行中第一映像文件的验证值V2后,再比较验证值V2和初始的验证值V1,若验证值V2和初始的验证值V1相等,说明第一映像文件未被修改,等待下次验证。本实施例中,再创建出新的定时器,验证模块根据新的定时器是否超时进行下次验证。若验证值V2和初始的验证值V1不相等,说明第一映像文件已经被修改或损坏,验证模块会提示告警,提示告警的方式包括不间断通告用户系统不稳定或打开蜂鸣器。
本发明是针对运行中的映像文件进行验证,当内存中的映像文件运行时,映像文件中的验证模块会定期的对映像文件进行验证,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。
以上仅表达了本发明的一种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

运行中映像文件验证的方法.pdf_第1页
第1页 / 共6页
运行中映像文件验证的方法.pdf_第2页
第2页 / 共6页
运行中映像文件验证的方法.pdf_第3页
第3页 / 共6页
点击查看更多>>
资源描述

《运行中映像文件验证的方法.pdf》由会员分享,可在线阅读,更多相关《运行中映像文件验证的方法.pdf(6页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN104123510A43申请公布日20141029CN104123510A21申请号201410379381922申请日20140804G06F21/6220130171申请人上海斐讯数据通信技术有限公司地址201616上海市松江区思贤路3666号72发明人常玉芳刘驰54发明名称运行中映像文件验证的方法57摘要本发明提出了一种运行中映像文件验证的方法,其根据算法计算得到初始的验证值,再将初始的验证值与第一映像文件合并生成第二映像文件;由引导程序加载第二映像文件,先取出初始的验证值保存到非易失存储器,再运行第一映像文件;初始化系统和验证模块从而激活验证模块,验证模块定期运用所述。

2、算法计算出第一映像文件的验证值;比较所述验证值和所述初始的验证值,若相等,则等待验证模块进行下次验证;若不相等,则提示告警。本发明是针对运行中的映像文件进行验证,当内存中的映像文件运行时,映像文件中的验证模块会定期的对映像文件进行验证,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。51INTCL权利要求书1页说明书3页附图1页19中华人民共和国国家知识产权局12发明专利申请权利要求书1页说明书3页附图1页10申请公布号CN104123510ACN104123510A1/1页21一种运行中映像文件验证的方法,其特征在于,包括以下步骤步骤1根据算法将由源文件编译。

3、生成的第一映像文件计算得到初始的验证值,再将所述初始的验证值与第一映像文件合并生成第二映像文件;步骤2由引导程序加载第二映像文件,先取出所述初始的验证值保存到非易失存储器,再运行第二映像文件中的第一映像文件;步骤3在第一映像文件运行的过程中,初始化系统和验证模块以激活验证模块,验证模块定期运用所述算法计算出第一映像文件的验证值;步骤4比较所述验证值和所述初始的验证值,若相等,则等待验证模块进行下次验证;若不相等,则提示告警。2根据权利要求1所述的运行中映像文件验证的方法,其特征在于,所述第一映像文件包括代码段、数据段和BBS段,通过所述算法得到验证值的步骤是计算第一映像文件中的代码段。3根据权。

4、利要求1所述的运行中映像文件验证的方法,其特征在于,所述非易失存储器包括电可擦可编程只读存储器。4根据权利要求1所述的运行中映像文件验证的方法,其特征在于,所述提示告警的方式包括不间断通告用户系统不稳定或打开蜂鸣器。5根据权利要求1所述的运行中映像文件验证的方法,其特征在于,在初始化验证模块时,创建一个定时器,验证模块首先判断定时器是否超时,若未超时,则继续等待,若超时,则再运用所述算法计算出第一映像文件的验证值。6根据权利要求5所述的运行中映像文件验证的方法,其特征在于,在所述验证值和所述初始的验证值相等时,创建新的定时器,验证模块根据新的定时器超时进行下次验证。权利要求书CN1041235。

5、10A1/3页3运行中映像文件验证的方法技术领域0001本发明涉及一种可执行系统的映像文件的验证方法,尤其是在映像文件的运行中验证。背景技术0002目前,对于可执行系统的映像文件的验证方法,主要是将未运行的映像文件本身进行加密,防止映像文件在存储或传输过程中被篡改。而对运行过程中的映像文件则没有相关的技术方法进行验证。00032008年10月15日公开、公告号为CN101288083、名称为“程序可执行映像加密”的专利文献公开了一种对未运行的映像文件进行加密的方法,通过使用源文件中的命令将可执行映像的节区标记为要被加密,并编译所述可执行映像以生产目标文件,使用连接器来连接所述可执行映像中的一个。

6、或更多个,以产生最终的可执行映像,将所述连接的可执行映像传递至连接器之后的加密引擎,以对重定位修正补丁表以及被标记为加密的可执行映像的节区进行加密,并在加载时间对该可执行映像进行解密、重定位和执行。0004另,2014年3月26日公开、公开号为CN103679052A的专利技术文献也是公开了一种对未运行的映像文件进行加密的方法,将整个映像文件实施认证算法以得到一个固定大小的数据作为认证摘要,并将所述认证摘要添加到映像文件尾部;将含认证摘要的映像文件经过加密引擎进行加密以生成一个加密映像文件。在验证时,将加密的映像文件经过解密引擎进行解密,去除解密后的映像文件尾部的认证摘要,然后再试试相同的认证。

7、算法以得到新的认证摘要;将新的认证摘要与之前的认证摘要进行对比,如果两者相同,则说明映像文件未被篡改,若两者不同,则说明映像文件已经被篡改。0005现有的验证方法只能在映像文件存储或传输过程中,对映像进行加密保护,但是在运行映像文件之后被篡改或破坏之后,用户就无法得知,当映像文件遭到严重的破坏时可能会导致系统瘫痪和用户丢失重要的数据。发明内容0006本发明需解决的技术问题是提供一种运行中映像文件验证的方法,是针对运行中的映像文件进行验证的,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。0007为了解决上述的问题,本发明设计了一种运行中映像文件验证的方法,其包。

8、括以下步骤步骤1根据算法将由源文件编译生成的第一映像文件计算得到初始的验证值,再将所述初始的验证值与第一映像文件合并生成第二映像文件;步骤2由引导程序加载第二映像文件,先取出所述初始的验证值保存到非易失存储器,再运行第二映像文件中的第一映像文件;步骤3在第一映像文件运行的过程中,初始化系统和验证模块以激活验证模块,验证模块定期运用所述算法计算出第一映像文件的验证值;步骤4比较所述验证值和所述初始的验证值,若相等,则等待验证模块进行下次验证;若不相等,则提示告警。说明书CN104123510A2/3页40008作为本发明进一步改进,所述第一映像文件包括代码段、数据段和BSS段,通过所述算法得到验。

9、证值的步骤是计算第一映像文件中的代码段。0009作为本发明进一步改进,所述非易失存储器包括电可擦可编程只读存储器。0010作为本发明进一步改进,所述提示告警的方式包括不间断通告用户系统不稳定或打开蜂鸣器。0011作为本发明进一步改进,在初始化验证模块时,创建一个定时器,验证模块首先判断定时器是否超时,若未超时,则继续等待,若超时,则再运用所述算法计算出第一映像文件的验证值。0012作为本发明进一步改进,在所述验证值和所述初始的验证值相等时,创建新的定时器,验证模块根据新的定时器超时进行下次验证。0013本发明是针对运行中的映像文件进行验证,当内存中的映像文件运行时,映像文件中的验证模块会定期的。

10、对映像文件进行验证,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。附图说明0014图1是本发明运行中映像文件验证的方法的流程图;0015图2是本发明第二映像文件的结构图;0016图3是本发明第一映像文件的结构图。具体实施方式0017为了使本领域相关技术人员更好地理解本发明的技术方案,下面将结合附图和实施方式,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施方式,而不是全部的实施方式。0018本发明提供了一种运行中映像文件验证的方法,是针对运行中的映像文件进行验证的,防止映像文件在运行过程中被篡改或损坏而导致系统运。

11、行不稳定或崩溃和用户丢失重要数据。0019本发明是对运行中的映像文件进行验证,其包括以下步骤,如图1所示0020步骤1首先,映像文件是通过源文件编译而生成的,本发明根据算法将由源文件编译生成的第一映像文件计算得到初始的验证值V1,再将初始的验证值与第一映像文件合并生成第二映像文件,如图2所示第二映像文件的结构。在本实施例中,算法是成熟的算法MD5,但不限于此算法。如图3所示,所述第一映像文件包括代码段、数据段和BSS段,本实施例,通过算法得到验证值的步骤是计算第一映像文件中的代码段。代码段又称文本段,通常用来存放程序执行代码,属于只读,验证模块包含在代码段中。数据段通常用来存放程序中已经出售的。

12、全局变量,可读写。BSS段通常用来存放程序中未初始化的全局变量,内容一般会由系统初始化为0,不占用可执行文件的空间。由于只有代码段是只读,本发明的验证手段可只针对映像文件的代码段进行验证即可。0021步骤2由引导程序加载第二映像文件,先取出初始的验证值V1保存到非易失存储器,再运行第二映像文件中的第一映像文件。在本实施例中,非易失存储器为电可擦可编程只读存储器,但不限于此存储器。由于初始的验证值V1保存在非易失存储器中,因而,运说明书CN104123510A3/3页5行第一映像文件时,不会影响到初始的验证值V1。0022步骤3在第一映像文件运行的过程中,首先系统和验证模块会进行初始化以激活验证。

13、模块,验证模块定期运用算法计算出第一映像文件的验证值V2。该算法与步骤1中的算法应当保持一致。在本实施例中,在初始化验证模块,会创建一个定时器从而实现验证模块定期运用算法计算出第一映像文件的验证值。首先,验证模块判断定时器是否超时,若未超时,则继续等待,若超时即到了定时器定制的时间,验证模块运用算法计算出第一映像文件的验证值V2。0023步骤4得到运行中第一映像文件的验证值V2后,再比较验证值V2和初始的验证值V1,若验证值V2和初始的验证值V1相等,说明第一映像文件未被修改,等待下次验证。本实施例中,再创建出新的定时器,验证模块根据新的定时器是否超时进行下次验证。若验证值V2和初始的验证值V。

14、1不相等,说明第一映像文件已经被修改或损坏,验证模块会提示告警,提示告警的方式包括不间断通告用户系统不稳定或打开蜂鸣器。0024本发明是针对运行中的映像文件进行验证,当内存中的映像文件运行时,映像文件中的验证模块会定期的对映像文件进行验证,防止映像文件在运行过程中被篡改或损坏而导致系统运行不稳定或崩溃和用户丢失重要数据。0025以上仅表达了本发明的一种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。说明书CN104123510A1/1页6图1图2图3说明书附图CN104123510A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 >


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1