CN105391714A - 移动应用软件自动化签名和验证方法及装置 - Google Patents

移动应用软件自动化签名和验证方法及装置 Download PDF

Info

Publication number
CN105391714A
CN105391714A CN201510763582.3A CN201510763582A CN105391714A CN 105391714 A CN105391714 A CN 105391714A CN 201510763582 A CN201510763582 A CN 201510763582A CN 105391714 A CN105391714 A CN 105391714A
Authority
CN
China
Prior art keywords
mobile solution
solution software
signature
party
described mobile
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
CN201510763582.3A
Other languages
English (en)
Other versions
CN105391714B (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.)
China Academy of Information and Communications Technology CAICT
Original Assignee
China Academy of Telecommunications Research CATR
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 China Academy of Telecommunications Research CATR filed Critical China Academy of Telecommunications Research CATR
Priority to CN201510763582.3A priority Critical patent/CN105391714B/zh
Publication of CN105391714A publication Critical patent/CN105391714A/zh
Application granted granted Critical
Publication of CN105391714B publication Critical patent/CN105391714B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种移动应用软件自动化签名和验证方法及装置,涉及移动应用软件签名技术领域,方法包括:接收待检测的移动应用软件,并判断其是否包含第三方认证签名;若包含,对第三方认证签名进行验证,输出第一验证结果;若不包含,根据签名服务器上的第三方签名证书对移动应用软件进行第三方签名,并输出签名结果;接收已签名移动应用软件,对其检测机构签名进行验证;若验证通过,确定已签名移动应用软件是否处于一移动应用软件黑名单中;若验证未通过,向移动应用软件检测机构服务器发送未通过通知消息,接收移动应用软件检测机构服务器发送的打包文件,对移动应用软件检测机构服务器签名进行验签,并输出第二验证结果。

Description

