CN114238940A - 软件安装包的处理方法、装置及可读存储介质 - Google Patents

软件安装包的处理方法、装置及可读存储介质 Download PDF

Info

Publication number
CN114238940A
CN114238940A CN202111351173.4A CN202111351173A CN114238940A CN 114238940 A CN114238940 A CN 114238940A CN 202111351173 A CN202111351173 A CN 202111351173A CN 114238940 A CN114238940 A CN 114238940A
Authority
CN
China
Prior art keywords
identifier
installation package
file
software installation
standard
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111351173.4A
Other languages
English (en)
Inventor
荣伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing 6Cloud Technology Co Ltd
Beijing 6Cloud Information Technology Co Ltd
Original Assignee
Beijing 6Cloud Technology Co Ltd
Beijing 6Cloud Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing 6Cloud Technology Co Ltd, Beijing 6Cloud Information Technology Co Ltd filed Critical Beijing 6Cloud Technology Co Ltd
Priority to CN202111351173.4A priority Critical patent/CN114238940A/zh
Publication of CN114238940A publication Critical patent/CN114238940A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种软件安装包的处理方法、装置及可读存储介质,该方法包括:获取软件安装包中动态链接库文件的第一标识,判断第一标识是否与存储的第一标准标识匹配;若匹配,则获取软件安装包中的资源文件包;解密资源文件包并释放资源文件包中的资源文件,获取资源文件的第二标识,判断第二标识是否与存储的第二标准标识匹配,若匹配,则执行软件安装包的安装流程,通过对第一标识、第二标识进行校验,可以准确判断出安装包的动态链接库文件和资源文件有没有被恶意篡改,解决了现有技术中防护类软件在安装时假如被病毒感染不容易察觉,导致防护类软件起不到防护作用的技术问题。

Description

