CN105320545A - 一种支持应用软件检查第三方软件的证书的方法和装置 - Google Patents

一种支持应用软件检查第三方软件的证书的方法和装置 Download PDF

Info

Publication number
CN105320545A
CN105320545A CN201510849696.XA CN201510849696A CN105320545A CN 105320545 A CN105320545 A CN 105320545A CN 201510849696 A CN201510849696 A CN 201510849696A CN 105320545 A CN105320545 A CN 105320545A
Authority
CN
China
Prior art keywords
certificate
software
party software
application software
api
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.)
Granted
Application number
CN201510849696.XA
Other languages
English (en)
Other versions
CN105320545B (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 CN201510849696.XA priority Critical patent/CN105320545B/zh
Publication of CN105320545A publication Critical patent/CN105320545A/zh
Application granted granted Critical
Publication of CN105320545B publication Critical patent/CN105320545B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (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:应用软件为读取证书调取系统相应的应用程序编程接口(ApplicationProgrammingInterface,以下简称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 (8)

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

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510849696.XA CN105320545B (zh) 2015-11-27 2015-11-27 一种支持应用软件检查第三方软件的证书的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510849696.XA CN105320545B (zh) 2015-11-27 2015-11-27 一种支持应用软件检查第三方软件的证书的方法和装置

Publications (2)

Publication Number Publication Date
CN105320545A true CN105320545A (zh) 2016-02-10
CN105320545B CN105320545B (zh) 2018-09-18

Family

ID=55247970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510849696.XA Active CN105320545B (zh) 2015-11-27 2015-11-27 一种支持应用软件检查第三方软件的证书的方法和装置

Country Status (1)

Country Link
CN (1) CN105320545B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112989204A (zh) * 2021-04-14 2021-06-18 江苏国信安网络科技有限公司 手机应用溯源分析方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130160147A1 (en) * 2011-12-16 2013-06-20 Dell Products L.P. Protected application programming interfaces
CN103744686A (zh) * 2013-10-18 2014-04-23 青岛海信传媒网络技术有限公司 智能终端中应用安装的控制方法和系统
CN104035874A (zh) * 2014-06-30 2014-09-10 深圳数字电视国家工程实验室股份有限公司 一种软件程序检测方法、装置及系统
CN104298915A (zh) * 2014-10-16 2015-01-21 厦门美图之家科技有限公司 一种防止安装包被篡改的方法
CN104933362A (zh) * 2015-06-15 2015-09-23 福州大学 Android应用软件API误用类漏洞自动化检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130160147A1 (en) * 2011-12-16 2013-06-20 Dell Products L.P. Protected application programming interfaces
CN103744686A (zh) * 2013-10-18 2014-04-23 青岛海信传媒网络技术有限公司 智能终端中应用安装的控制方法和系统
CN104035874A (zh) * 2014-06-30 2014-09-10 深圳数字电视国家工程实验室股份有限公司 一种软件程序检测方法、装置及系统
CN104298915A (zh) * 2014-10-16 2015-01-21 厦门美图之家科技有限公司 一种防止安装包被篡改的方法
CN104933362A (zh) * 2015-06-15 2015-09-23 福州大学 Android应用软件API误用类漏洞自动化检测方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112989204A (zh) * 2021-04-14 2021-06-18 江苏国信安网络科技有限公司 手机应用溯源分析方法

Also Published As

Publication number Publication date
CN105320545B (zh) 2018-09-18

Similar Documents

Publication Publication Date Title
CN109068179B (zh) 一种多平台直播方法、计算机装置及计算机可读存储介质
CN103810008B (zh) 插件加载方法及系统
CN104866542A (zh) 一种poi数据验证方法和装置
CN104317617A (zh) 一种批量刷新BMC Firmware的方法
WO2017032265A1 (zh) 一种应用推送方法、装置及服务设备
US20170351510A1 (en) Method for recognizing application type
CN104021082A (zh) 一种针对浏览器的远程调试方法及装置
CN103139391A (zh) 对手机安装或卸载应用程序进行权限验证的方法及装置
US10067753B2 (en) Application program uninstallation method and apparatus
CN103077059A (zh) 判断应用程序是否匹配的方法
CN111143020A (zh) 基于卡片的渲染方法、装置、电子设备及可读存储介质
CN104021081A (zh) 一种针对浏览器的调试方法及装置
CN105786636A (zh) 一种系统修复方法及装置
CN105183678A (zh) 终端接口的通信方法及装置
CN105320545A (zh) 一种支持应用软件检查第三方软件的证书的方法和装置
CN105391714A (zh) 移动应用软件自动化签名和验证方法及装置
CN104834612A (zh) 一种安卓手机usb调试模式的启动方法
CN103186465A (zh) 网页用户界面的浏览器兼容性测试方法和系统
CN106569765B (zh) 画面显示方法和装置
CN107229650B (zh) 测试方法及装置
CN104166554A (zh) 一种支持多操作系统的软件开发方法及安装方法
CN105468413A (zh) 一种支持应用软件自身证书校验的方法和装置
CN103761617A (zh) 一种云数据中心中审批流程管理方法及系统
WO2014130790A1 (en) Supplier analysis and verification system and method
CN109543398B (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 to check the certificate of third-party software

Effective date of registration: 20220510

Granted publication date: 20180918

Pledgee: Bank of Hangzhou Limited by Share Ltd. Beijing Zhongguancun branch

Pledgor: Beijing Zhizhangyi Technology Co.,Ltd.

Registration number: Y2022990000266

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: Bank of Hangzhou Limited by Share Ltd. Beijing Zhongguancun branch

Pledgor: Beijing Zhizhangyi Technology Co.,Ltd.

Registration number: Y2022990000266