移动应用软件自动化签名和验证方法及装置
技术领域
本发明涉及移动应用软件签名技术领域,尤其涉及一种移动应用软件自动化签名和验证方法及装置。
背景技术
近年来,移动设备(例如智能手机和平板电脑)的发展十分迅速,伴随着移动设备的发展,大量的移动应用软件也越来越多,因此移动应用软件的安全性越发重要。当前,很多移动应用软件包含隐私窃取、吸费等恶意行为。为了遏制恶意移动应用软件的传播,并对恶意移动应用软件有效溯源,一般需要通过检测机构对移动应用软件进行第三方签名,从而帮助用户更好的选择正规应用软件。
当前为了对移动应用软件进行第三方签名,通常需要签名的商家需要和多家电子认证服务机构(CertificateAuthority,简称CA)进行接洽,在此过程中,证书的申请、审核和下载均受限制于电子认证服务机构工作人员的查验速度和对签名操作的了解程度。可见当前大量的移动应用软件若需要进行第三方签名和验证,需要耗费大量的人力,不利于移动应用软件签名和验证的进行,过程缓慢且繁琐复杂。
发明内容
本发明的实施例提供一种移动应用软件自动化签名和验证方法及装置,以解决当前对移动应用软件进行第三方签名过程中有过多人为干涉,过程缓慢且繁琐,不利于移动应用软件签名和验证进行的问题。
为达到上述目的,本发明采用如下技术方案:
一种移动应用软件自动化签名和验证方法,包括:
接收待检测的移动应用软件,并判断所述移动应用软件是否包含第三方认证签名;所述第三方认证签名包括移动应用软件开发者第三方认证签名或者移动应用软件下载平台第三方认证签名;
若所述移动应用软件包含所述第三方认证签名,对所述第三方认证签名进行验证,并输出第一验证结果;
若所述移动应用软件不包含所述第三方认证签名,根据签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名,并输出签名结果;所述签名结果包括已签名移动应用软件;
接收移动应用软件检测机构服务器发送的已签名移动应用软件,并对所述已签名移动应用软件的检测机构签名进行验证;
若对所述已签名移动应用软件的检测机构签名进行验证通过,确定所述已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果;
若对所述已签名移动应用软件的检测机构签名进行验证未通过,向移动应用软件检测机构服务器发送未通过通知消息,并接收移动应用软件检测机构服务器发送的打包文件;所述打包文件带有移动应用软件检测机构服务器签名;
对所述移动应用软件检测机构服务器签名进行验签,并输出第二验证结果。
具体的,所述第一验证结果为验证失败结果;
在对所述第三方认证签名进行验证,并输出第一验证结果之后,包括:
判断所述移动应用软件的第三方签名证书是否合法;
若所述移动应用软件的第三方签名证书不合法,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书;
若所述移动应用软件的第三方签名证书合法,且在所述签名服务器上保存有所述移动应用软件的第三方签名证书,根据所述签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名;
若所述移动应用软件的第三方签名证书合法,且在所述签名服务器上未保存所述移动应用软件的第三方签名证书,从电子认证服务机构服务器获取所述移动应用软件的第三方签名证书,并对所述移动应用软件进行第三方签名。
具体的,若所述移动应用软件不包含所述第三方认证签名,根据签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名,包括:
若所述移动应用软件不包含所述第三方认证签名,接收移动应用软件开发者或者移动应用软件下载平台上传的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名;
或者,若所述移动应用软件不包含所述第三方认证签名,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名。
具体的,确定所述已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果,包括:
若所述已签名移动应用软件处于所述移动应用软件黑名单中,确定所述移动应用软件为不合格应用,并输出不合格应用结果到所述移动应用软件检测机构服务器;
若所述已签名移动应用软件未处于所述移动应用软件黑名单中,确定所述移动应用软件为合格应用,并输出合格应用结果到所述移动应用软件检测结构服务器。
具体的,对所述移动应用软件检测机构服务器签名进行验签,并输出第二验证结果,包括:
若对所述移动应用软件检测机构服务器签名进行验签通过,根据预先设置的移动应用软件检测机构证书对所述打包文件中的每个移动应用软件进行第三方签名,并将签名后的移动应用软件反馈给移动应用软件检测机构服务器;
若对所述移动应用软件检测机构服务器签名进行验签未通过,确定所述打包文件被篡改,并输出不合格应用结果到移动应用软件检测机构服务器。
一种移动应用软件自动化签名和验证装置,包括:
第三方认证签名判断单元,用于接收待检测的移动应用软件,并判断所述移动应用软件是否包含第三方认证签名;所述第三方认证签名包括移动应用软件开发者第三方认证签名或者移动应用软件下载平台第三方认证签名;
第三方认证签名验证单元,用于在所述移动应用软件包含所述第三方认证签名时,对所述第三方认证签名进行验证,并输出第一验证结果;
第三方签名单元,用于在所述移动应用软件不包含所述第三方认证签名时,根据签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名,并输出签名结果;所述签名结果包括已签名移动应用软件;
检测机构签名验证单元,用于接收移动应用软件检测机构服务器发送的已签名移动应用软件,并对所述已签名移动应用软件的检测机构签名进行验证;
黑名单应用筛查单元,用于在对所述已签名移动应用软件的检测机构签名进行验证通过时,确定所述已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果;
通知消息发送单元,用于在对所述已签名移动应用软件的检测机构签名进行验证未通过时,向移动应用软件检测机构服务器发送未通过通知消息;
打包文件接收单元,用于接收移动应用软件检测机构服务器发送的打包文件;所述打包文件带有移动应用软件检测机构服务器签名;
检测机构服务器签名验签单元,用于对所述移动应用软件检测机构服务器签名进行验签,并输出第二验证结果。
具体的,所述第三方认证签名验证单元输出的第一验证结果为验证失败结果;
所述装置,还包括:
第三方签名证书合法性验证单元,用于判断所述移动应用软件的第三方签名证书是否合法;
移动应用软件身份信息发送单元,用于在所述移动应用软件的第三方签名证书不合法时,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书;
所述第三方签名单元,还用于在所述移动应用软件的第三方签名证书合法,且在所述签名服务器上保存有所述移动应用软件的第三方签名证书时,根据所述签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名;
所述第三方签名单元,还用于在所述移动应用软件的第三方签名证书合法,且在所述签名服务器上未保存所述移动应用软件的第三方签名证书时,从电子认证服务机构服务器获取所述移动应用软件的第三方签名证书,并对所述移动应用软件进行第三方签名。
另外,所述第三方签名单元,具体用于:
在所述移动应用软件不包含所述第三方认证签名时,接收移动应用软件开发者或者移动应用软件下载平台上传的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名;
或者,在所述移动应用软件不包含所述第三方认证签名时,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名。
此外,所述黑名单应用筛查单元,具体用于:
在所述已签名移动应用软件处于所述移动应用软件黑名单中时,确定所述移动应用软件为不合格应用,并输出不合格应用结果到所述移动应用软件检测机构服务器;
在所述已签名移动应用软件未处于所述移动应用软件黑名单中时,确定所述移动应用软件为合格应用,并输出合格应用结果到所述移动应用软件检测结构服务器。
另外,所述检测机构服务器签名验签单元,具体用于:
在对所述移动应用软件检测机构服务器签名进行验签通过时,根据预先设置的移动应用软件检测机构证书对所述打包文件中的每个移动应用软件进行第三方签名,并将签名后的移动应用软件反馈给移动应用软件检测机构服务器;
在对所述移动应用软件检测机构服务器签名进行验签未通过时,确定所述打包文件被篡改,并输出不合格应用结果到移动应用软件检测机构服务器。
本发明实施例提供的移动应用软件自动化签名和验证方法及装置,能够对从移动应用软件开发者、移动应用软件下载平台、移动应用软件的检测机构来的移动应用软件进行自动化签名和签名的验证,并通过筛选和验证确定移动应用软件是否为合格应用。避免了当前对移动应用软件进行第三方签名过程中有过多人为干涉,过程缓慢且繁琐,不利于移动应用软件签名和验证进行的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种移动应用软件自动化签名和验证方法的流程图一;
图2为本发明实施例提供的一种移动应用软件自动化签名和验证方法的流程图二;
图3为本发明实施例提供的一种移动应用软件自动化签名和验证装置的结构示意图一;
图4为本发明实施例提供的一种移动应用软件自动化签名和验证装置的结构示意图二;
图5为本发明实施例提供的移动应用软件自动化签名和验证装置的应用场景示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种移动应用软件自动化签名和验证方法,如图1所示,包括:
步骤101、接收待检测的移动应用软件。
步骤102、判断移动应用软件是否包含第三方认证签名。
其中,第三方认证签名包括移动应用软件开发者第三方认证签名或者移动应用软件下载平台第三方认证签名。
其中,移动应用软件开发者即为移动应用软件的开发商,例如腾讯、金山、网易等。而移动应用软件下载平台可以是例如豌豆荚、百度应用平台等。
若移动应用软件包含第三方认证签名,执行步骤103,否则若移动应用软件不包含第三方认证签名,执行步骤104。
步骤103、对第三方认证签名进行验证,并输出第一验证结果。
其中,第一验证结果为对第三方认证签名进行验证是否通过的结果。
步骤104、根据签名服务器上的第三方签名证书对移动应用软件进行第三方签名,并输出签名结果。
其中,签名结果包括已签名移动应用软件。该已签名移动应用软件在后续可以被传送至移动应用软件检测机构服务器,以在移动应用软件检测机构进行检测。
步骤105、接收移动应用软件检测机构服务器发送的已签名移动应用软件,并对已签名移动应用软件的检测机构签名进行验证。在步骤105之后,执行步骤106或者步骤107。
步骤106、若对已签名移动应用软件的检测机构签名进行验证通过,确定已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果。
在所述移动应用软件黑名单中可以记录有大量恶意的移动应用软件。
步骤107、若对已签名移动应用软件的检测机构签名进行验证未通过,向移动应用软件检测机构服务器发送未通过通知消息,并接收移动应用软件检测机构服务器发送的打包文件。
其中,打包文件带有移动应用软件检测机构服务器签名。
步骤108、对移动应用软件检测机构服务器签名进行验签,并输出第二验证结果。
本发明实施例提供的移动应用软件自动化签名和验证方法,能够对从移动应用软件开发者、移动应用软件下载平台、移动应用软件的检测机构来的移动应用软件进行自动化签名和签名的验证,并通过筛选和验证确定移动应用软件是否为合格应用。避免了当前对移动应用软件进行第三方签名过程中有过多人为干涉,过程缓慢且繁琐,不利于移动应用软件签名和验证进行的问题。
为了使得本领域的技术人员更好的了解本发明,下面列举一个更为具体的实施例,如图2所示,本发明提供的一种移动应用软件自动化签名和验证方法,包括:
步骤201、接收待检测的移动应用软件。
步骤202、判断移动应用软件是否包含第三方认证签名。
其中,第三方认证签名包括移动应用软件开发者第三方认证签名或者移动应用软件下载平台第三方认证签名。
若移动应用软件包含第三方认证签名,执行步骤203,否则若移动应用软件不包含第三方认证签名,执行步骤209。
步骤203、对第三方认证签名进行验证,并输出第一验证结果。
步骤204、若第一验证结果为验证成功结果,将验证成功结果进行反馈。
步骤205、若第一验证结果为验证失败结果,判断移动应用软件的第三方签名证书是否合法。
若移动应用软件的第三方签名证书不合法,执行步骤206;若移动应用软件的第三方签名证书合法,且在签名服务器上保存有移动应用软件的第三方签名证书,执行步骤207;若移动应用软件的第三方签名证书合法,且在签名服务器上未保存移动应用软件的第三方签名证书,执行步骤208。
当然,此处在第一验证结果为验证失败结果时,也可以不继续进行重新签名,即不再判断移动应用软件的第三方签名证书是否合法。
步骤206、向电子认证服务机构服务器发送移动应用软件身份信息,以对移动应用软件的进行第三方签名证书申请或者更新移动应用软件的第三方签名证书。
此处,对移动应用软件的进行第三方签名证书申请或者更新移动应用软件的第三方签名证书可以由电子认证服务机构来完成,其具体过程可以是:判断移动应用软件身份信息是否属实,若移动应用软件身份信息属实,则由电子认证服务机构对移动应用软件所对应的开发者或者下载平台增加第三方签名证书。而若移动应用软件身份信息有误,则将判断结果反馈给移动应用软件的开发者或者下载平台,以便于移动应用软件的开发者或者下载平台重新提交身份信息。
步骤207、根据签名服务器上的第三方签名证书对移动应用软件进行第三方签名,并输出签名结果。
此处,若移动应用软件不包含第三方认证签名,则可以接收移动应用软件开发者或者移动应用软件下载平台上传的第三方签名证书,并根据第三方签名证书对移动应用软件进行第三方签名。
或者,若移动应用软件不包含第三方认证签名,则可以向电子认证服务机构服务器发送移动应用软件身份信息,以对移动应用软件的进行第三方签名证书申请或者更新移动应用软件的第三方签名证书,并根据第三方签名证书对移动应用软件进行第三方签名。
在步骤207之后可以执行步骤210。
步骤208、从电子认证服务机构服务器获取移动应用软件的第三方签名证书,并对移动应用软件进行第三方签名,并输出签名结果。在步骤208之后可以执行步骤210。
步骤209、根据签名服务器上的第三方签名证书对移动应用软件进行第三方签名,并输出签名结果。
其中,签名结果包括已签名移动应用软件。
步骤210、接收移动应用软件检测机构服务器发送的已签名移动应用软件,并对已签名移动应用软件的检测机构签名进行验证。在步骤210之后,执行步骤211或者步骤214。
步骤211、若对已签名移动应用软件的检测机构签名进行验证通过,确定已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中。
若已签名移动应用软件处于移动应用软件黑名单中,执行步骤212。否则,若已签名移动应用软件未处于移动应用软件黑名单中,执行步骤213。
步骤212、确定移动应用软件为不合格应用,并输出不合格应用结果到移动应用软件检测机构服务器。
步骤213、确定移动应用软件为合格应用,并输出合格应用结果到移动应用软件检测结构服务器。
步骤214、若对已签名移动应用软件的检测机构签名进行验证未通过,向移动应用软件检测机构服务器发送未通过通知消息,并接收移动应用软件检测机构服务器发送的打包文件。
其中,打包文件带有移动应用软件检测机构服务器签名。
步骤215、对移动应用软件检测机构服务器签名进行验签,并确定验签是否通过。
若对移动应用软件检测机构服务器签名进行验签通过,执行步骤216。否则,若对移动应用软件检测机构服务器签名进行验签未通过,执行步骤217。
步骤216、根据预先设置的移动应用软件检测机构证书对打包文件中的每个移动应用软件进行第三方签名,并将签名后的移动应用软件反馈给移动应用软件检测机构服务器。
步骤217、确定打包文件被篡改,并输出不合格应用结果到移动应用软件检测机构服务器。
本发明实施例提供的移动应用软件自动化签名和验证方法,能够对从移动应用软件开发者、移动应用软件下载平台、移动应用软件的检测机构来的移动应用软件进行自动化签名和签名的验证,并通过筛选和验证确定移动应用软件是否为合格应用。避免了当前对移动应用软件进行第三方签名过程中有过多人为干涉,过程缓慢且繁琐,不利于移动应用软件签名和验证进行的问题。
对应于上述的方法实施例,本发明实施例还提供一种移动应用软件自动化签名和验证装置,如图3所示,包括:
第三方认证签名判断单元31,可以接收待检测的移动应用软件,并判断移动应用软件是否包含第三方认证签名;第三方认证签名包括移动应用软件开发者第三方认证签名或者移动应用软件下载平台第三方认证签名。
第三方认证签名验证单元32,可以在移动应用软件包含第三方认证签名时,对第三方认证签名进行验证,并输出第一验证结果。
第三方签名单元33,可以在移动应用软件不包含第三方认证签名时,根据签名服务器上的第三方签名证书对移动应用软件进行第三方签名,并输出签名结果;签名结果包括已签名移动应用软件。
检测机构签名验证单元34,可以接收移动应用软件检测机构服务器发送的已签名移动应用软件,并对已签名移动应用软件的检测机构签名进行验证。
黑名单应用筛查单元35,可以在对已签名移动应用软件的检测机构签名进行验证通过时,确定已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果。
通知消息发送单元36,可以在对已签名移动应用软件的检测机构签名进行验证未通过时,向移动应用软件检测机构服务器发送未通过通知消息。
打包文件接收单元37,可以接收移动应用软件检测机构服务器发送的打包文件;打包文件带有移动应用软件检测机构服务器签名。
检测机构服务器签名验签单元38,可以对移动应用软件检测机构服务器签名进行验签,并输出第二验证结果。
具体的,第三方认证签名验证单元32输出的第一验证结果可以为验证失败结果。
如图4所示,装置,还包括:
第三方签名证书合法性验证单元39,可以判断移动应用软件的第三方签名证书是否合法。
移动应用软件身份信息发送单元40,可以在移动应用软件的第三方签名证书不合法时,向电子认证服务机构服务器发送移动应用软件身份信息,以对移动应用软件的进行第三方签名证书申请或者更新移动应用软件的第三方签名证书;
第三方签名单元33,还可以在移动应用软件的第三方签名证书合法,且在签名服务器上保存有移动应用软件的第三方签名证书时,根据签名服务器上的第三方签名证书对移动应用软件进行第三方签名。
第三方签名单元33,还可以在移动应用软件的第三方签名证书合法,且在签名服务器上未保存移动应用软件的第三方签名证书时,从电子认证服务机构服务器获取移动应用软件的第三方签名证书,并对移动应用软件进行第三方签名。
另外,第三方签名单元33,具体还可以:
在移动应用软件不包含第三方认证签名时,接收移动应用软件开发者或者移动应用软件下载平台上传的第三方签名证书,并根据第三方签名证书对移动应用软件进行第三方签名。
或者,在移动应用软件不包含第三方认证签名时,向电子认证服务机构服务器发送移动应用软件身份信息,以对移动应用软件的进行第三方签名证书申请或者更新移动应用软件的第三方签名证书,并根据第三方签名证书对移动应用软件进行第三方签名。
此外,黑名单应用筛查单元35,具体可以在已签名移动应用软件处于移动应用软件黑名单中时,确定移动应用软件为不合格应用,并输出不合格应用结果到移动应用软件检测机构服务器。
在已签名移动应用软件未处于移动应用软件黑名单中时,确定移动应用软件为合格应用,并输出合格应用结果到移动应用软件检测结构服务器。
另外,检测机构服务器签名验签单元38,具体可以在对移动应用软件检测机构服务器签名进行验签通过时,根据预先设置的移动应用软件检测机构证书对打包文件中的每个移动应用软件进行第三方签名,并将签名后的移动应用软件反馈给移动应用软件检测机构服务器。
在对移动应用软件检测机构服务器签名进行验签未通过时,确定打包文件被篡改,并输出不合格应用结果到移动应用软件检测机构服务器。
值得说明的是,本发明实施例提供的移动应用软件自动化签名和验证装置的具体实现方式可以参见上述图1和图2所示的方法实施例,此处不再赘述。
本发明实施例提供的移动应用软件自动化签名和验证装置,能够对从移动应用软件开发者、移动应用软件下载平台、移动应用软件的检测机构来的移动应用软件进行自动化签名和签名的验证,并通过筛选和验证确定移动应用软件是否为合格应用。避免了当前对移动应用软件进行第三方签名过程中有过多人为干涉,过程缓慢且繁琐,不利于移动应用软件签名和验证进行的问题。
下面列举一个本发明实施例提供的移动应用软件自动化签名和验证装置的应用实景,以便于本领域的技术人员更好的了解本发明的应用场景:
如图5所示,整个应用场景系统包括应用上传者终端51、应用使用者终端52、互联网53,网络防火墙54、杀毒服务器55、交换机56,该交换机56连接签名管理系统57、签名服务器58以及时间戳服务器59。
首先,应用上传者是指应用签名的需求方,属于证书登录用户。由于涉及数字签名等高安全性操作,需要通过证书进行用户登录。应用上传者可以是应用开发者(如上述腾讯、金山、网易等应用开发商)、应用流通渠道(即上述的移动应用下载平台)和应用检测机构,应用上传者终端通过网络将应用传至应用软件签名平台(相当于签名管理系统57)。
应用首先通过系统防火墙,为保证系统安全,所有上传的应用需要通过杀毒服务器,进行简单的病毒扫描,若应用含有病毒直接打回,若应用未检测出病毒则将应用传至签名管理平台。
签名管理平台首先对所有应用进行验签。
签名管理平台自动判断验签结果并将待签名应用传至签名服务器。不符合签名要求的应用,平台将相关数据返回给应用上传者,用户可选择其它操作(申请证书、上传证书等)。
对于应用使用者上传得应用,平台自动进行验签,并将验签结果返回给应用使用者,流程结束。
签名服务器对待签名应用进行签名,签名时间由时间戳服务器提供。
完成签名的应用,平台将已签名应用返回给应用上传者。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种移动应用软件自动化签名和验证方法,其特征在于,包括:
接收待检测的移动应用软件,并判断所述移动应用软件是否包含第三方认证签名;所述第三方认证签名包括移动应用软件开发者第三方认证签名或者移动应用软件下载平台第三方认证签名;
若所述移动应用软件包含所述第三方认证签名,对所述第三方认证签名进行验证,并输出第一验证结果;
若所述移动应用软件不包含所述第三方认证签名,根据签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名,并输出签名结果;所述签名结果包括已签名移动应用软件;
接收移动应用软件检测机构服务器发送的已签名移动应用软件,并对所述已签名移动应用软件的检测机构签名进行验证;
若对所述已签名移动应用软件的检测机构签名进行验证通过,确定所述已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果;
若对所述已签名移动应用软件的检测机构签名进行验证未通过,向移动应用软件检测机构服务器发送未通过通知消息,并接收移动应用软件检测机构服务器发送的打包文件;所述打包文件带有移动应用软件检测机构服务器签名;
对所述移动应用软件检测机构服务器签名进行验签,并输出第二验证结果。
2.根据权利要求1所述的移动应用软件自动化签名和验证方法,其特征在于,所述第一验证结果为验证失败结果;
在对所述第三方认证签名进行验证,并输出第一验证结果之后,包括:
判断所述移动应用软件的第三方签名证书是否合法;
若所述移动应用软件的第三方签名证书不合法,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书;
若所述移动应用软件的第三方签名证书合法,且在所述签名服务器上保存有所述移动应用软件的第三方签名证书,根据所述签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名;
若所述移动应用软件的第三方签名证书合法,且在所述签名服务器上未保存所述移动应用软件的第三方签名证书,从电子认证服务机构服务器获取所述移动应用软件的第三方签名证书,并对所述移动应用软件进行第三方签名。
3.根据权利要求2所述的移动应用软件自动化签名和验证方法,其特征在于,若所述移动应用软件不包含所述第三方认证签名,根据签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名,包括:
若所述移动应用软件不包含所述第三方认证签名,接收移动应用软件开发者或者移动应用软件下载平台上传的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名;
或者,若所述移动应用软件不包含所述第三方认证签名,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名。
4.根据权利要求1所述的移动应用软件自动化签名和验证方法,其特征在于,确定所述已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果,包括:
若所述已签名移动应用软件处于所述移动应用软件黑名单中,确定所述移动应用软件为不合格应用,并输出不合格应用结果到所述移动应用软件检测机构服务器;
若所述已签名移动应用软件未处于所述移动应用软件黑名单中,确定所述移动应用软件为合格应用,并输出合格应用结果到所述移动应用软件检测结构服务器。
5.根据权利要求1所述的移动应用软件自动化签名和验证方法,其特征在于,对所述移动应用软件检测机构服务器签名进行验签,并输出第二验证结果,包括:
若对所述移动应用软件检测机构服务器签名进行验签通过,根据预先设置的移动应用软件检测机构证书对所述打包文件中的每个移动应用软件进行第三方签名,并将签名后的移动应用软件反馈给移动应用软件检测机构服务器;
若对所述移动应用软件检测机构服务器签名进行验签未通过,确定所述打包文件被篡改,并输出不合格应用结果到移动应用软件检测机构服务器。
6.一种移动应用软件自动化签名和验证装置,其特征在于,包括:
第三方认证签名判断单元,用于接收待检测的移动应用软件,并判断所述移动应用软件是否包含第三方认证签名;所述第三方认证签名包括移动应用软件开发者第三方认证签名或者移动应用软件下载平台第三方认证签名;
第三方认证签名验证单元,用于在所述移动应用软件包含所述第三方认证签名时,对所述第三方认证签名进行验证,并输出第一验证结果;
第三方签名单元,用于在所述移动应用软件不包含所述第三方认证签名时,根据签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名,并输出签名结果;所述签名结果包括已签名移动应用软件;
检测机构签名验证单元,用于接收移动应用软件检测机构服务器发送的已签名移动应用软件,并对所述已签名移动应用软件的检测机构签名进行验证;
黑名单应用筛查单元,用于在对所述已签名移动应用软件的检测机构签名进行验证通过时,确定所述已签名移动应用软件是否处于一预先设置的移动应用软件黑名单中,并输出黑名单应用筛查结果;
通知消息发送单元,用于在对所述已签名移动应用软件的检测机构签名进行验证未通过时,向移动应用软件检测机构服务器发送未通过通知消息;
打包文件接收单元,用于接收移动应用软件检测机构服务器发送的打包文件;所述打包文件带有移动应用软件检测机构服务器签名;
检测机构服务器签名验签单元,用于对所述移动应用软件检测机构服务器签名进行验签,并输出第二验证结果。
7.根据权利要求6所述的移动应用软件自动化签名和验证装置,其特征在于,所述第三方认证签名验证单元输出的第一验证结果为验证失败结果;
所述装置,还包括:
第三方签名证书合法性验证单元,用于判断所述移动应用软件的第三方签名证书是否合法;
移动应用软件身份信息发送单元,用于在所述移动应用软件的第三方签名证书不合法时,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书;
所述第三方签名单元,还用于在所述移动应用软件的第三方签名证书合法,且在所述签名服务器上保存有所述移动应用软件的第三方签名证书时,根据所述签名服务器上的第三方签名证书对所述移动应用软件进行第三方签名;
所述第三方签名单元,还用于在所述移动应用软件的第三方签名证书合法,且在所述签名服务器上未保存所述移动应用软件的第三方签名证书时,从电子认证服务机构服务器获取所述移动应用软件的第三方签名证书,并对所述移动应用软件进行第三方签名。
8.根据权利要求7所述的移动应用软件自动化签名和验证装置,其特征在于,所述第三方签名单元,具体用于:
在所述移动应用软件不包含所述第三方认证签名时,接收移动应用软件开发者或者移动应用软件下载平台上传的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名;
或者,在所述移动应用软件不包含所述第三方认证签名时,向电子认证服务机构服务器发送移动应用软件身份信息,以对所述移动应用软件的进行第三方签名证书申请或者更新所述移动应用软件的第三方签名证书,并根据所述第三方签名证书对所述移动应用软件进行第三方签名。
9.根据权利要求6所述的移动应用软件自动化签名和验证装置,其特征在于,所述黑名单应用筛查单元,具体用于:
在所述已签名移动应用软件处于所述移动应用软件黑名单中时,确定所述移动应用软件为不合格应用,并输出不合格应用结果到所述移动应用软件检测机构服务器;
在所述已签名移动应用软件未处于所述移动应用软件黑名单中时,确定所述移动应用软件为合格应用,并输出合格应用结果到所述移动应用软件检测结构服务器。
10.根据权利要求6所述的移动应用软件自动化签名和验证装置,其特征在于,所述检测机构服务器签名验签单元,具体用于:
在对所述移动应用软件检测机构服务器签名进行验签通过时,根据预先设置的移动应用软件检测机构证书对所述打包文件中的每个移动应用软件进行第三方签名,并将签名后的移动应用软件反馈给移动应用软件检测机构服务器;
在对所述移动应用软件检测机构服务器签名进行验签未通过时,确定所述打包文件被篡改,并输出不合格应用结果到移动应用软件检测机构服务器。
CN201510763582.3A 2015-11-11 2015-11-11 移动应用软件自动化签名和验证方法及装置 Active CN105391714B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510763582.3A CN105391714B (zh) 2015-11-11 2015-11-11 移动应用软件自动化签名和验证方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510763582.3A CN105391714B (zh) 2015-11-11 2015-11-11 移动应用软件自动化签名和验证方法及装置