软件安装包的处理方法、装置及可读存储介质
技术领域
本发明涉及数据安全技术领域,尤其涉及一种软件安装包的处理方法、装置及计算机可读存储介质。
背景技术
随着计算机技术的发展,各种各样的终端设备被应用到各个领域。
为防止病毒对数据进行恶意篡改,在终端设备中一般会安装防护类软件用来对病毒的恶意篡改行为进行感知和预防。安装了防护类软件的终端设备一般都能达到一个比较好的防护效果,然而在防护类软件的安装包释放和安装期间,由于此时终端上的防护类软件还未安装完成,无法对终端设备上病毒的恶意篡改行为进行感知和预防,假如此时终端设备已感染病毒,则防护类软件在安装过程中很容易被病毒恶意篡改文件或数据,此时却察觉不到,安装被感染的防护类软件后造成防护类软件起不到防护作用。
发明内容
本发明的主要目的在于提供一种软件安装包的处理方法、装置及计算机可读存储介质,旨在解决现有技术中防护类软件在安装时假如被病毒感染不容易察觉,导致防护类软件起不到防护作用的技术问题。
为实现上述目的,本发明实施例提供一种软件安装包的处理方法,所述软件安装包的处理方法包括:
获取软件安装包中动态链接库文件的第一标识,并判断所述第一标识是否与存储的第一标准标识匹配;
若所述第一标识与存储的第一标准标识匹配,则获取所述软件安装包中的资源文件包;
对所述资源文件包进行解密并释放所述资源文件包中的资源文件,并获取所述资源文件的第二标识;
判断所述第二标识是否与存储的第二标准标识匹配;
若所述第二标识与存储的第二标准标识匹配,则执行所述软件安装包的安装流程。
可选地,所述获取软件安装包中动态链接库文件的第一标识的步骤包括:
获取所述软件安装包中动态链接库文件的内容信息;
基于MD5算法对所述动态链接库文件的内容信息进行处理,生成第一散列值,将所述第一散列值作为第一标识。
可选地,所述判断所述第一标识是否与存储的第一标准标识匹配的步骤包括:
查找所述软件安装包中的安装包标识文件,并获取所述安装包标识文件中的第一标准标识;
比较所述第一标识与第一标准标识;
若所述第一标识与第一标准标识相同,则判定所述第一标识与第一标准标识匹配;
若所述第一标识与第一标准标识不相同,则判定所述第一标识与第一标准标识不匹配。
可选地,所述获取所述资源文件的第二标识的步骤包括:
获取所述资源文件的内容信息;
基于MD5算法对所述资源文件的内容信息进行处理,生成第二散列值,将所述第二散列值作为第二标识。
可选地,所述判断所述第二标识是否与存储的第二标准标识匹配的步骤包括:
查找所述软件安装包中的资源文件标识文件;
获取所述资源文件标识文件中的第二标准标识;
比较所述第二标识与第二标准标识;
若所述第二标识与第二标准标识相同,则判定所述第二标识与第二标准标识匹配;
若所述第二标识与第二标准标识不相同,则判定所述第二标识与第二标准标识不匹配。
可选地,在所述获取软件安装包中动态链接库文件的第一标识的步骤之前,所述软件安装包的处理方法还包括:
获取待制作所述软件安装包的资源文件,并将所述资源文件进行打包,生成资源文件包;
将所述资源文件包进行加密,将密钥存储在动态链接库文件中;
获取安装包标识文件、资源文件标识文件和用户界面资源,其中所述安装包标识文件中存储有第一标准标识;
启动安装包工程,加载并编译所述资源文件包、安装包标识文件、资源文件标识文件以及用户界面资源,生成所述软件安装包。
可选地,所述判断所述第一标识是否与存储的第一标准标识匹配的步骤之后包括:
若所述第一标识与存储的第一标准标识不匹配,则结束软件安装包的安装过程。
可选地,所述判断所述第二标识是否与存储的第二标准标识匹配的步骤之后还包括:
若所述第二标识与存储的第二标准标识不匹配,则执行所述软件安装包的回滚操作。
此外,本发明还提供一种装置,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的软件安装包的处理方法的步骤。
此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的软件安装包的处理方法的步骤。
本发明提供一种软件安装包的处理方法、装置及可读存储介质,通过获取软件安装包中动态链接库文件的第一标识,并判断第一标识是否与存储的第一标准标识匹配,若第一标识与第一标准标识匹配,则获取软件安装包中的资源文件包,解密资源文件包并释放资源文件包中的资源文件,获取资源文件的第二标识,判断第二标识是否与存储的第二标准标识匹配,若第二标识与存储的第二标准标识匹配,则执行软件安装包的安装流程,通过校验第一标识,可以判断出安装包的动态链接库文件有没有被恶意篡改,通过校验资源文件的第二标识,可以判断出资源文件有没有被恶意篡改,在终端不需要安装杀毒软件的前提下也能够识别出防护类软件在安装过程中有没有被病毒感染,从而不会继续安装被感染的防护类软件,不会导致防护类软件起不到防护作用,保证了终端设备的安全且稳定地运行。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的装置的结构示意图;
图2为本发明软件安装包的处理方法第一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
现有技术中,为防止病毒对数据进行恶意篡改,在终端设备中一般会安装防护类软件用来对病毒的恶意篡改行为进行感知和预防。然而在防护类软件的安装包释放和安装期间,由于此时终端上的防护类软件还未安装完成,无法对终端设备上病毒的恶意篡改行为进行感知和预防,假如此时终端设备已感染病毒,则防护类软件在安装过程中很容易被病毒恶意篡改文件或数据,此时却察觉不到,安装被感染的防护类软件后造成防护类软件起不到防护作用。
现有的解决方法是:在安装防护类软件前,先对终端设备进行病毒查杀,这种解决方法存在局限性,首先所使用的杀毒软件不一定能完全检验出终端设备是否已感染病毒,其次,在工业现场大部分终端设备对稳定性要求较高,杀毒软件安装后,终端设备是否还能长期稳定地运行存在疑问。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的装置的结构示意图,该装置可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的装置并不构成对装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机程序。
在图1所示的装置中,网络接口1004主要用于连接服务器,与服务器进行数据通信;用户接口1003主要用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的计算机程序,并执行以下操作:
获取软件安装包中动态链接库文件的第一标识,并判断所述第一标识是否与存储的第一标准标识匹配;
若所述第一标识与存储的第一标准标识匹配,则获取所述软件安装包中的资源文件包;
对所述资源文件包进行解密并释放所述资源文件包中的资源文件,并获取所述资源文件的第二标识;
判断所述第二标识是否与存储的第二标准标识匹配;
若所述第二标识与存储的第二标准标识匹配,则执行所述软件安装包的安装流程。
进一步地,所述获取软件安装包中动态链接库文件的第一标识的步骤包括:
获取所述软件安装包中动态链接库文件的内容信息;
基于MD5算法对所述动态链接库文件的内容信息进行处理,生成第一散列值,将所述第一散列值作为第一标识。
进一步地,所述判断所述第一标识是否与存储的第一标准标识匹配的步骤包括:
查找所述软件安装包中的安装包标识文件,并获取所述安装包标识文件中的第一标准标识;
比较所述第一标识与第一标准标识;
若所述第一标识与第一标准标识相同,则判定所述第一标识与第一标准标识匹配;
若所述第一标识与第一标准标识不相同,则判定所述第一标识与第一标准标识不匹配。
进一步地,所述获取所述资源文件的第二标识的步骤包括:
获取所述资源文件的内容信息;
基于MD5算法对所述资源文件的内容信息进行处理,生成第二散列值,将所述第二散列值作为第二标识。
进一步地,所述判断所述第二标识是否与存储的第二标准标识匹配的步骤包括:
查找所述软件安装包中的资源文件标识文件;
获取所述资源文件标识文件中的第二标准标识;
比较所述第二标识与第二标准标识;
若所述第二标识与第二标准标识相同,则判定所述第二标识与第二标准标识匹配;
若所述第二标识与第二标准标识不相同,则判定所述第二标识与第二标准标识不匹配。
进一步地,在所述获取软件安装包中动态链接库文件的第一标识的步骤之前,所述处理器1001可以用于调用存储器1005中存储的计算机程序,并执行以下操作:
获取待制作所述软件安装包的资源文件,并将所述资源文件进行打包,生成资源文件包;
将所述资源文件包进行加密,将密钥存储在动态链接库文件中;
获取安装包标识文件、资源文件标识文件和用户界面资源,其中所述安装包标识文件中存储有第一标准标识;
启动安装包工程,加载并编译所述资源文件包、安装包标识文件、资源文件标识文件以及用户界面资源,生成所述软件安装包。
进一步地,所述判断所述第一标识是否与存储的第一标准标识匹配的步骤之后,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
若所述第一标识与存储的第一标准标识不匹配,则结束软件安装包的安装过程。
进一步地,所述判断所述第二标识是否与存储的第二标准标识匹配的步骤之后,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:
若所述第二标识与存储的第二标准标识不匹配,则执行所述软件安装包的回滚操作。
本发明还提供一种软件安装包的处理方法,在软件安装包的处理方法的第一实施例中,参照图2,本发明软件安装包的处理方法包括:
步骤A10,获取软件安装包中动态链接库文件的第一标识,并判断所述第一标识是否与存储的第一标准标识匹配;
动态链接库文件,即DLL文件,是一种不可执行的二进制程序文件,它允许程序共享执行特殊任务所必需的代码和其他资源。Windows提供的DLL文件中包含了允许基于Windows的程序在Windows环境下操作的许多函数和资源。它们向运行于Windows操作系统下的程序提供代码、数据或函数。程序可根据DLL文件中的指令打开、启用、查询、禁用和关闭驱动程序。
MD5(MD5 Message-Digest Algorithm,MD5信息摘要算法)算法,是一种被广泛使用的密码散列函数,它可以将任意长度的输入串经过计算得到固定长度的散列值,而且只有在明文相同的情况下,才能得到相同的密文,并且这个算法是不可逆的,即便得到了加密以后的密文,也不可能通过解密算法反算出明文。
需要说明的是,第一标识是一组散列值,是根据软件安装包中动态链接库文件的内容信息,基于MD5算法生成的一组散列值,第一标准标识也是一组散列值,是在生成软件安装包之前,根据待制作软件安装包的动态链接库文件的内容,基于MD5算法生成的一组散列值,并将该散列值作为第一标准标识以单独的二进制数据文件进行存储,存储第一标准标识的文件叫做安装包标识文件,当然除了采用MD5算法,还可以采用其他加密算法来对动态链接库文件的内容信息进行处理,本申请对此不作限制。
在获取软件安装包中动态链接库文件的第一标识后,将所述第一标识与第一标准标识进行比较,以判断所述第一标识是否与存储的第一标准标识匹配。
可选地,所述获取软件安装包中动态链接库文件的第一标识的步骤包括:
步骤A11,获取所述软件安装包中动态链接库文件的内容信息;
步骤A12,基于MD5算法对所述动态链接库文件的内容信息进行处理,生成第一散列值,将所述第一散列值作为第一标识。
需要说明的是,首先需要获取软件安装包中动态链接库文件的内容信息,根据MD5算法,将动态链接库文件的内容信息作为输入串经过计算得到第一散列值,该第一散列值就是第一标识。
通过采用MD5算法对动态链接库文件的内容信息进行处理得到第一标识,以对第一标识进行校验,采用与第一标准标识相同的加密算法,以便比较第一标识与第一标准标识是否相同,通过校验第一标识,可以识别出动态链接库文件的内容信息是否被恶意篡改。
可选地,所述判断所述第一标识是否与存储的第一标准标识匹配的步骤包括:
步骤B1,查找所述软件安装包中的安装包标识文件,并获取所述安装包标识文件中的第一标准标识;
步骤B2,比较所述第一标识与第一标准标识;
步骤B3,若所述第一标识与第一标准标识相同,则判定所述第一标识与第一标准标识匹配;
步骤B4,若所述第一标识与第一标准标识不相同,则判定所述第一标识与第一标准标识不匹配。
需要说明的是,软件安装包中有多个文件,其中包括安装包标识文件,它是一个二进制数据文件,里面存储有第一标准标识。在判断第一标识是否与第一标准标识匹配时,首先需要查找到安装包标识文件,在查找到安装包标识文件后,获取安装包标识文件中的第一标准标识,并比较第一标识与第一标准标识,若第一标识与第一标准标识相同,则判定第一标识与第一标准标识匹配,若第一标识与第一标准标识不相同,则判定第一标识与第一标准标识不匹配。
通过在软件安装包安装初期对软件安装包中动态链接库文件的第一标识进行校验,从而使得安装初期就能初步识别软件安装包在安装初期有没有被恶意篡改。
步骤A20,若所述第一标识与存储的第一标准标识匹配,则获取所述软件安装包中的资源文件包;
需要说明的是,资源文件包是应用软件的资源文件的集合,里面包括多个资源文件,在制作软件安装包时,会将软件的所有资源文件进行打包,生成资源文件包,若第一标识与存储的第一标准标识匹配,则获取软件安装包中的资源文件包,若第一标识与存储的第一标准标识不匹配,则说明软件安装包中的文件已经被篡改,则结束软件安装包的安装过程。
步骤A30,对所述资源文件包进行解密并释放所述资源文件包中的资源文件,并获取所述资源文件的第二标识;
可理解的是,为了防止软件安装包中的资源文件在软件安装的过程中被病毒恶意篡改,可以将打包好的资源文件包进行加密,可选地,加密采用的密钥为编译资源文件包时的时间种子,并将密钥存储在一个二进制文件中,例如可以存储在一个动态链接库文件中。
第二标识是一组散列值,是根据软件安装包中资源文件的内容信息,基于MD5算法生成的一组散列值,当然除了采用MD5算法,还可以采用其他加密算法来对资源文件的内容信息进行处理,本申请对此不作限制。
在获取到软件安装包中的资源文件包后,需要对它进行解密,获取存储的资源文件包的密钥,并通过密钥解密所述资源文件包,并释放资源文件包中的资源文件,释放出的资源文件可能存在多个,则根据预设的获取顺序,获取资源文件的第二标识,例如存在资源文件A、B、C、D、E,预设获取顺序为E至A,则首先获取资源文件E的第二标识,校验完资源文件E对应的第二标识后,再获取资源文件D的第二标识,然后校验资源文件D对应的第二标识,再获取资源文件C的第二标识,然后校验资源文件C的第二标识。
可选地,所述获取所述资源文件的第二标识的步骤包括:
步骤C1,获取所述资源文件的内容信息;
步骤C2,基于MD5算法对所述资源文件的内容信息进行处理,生成第二散列值,将所述第二散列值作为第二标识。
需要说明的是,在对资源文件包进行解密并释放资源文件包中的资源文件后,便可以获取资源文件中的内容信息,根据MD5算法,将资源文件中的内容信息作为输入串经过计算得到第二散列值,该第二散列值就是第二标识,获取资源文件的内容信息的顺序按照预设的顺序进行,例如存在资源文件A、B、C,预设获取资源文件的内容信息顺序为:从资源文件A到C,则首先获取资源文件A的内容信息,然后根据MD5算法,将资源文件A的内容信息作为输入串经过计算得到资源文件A对应的第二标识,然后校验资源文件A对应的第二标识,然后获取资源文件B的内容信息,然后根据MD5算法,将资源文件B的内容信息作为输入串经过计算得到资源文件B对应的第二标识,校验资源文件B对应的第二标识,再获取资源文件C的内容信息,基于MD5算法得到资源文件C对应的第二标识,再校验资源文件C对应的第二标识。
步骤A40,判断所述第二标识是否与存储的第二标准标识匹配;
可理解的是,第二标准标识也是一组散列值,是生成软件安装包之前,根据待制作软件安装包的资源文件的内容信息,基于MD5算法生成的一组散列值,并将该散列值作为第二标准标识,以单独的二进制数据文件进行存储,存储第二标准标识的文件叫做资源文件标识文件,资源文件标识文件中存储第二标准标识的顺序与获取软件安装包的资源文件的内容的顺序相同。
可选地,所述判断所述第二标识是否与存储的第二标准标识匹配的步骤包括:
步骤A41,查找所述软件安装包中的资源文件标识文件;
步骤A42,获取所述资源文件标识文件中的第二标准标识;
步骤A43,比较所述第二标识与第二标准标识;
步骤A44,若所述第二标识与第二标准标识相同,则判定所述第二标识与第二标准标识匹配;
步骤A45,若所述第二标识与第二标准标识不相同,则判定所述第二标识与第二标准标识不匹配。
可理解的是,软件安装包中有多个文件,其中包括资源文件标识文件,首先需要查找到资源文件标识文件,然后获取资源文件标识文件中的第二标准标识,比较第二标识与第二标准标识,如果第二标识与第二标准标识相同,则判定第二标识与第二标准标识匹配,说明资源文件没有被恶意篡改,如果第二标识与第二标准标识不相同,则判定第二标识与第二标准标识不匹配,说明资源文件已经被恶意篡改。
通过将资源文件的第二标识与存储的第二标准标识进行比较,从而可以根据比较的结果进一步判断出资源文件有没有被病毒恶意篡改。
步骤A50,若所述第二标识与存储的第二标准标识匹配,则执行所述软件安装包的安装流程。
可理解的是,若第二标识与存储的第二标准标识匹配,说明资源文件也没有被病毒感染,则确定本次安装是无感染安装,继续执行软件安装包的安装流程,若第二标识与存储的第二标准标识不匹配,说明资源文件已经被病毒恶意篡改,则执行回滚操作,删除软件安装包和更改的注册表信息。
本发明通过获取软件安装包中动态链接库文件的第一标识,并判断第一标识是否与存储的第一标准标识匹配,若第一标识与第一标准标识匹配,则获取软件安装包中的资源文件包,解密资源文件包并释放资源文件包中的资源文件,获取资源文件的第二标识,判断第二标识是否与存储的第二标准标识匹配,若第二标识与存储的第二标准标识匹配,则执行软件安装包的安装流程,通过校验第一标识,可以判断出安装包的动态链接库文件有没有被恶意篡改,通过校验资源文件的第二标识,可以判断出资源文件有没有被恶意篡改,在终端不需要安装杀毒软件的前提下也能够识别出防护类软件安装过程中有没有被病毒感染,从而不会继续安装被感染的防护类软件,不会导致防护类软件起不到防护作用,保证了终端设备的安全且稳定地运行。
进一步地,在本发明软件安装包的处理方法的另一实施例中,在所述获取软件安装包中动态链接库文件的第一标识的步骤之前,所述软件安装包的处理方法还包括:
步骤S10,获取待制作所述软件安装包的资源文件,并将所述资源文件进行打包,生成资源文件包;
需要说明的是,软件安装包的资源文件可能有多个,需要将软件安装包的所有资源文件进行打包压缩,生成资源文件包,优选地,压缩格式采用7z格式。
步骤S20,将所述资源文件包进行加密,将密钥存储在动态链接库文件中;
为了防止病毒恶意篡改资源文件,对资源文件包进行加密,可选地,将编译时的时间种子作为密钥,并将密钥存储在动态链接库文件中。
步骤S30,获取安装包标识文件、资源文件标识文件和用户界面资源,其中所述安装包标识文件中存储有第一标准标识;
需要说明的是,用户界面资源,即软件安装界面资源,优选地,采用原生Qt制作软件安装界面,便于开发人员处理。
安装包标识文件,是一个二进制数据文件,里面存储的是一组散列值,即第一标准标识,第一标准标识是采用预设MD5算法,将待制作软件安装包的动态链接库文件的内容信息作为输入串,经过计算得到的。
资源文件标识文件,是一个二进制数据文件,里面存储的是一组散列值,也叫做第二标准标识,第二标准标识是采用预设MD5算法,将待制作软件安装包的资源文件的内容信息作为输入串,经过计算得到的。
步骤S40,启动安装包工程,加载并编译所述资源文件包、安装包标识文件、资源文件标识文件以及用户界面资源,生成所述软件安装包。
可理解的是,安装包工程是一个可以编译资源文件并生成可执行文件的工具,启动安装包工程后,加载并编译资源文件包、安装包标识文件、资源文件标识文件以及用户界面资源,便可以生成软件安装包。
通过在制作软件安装包时,对待制作软件安装包的资源文件包进行加密,可以防止资源文件被恶意篡改,同时根据待制作软件安装包的动态链接库文件的内容信息以及资源文件的内容信息,采用MD5算法分别生成第一标准标识和第二标准标识,并将第一标准标识和第二标准标识分别进行存储以便后续安装软件安装包时进行校验,进一步提高了软件安装包的安全性,防止被恶意篡改。
进一步地,本发明实施例还提出一种装置,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述软件安装包的处理方法的各实施例的步骤。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述软件安装包的处理方法的各实施例的步骤。
本发明装置和计算机可读存储介质的具体实施方式的拓展内容与上述软件安装包的处理方法各实施例基本相同,在此不做累述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (10)

