CN105468413B - 一种支持应用软件自身证书校验的方法和装置 - Google Patents

一种支持应用软件自身证书校验的方法和装置 Download PDF

Info

Publication number
CN105468413B
CN105468413B CN201510850230.1A CN201510850230A CN105468413B CN 105468413 B CN105468413 B CN 105468413B CN 201510850230 A CN201510850230 A CN 201510850230A CN 105468413 B CN105468413 B CN 105468413B
Authority
CN
China
Prior art keywords
certificate
application software
api
module
former
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.)
Active
Application number
CN201510850230.1A
Other languages
English (en)
Other versions
CN105468413A (zh
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.)
Uusafe Co Ltd
Original Assignee
Uusafe 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 Uusafe Co Ltd filed Critical Uusafe Co Ltd
Priority to CN201510850230.1A priority Critical patent/CN105468413B/zh
Publication of CN105468413A publication Critical patent/CN105468413A/zh
Application granted granted Critical
Publication of CN105468413B publication Critical patent/CN105468413B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种支持应用软件自身证书校验的方法和装置,其中方法包括:应用软件为读取证书调取***相应的api;启动证书解析模块;所述证书解析模块拦截所述api的参数;所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自己证书的信息;调用证书替换模块;所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api。本发明能够对应用软件自身证书进行校验,确保了应用软件的正常运行,提升了用户使用体验。

Description

一种支持应用软件自身证书校验的方法和装置
技术领域
本发明涉及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:应用软件为读取证书调取***相应的应用程序编程接口(ApplicationProgramming Interface,以下简称api);
步骤102:启动证书解析模块;
步骤103:所述证书解析模块拦截所述api的参数;
步骤104:所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自己证书的信息;
步骤105:调用证书替换模块;
步骤106:所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api。
其中,所述api为***的GetPackageInfo。
其中,所述证书替换模块从应用软件安装包中找到所述证书,并将所述证书返回给所述api的步骤更包括:所述证书替换模块将所述证书转换为GetPackageInfo所需数据格式。
其中,所述证书替换模块从应用软件安装包中找到所述证书的步骤更包括:找到的所述证书为原证书,所述原证书是相对于将虚拟机中的加载器模块打进原软件包中形成新的绿色软件包而言。具体可参加本公司申请的另一篇专利“一种利用高效虚拟机技术管理Android应用软件的方法”,其中描述到原始应用软件安装包内只有一个证书,在“一种利用高效虚拟机技术管理Android应用软件的方法”专利生成的绿色版本的应用软件包内就会新增一个证书。那么,在绿色软件安装到移动终端后,***的GetPackageInfo这个api只能找到新增的证书,而此时这个应用软件是想读取到自己原来的证书。
实施例2
本实施例提供了一种支持应用软件自身证书校验的装置。参见图2所示为本申请支持应用软件自身证书校验的装置的具体实施例,本实施例中所述装置包括应用软件201、android***202、证书解析模块203、证书替换模块204和应用软件安装包205,其中:
所述应用软件201,与所述android***202耦接,用于为读取证书调取***相应的api;
所述android***202,与所述应用软件201、所述证书解析模块203和所述应用软件安装包205耦接,用于接收所述应用软件201发出的读取证书的请求、并根据请求启动证书解析模块203、以及接收所述应用软件安装包205提供的证书;
所述证书解析模块203,与所述android***202和证书替换模块204耦接,用于拦截所述api的参数,并解析所述api的参数,获得所述应用软件201、正试图读取自己证书的信息,以及调用证书替换模块204;
所述证书替换模块204,与所述证书解析模块203和所述应用软件安装包205耦接,用于从所述应用软件安装包205中找到所述证书;
所述应用软件安装包205,与所述证书替换模块204和所述android***202耦接,用于将所述证书返回给所述api。
其中,所述api为所述android***202的GetPackageInfo。
其中,所述证书替换模块204在从应用软件安装包205中找到所述证书,并将所述证书返回给所述api时更包括:所述证书替换模块204将所述证书转换为GetPackageInfo所需数据格式。
其中,所述证书替换模块204从应用软件安装包205中找到的所述证书为原证书,所述原证书是相对于将虚拟机中的加载器模块打进原软件包中形成新的绿色软件包而言。具体可参加本公司申请的另一篇专利“一种利用高效虚拟机技术管理Android应用软件的方法”,其中描述到原始应用软件安装包内只有一个证书,在“一种利用高效虚拟机技术管理Android应用软件的方法”专利生成的绿色版本的应用软件包内就会新增一个证书。那么,在绿色软件安装到移动终端后,***的GetPackageInfo这个api只能找到新增的证书,而此时这个应用软件是想读取到自己原来的证书。
以上实施例的先后顺序仅为便于描述,不代表实施例的优劣。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (6)

