CN109660353A - 一种应用程序安装方法及装置 - Google Patents
一种应用程序安装方法及装置 Download PDFInfo
- Publication number
- CN109660353A CN109660353A CN201811516421.4A CN201811516421A CN109660353A CN 109660353 A CN109660353 A CN 109660353A CN 201811516421 A CN201811516421 A CN 201811516421A CN 109660353 A CN109660353 A CN 109660353A
- Authority
- CN
- China
- Prior art keywords
- application
- application program
- digital certificate
- public key
- server
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0442—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供了一种应用程序安装方法及装置,其中,应用程序安装方法可以包括:当客户端识别到待安装应用程序的安装请求时,根据该安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则允许安装该待安装应用程序。通过本方案,可以加强企业内部数据的安全性。
Description
技术领域
本发明涉及移动互联网技术领域,特别是涉及一种应用程序安装方法及装置。
背景技术
随着移动互联网的发展,移动办公已经成为趋势,企业员工越来越多的使用移动终端设备进行办公,这样,员工可以摆脱时间和空间的束缚,在任何时间、任何地点,都可以对企业业务进行处理。企业在为员工提供移动办公便利的同时,对于终端设备的安全问题也提出了较高的要求。例如,限制终端设备的某些功能(拍照、截图、本地存储附件、转发非企业邮件等等)、在终端设备中运行企业内部的应用程序并屏蔽与企业无关的应用程序等等,以达到保护企业内部数据的目的。
目前,终端设备安装应用程序的方法主要包括:企业的服务器设置有记录了安装包名的白名单,并将白名单下发至终端设备,当终端设备有需要安装的应用程序时,将该应用程序的安装包名与白名单进行对比。如果该应用程序的安装包名在白名单中,则可以安装、使用该应用程序;如果该应用程序的安装包名不在白名单中,则禁止安装、使用该应用程序。
但是,由于应用程序的安装包名很容易被篡改,如果将非企业内部的应用程序的安装包名修改为白名单中的任一个,则会使得非企业内部的应用程序可以在终端设备上安装,导致企业内部数据仍然存在较大的安全隐患。
发明内容
本发明实施例的目的在于提供一种应用程序安装方法及装置,以加强企业内部数据的安全性。具体技术方案如下:
第一方面,本发明实施例提供了一种应用程序安装方法,所述方法包括:
当识别到待安装应用程序的安装请求时,根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证;
若验证通过,则允许安装所述待安装应用程序。
第二方面,本发明实施例提供了一种应用程序安装方法,所述方法包括:
创建数字加密证书,得到数字证书公钥及数字证书私钥;
使用所述数字证书私钥对预先开发的应用程序进行签名,并发布签名后的应用程序;
向客户端发送所述数字证书公钥,以使所述客户端使用所述数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则安装所述待安装应用程序。
第三方面,本发明实施例提供了一种应用程序安装装置,所述装置包括:
验证模块,用于当识别到待安装应用程序的安装请求时,根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证;
允许模块,用于若所述验证模块的验证结果为通过,则允许安装所述待安装应用程序。
第四方面,本发明实施例提供了一种应用程序安装装置,所述装置包括:
创建模块,用于创建数字加密证书,得到数字证书公钥及数字证书私钥;
发布模块,用于使用所述数字证书私钥对预先开发的应用程序进行签名,并发布签名后的应用程序;
发送模块,用于向客户端发送所述数字证书公钥,以使所述客户端使用所述数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则安装所述待安装应用程序。
第五方面,本发明实施例提供了一种终端设备,该终端设备安装有客户端,所述终端设备包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行的指令,所述指令由所述处理器加载并执行:以实现本发明实施例第一方面所述的方法步骤。
第六方面,本发明实施例提供了一种机器可读存储介质,所述机器可读存储介质内存储有机器可执行的指令,所述指令由处理器加载并执行,以实现本发明实施例第一方面所述的方法步骤。
第七方面,本发明实施例提供了一种服务器,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行的指令,所述指令由所述处理器加载并执行:以实现本发明实施例第二方面所述的方法步骤。
第八方面,本发明实施例提供了一种机器可读存储介质,所述机器可读存储介质内存储有机器可执行的指令,所述指令由处理器加载并执行,以实现本发明实施例第二方面所述的方法步骤。
本发明实施例提供的一种应用程序安装方法及装置,当客户端识别到待安装应用程序的安装请求时,根据该安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则允许安装该待安装应用程序。数字证书公钥为服务器在创建数字加密证书时得到的,同时还得到了一个数字证书私钥,服务器利用数字证书私钥对允许安装的应用程序进行签名,因此,如果客户端在对待安装应用程序进行签名验证时可以验证通过,则说明待安装应用程序为允许安装的应用程序,而数字加密证书的非对称性,使得在客户端上很难知道服务器在进行签名时所使用的私钥,因此,对于非企业内部的应用程序,很难以相同的私钥进行签名,这样对于使用数字证书公钥无法通过验证的应用程序,可以禁止安装,加强了企业内部数据的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的应用于客户端的应用程序安装方法的流程示意图;
图2为本发明实施例的应用于服务器的应用程序安装方法的流程示意图;
图3为本发明实施例的应用于客户端的应用程序安装装置的结构示意图;
图4为本发明实施例的应用于服务器的应用程序安装装置的结构示意图;
图5为本发明实施例的终端设备的结构示意图;
图6为本发明实施例的服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了加强企业内部数据的安全性,本发明实施例提供了一种应用程序安装方法、装置、终端设备、服务器及机器可读存储介质。下面首先对本发明实施例所提供的应用程序安装方法进行介绍。
本发明实施例所提供的应用程序安装方法主要应用于手机、个人电脑等终端设备,具体的,可以由终端设备上安装的用于对应用程序的安装/卸载进行管理的软件客户端实现,该客户端为终端设备的常驻进程,客户端可以获取到终端设备的Root(根)权限,从而可以对终端设备安装/卸载应用程序进行管理。下面,以客户端为终端设备上安装的软件客户端的应用场景,对本发明实施例所提供的应用程序安装方法进行介绍。
如图1所示,本发明实施例所提供的一种应用程序安装方法,可以包括如下步骤。
S101,当识别到待安装应用程序的安装请求时,根据安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证。
终端设备上可以安装有用于对应用程序的安装/卸载进行管理的软件客户端,当用户在终端设备上选择一个应用程序进行安装时,客户端可以感知到需要安装应用程序的安装请求,该安装请求中携带有待安装应用程序的名称、大小、开发时间等信息。安装请求可以是用户在将一个应用程序的安装包拷贝至终端设备上选择安装时产生的,也可以是用户从应用商店中选择安装某个应用程序时产生的,其中,应用商店可以为企业指定的某个应用商店,也可以是第三方的应用商店。
在客户端识别到安装请求之后,可以根据安装请求中携带的应用程序的名称、大小、开发时间等信息,从应用商店或者用户拷贝的应用程序中提取出待安装应用程序。由于终端设备会从服务器预先获取到一个数字证书公钥,该数字证书公钥是服务器在创建数字加密证书时得到的,服务器在创建数字加密证书时,同时会得到一个数字证书私钥。客户端在启动时,可以主动地从服务器在线导入数字证书公钥,客户端在线导入数字证书公钥的方式,可以是客户端向服务器发送一个获取请求,服务器在接收到该获取请求后,将数字证书公钥下发给客户端;服务器也可以在创建好数字加密证书之后,就直接将数字证书公钥下发给终端设备,终端设备对数字证书公钥和客户端进行绑定,当客户端启动时,即可使用绑定的数字证书公钥。
可选的,本发明实施例所提供的应用程序安装方法还可以执行如下步骤:
客户端启动时,从服务器获取数字证书公钥;
客户端关闭时,则清除数字证书公钥。
为了保证安装应用程序的有效性,客户端可以在线导入数字证书公钥,即客户端在启动时,可以直接从服务器获取到数字证书公钥,当然,为了保证只有在有数字证书公钥且数字证书公钥正确的情况下,应用程序才可以安装、使用,则在客户端关闭时,尤其是强制关闭时,清除掉数字证书公钥。需要说明的一点,服务器可以针对不同的用户创建独立的数字加密证书,或者创建一套不同用户通用的数字加密证书。在终端设备上登录的用户具有不同的权限,当用户在终端设备上登录后,由于这个用户在服务器侧已被授予了用户权限(可以由企业自行划分,如按照职级:普通员工、项目经理、企业高管等等),每个用户的权限可能都不一致,这样,当用户登录时,服务器检查用户是什么权限,以决定是否需要给用户创建单独的数字加密证书,或者使用通用的数字加密证书。数字加密证书可以是服务器基于现有的算法生成的,也可以是企业通过购买得到的,这里不做具体限定。
服务器允许终端设备安装的应用程序,往往是企业内网自行开发的,因此,企业在开发应用程序后,会使用数字证书私钥对应用程序进行签名,即对应用程序进行加密,由于服务器创建的数字加密证书为非对称的数字加密证书,所得到的数字证书公钥和数字证书私钥是不同的。使用数字证书公钥加密的密文只能通过数字证书私钥解密;使用数字证书私钥加密的密文只能通过数字证书公钥解密。则客户端可以使用数字证书公钥进行签名验证,如果待安装应用程序为允许安装的应用程序,只有数字证书公钥才能对待安装应用程序进行解码并验证签名。对于没有使用数字证书私钥签名的应用程序,无法对签名进行验证。
可选的,在识别到待安装应用程序的安装请求之后,本发明实施例所提供的应用程序安装方法还可以执行如下步骤:
判断安装请求中携带的安装源标识是否为指定应用商店的标识;若是,则根据安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证。
为了避免安装来源不明的应用程序安装到终端设备上,在接收到安装请求之后,需要先对安装源进行判断,由于安装请求中携带有安装源标识,例如安装源的名称、地址等等,通过安装源标识可以识别出待安装应用程序的安装源是从外部拷贝的,还是从网站上下载的,还是从第三方应用商店下载的,或者是从企业要求的指定应用商店下载的。通常情况下,服务器为了保证应用程序的来源可靠性,会将开发的应用程序发布到指定的应用商店上,则客户端可以通过安装请求中携带的安装源标识确定出是从指定应用商店下载的待安装应用程序,则继续之后后续的安装操作,如果不是从指定应用商店下载的,则禁止安装。
可选的,本发明实施例所提供的应用程序安装方法还可以执行如下步骤:
对已安装的应用程序进行扫描,获取已安装的应用程序的安装信息;
判断安装信息中携带的安装源标识是否为指定应用商店的标识;
若否,则生成卸载或隐藏命令,以卸载或者隐藏所述已安装的应用程序。
在未启动客户端时,企业员工可能在终端设备上安装了其他安装源的应用程序,而这些应用程序可能会给内网数据带来不确定的威胁,因此,在客户端启动时,或者终端设备启动时,可以对已安装的应用程序进行扫描,对于不是通过指定应用商店安装的应用程序,客户端可以生成卸载或隐藏命令,以使得终端设备基于该命令进行卸载或者隐藏,限制这些应用程序的使用,保证内网数据的安全。
S102,若验证通过,则允许安装待安装应用程序。
如果使用数字证书公钥,可以通过对待安装应用程序的签名验证,则说明待安装应用程序为服务器运行安装的应用程序,则客户端可以允许安装待应用程序,终端设备可以通过提取安装包,对待安装应用程序进行安装。如果验证不通过,则说明待安装应用程序是服务器禁止安装、使用的应用程序,则客户端拒绝安装该待安装应用程序。终端设备上所安装的客户端可以实现企业的安全桌面的效果,即服务器允许安装的应用程序就显示在终端设备的桌面上,以便用户使用。
在应用程序被安装到终端设备上后,为了保证企业数据的安全,可以要求终端设备必须使用特定的企业网络才可以使用该应用程序。例如,当客户端检测到终端设备接入的网络的服务集标识SSID(Service Set Identifier,简称SSID)不是特定的企业网络的SSID,则不允许终端接入网络。
可选的,本发明实施例所提供的应用程序安装方法还可以执行如下步骤:
在识别到待安装应用程序访问内网数据时,使用数字证书公钥加密数据传输请求,并将加密后的数据传输请求发送至服务器,以使服务器使用相应的数字证书私钥对数据传输请求进行解密,若成功解密,则返回通过消息;
在识别到服务器返回的通过消息后,允许向服务器传输数据报文。
在已经安装的应用程序访问企业内网数据时,为了保证数据传输的安全性,可以先使用数字证书公钥加密一段数据作为数据传输请求,客户端将加密后的数据传输请求发送给服务器,服务器可以使用数字证书私钥,对此加密的数据传输请求进行解密,如果无法解密则直接丢弃此次请求,禁止终端设备传输数据报文,如果可以解密则返回一个通过消息,客户端在识别到通过消息后,允许终端设备向服务器传输数据报文。
应用本实施例,当客户端识别到待安装应用程序的安装请求时,根据该安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则允许安装该待安装应用程序。数字证书公钥为服务器在创建数字加密证书时得到的,同时还得到了一个数字证书私钥,服务器利用数字证书私钥对允许安装的应用程序进行签名,因此,如果客户端在对待安装应用程序进行签名验证时可以验证通过,则说明待安装应用程序为允许安装的应用程序,而数字加密证书的非对称性,使得在客户端上很难知道服务器在进行签名时所使用的私钥,因此,对于非企业内部的应用程序,很难以相同的私钥进行签名,这样对于使用数字证书公钥无法通过验证的应用程序,可以禁止安装,加强了企业内部数据的安全性。
如上述,数字证书公钥是由服务器下发的,因此,如图2所示,在实现应用程序安装方法的过程中,服务器可以执行如下步骤。
S201,创建数字加密证书,得到数字证书公钥及数字证书私钥。
服务器可以针对不同的用户创建独立的数字加密证书,或者创建一套不同用户通用的数字加密证书。在终端设备上登录的用户具有不同的权限,当用户在终端设备上登录后,由于这个用户在服务器侧已被授予了用户权限(可以由企业自行划分,如按照职级:普通员工、项目经理、企业高管等等),每个用户的权限可能都不一致,这样,当用户登录时,服务器检查用户是什么权限,以决定是否需要给用户创建单独的数字加密证书,或者使用通用的数字加密证书。由于数字加密证书为非对称的数字加密证书,通过创建数字加密证书,可以得到数字证书公钥和数字证书私钥,所得到的数字证书公钥和数字证书私钥是不同的。使用数字证书公钥加密的密文只能通过数字证书私钥解密;使用数字证书私钥加密的密文只能通过数字证书公钥解密。
S202,使用数字证书私钥对预先开发的应用程序进行签名,并发布签名后的应用程序。
数字证书私钥是服务器自身进行加密、签名所使用的秘钥,服务器可以使用数字证书私钥对预先开发的应用程序进行签名,在完成签名之后,可以将签名后的应用程序发布至网站、第三方应用商店、企业指定的应用商店。
可选的,S202具体可以为:
将签名后的应用程序发布至指定应用商店。
为了保证终端设备在安装应用程序时,能够避免安装来源不明的应用程序,需要将签名后的应用程序发布到指定应用商店,这里所提及的指定应用商店为企业认证的应用商店,该应用商店中均是服务器允许安装的应用程序。
S203,向客户端发送数字证书公钥,以使客户端使用数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则安装待安装应用程序。
客户端在启动时,可以主动地从服务器在线导入数字证书公钥,客户端在线导入数字证书公钥的方式,可以是客户端向服务器发送一个获取请求,服务器在接收到该获取请求后,将数字证书公钥下发给终端设备中的客户端;服务器也可以在创建好数字加密证书之后,就直接将数字证书公钥下发给终端设备,终端设备对数字证书公钥和客户端进行绑定,当客户端启动时,即可使用绑定的数字证书公钥。这里不做具体的限定。客户端可以按照图1所示实施例的步骤进行应用程序的安装,这里不再赘述。
可选的,服务器还可以执行如下步骤:
接收客户端发送的数据传输请求;
使用数字证书私钥,对数据传输请求进行解密;
若成功解密,则向客户端返回通过消息,以使客户端在识别到通过消息后,允许传输数据报文。
在已经安装的应用程序访问企业内网数据时,客户端会向服务器发送一个数据传输请求,该数据传输请求为客户端使用数字证书公钥加密得到,服务器可以使用数字证书私钥,对此加密的数据传输请求进行解密,如果无法解密则直接丢弃此次请求,禁止传输数据报文,如果可以解密则向客户端返回一个通过消息,客户端如果识别到通过消息,则允许传输数据报文。
应用本实施例,服务器在创建数字加密证书时,得到数字证书公钥和数字证书私钥,服务器利用数字证书私钥对允许安装的应用程序进行签名,因此,如果客户端在对待安装应用程序进行签名验证时可以验证通过,则说明待安装应用程序为允许安装的应用程序,而数字加密证书的非对称性,使得在客户端上很难知道服务器在进行签名时所使用的私钥,因此,对于非企业内部的应用程序,很难以相同的私钥进行签名,这样对于使用数字证书公钥无法通过验证的应用程序,可以禁止安装,加强了企业内部数据的安全性。
相应于上述方法实施例,本发明实施例提供了一种应用程序安装装置,如图3所示,该装置可以包括:
验证模块310,用于当识别到待安装应用程序的安装请求时,根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证;
允许模块320,用于若所述验证模块的验证结果为通过,则允许安装所述待安装应用程序。
可选的,所述装置还可以包括:
获取模块,用于对已安装的应用程序进行扫描,获取所述已安装的应用程序的安装信息;
判断模块,用于判断所述安装信息中携带的安装源标识是否为指定应用商店的标识;
生成模块,用于若所述判断模块的判断结果为否,则生成卸载或隐藏命令,以卸载或者隐藏所述已安装的应用程序。
可选的,所述装置还可以包括:
判断模块,用于判断所述安装请求中携带的安装源标识是否为指定应用商店的标识;
所述验证模块310,具体可以用于若所述判断模块的判断结果为是,则执行所述根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证的步骤。
可选的,所述装置还可以包括:
加密模块,用于在识别到所述待安装应用程序访问内网数据时,使用所述数字证书公钥加密数据传输请求,并将加密后的数据传输请求发送至所述服务器,以使所述服务器使用相应的数字证书私钥对所述数据传输请求进行解密,若成功解密,则返回通过消息;
所述允许模块,还可以用于在识别到所述服务器返回的所述通过消息后,允许向所述服务器传输数据报文。
可选的,所述装置还可以包括:
获取模块,用于客户端启动时,从所述服务器获取所述数字证书公钥;
清除模块,用于所述客户端关闭时,清除所述数字证书公钥。
本发明实施例还提供了一种应用程序安装装置,如图4所示,该装置可以包括:
创建模块410,用于创建数字加密证书,得到数字证书公钥及数字证书私钥;
发布模块420,用于使用所述数字证书私钥对预先开发的应用程序进行签名,并发布签名后的应用程序;
发送模块430,用于向客户端发送所述数字证书公钥,以使所述客户端使用所述数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则安装所述待安装应用程序。
可选的,所述发布模块420,具体可以用于:
将签名后的应用程序发布至指定应用商店。
可选的,所述装置还可以包括:
接收模块,用于接收所述客户端发送的数据传输请求;
解密模块,用于使用所述数字证书私钥,对所述数据传输请求进行解密;
返回模块,用于若所述解密模块成功解密,则向所述客户端返回通过消息,以使所述客户端在识别到所述通过消息后,允许传输数据报文。
应用本实施例,当客户端识别到待安装应用程序的安装请求时,根据该安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则允许安装该待安装应用程序。数字证书公钥为服务器在创建数字加密证书时得到的,同时还得到了一个数字证书私钥,服务器利用数字证书私钥对允许安装的应用程序进行签名,因此,如果客户端在对待安装应用程序进行签名验证时可以验证通过,则说明待安装应用程序为允许安装的应用程序,而数字加密证书的非对称性,使得在客户端上很难知道服务器在进行签名时所使用的私钥,因此,对于非企业内部的应用程序,很难以相同的私钥进行签名,这样对于使用数字证书公钥无法通过验证的应用程序,可以禁止安装,加强了企业内部数据的安全性。
本发明实施例还提供了一种终端设备,该终端设备上安装有客户端,如图5所示,终端设备可以包括处理器501和机器可读存储介质502,所述机器可读存储介质502存储有能够被所述处理器501执行的机器可执行的指令,所述指令由所述处理器501加载并执行:以实现本发明实施例所提供的应用于客户端的应用程序安装方法的步骤。
本发明实施例还提供了一种服务器,如图6所示,包括处理器601和机器可读存储介质602,所述机器可读存储介质602存储有能够被所述处理器601执行的机器可执行的指令,所述指令由所述处理器601加载并执行:以实现本发明实施例所提供的应用于服务器的应用程序安装方法的步骤。
上述机器可读存储介质可以包括RAM(Random Access Memory,随机存取存储器),也可以包括NVM(Non-volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
机器可读存储介质502与处理器501之间、机器可读存储介质602与处理器601之间可以通过有线连接或者无线连接的方式进行数据传输,并且终端设备与服务器之间可以通过有线通信接口或者无线通信接口进行通信。图5和图6所示的仅为通过总线进行数据传输的示例,不作为具体连接方式的限定。
本实施例中,处理器501通过读取机器可读存储介质502中存储的机器可执行的指令,处理器601通过读取机器可读存储介质602中存储的机器可执行的指令,通过加载并执行指令,能够实现:当客户端识别到待安装应用程序的安装请求时,根据该安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则允许安装该待安装应用程序。数字证书公钥为服务器在创建数字加密证书时得到的,同时还得到了一个数字证书私钥,服务器利用数字证书私钥对允许安装的应用程序进行签名,因此,如果客户端在对待安装应用程序进行签名验证时可以验证通过,则说明待安装应用程序为允许安装的应用程序,而数字加密证书的非对称性,使得在客户端上很难知道服务器在进行签名时所使用的私钥,因此,对于非企业内部的应用程序,很难以相同的私钥进行签名,这样对于使用数字证书公钥无法通过验证的应用程序,可以禁止安装,加强了企业内部数据的安全性。
另外,本发明实施例还提供了一种机器可读存储介质,所述机器可读存储介质内存储有机器可执行的指令,所述指令被处理器加载并执行,以实现本发明实施例所提供的应用于客户端的应用程序安装方法的步骤。
本发明实施例还提供了一种机器可读存储介质,所述机器可读存储介质内存储有机器可执行的指令,所述指令被处理器加载并执行,以实现本发明实施例所提供的应用于服务器的应用程序安装方法的步骤。
本实施例中,机器可读存储介质存储有处理器在运行时执行本发明实施例所提供的应用于客户端和服务器的应用程序安装方法的机器可执行的指令,因此能够实现:当客户端识别到待安装应用程序的安装请求时,根据该安装请求,使用预先从服务器获取的数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则允许安装该待安装应用程序。数字证书公钥为服务器在创建数字加密证书时得到的,同时还得到了一个数字证书私钥,服务器利用数字证书私钥对允许安装的应用程序进行签名,因此,如果客户端在对待安装应用程序进行签名验证时可以验证通过,则说明待安装应用程序为允许安装的应用程序,而数字加密证书的非对称性,使得在客户端上很难知道服务器在进行签名时所使用的私钥,因此,对于非企业内部的应用程序,很难以相同的私钥进行签名,这样对于使用数字证书公钥无法通过验证的应用程序,可以禁止安装,加强了企业内部数据的安全性。
对于终端设备、服务器及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、终端设备、服务器及机器可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (11)
1.一种应用程序安装方法,其特征在于,所述方法包括:
当识别到待安装应用程序的安装请求时,根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证;
若验证通过,则允许安装所述待安装应用程序。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对已安装的应用程序进行扫描,获取所述已安装的应用程序的安装信息;
判断所述安装信息中携带的安装源标识是否为指定应用商店的标识;
若否,则生成卸载或隐藏命令,以卸载或者隐藏所述已安装的应用程序。
3.根据权利要求1所述的方法,其特征在于,在识别到所述待安装应用程序的安装请求之后,所述方法还包括:
判断所述安装请求中携带的安装源标识是否为指定应用商店的标识;
若是,则执行所述根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证的步骤。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在识别到所述待安装应用程序访问内网数据时,使用所述数字证书公钥加密数据传输请求,并将加密后的数据传输请求发送至所述服务器,以使所述服务器使用相应的数字证书私钥对所述数据传输请求进行解密,若成功解密,则返回通过消息;
在识别到所述服务器返回的所述通过消息后,允许向所述服务器传输数据报文。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
客户端启动时,从所述服务器获取所述数字证书公钥;
所述客户端关闭时,清除所述数字证书公钥。
6.一种应用程序安装方法,其特征在于,所述方法包括:
创建数字加密证书,得到数字证书公钥及数字证书私钥;
使用所述数字证书私钥对预先开发的应用程序进行签名,并发布签名后的应用程序;
向客户端发送所述数字证书公钥,以使所述客户端使用所述数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则安装所述待安装应用程序。
7.一种应用程序安装装置,其特征在于,所述装置包括:
验证模块,用于当识别到待安装应用程序的安装请求时,根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证;
允许模块,用于若所述验证模块的验证结果为通过,则允许安装所述待安装应用程序。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
获取模块,用于对已安装的应用程序进行扫描,获取所述已安装的应用程序的安装信息;
判断模块,用于判断所述安装信息中携带的安装源标识是否为指定应用商店的标识;
生成模块,用于若所述判断模块的判断结果为否,则生成卸载或隐藏命令,以卸载或者隐藏所述已安装的应用程序。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:
判断模块,用于判断所述安装请求中携带的安装源标识是否为指定应用商店的标识;
所述验证模块,具体用于若所述判断模块的判断结果为是,则执行所述根据所述安装请求,使用预先从服务器获取的数字证书公钥,对所述待安装应用程序进行签名验证的步骤。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
获取模块,用于客户端启动时,从所述服务器获取所述数字证书公钥;
清除模块,用于所述客户端关闭时,清除所述数字证书公钥。
11.一种应用程序安装装置,其特征在于,所述装置包括:
创建模块,用于创建数字加密证书,得到数字证书公钥及数字证书私钥;
发布模块,用于使用所述数字证书私钥对预先开发的应用程序进行签名,并发布签名后的应用程序;
发送模块,用于向客户端发送所述数字证书公钥,以使所述客户端使用所述数字证书公钥,对待安装应用程序进行签名验证,若验证通过,则安装所述待安装应用程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811516421.4A CN109660353A (zh) | 2018-12-12 | 2018-12-12 | 一种应用程序安装方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811516421.4A CN109660353A (zh) | 2018-12-12 | 2018-12-12 | 一种应用程序安装方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109660353A true CN109660353A (zh) | 2019-04-19 |
Family
ID=66112924
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811516421.4A Pending CN109660353A (zh) | 2018-12-12 | 2018-12-12 | 一种应用程序安装方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109660353A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110135149A (zh) * | 2019-05-13 | 2019-08-16 | 深圳大趋智能科技有限公司 | 一种应用安装的方法及相关装置 |
CN110442357A (zh) * | 2019-08-09 | 2019-11-12 | 四川虹美智能科技有限公司 | 一种应用安装管理方法、智能设备以及系统 |
CN111324887A (zh) * | 2020-02-25 | 2020-06-23 | 广东天波信息技术股份有限公司 | 一种应用程序的安装控制方法及装置 |
CN112925531A (zh) * | 2019-12-05 | 2021-06-08 | 成都鼎桥通信技术有限公司 | 一种应用软件安装卸载的管控方法 |
CN114154171A (zh) * | 2022-02-07 | 2022-03-08 | 浙江省人力资源和社会保障信息中心 | 社保自助机程序安装方法、系统、电子设备及计算机介质 |
CN114285581A (zh) * | 2021-12-07 | 2022-04-05 | 西安广和通无线通信有限公司 | 应用管理方法及相关产品 |
CN116400935A (zh) * | 2023-06-09 | 2023-07-07 | 贵州爱信诺航天信息有限公司 | 基于国产化平台的跨平台部署系统及方法 |
CN116541853A (zh) * | 2023-07-06 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 基板管理控制器固件的管理方法、装置、设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546604A (zh) * | 2011-12-22 | 2012-07-04 | 四川长虹电器股份有限公司 | 智能电视应用程序安全控制方法 |
CN103441848A (zh) * | 2013-08-16 | 2013-12-11 | 广东欧珀移动通信有限公司 | 移动终端的应用认证方法和系统 |
CN103577206A (zh) * | 2012-07-27 | 2014-02-12 | 北京三星通信技术研究有限公司 | 一种应用软件的安装方法和装置 |
CN103905919A (zh) * | 2014-03-25 | 2014-07-02 | 丹阳市广播电视台 | 一种基于智能平台的安卓应用安装包可管可控系统 |
CN104331658A (zh) * | 2014-11-14 | 2015-02-04 | 北京视博数字电视科技有限公司 | 一种智能终端应用程序的安装验证方法及系统 |
CN106230598A (zh) * | 2016-07-29 | 2016-12-14 | 深圳兆日科技股份有限公司 | 移动终端第三方应用安全认证方法和装置 |
CN106815518A (zh) * | 2015-11-30 | 2017-06-09 | 华为技术有限公司 | 一种应用安装方法及电子设备 |
CN107239695A (zh) * | 2017-04-10 | 2017-10-10 | 青岛海信移动通信技术股份有限公司 | 一种移动终端中安装应用程序的方法和移动终端 |
CN107463806A (zh) * | 2017-06-20 | 2017-12-12 | 国家计算机网络与信息安全管理中心 | 一种Android应用程序安装包的签名和验签方法 |
-
2018
- 2018-12-12 CN CN201811516421.4A patent/CN109660353A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546604A (zh) * | 2011-12-22 | 2012-07-04 | 四川长虹电器股份有限公司 | 智能电视应用程序安全控制方法 |
CN103577206A (zh) * | 2012-07-27 | 2014-02-12 | 北京三星通信技术研究有限公司 | 一种应用软件的安装方法和装置 |
CN103441848A (zh) * | 2013-08-16 | 2013-12-11 | 广东欧珀移动通信有限公司 | 移动终端的应用认证方法和系统 |
CN103905919A (zh) * | 2014-03-25 | 2014-07-02 | 丹阳市广播电视台 | 一种基于智能平台的安卓应用安装包可管可控系统 |
CN104331658A (zh) * | 2014-11-14 | 2015-02-04 | 北京视博数字电视科技有限公司 | 一种智能终端应用程序的安装验证方法及系统 |
CN106815518A (zh) * | 2015-11-30 | 2017-06-09 | 华为技术有限公司 | 一种应用安装方法及电子设备 |
CN106230598A (zh) * | 2016-07-29 | 2016-12-14 | 深圳兆日科技股份有限公司 | 移动终端第三方应用安全认证方法和装置 |
CN107239695A (zh) * | 2017-04-10 | 2017-10-10 | 青岛海信移动通信技术股份有限公司 | 一种移动终端中安装应用程序的方法和移动终端 |
CN107463806A (zh) * | 2017-06-20 | 2017-12-12 | 国家计算机网络与信息安全管理中心 | 一种Android应用程序安装包的签名和验签方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110135149A (zh) * | 2019-05-13 | 2019-08-16 | 深圳大趋智能科技有限公司 | 一种应用安装的方法及相关装置 |
CN110442357A (zh) * | 2019-08-09 | 2019-11-12 | 四川虹美智能科技有限公司 | 一种应用安装管理方法、智能设备以及系统 |
CN112925531A (zh) * | 2019-12-05 | 2021-06-08 | 成都鼎桥通信技术有限公司 | 一种应用软件安装卸载的管控方法 |
CN112925531B (zh) * | 2019-12-05 | 2023-10-20 | 成都鼎桥通信技术有限公司 | 一种应用软件安装卸载的管控方法 |
CN111324887A (zh) * | 2020-02-25 | 2020-06-23 | 广东天波信息技术股份有限公司 | 一种应用程序的安装控制方法及装置 |
CN114285581A (zh) * | 2021-12-07 | 2022-04-05 | 西安广和通无线通信有限公司 | 应用管理方法及相关产品 |
CN114285581B (zh) * | 2021-12-07 | 2024-05-14 | 西安广和通无线通信有限公司 | 应用管理方法及相关产品 |
CN114154171A (zh) * | 2022-02-07 | 2022-03-08 | 浙江省人力资源和社会保障信息中心 | 社保自助机程序安装方法、系统、电子设备及计算机介质 |
CN116400935A (zh) * | 2023-06-09 | 2023-07-07 | 贵州爱信诺航天信息有限公司 | 基于国产化平台的跨平台部署系统及方法 |
CN116400935B (zh) * | 2023-06-09 | 2023-08-18 | 贵州爱信诺航天信息有限公司 | 一种应用安装系统及方法 |
CN116541853A (zh) * | 2023-07-06 | 2023-08-04 | 苏州浪潮智能科技有限公司 | 基板管理控制器固件的管理方法、装置、设备及存储介质 |
CN116541853B (zh) * | 2023-07-06 | 2023-09-19 | 苏州浪潮智能科技有限公司 | 基板管理控制器固件的管理方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109660353A (zh) | 一种应用程序安装方法及装置 | |
JP4145118B2 (ja) | アプリケーション認証システム | |
US7797545B2 (en) | System and method for registering entities for code signing services | |
CN109214168A (zh) | 固件升级方法及装置 | |
CN107483509A (zh) | 一种身份验证方法、服务器及可读存储介质 | |
CN109618341A (zh) | 一种数字签名认证方法、系统、装置以及存储介质 | |
US20110246764A1 (en) | User authentication system | |
CN101567893A (zh) | 一种实现在web应用中文件上传的方法及系统 | |
CN105975867B (zh) | 一种数据处理方法 | |
JP2008251021A (ja) | アプリケーション認証システム | |
CN105490997B (zh) | 安全校验方法、装置、终端及服务器 | |
US20140317704A1 (en) | Method and system for enabling the federation of unrelated applications | |
CN108449315A (zh) | 请求合法性的校验装置、方法及计算机可读存储介质 | |
US20140282876A1 (en) | Method and system for restricting the operation of applications to authorized domains | |
CN106992859B (zh) | 一种堡垒机私钥管理方法及装置 | |
US8745375B2 (en) | Handling of the usage of software in a disconnected computing environment | |
US20110154436A1 (en) | Provider Management Methods and Systems for a Portable Device Running Android Platform | |
JP5781678B1 (ja) | 電子データ利用システム、携帯端末装置、及び電子データ利用システムにおける方法 | |
CN109246062A (zh) | 一种基于浏览器插件的认证方法及系统 | |
CN114139114A (zh) | 一种基于前端低代码开发维护系统及方法 | |
CN103559430B (zh) | 基于安卓系统的应用账号管理方法和装置 | |
CN113569205A (zh) | 一种sdk软件接口服务授权方法及装置 | |
CN113704734A (zh) | 基于分布式数字身份实现凭证验证的方法及相关装置 | |
CN110602051B (zh) | 基于共识协议的信息处理方法及相关装置 | |
CN109474431A (zh) | 客户端认证方法及计算机可读存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190419 |
|
RJ01 | Rejection of invention patent application after publication |