一种用于对应用程序进行校验的装置、方法和相关产品制造方法及图纸

技术编号:32357493 阅读:23 留言:0更新日期:2022-02-20 03:19
本公开涉及一种用于对应用程序进行校验的装置、方法和相关产品。所述装置包括:计算单元,其配置用于在待校验应用程序启动前,计算所述待校验应用程序内的安装包对应的当前校验值;比较单元,其配置用于:比较所述当前校验值与所述待校验应用程序内的安装包对应的原始校验值是否一致;以及基于对所述当前校验值和所述原始校验值的比较结果对所述待校验应用程序进行校验。利用本公开的方案,可以实现应用程序的完整性的自校验,从而提高应用程序的安全性。的安全性。的安全性。

【技术实现步骤摘要】
一种用于对应用程序进行校验的装置、方法和相关产品


[0001]本公开一般地涉及应用程序安全问题
更具体地,本公开涉及一种用于对应用程序进行校验的装置和方法以及壳启动模块、计算机可读存储介质。

技术介绍

[0002]随着移动端应用程序(Application,“APP”)的不断普及,其面临的安全性问题也越来越重要。目前,为了增加移动端APP的安全性,通常是通过对APP进行加固的方式来防止其被反编译或破解。然而,采用加固的方式一般只注重于APP是否会被反编译以及是否会被调试,而往往会忽略对移动端APP的完整性的校验。在缺少对移动端APP的完整性的校验时,将面临着APP被重打包或者被篡改的风险。例如重打包之后的APP被替换了重要的文件,甚至被插入了含有安全隐患的代码。因此,如何实现对移动端APP的完整性的校验成为亟需解决的技术问题。

技术实现思路