1.一种支持应用软件自身证书校验的方法,其特征在于,包括:
应用软件为读取证书调取***相应的api;
启动证书解析模块;
所述证书解析模块拦截所述api的参数;
所述证书解析模块解析所述api的参数,获得所述应用软件正试图读取自己证书的信息;
调用证书替换模块;
所述证书替换模块从应用软件安装包中找到原证书,并将所述原证书返回给所述api;
所述原证书是相对于将虚拟机中的加载器模块打进原软件包中形成新的绿色软件包而言。
2.根据权利要求1所述的支持应用软件自身证书校验的方法,其特征在于,所述api为***的GetPackageInfo。
3.根据权利要求2所述的支持应用软件自身证书校验的方法,其特征在于,所述证书替换模块从应用软件安装包中找到原证书,并将所述原证书返回给所述api的步骤更包括:所述证书替换模块将所述原证书转换为GetPackageInfo所需数据格式。
4.一种支持应用软件自身证书校验的装置,其特征在于,包括应用软件、android***、证书解析模块、证书替换模块和应用软件安装包,其中:
所述应用软件,与所述android***耦接,用于为读取证书调取***相应的api;
所述android***,与所述应用软件、所述证书解析模块和所述应用软件安装包耦接,用于接收所述应用软件发出的读取证书的请求、并根据请求启动证书解析模块、以及接收所述应用软件安装包提供的证书;
所述证书解析模块,与所述android***和证书替换模块耦接,用于拦截所述api的参数,并解析所述api的参数,获得所述应用软件正试图读取自己证书的信息,以及调用证书替换模块;
所述证书替换模块,与所述证书解析模块和所述应用软件安装包耦接,用于从所述应用软件安装包中找到原证书;
所述应用软件安装包,与所述证书替换模块和所述android***耦接,用于将所述原证书返回给所述api;
所述原证书是相对于将虚拟机中的加载器模块打进原软件包中形成新的绿色软件包而言。
5.根据权利要求4所述的支持应用软件自身证书校验的装置,其特征在于,所述api为所述android***的GetPackageInfo。
6.根据权利要求5所述的支持应用软件自身证书校验的装置,其特征在于,所述证书替换模块在从应用软件安装包中找到原证书,并将所述原证书返回给所述api时更包括:所述证书替换模块将所述原证书转换为GetPackageInfo所需数据格式。
CN201510850230.1A 2015-11-27 2015-11-27 一种支持应用软件自身证书校验的方法和装置 Active CN105468413B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510850230.1A CN105468413B (zh) 2015-11-27 2015-11-27 一种支持应用软件自身证书校验的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510850230.1A CN105468413B (zh) 2015-11-27 2015-11-27 一种支持应用软件自身证书校验的方法和装置

Publications (2)

Publication Number Publication Date
CN105468413A CN105468413A (zh) 2016-04-06
CN105468413B true CN105468413B (zh) 2018-09-18

Family

ID=55606151

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510850230.1A Active CN105468413B (zh) 2015-11-27 2015-11-27 一种支持应用软件自身证书校验的方法和装置

