一种支持应用软件自身证书校验的方法和装置制造方法及图纸

技术编号:13118036 阅读:54 留言:0更新日期:2016-04-06 08:51
本发明专利技术公开了一种支持应用软件自身证书校验的方法和装置,其中方法包括:应用软件为读取证书调取系统相应的api;启动证书解析模块;所述证书解析模块拦截所述api的参数;所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自己证书的信息;调用证书替换模块;所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api。本发明专利技术能够对应用软件自身证书进行校验,确保了应用软件的正常运行,提升了用户使用体验。

【技术实现步骤摘要】

本专利技术涉及Android应用软件的
,尤其涉及一种支持应用软件自身证书校验的方法和装置
技术介绍
Android系统要求,所有的程序经过数字签名后才能安装。Android系统使用这个证书来识别应用程序的作者,并且建立程序间的信任关系。证书不是用于用户控制哪些程序可以安装。证书不需要授权中心来签名:Android应用程序上使用自己签名的证书是完全允许且普遍的。在Android开发平台上,每个应用软件会有自己的签名证书,为了防止盗版,很多应用软件自身在软件启动的时候,会对签名进行检查,发现签名不一致,会导致软件运行不正常。
技术实现思路
本专利技术目的是解决现有技术中管理Android应用软件时存在的无法运行等问题。本专利技术解决技术问题采用如下技术方案:一种支持应用软件自身证书校验的方法,包括:应用软件为读取证书调取系统相应的api;启动证书解析模块;所述证书解析模块拦截所述api的参数;所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自己证书的信息;调用证书替换模块;所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api。可选的,所述api为系统的GetPackageInfo。可选的,所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api的步骤更包括:所述证书替换模块将所述证书转换为GetPackageInfo所需数据格式。可选的,所述证书替换模块从应用软件安装包中找到所述证书的步骤更包括:找到的所述证书为原证书,所述原证书是相对于将虚拟机中的加载器模块打进原软件包中形成新的绿色软件包而言。本专利技术解决技术问题采用如下技术方案:一种支持应用软件自身证书校验的装置,包括应用软件、android系统、证书解析模块、证书替换模块和应用软件安装包,其中:所述应用软件,与所述android系统耦接,用于为读取证书调取系统相应的api;所述android系统,与所述应用软件、所述证书解析模块和所述应用软件安装包耦接,用于接收所述应用软件发出的读取证书的请求、并根据请求启动证书解析模块、以及接收所述应用软件安装包提供的证书;所述证书解析模块,与所述android系统和证书替换模块耦接,用于拦截所述api的参数,并解析所述api的参数,获得所述应用软件正试图读取自己证书的信息,以及调用证书替换模块;所述证书替换模块,与所述证书解析模块和所述应用软件安装包耦接,用于从所述应用软件安装包中找到所述证书;所述应用软件安装包,与所述证书替换模块和所述android系统耦接,用于将所述证书返回给所述api。可选的,所述api为所述android系统的GetPackageInfo。可选的,所述证书替换模块在从应用软件安装包中找到所述证书,并将所述证书返回给所述api时更包括:所述证书替换模块将所述证书转换为GetPackageInfo所需数据格式。可选的,所述证书替换模块从应用软件安装包中找到的所述证书为原证书,所述原证书是相对于将虚拟机中的加载器模块打进原软件包中形成新的绿色软件包而言。本专利技术具有如下有益效果:本专利技术能够对应用软件自身证书进行校验,确保了应用软件的正常运行,提升了用户使用体验。附图说明图1为本专利技术的所述一种支持应用软件自身证书校验的方法流程图;图2为基于图1所述一种支持应用软件自身证书校验的装置的结构示意图。具体实施方式下面结合实施例及附图对本专利技术的技术方案作进一步阐述。如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。此外,“耦接”一词在此包含任何直接及间接的电性耦接手段。因此,若文中描述一第一装置耦接于一第二装置,则代表所述第一装置可直接电性耦接于所述第二装置,或通过其他装置或耦接手段间接地电性耦接至所述第二装置。说明书后续描述为实施本申请的较佳实施方式,然所述描述乃以说明本申请的一般原则为目的,并非用以限定本申请的范围。本申请的保护范围当视所附权利要求所界定者为准。实施例1本实施例提供了一种支持应用软件自身证书校验的方法。参见图1所示为本申请支持应用软件自身证书校验的方法的具体实施例,本实施例中所述方法包括以下步骤:步骤101:应用软件为读取证书调取系统相应的应用程序编程接口(ApplicationProgrammingInterface,以下简称api);步骤102:启动证书解析模块;步骤103:所述证书解析模块拦截所述api的参数;步骤104:所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自己证书的信息;步骤105:调用证书替换模块;步骤106:所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api。其中,所述api为系统的GetPackageInfo。其中,所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api的步骤更包括:所述证书替换模块将所述证书转换为GetPackageInfo所需数据格式。其中,所述证书替换模块从应用软件安装包中找到所述证书的步骤更包括:找到的所述证书为原证书,所述原证书是相对于将虚拟机中的加载器模块打进原软件包中形成新的绿色软件包而言。具体可参加本公司申请的另一篇专利“一种利用高效虚拟机技术管理Android应用软件的方法”,其中描述到原始应用软件安装包内只有一个证书,在“一种利用高效虚拟机技术管理Android应用软件的方法”专利生成的绿色版本的应用软件包内就会新增一个证书。那么,在绿色软件安装到移动终端后,系统的GetPackageInfo这个api只能找到新增的证书,而此时这个应用软件是想读取到自己原来的证书。实施例2本实施例提供了一种支持应用软件自身证书校验的装置。参见图2所示为本申请支持应用软件自身证书校验的装置的具体实施例,本实施例中所述装置包括应用软件201、android系统202、证书解析模块203、证书本文档来自技高网...

【技术保护点】
一种支持应用软件自身证书校验的方法,其特征在于,包括:应用软件为读取证书调取系统相应的api;启动证书解析模块;所述证书解析模块拦截所述api的参数;所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自己证书的信息;调用证书替换模块;所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api。

【技术特征摘要】
1.一种支持应用软件自身证书校验的方法,其特征在于,包括:
应用软件为读取证书调取系统相应的api;
启动证书解析模块;
所述证书解析模块拦截所述api的参数;
所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自
己证书的信息;
调用证书替换模块;
所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回
给所述api。
2.根据权利要求1所述的支持应用软件自身证书校验的方法,其特征在于,
所述api为系统的GetPackageInfo。
3.根据权利要求2所述的支持应用软件自身证书校验的方法,其特征在于,
所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所
述api的步骤更包括:所述证书替换模块将所述证书转换为GetPackageInfo
所需数据格式。
4.根据权利要求1所述的支持应用软件自身证书校验的方法,其特征在于,
所述证书替换模块从应用软件安装包中找到所述证书的步骤更包括:找到的所
述证书为原证书,所述原证书是相对于将虚拟机中的加载器模块打进原软件包
中形成新的绿色软件包而言。
5.一种支持应用软件自身证书校验的装置,其特征在于,包括应用软件、
android系统、证书解析模块、证书替换模块和应用软件安装包,其中:
所述应用软件,与所述android系统耦接,用于为读取证书调取系统相应
的api...

【专利技术属性】
技术研发人员:王伟陈电波赵亮周登祥
申请(专利权)人:北京指掌易科技有限公司
类型:发明
国别省市:北京;11

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

1