1.一种软件安装包的处理方法,其特征在于,所述软件安装包的处理方法包括:
获取软件安装包中动态链接库文件的第一标识,并判断所述第一标识是否与存储的第一标准标识匹配;
若所述第一标识与存储的第一标准标识匹配,则获取所述软件安装包中的资源文件包;
对所述资源文件包进行解密并释放所述资源文件包中的资源文件,并获取所述资源文件的第二标识;
判断所述第二标识是否与存储的第二标准标识匹配;
若所述第二标识与存储的第二标准标识匹配,则执行所述软件安装包的安装流程。
2.如权利要求1所述的软件安装包的处理方法,其特征在于,所述获取软件安装包中动态链接库文件的第一标识的步骤包括:
获取所述软件安装包中动态链接库文件的内容信息;
基于MD5算法对所述动态链接库文件的内容信息进行处理,生成第一散列值,将所述第一散列值作为第一标识。
3.如权利要求2所述的软件安装包的处理方法,其特征在于,所述判断所述第一标识是否与存储的第一标准标识匹配的步骤包括:
查找所述软件安装包中的安装包标识文件,并获取所述安装包标识文件中的第一标准标识;
比较所述第一标识与第一标准标识;
若所述第一标识与第一标准标识相同,则判定所述第一标识与第一标准标识匹配;
若所述第一标识与第一标准标识不相同,则判定所述第一标识与第一标准标识不匹配。
4.如权利要求1所述的软件安装包的处理方法,其特征在于,所述获取所述资源文件的第二标识的步骤包括:
获取所述资源文件的内容信息;
基于MD5算法对所述资源文件的内容信息进行处理,生成第二散列值,将所述第二散列值作为第二标识。
5.如权利要求4所述的软件安装包的处理方法,其特征在于,所述判断所述第二标识是否与存储的第二标准标识匹配的步骤包括:
查找所述软件安装包中的资源文件标识文件;
获取所述资源文件标识文件中的第二标准标识;
比较所述第二标识与第二标准标识;
若所述第二标识与第二标准标识相同,则判定所述第二标识与第二标准标识匹配;
若所述第二标识与第二标准标识不相同,则判定所述第二标识与第二标准标识不匹配。
6.如权利要求1所述的软件安装包的处理方法,其特征在于,在所述获取软件安装包中动态链接库文件的第一标识的步骤之前,所述软件安装包的处理方法还包括:
获取待制作所述软件安装包的资源文件,并将所述资源文件进行打包,生成资源文件包;
将所述资源文件包进行加密,将密钥存储在动态链接库文件中;
获取安装包标识文件、资源文件标识文件和用户界面资源,其中所述安装包标识文件中存储有第一标准标识;
启动安装包工程,加载并编译所述资源文件包、安装包标识文件、资源文件标识文件以及用户界面资源,生成所述软件安装包。
7.如权利要求1所述的软件安装包的处理方法,其特征在于,所述判断所述第一标识是否与存储的第一标准标识匹配的步骤之后包括:
若所述第一标识与存储的第一标准标识不匹配,则结束软件安装包的安装过程。
8.如权利要求1所述的软件安装包的处理方法,其特征在于,所述判断所述第二标识是否与存储的第二标准标识匹配的步骤之后还包括:
若所述第二标识与存储的第二标准标识不匹配,则执行所述软件安装包的回滚操作。
9.一种装置,其特征在于,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的软件安装包的处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的软件安装包的处理方法的步骤。
CN202111351173.4A 2021-11-15 2021-11-15 软件安装包的处理方法、装置及可读存储介质 Pending CN114238940A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111351173.4A CN114238940A (zh) 2021-11-15 2021-11-15 软件安装包的处理方法、装置及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111351173.4A CN114238940A (zh) 2021-11-15 2021-11-15 软件安装包的处理方法、装置及可读存储介质