[0003]为了至少解决在上文中所提到的一个或多个技术问题,本公开的方案提供了一种用于对应用程序进行校验的方案。利用本公开的方案,可以实现应用程序的完整性的自校验,从而能够提高应用程序运行的安全性。为此,本公开在如下的多个方面提供解决方案。
[0004]在一个方面中,本公开提供一种用于对应用程序进行校验的装置,包括:计算单元,其配置用于在待校验应用程序启动前,计算所述待校验应用程序内的安装包对应的当前校验值;比较单元,其配置用于:比较所述当前校验值与所述待校验应用程序内的安装包对应的原始校验值是否一致;以及基于对所述当前校验值和所述原始校验值的比较结果对所述待校验应用程序进行校验。
[0005]在一个实施例中,其中在计算所述待校验应用程序内的安装包对应的当前校验值中,所述计算单元进一步配置用于:计算所述待校验应用程序内的安装包对应的哈希值;以及根据所述哈希值确定所述待校验应用程序内的安装包对应的当前校验值。
[0006]在另一个实施例中,其中在计算所述待校验应用程序内的安装包对应的哈希值中,所述计算单元进一步配置用于:对所述待校验应用程序内的安装包进行解压缩操作,以获得所述待校验应用程序内的安装包的多个文件;遍历所述多个文件并且利用哈希算法计算每个所述文件对应的哈希值;以及基于每个所述文件对应的哈希值再次执行所述哈希算法获得所述待校验应用程序内的安装包对应的哈希值。
[0007]在又一个实施例中,其中所述哈希算法至少包括SM3哈希算法、MD5哈希算法或者SHA1哈希算法。
[0008]在又一个实施例中,其中在根据所述哈希值确定所述待校验应用程序内的安装包对应的当前校验值中,所述计算单元还进一步配置用于:对所述待校验应用程序内的安装包对应的哈希值执行加密或者混淆操作,以确定所述待校验应用程序内的安装包对应的当前校验值。
[0009]在又一个实施例中,本公开的装置还包括处理单元,所述处理单元配置用于基于对所述当前校验值和所述原始校验值的比较结果对所述待校验应用程序进行处理。
[0010]在又一个实施例中,其中在基于对所述当前校验值和所述原始校验值的比较结果对所述待校验应用程序进行处理中,所述处理单元进一步配置用于:响应于所述当前校验值和所述原始校验值一致,启动所述待校验应用程序;或者响应于所述当前校验值和所述原始校验值不一致,退出所述待校验应用程序。
[0011]在另一个方面,本公开还提供一种壳启动模块,包括根据前述多个实施例所述的装置。
[0012]在又一个方面,本公开还提供一种用于对应用程序进行校验的方法,包括:在待校验应用程序启动前,计算所述待校验应用程序内的安装包对应的当前校验值;比较所述当前校验值与所述待校验应用程序内的安装包对应的原始校验值是否一致;以及基于对所述当前校验值和所述原始校验值的比较结果对所述待校验应用程序进行校验。
[0013]在又一个方面,本公开还提供一种计算机可读存储介质,其上存储有用于对应用程序进行校验的计算机可读指令,该计算机可读指令被一个或多个处理器执行时,实现如前述的多个实施例。
[0014]通过本公开的方案,通过在待校验应用程序启动前,将该待校验应用程序内的安装包对应的当前校验值与其原始校验值进行比较来实现应用程序的自校验,可以有效防止应用程序被重打包或者被篡改,提高了应用程序运行的安全性。进一步地,本公开的实施例通过计算安全包内所有文件的哈希值,以实现应用程序的完整性的自校验。此外,本公开的实施例在启动前对应用程序进行校验,并且通过校验结果执行启动应用程序或者直接退出应用程序来保证应用程序的安全性。
附图说明
[0015]通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,并且相同或对应的标号表示相同或对应的部分其中:
[0016]图1是示出根据本公开实施例的用于对应用程序进行校验的装置的示例性结构框图;
[0017]图2是示出根据本公开实施例的用于对应用程序进行校验的装置的另一示例性结构框图;
[0018]图3是示出根据本公开实施例的壳启动模块的示例性结构框图;
[0019]图4是示出根据本公开实施例的用于对应用程序进行校验的方法的示例性流程图;以及
[0020]图5是示出根据本公开实施例的计算待校验应用程序内的安装包对应的哈希值的示例性流程图。
具体实施方式
[0021]下面将结合附图对本公开实施例中的技术方案进行清楚和完整地描述。应当理解的是本说明书所描述的实施例仅是本公开为了便于对方案的清晰理解和符合法律的要求
而提供的部分实施例,而并非可以实现本公开的所有实施例。基于本说明书公开的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
[0022]图1是示出根据本公开实施例的用于对应用程序进行校验的装置100的示例性结构框图。如图1中所示,该装置100可以包括计算单元101和比较单元102。在一个实施例中,前述计算单元101可以用于在待校验应用程序启动前,计算该待校验应用程序内的安装包对应的当前校验值。前述比较单元102可以用于比较当前校验值与待校验应用程序内的安装包对应的原始校验值是否一致,进而基于对当前校验值和原始校验值的比较结果对待校验应用程序进行校验,从而实现对应用程序的自校验。
[0023]在一个实现场景中,在计算该待校验应用程序内的安装包对应的当前校验值时,上述计算单元首先可以用于计算该待校验应用程序内的安装包对应的哈希值。接着,根据哈希值确定待校验应用程序内的安装包对应的当前校验值。更为具体地,上述计算单元首先可以对待校验应用程序内的安装包进行解压缩操作,以获得待校验应用程序内安装包的多个文件。进一步地,遍历多个文件并且利用哈希算法计算每个文件对应的哈希值,进而基于每个文件对应的哈希值再次执行哈希算法获得待校验应用程序内的安装包对应的哈希值。
[0024]可以理解,待校验应用程序内的安装包是本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于对应用程序进行校验的装置,包括:计算单元,其配置用于在待校验应用程序启动前,计算所述待校验应用程序内的安装包对应的当前校验值;比较单元,其配置用于:比较所述当前校验值与所述待校验应用程序内的安装包对应的原始校验值是否一致;以及基于对所述当前校验值和所述原始校验值的比较结果对所述待校验应用程序进行校验。2.根据权利要求1所述的装置,其中在计算所述待校验应用程序内的安装包对应的当前校验值中,所述计算单元进一步配置用于:计算所述待校验应用程序内的安装包对应的哈希值;以及根据所述哈希值确定所述待校验应用程序内的安装包对应的当前校验值。3.根据权利要求2所述的装置,其中在计算所述待校验应用程序内的安装包对应的哈希值中,所述计算单元进一步配置用于:对所述待校验应用程序内的安装包进行解压缩操作,以获得所述待校验应用程序内的安装包的多个文件;遍历所述多个文件并且利用哈希算法计算每个所述文件对应的哈希值;以及基于每个所述文件对应的哈希值再次执行所述哈希算法获得所述待校验应用程序内的安装包对应的哈希值。4.根据权利要求3所述的装置,其中所述哈希算法至少包括SM3哈希算法、MD5哈希算法或者SHA1哈希算法。5.根据权利要求2所述的装置,其中在根据所述哈希值确定所述待校验应用程序内的安装包对应的当前校验值...

【专利技术属性】
技术研发人员:夏立宁纪崇廉骆炜王波曹中全宋鑫磊张大健
申请(专利权)人:中金金融认证中心有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1