Publications (2)

Publication Number Publication Date
CN105391714A true CN105391714A (zh) 2016-03-09
CN105391714B CN105391714B (zh) 2018-09-07

Family

ID=55423550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510763582.3A Active CN105391714B (zh) 2015-11-11 2015-11-11 移动应用软件自动化签名和验证方法及装置

Country Status (1)

Country Link
CN (1) CN105391714B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107862180A (zh) * 2017-10-11 2018-03-30 北京金山安全管理系统技术有限公司 软件禁用处理方法和装置
CN107944253A (zh) * 2017-12-12 2018-04-20 深圳创维数字技术有限公司 一种第三方apk签名方法、电子设备及存储介质
CN109522683A (zh) * 2018-09-26 2019-03-26 百度在线网络技术(北京)有限公司 软件溯源方法、系统、计算机设备及存储介质
CN113094659A (zh) * 2021-03-17 2021-07-09 青岛海尔科技有限公司 用于应用文件发布的方法、装置、平台设备及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102024107A (zh) * 2010-11-17 2011-04-20 中国联合网络通信集团有限公司 应用软件控制平台、开发者终端、分发系统及方法
CN102035653A (zh) * 2010-11-30 2011-04-27 中国联合网络通信集团有限公司 软件审核阶段的可控分发方法及系统
CN104680061A (zh) * 2015-02-28 2015-06-03 国鼎网络空间安全技术有限公司 一种Android环境下应用程序启动中代码签名验证的方法和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102024107A (zh) * 2010-11-17 2011-04-20 中国联合网络通信集团有限公司 应用软件控制平台、开发者终端、分发系统及方法
CN102035653A (zh) * 2010-11-30 2011-04-27 中国联合网络通信集团有限公司 软件审核阶段的可控分发方法及系统
CN104680061A (zh) * 2015-02-28 2015-06-03 国鼎网络空间安全技术有限公司 一种Android环境下应用程序启动中代码签名验证的方法和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107862180A (zh) * 2017-10-11 2018-03-30 北京金山安全管理系统技术有限公司 软件禁用处理方法和装置
CN107944253A (zh) * 2017-12-12 2018-04-20 深圳创维数字技术有限公司 一种第三方apk签名方法、电子设备及存储介质
CN109522683A (zh) * 2018-09-26 2019-03-26 百度在线网络技术(北京)有限公司 软件溯源方法、系统、计算机设备及存储介质
CN109522683B (zh) * 2018-09-26 2022-11-01 百度在线网络技术(北京)有限公司 软件溯源方法、系统、计算机设备及存储介质
CN113094659A (zh) * 2021-03-17 2021-07-09 青岛海尔科技有限公司 用于应用文件发布的方法、装置、平台设备及系统

Also Published As

Publication number Publication date
CN105391714B (zh) 2018-09-07

Similar Documents

Publication Publication Date Title
CN109068179B (zh) 一种多平台直播方法、计算机装置及计算机可读存储介质
CN111182521B (zh) 物联网终端机卡绑定、入网认证和业务认证方法及装置
CN110955899B (zh) 安全测试方法、装置、测试设备以及介质
CN107896244B (zh) 一种版本文件的分发方法、客户端及服务器
CN107743115B (zh) 一种终端应用的身份认证方法、装置和系统
CN108965037B (zh) 安全测试数据的获取和审计分析方法及装置
CN104917749A (zh) 帐号注册方法及装置
CN108228444B (zh) 一种测试方法和装置
CN104503780A (zh) 一种提供应用渠道包的方法和装置
CN105391714A (zh) 移动应用软件自动化签名和验证方法及装置
CN107733883B (zh) 一种检测批量注册账号的方法及装置
US20150381467A1 (en) System and method thereof for dynamically testing networked target systems through simulation by a mobile device
CN104618316A (zh) 安全验证方法、装置和系统
CN104580112A (zh) 一种业务认证方法、系统及服务器
CN104361285A (zh) 移动设备应用程序的安全检测方法及装置
CN108990059A (zh) 一种验证方法及装置
CN104935435A (zh) 登录方法、终端及应用服务器
CN104050054B (zh) 安装包安装失败的处理方法及原因确定方法及装置
CN109522202B (zh) 一种软件测试的方法和装置
CN113852639A (zh) 数据处理方法、装置、电子设备和计算机可读存储介质
CN110022327B (zh) 一种短信认证测试方法和装置
CN109699030B (zh) 无人机认证方法、装置、设备和计算机可读存储介质
CN103049693B (zh) 一种应用程序使用的方法、装置及系统
CN108334448B (zh) 代码验证方法、装置及设备
CN112395204B (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
TR01 Transfer of patent right

Effective date of registration: 20211231

Address after: 100191 No. 40, Haidian District, Beijing, Xueyuan Road

Patentee after: CHINA ACADEMY OF INFORMATION AND COMMUNICATIONS

Address before: 100191 No. 52 Garden North Road, Beijing, Haidian District

Patentee before: CHINA ACADEME OF TELECOMMUNICATION RESEARCH OF MIIT

TR01 Transfer of patent right