Publications (1)

Publication Number Publication Date
CN114238940A true CN114238940A (zh) 2022-03-25

Family

ID=80749478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111351173.4A Pending CN114238940A (zh) 2021-11-15 2021-11-15 软件安装包的处理方法、装置及可读存储介质

Country Status (1)

Country Link
CN (1) CN114238940A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115277112A (zh) * 2022-07-07 2022-11-01 海南视联通信技术有限公司 数据处理方法、装置、电子设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115277112A (zh) * 2022-07-07 2022-11-01 海南视联通信技术有限公司 数据处理方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
KR101471589B1 (ko) 공통중간언어 기반 프로그램을 위한 보안 제공 방법
US8892876B1 (en) Secured application package files for mobile computing devices
CN111143869B (zh) 应用程序包处理方法、装置、电子设备及存储介质
US10372444B2 (en) Android dynamic loading file extraction method, recording medium and system for performing the method
EP2897072B1 (en) Device for obfuscating code and method for same
US20150095653A1 (en) Method and apparatus of creating application package, method and apparatus of executing application package, and recording medium storing application package
US11797296B2 (en) Hot updating method of script file package and hot updating device of script file package
CN109784007B (zh) 一种字节码加密的方法、字节码解密的方法及终端
CN106295407B (zh) 一种检测文件是否被篡改的方法及装置
CN107430650B (zh) 保护计算机程序以抵御逆向工程
CN111191195A (zh) 一种用于保护apk的方法和装置
CN103823751B (zh) 一种基于特征注入的仿冒应用程序监测方法
CN112231702A (zh) 应用保护方法、装置、设备及介质
CN111159658B (zh) 字节码处理方法、系统、装置、计算机设备和存储介质
CN114238940A (zh) 软件安装包的处理方法、装置及可读存储介质
KR101557455B1 (ko) 응용 프로그램 코드 분석 장치 및 그것을 이용한 코드 분석 방법
CN112134905B (zh) 基于安卓系统的签名方法、装置以及设备
CN109992974B (zh) 虚拟机字节码文件的保护方法、设备及可读存储介质
CN106648770B (zh) 一种应用程序安装包的生成方法、加载方法及装置
CN114139215A (zh) 一种动态库文件加载方法及装置
CN114357387A (zh) java应用程序防篡改的判断方法、编译方法及设备
CN109492392B (zh) 一种核心函数的检测方法及系统
CN111522555B (zh) apk文件的加固方法、解密方法及相关装置
CN114238870A (zh) 一种网络请求处理方法、装置、设备及存储介质
CN111274459B (zh) 一种防止ipa安装包重签名的方法及其终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination