一种应用软件的安装方法和装置制造方法及图纸

技术编号:9667697 阅读:73 留言:0更新日期:2014-02-14 05:54
本申请公开了一种应用软件的安装方法,包括:获取安装程序携带的签名信息;利用预先保存的应用软件的安装程序的原始签名信息,对所述安装程序携带的签名信息进行验证,若所述验证结果为未通过,则退出所述应用软件的安装;若所述验证结果为通过验证,则执行所述安装程序的可执行代码。本申请还公开了一种应用软件的安装装置。通过上述本申请,能够有效识别出被篡改的安装程序,有效避免操作系统安装被恶意修改过的应用软件。

【技术实现步骤摘要】
一种应用软件的安装方法和装置
本申请涉及智能手机的软件安装技术,特别涉及一种应用软件的安装方法和装置。
技术介绍
Android是一个开源的嵌入式开发平台,基于Linux的操作系统,用于移动设备(例如智能手机和平板电脑)中,是最受欢迎的开发平台之一。Android的应用软件包以APK包形式提供,也就是应用软件的安装程序是APK包。应用软件常用Java语言编写,同时采用Java签名机制来对APK包进行保护。具体方法如图1所示:将可执行代码(即源代码,具体可以为Dex文件)、资源文件、配置文件、库文件等打包成APK包101,然后将APK包的内容计算成散列值,再使用私钥对散列值进行加密,形成签名文件,即签名后散列102,将签名文件也放入APK包中。安装应用软件时,Android系统使用公钥对APK软件包中的签名文件进行解密(如103框所示),然后和APK包的内容散列值进行对比(如104框所示),若相同,则保证了 APK包内容的完整性。Android系统的所有应用软件都必须有数字证书,Android系统不会安装一个没有数字证书的应用软件。在APK包中,签名文件存放在ΜΕΤΑ-1NFO本文档来自技高网...

【技术保护点】
一种应用软件的安装方法,其特征在于,该方法包括:a、获取待安装应用软件的安装程序携带的签名信息;b、利用预先保存的所述安装程序对应的原始签名信息,对所述安装程序携带的签名信息进行验证,若未通过验证,则退出所述应用软件的安装;若通过验证,则执行所述安装程序的可执行代码。

【技术特征摘要】
1.一种应用软件的安装方法,其特征在于,该方法包括: a、获取待安装应用软件的安装程序携带的签名信息; b、利用预先保存的所述安装程序对应的原始签名信息,对所述安装程序携带的签名信息进行验证,若未通过验证,则退出所述应用软件的安装;若通过验证,则执行所述安装程序的可执行代码。2.根据权利要求1所述的方法,其特征在于,所述原始签名信息中包括公钥; 所述对所述安装程序携带的签名信息进行验证,包括:利用所述原始签名信息中的公钥对所述安装程序携带的签名信息进行验证。3.根据权利要求2所述的方法,其特征在于,所述利用所述原始签名信息中的公钥对所述安装程序携带的签名信息进行验证,包括: 将所述原始签名信息中的公钥与所述安装程序携带的签名信息中的公钥进行比较,如果相同,则确定通过验证;如果不同,则确定未通过验证; 或者,利用所述原始签名信息中的公钥对所述安装程序携带的签名信息进行解密,如果解密成功,则确定通过验证;如果解密失败,则确定未通过验证。4.根据权利要求2所述的方法,其特征在于,所述原始签名信息中的公钥为加密后的公钥,在对所述安装程序携带的签名信息进行验证前,该方法进一步包括:对所述原始签名信息中的公钥进行解密; 所述利用所述原始签名信息中的公钥对所述安装程序携带的签名信息进行验证,包括:利用解密后的公钥对所述安装 程序携带的签名信息进行验证。5.根据权利要求1所述的方法,其特征在于,所述执行所述安装程序的可执行代码,包括: 获取预先存储在设定存储位置的所述应用程序的可执行代码,并加载所述可执行代码。6.根据权利要求5所述的方法,其特征在于,获取的所述可执行代码为加密的代码,所述安装程序在加载所述可执行代码前进一步包括:对所述可执行代码进行解密; 所述加载所述可执行代码,包括:加载解密后的所述可执行代码。7.根据权利要求1到6中任一所述的方法,其特征在于,所述原始签名信息保存在静态库或网络中的服务器中;且所述步骤a由所述安装程序执行,所述步骤b,包括:所述静态库或网络中的服务器利用预先保存的所述安装程序对应的原始签名信息,对所述安装程序携带的签名信息进行验证,并将验证结果反馈给所述安装程序,所述安装程序根据所述验证结果执行与所述验证结果对应的操作; 或者,所述原始签名信息保存在操作系统的本地数据库中;所述步骤a和所述步骤b由安装所述应用软件的所述操作系统执行。8.根据权利要求7所述的方法,其特征在于,所述静态库通过非JAVA语言编写。9.根据权利要求1到6中任一所述的方法,其特征在于,在所述步骤a和所述步骤b之间进一步包括:将获取的所述安装程序携带的签名信息提供给用户,并确定用户选择不信任所述签名信息。10.根据权利要求1到6中任一所述的方法,其特征在于,所述步骤a由安装所述应用软件的操作系统执行,所述原始签名信息保存在所述操作系统的本地数据库中;在所述步骤a和所述步骤b之间进一步包括: 所述操作系统从本地数据库中查询所述安装程序的原始签名信息,并在确定未查询到时,所述操作系统从网络服务器中查询所述应用软件的原始签名信息,将查询到的原始签名信息保存到所述本地数据库中;若在网络服务器中未查询到所述原始签名信息,则所述操作系统从所述安装程序提供的预设接口读取所述应用软件的原始签名信息,并将读取到的所述原始签名信息保存到所述本地数据库中; 或者, 所述操作系统从本地数据库中查询所述安装程序的原始签名信息,并在确定未查询到时,所述操作系统从所述安装程序中提供的预设接口读取所述应用软件的原始签名信息,并将读取到的所述原始签名信息保存到所述本地数据库;若所述安装程序未提供读取原始签名信息的预设接口,则所述操作系统从网络服务器...

【专利技术属性】
技术研发人员:赵子鹏
申请(专利权)人:北京三星通信技术研究有限公司三星电子株式会社
类型:发明
国别省市:

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

1