Country Status (1)

Country Link
CN (1) CN105468413B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101309146A (zh) * 2008-06-13 2008-11-19 南京邮电大学 一种可自更新代理证书的网格安全***的实现方法
CN102300065A (zh) * 2011-08-31 2011-12-28 四川长虹电器股份有限公司 基于安卓平台的智能电视软件安全认证的方法
CN102663320A (zh) * 2012-04-12 2012-09-12 福建联迪商用设备有限公司 终端识别开发者及划分不同权限开发者的方法
CN104933355A (zh) * 2015-06-18 2015-09-23 上海斐讯数据通信技术有限公司 移动终端可信应用的安装校验***及其校验方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012151653A1 (en) * 2011-05-06 2012-11-15 Certicom Corp. Validating a batch of implicit certificates

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101309146A (zh) * 2008-06-13 2008-11-19 南京邮电大学 一种可自更新代理证书的网格安全***的实现方法
CN102300065A (zh) * 2011-08-31 2011-12-28 四川长虹电器股份有限公司 基于安卓平台的智能电视软件安全认证的方法
CN102663320A (zh) * 2012-04-12 2012-09-12 福建联迪商用设备有限公司 终端识别开发者及划分不同权限开发者的方法
CN104933355A (zh) * 2015-06-18 2015-09-23 上海斐讯数据通信技术有限公司 移动终端可信应用的安装校验***及其校验方法

Also Published As

Publication number Publication date
CN105468413A (zh) 2016-04-06

Similar Documents

Publication Publication Date Title
EP2988470B1 (en) Automatic purposed-application creation
CN109068179B (zh) 一种多平台直播方法、计算机装置及计算机可读存储介质
US9880830B2 (en) On-board applet migration
KR20180108910A (ko) 보안 통신 채널을 설정하기 위한 방법들 및 장치
CN107087038A (zh) 一种数据同步的方法、同步设备、装置及存储介质
CN103164260B (zh) 用于移动终端的应用程序管理***及方法
CN105278972B (zh) 一种通过动态安装包快速让用户成为好友的***和方法
CN106612192A (zh) 设备的升级方法、装置和***
CN111837374B (zh) 在capif核心功能实体上注册api提供者域功能实体的方法和装置
CN107809437B (zh) 一种融合通信登录方法、装置和计算机可读存储介质
CN112188493A (zh) 一种鉴权认证方法、***及相关设备
CN106464667B (zh) 一种证书管理方法、设备及***
CN108170457A (zh) 固件升级方法、装置及vr头戴式显示器
CN111818518A (zh) 基于应用软件的5g消息接收方法、装置及存储介质
CN106664535A (zh) 一种信息发送方法、装置、终端设备以及***
CN105468413B (zh) 一种支持应用软件自身证书校验的方法和装置
CN106576068B (zh) 一种软件安全验证方法、设备及***
CN105320545B (zh) 一种支持应用软件检查第三方软件的证书的方法和装置
CN106506163B (zh) Rom包处理方法及装置
CN107005409B (zh) 身份到安全元件内的引入
CN109831304B (zh) 一种身份认证设备的多应用方法及***
CN114936072A (zh) 硬件能力调用方法及相关设备
CN105453519A (zh) 一种信息安全验证方法及设备
CN111447609B (zh) 一种号码动态分配方法及***
CN108304206A (zh) 升级方法、装置、计算机设备、程序产品及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A method and device for supporting application software's own certificate verification

Effective date of registration: 20220708

Granted publication date: 20180918

Pledgee: Beijing Zhongguancun bank Limited by Share Ltd.

Pledgor: Beijing Zhizhangyi Technology Co.,Ltd.

Registration number: Y2022110000154

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20230727

Granted publication date: 20180918

Pledgee: Beijing Zhongguancun bank Limited by Share Ltd.

Pledgor: Beijing Zhizhangyi Technology Co.,Ltd.

Registration number: Y2022110000154