CN111061495A - 应用的安装方法、终端设备及存储介质 - Google Patents
应用的安装方法、终端设备及存储介质 Download PDFInfo
- Publication number
- CN111061495A CN111061495A CN201911371741.XA CN201911371741A CN111061495A CN 111061495 A CN111061495 A CN 111061495A CN 201911371741 A CN201911371741 A CN 201911371741A CN 111061495 A CN111061495 A CN 111061495A
- Authority
- CN
- China
- Prior art keywords
- application
- installation package
- application installation
- encrypted file
- hash value
- 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
Links
- 238000009434 installation Methods 0.000 title claims abstract description 211
- 238000000034 method Methods 0.000 title claims abstract description 40
- 239000000284 extract Substances 0.000 description 8
- 238000012795 verification Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种应用的安装方法,包括以下步骤:终端设备在获取到应用安装包后,提取所述应用安装包中的可执行文件和加密文件;计算所述可执行文件的散列值,并利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值;在计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,在所述终端设备上安装所述应用安装包。本发明还公开了一种终端设备以及计算机可读存储介质。本发明提高了终端设备在安装应用时的安全性。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用的安装方法、终端设备以及计算机可读存储介质。
背景技术
应用的签名方式是应用发布时应用开发者通过证书对应用信息进行加密,应用安装时终端设备的系统对应用信息进行签名验证。由于证书是由应用开发者保存的,存在丢失或者泄露的可能。这样应用很容易被冒名,非法者可通过恶意植入代码,进行破坏或者盗取用户信息。这样对于终端设备厂商来说,应用安全性管控会存在风险。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的主要目的在于提供一种应用的安装方法、终端设备以及计算机可读存储介质,提高了终端设备在安装应用时的安全性。
为实现上述目的,本发明提供一种应用的安装方法,所述应用的安装方法包括以下步骤:
终端设备在获取到应用安装包后,提取所述应用安装包中的可执行文件和加密文件;
计算所述可执行文件的散列值,并利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值;
在计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,在所述终端设备上安装所述应用安装包。
可选地,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤包括:
利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值和名称信息;
所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
在所述加密文件中的名称信息和所述应用安装包的名称信息一致,且计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,执行所述在所述终端设备上安装所述应用安装包的步骤。
可选地,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
在所述加密文件中的名称信息和所述应用安装包的名称信息不一致时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
可选地,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
在计算得到的所述可执行文件的散列值与所述加密文件中的散列值不一致时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
可选地,所述提取所述应用安装包中的可执行文件和加密文件的步骤包括:
从所述应用安装包的数据区中提取可执行文件,以及从所述应用安装包的扩展区中提取加密文件。
可选地,所述应用的安装方法还包括:
在所述扩展区中提取不到所述加密文件时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
可选地,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之前,还包括:
获取所述应用发布者的公钥;
其中,在所述终端设备未安装有所述应用安装包对应的应用时,向所述应用发布者获取所述公钥;在所述终端设备已安装有所述应用安装包对应的应用时,在所述终端设备上的所述应用对应的应用文件中获取所述应用发布者的公钥。
可选地,所述获取所述应用发布者的公钥的步骤之后,还包括:
在利用所述公钥无法解密所述加密文件时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
为实现上述目的,本发明还提供一种终端设备,所述终端设备包括:
所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用的安装程序,所述应用的安装程序被所述处理器执行时实现如上述应用的安装方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有应用的安装程序,所述应用的安装程序被处理器执行时实现如上述应用的安装方法的步骤。
本发明提供的应用的安装方法、终端设备以及计算机可读存储介质,终端设备在获取到应用安装包后,提取所述应用安装包中的可执行文件和加密文件;计算所述可执行文件的散列值,并利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值;在计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,在所述终端设备上安装所述应用安装包。这样,在终端设备安装应用安装包时,先进行应用安装包的安全性验证,并在验证通过时再安装应用安装包,提高了终端设备在安装应用时的安全性。
附图说明
图1为本发明实施例方案涉及的实施例终端的硬件运行环境示意图;
图2为本发明应用的安装方法一实施例的流程示意图;
图3为本发明应用的安装方法另一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种应用的安装方法,提高了终端设备在安装应用时的安全性。
如图1所示,图1是本发明实施例方案涉及的实施例终端的硬件运行环境示意图;
本发明实施例终端可以是终端设备,如移动终端(智能手机、平板电脑等)、计算机设备等。
如图1所示,该终端可以包括:处理器1001,例如CPU中央处理器(centralprocessing unit),存储器1002,通信总线1003。其中,通信总线1003用于实现该终端中各组成部件之间的连接通信。存储器1002可以是高速RAM随机存储器(random-accessmemory),也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1002可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端的结构并不构成对本发明实施例终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1002中可以包括应用的安装程序。
在图1所示的终端中,处理器1001可以用于调用存储器1002中存储的应用的安装程序,并执行以下操作:
终端设备在获取到应用安装包后,提取所述应用安装包中的可执行文件和加密文件;
计算所述可执行文件的散列值,并利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值;
在计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,在所述终端设备上安装所述应用安装包。
进一步地,处理器1001可以调用存储器1002中存储的应用的安装程序,还执行以下操作:
利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值和名称信息;
所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
在所述加密文件中的名称信息和所述应用安装包的名称信息一致,且计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,执行所述在所述终端设备上安装所述应用安装包的步骤。
进一步地,处理器1001可以调用存储器1002中存储的应用的安装程序,还执行以下操作:
在所述加密文件中的名称信息和所述应用安装包的名称信息不一致时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
进一步地,处理器1001可以调用存储器1002中存储的应用的安装程序,还执行以下操作:
在计算得到的所述可执行文件的散列值与所述加密文件中的散列值不一致时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
进一步地,处理器1001可以调用存储器1002中存储的应用的安装程序,还执行以下操作:
从所述应用安装包的数据区中提取可执行文件,以及从所述应用安装包的扩展区中提取加密文件。
进一步地,处理器1001可以调用存储器1002中存储的应用的安装程序,还执行以下操作:
在所述扩展区中提取不到所述加密文件时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
进一步地,处理器1001可以调用存储器1002中存储的应用的安装程序,还执行以下操作:
获取所述应用发布者的公钥;
其中,在所述终端设备未安装有所述应用安装包对应的应用时,向所述应用发布者获取所述公钥;在所述终端设备已安装有所述应用安装包对应的应用时,在所述终端设备上的所述应用对应的应用文件中获取所述应用发布者的公钥。
进一步地,处理器1001可以调用存储器1002中存储的应用的安装程序,还执行以下操作:
在利用所述公钥无法解密所述加密文件时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
参照图2,在一实施例中,所述应用的安装方法包括:
步骤S10、终端设备在获取到应用安装包后,提取所述应用安装包中的可执行文件和加密文件。
本实施例中,实施例终端可以是终端设备,如移动终端(智能手机、平板电脑等)、计算机设备等。以下以实施例终端为移动终端为例进行说明。
可选地,终端设备上运行的系统可以是Android安卓系统、嵌入式系统等终端设备操作系统。以下以终端设备运行的系统为安卓系统,对应的应用安装包为安卓应用安装包(APK包)为例进行说明。
可选地,终端设备可以是通过网络通信获取应用安装包;也可以是由用户通过将存储有应用安装包的存储介质(例如U盘)插入至终端设备中后,终端设备从存储介质上获取得到应用安装包;也可以是终端设备在与其他设备进行文件传输时,从其他设备上获取得到应用安装包。
可选地,终端在获取到应用安装包后,可从应用安装包中提取对应的应用安装的可执行文件,以及提取应用安装包中的加密文件。需要说明的是,加密文件可以是具体为签名文件。
可选地,应用安装包的结构与ZIP压缩文件的结构相同,具有头文件区、数据区和拓展区。其中,可执行文件存储在数据区中,加密文件存储在拓展区中。因此,终端从所述应用安装包的数据区中提取可执行文件,以及从所述应用安装包的扩展区中提取加密文件。如,安卓应用的安装包为APK包,而APK包中的可执行文件为classes.dex文件。
其中,头文件以ZIP文件头标识,data为有效数据区,而APK文件就在这个数据区中,扩展区为自定义区。在本实施例中,就是将上述所说的加密文件写入到拓展区中,这样,并就不会破坏原APK文件的文件内容。
需要说明的是,APK包是Android操作系统使用的一种应用程序包文件格式,用于分发和安装移动应用及中间件。一个Android应用程序的代码想要在Android设备上运行,必须先进行编译,然后被打包成为一个被Android系统所能识别的文件才可以被运行,而这种能被Android系统识别并运行的文件格式便是“APK”。一个APK文件内包含被编译的代码文件(.dex文件,即可执行文件),文件资源(resources),assets,证书(certificates),和清单文件(manifest file)。
可选地,应用安装包对应的应用发布者(应用开发者)在发布应用安装包前,可以是采用散列算法(散列函数,如MD5消息摘要算法)计算应用安装包中的可执行文件的散列值,并采用RSA非对称加密方式,利用应用发布者自身的私钥加密可执行文件的散列值得到加密文件,再将加密文件存储在应用安装包的拓展区中。
需要说明的是,散列函数(Hash函数),是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。如若采用同一套散列算法得到不同的散列值,说明两个散列值对应的输入是不同的。
可选地,如若终端在应用安装包的拓展区中提取不到加密文件时,则可判定应用安装包验证不通过,该应用安装包为非法安装包,因此,终端不再安装该应用安装包。进一步地,终端还可以是生成应用安装失败提示信息并输出,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
步骤S20、计算所述可执行文件的散列值,并利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值。
可选地,终端设备在提取得到应用安装包中的可执行文件后,可以是采用与应用发布者所使用的同一套散列算法计算可执行文件的散列值。
可选地,终端设备可以是在解密从应用安装包中的加密文件前,先获取应用发布者的公钥,并利用应用开发者的公钥解密加密文件,得到加密文件中的散列值(该散列值即为应用发布者先前通过加密可执行文件得到的散列值)。需要说明的是,在终端设备未安装有所述应用安装包对应的应用时,终端设备可以是向所述应用发布者获取所述公钥(此时应用安装应为应用在终端设备上初次安装);在所述终端设备已安装有所述应用安装包对应的应用时,则在所述终端设备上的所述应用对应的应用文件中获取所述应用发布者的公钥(此时应用安装应为应用更新)。
应当理解的是,终端可以是先计算可执行文件的散列值,也可以是先解密加密文件,也可以是同时执行这两个步骤。
可选地,终端在利用应用发布者的公钥无法解密所述加密文件时,输出应用安装失败提示信息,以提醒用户应用安装包安装失败;和/或,终端在利用应用发布者的公钥无法解密所述加密文件时,将所述应用安装包对应的来源方加入应用来源黑名单。
步骤S30、在计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,在所述终端设备上安装所述应用安装包。
可选地,终端在计算得到可执行文件的散列值,以及通过解密加密文件得到加密文件中的散列值后,将这两个散列值进行比对。
可选地,终端在检测到可执行文件的散列值与所述加密文件中的散列值一致时,则可判定该可执行文件与应用发布者发布该应用安装包时一致,并未被非法植入恶意代码,说明该应用安装包验证通过,因此,终端可继续在系统上安装该应用安装包。
可选地,终端在检测到可执行文件的散列值与所述加密文件中的散列值不一致时,则可判定该可执行文件与应用发布者发布该应用安装包时不一致,说明该可执行文件已经被非法植入恶意代码了,因此,判定该应用安装包验证不通过,并且终端不再安装该应用安装包。
可选地,终端在检测到可执行文件的散列值与所述加密文件中的散列值不一致时,除了不再安装该应用安装包外,还可以是生成应用安装失败提示信息并输出,以提醒用户应用安装包安装失败。
可选地,在终端设备是通过网络通信获取应用安装包,或者终端设备在与其他设备进行文件传输时,从其他设备上获取得到应用安装包,那么在后续终端在检测到可执行文件的散列值与所述加密文件中的散列值不一致时,除了不再安装该应用安装包外,还可以是将应用安装包对应的来源方加入至应用来源黑名单中。
可选地,终端不再从属于应用来源黑名单中的应用安装包来源方处获取应用安装包。这样,可以提高终端设备在安装应用时的安全性。
在一实施例中,终端设备在获取到应用安装包后,提取所述应用安装包中的可执行文件和加密文件;计算所述可执行文件的散列值,并利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值;在计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,在所述终端设备上安装所述应用安装包。这样,在终端设备安装应用安装包时,先进行应用安装包的安全性验证,并在验证通过时再安装应用安装包,提高了终端设备在安装应用时的安全性。
在一实施例中,如图3所示,在上述图2所示的实施例基础上,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤包括:
步骤S21、利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值和名称信息。
所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
步骤S31、在所述加密文件中的名称信息和所述应用安装包的名称信息一致,且计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,执行所述在所述终端设备上安装所述应用安装包的步骤。
本实施例中,加密文件中包括可执行文件的散列值和名称信息,其中,所述名称信息则为应用安装包的应用包名。
可选地,终端设备可以是在解密从应用安装包中的加密文件前,先获取应用发布者的公钥,并利用应用开发者的公钥解密加密文件,得到加密文件中的散列值和名称信息。
可选地,应用安装包对应的应用发布者(应用开发者)在发布应用安装包前,可以是采用散列算法(散列函数,如MD5消息摘要算法)计算应用安装包中的可执行文件的散列值,并采用RSA非对称加密方式,利用应用发布者自身的私钥加密可执行文件的散列值和应用安装包的名称信息得到加密文件,再将加密文件存储在应用安装包的拓展区中。
可选地,终端在获取得到应用安装包时,获取应用安装包的名称信息,并在通过解密加密文件得到加密文件中的名称信息后,将两个名称信息进行比对。
可选地,终端在计算得到可执行文件的散列值,以及通过解密加密文件得到加密文件中的散列值后,将这两个散列值进行比对。
可选地,终端在检测到加密文件中的名称信息和应用安装包的名称信息一致,且可执行文件的散列值与所述加密文件中的散列值一致时,则可判定应用安装包验证通过,该应用安装包为合法安装包,因此,终端可继续在系统上安装该应用安装包。
可选地,终端在检测到加密文件中的名称信息和应用安装包的名称信息不一致时,则可判定应用安装包验证不通过,该应用安装包为非法安装包,因此,终端不再安装该应用安装包。
可选地,终端在检测到可执行文件的散列值与所述加密文件中的散列值不一致时,则可判定该可执行文件与应用发布者发布该应用安装包时不一致,说明该可执行文件已经被非法植入恶意代码了,因此,判定该应用安装包验证不通过,并且终端不再安装该应用安装包。
这样,在终端设备安装应用安装包时,先进行应用安装包的安全性验证,并在验证通过时再安装应用安装包,提高了终端设备在安装应用时的安全性。
可选地,终端在检测到加密文件中的名称信息和应用安装包的名称信息不一致时,除了不再安装该应用安装包外,还可以是生成应用安装失败提示信息并输出,以提醒用户应用安装包安装失败。
可选地,在终端设备是通过网络通信获取应用安装包,或者终端设备在与其他设备进行文件传输时,从其他设备上获取得到应用安装包,那么在后续终端在检测到加密文件中的名称信息和应用安装包的名称信息不一致时,除了不再安装该应用安装包外,还可以是将应用安装包对应的来源方加入至应用来源黑名单中。并且,终端不再从属于应用来源黑名单中的应用安装包来源方处获取应用安装包。这样,可以提高终端设备在安装应用时的安全性。
此外,本发明还提出一种终端设备,所述终端设备包括存储器、处理器及存储在存储器上并可在处理器上运行的应用的安装程序,所述处理器执行所述应用的安装程序时实现如以上实施例所述的应用的安装方法的步骤。
此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质包括应用的安装程序,所述应用的安装程序被处理器执行时实现如以上实施例所述的应用的安装方法的步骤。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是可选实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是电视机,手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的可选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种应用的安装方法,其特征在于,所述应用的安装方法包括以下步骤:
终端设备在获取到应用安装包后,提取所述应用安装包中的可执行文件和加密文件;
计算所述可执行文件的散列值,并利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值;
在计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,在所述终端设备上安装所述应用安装包。
2.如权利要求1所述的应用的安装方法,其特征在于,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤包括:
利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值和名称信息;
所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
在所述加密文件中的名称信息和所述应用安装包的名称信息一致,且计算得到的所述可执行文件的散列值与所述加密文件中的散列值一致时,执行所述在所述终端设备上安装所述应用安装包的步骤。
3.如权利要求2所述的应用的安装方法,其特征在于,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
在所述加密文件中的名称信息和所述应用安装包的名称信息不一致时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
4.如权利要求1或2所述的应用的安装方法,其特征在于,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之后,还包括:
在计算得到的所述可执行文件的散列值与所述加密文件中的散列值不一致时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
5.如权利要求1所述的应用的安装方法,其特征在于,所述提取所述应用安装包中的可执行文件和加密文件的步骤包括:
从所述应用安装包的数据区中提取可执行文件,以及从所述应用安装包的扩展区中提取加密文件。
6.如权利要求5所述的应用的安装方法,其特征在于,所述应用的安装方法还包括:
在所述扩展区中提取不到所述加密文件时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
7.如权利要求1或2所述的应用的安装方法,其特征在于,所述利用所述应用安装包对应的应用发布者的公钥解密所述加密文件得到所述加密文件中的散列值的步骤之前,还包括:
获取所述应用发布者的公钥;
其中,在所述终端设备未安装有所述应用安装包对应的应用时,向所述应用发布者获取所述公钥;在所述终端设备已安装有所述应用安装包对应的应用时,在所述终端设备上的所述应用对应的应用文件中获取所述应用发布者的公钥。
8.如权利要求7所述的应用的安装方法,其特征在于,所述获取所述应用发布者的公钥的步骤之后,还包括:
在利用所述公钥无法解密所述加密文件时,输出应用安装失败提示信息,和/或,将所述应用安装包对应的来源方加入应用来源黑名单。
9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的应用的安装程序,所述应用的安装程序被所述处理器执行时实现如权利要求1至8中任一项所述的应用的安装方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有应用的安装程序,所述应用的安装程序被处理器执行时实现如权利要求1至8中任一项所述的应用的安装方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911371741.XA CN111061495A (zh) | 2019-12-25 | 2019-12-25 | 应用的安装方法、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911371741.XA CN111061495A (zh) | 2019-12-25 | 2019-12-25 | 应用的安装方法、终端设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111061495A true CN111061495A (zh) | 2020-04-24 |
Family
ID=70302821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911371741.XA Pending CN111061495A (zh) | 2019-12-25 | 2019-12-25 | 应用的安装方法、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111061495A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115292746A (zh) * | 2022-07-28 | 2022-11-04 | 南京国电南自电网自动化有限公司 | 一种应用程序可信编译及运行方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105119888A (zh) * | 2015-07-10 | 2015-12-02 | 小米科技有限责任公司 | 插件安装包上传方法、安装方法及装置 |
WO2017036048A1 (zh) * | 2015-08-31 | 2017-03-09 | 宇龙计算机通信科技(深圳)有限公司 | 一种终端系统升级的方法及系统 |
CN108427888A (zh) * | 2017-02-15 | 2018-08-21 | 阿里巴巴集团控股有限公司 | 文件签名方法、文件校验方法及对应装置和设备 |
-
2019
- 2019-12-25 CN CN201911371741.XA patent/CN111061495A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105119888A (zh) * | 2015-07-10 | 2015-12-02 | 小米科技有限责任公司 | 插件安装包上传方法、安装方法及装置 |
WO2017036048A1 (zh) * | 2015-08-31 | 2017-03-09 | 宇龙计算机通信科技(深圳)有限公司 | 一种终端系统升级的方法及系统 |
CN108427888A (zh) * | 2017-02-15 | 2018-08-21 | 阿里巴巴集团控股有限公司 | 文件签名方法、文件校验方法及对应装置和设备 |
Non-Patent Citations (2)
Title |
---|
王浩宇,徐国爱,郭耀: "移动应用安全分析", 北京邮电大学出版社, pages: 17 - 20 * |
王浩宇,徐国爱,郭耀: "移动智能终端安全", 30 November 2019, 西安电子科技大学出版社, pages: 210 - 212 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115292746A (zh) * | 2022-07-28 | 2022-11-04 | 南京国电南自电网自动化有限公司 | 一种应用程序可信编译及运行方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11601809B2 (en) | Method and system for updating certificate issuer public key, and related device | |
CN109120649B (zh) | 密钥协商方法、云服务器、设备、存储介质以及系统 | |
CN110597538B (zh) | 一种基于ota升级系统的软件升级方法和ota升级系统 | |
CN109194625B (zh) | 一种基于云端服务器的客户端应用保护方法、装置及存储介质 | |
CN111143869B (zh) | 应用程序包处理方法、装置、电子设备及存储介质 | |
WO2016019790A1 (zh) | 一种安装包的校验方法、客户端、服务器及系统 | |
CN105099705B (zh) | 一种基于usb协议的安全通信方法及其系统 | |
KR20150035249A (ko) | 어플리케이션 패키지를 저장하는 기록 매체, 어플리케이션 패키지 생성 방법 및 장치, 어플리케이션 패키지 실행 방법 및 장치 | |
CN106789075B (zh) | Pos数字签名防切机系统 | |
CN108599959B (zh) | 授权证书校验方法、装置及可读存储介质、应用设备 | |
US20050154899A1 (en) | Mobile software authentication and validation | |
CN112506531A (zh) | 软件安装方法、装置、电子设备和存储介质 | |
CN107257282B (zh) | 一种基于rc4算法的代码全包加密方法 | |
CN111740824A (zh) | 可信应用管理方法及装置 | |
CN117436043A (zh) | 待执行文件的来源验证方法、设备以及可读存储介质 | |
CN112115430A (zh) | 一种apk的加固方法、电子设备及存储介质 | |
CN111212057B (zh) | 资源包传输方法、装置、计算机设备和可读存储介质 | |
CN111061495A (zh) | 应用的安装方法、终端设备及存储介质 | |
CN110602051B (zh) | 基于共识协议的信息处理方法及相关装置 | |
CN111884810A (zh) | 交易签名方法、装置、移动终端和系统 | |
CN109784072B (zh) | 一种安全文件管理方法和系统 | |
CN107918739B (zh) | 一种数据的保护方法、装置及存储介质 | |
CN111949996A (zh) | 安全私钥的生成方法、加密方法、系统、设备及介质 | |
CN115442046A (zh) | 签名方法、装置、电子设备和存储介质 | |
CN114143197A (zh) | 物联网设备ota升级方法、装置、设备及可读存储介质 |
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 |