应用程序安装过程中的权限管理系统、方法及存储介质与流程

文档序号:29632965发布日期:2022-04-13 16:26阅读:127来源:国知局
应用程序安装过程中的权限管理系统、方法及存储介质与流程

1.本发明涉及一种应用程序安装过程中的权限管理系统、方法及存储介质。


背景技术:

2.现有的智能pos(point of sale,pos)终端广泛采用android系统,应用市场上的应用程序种类繁多、参差补齐,有些应用程序植入有恶意盗取用户隐私信息的功能,例如联系人,通话记录,交易记录等数据。为了保证pos终端应用程序及终端数据的安全性,各终端厂商都需要对其进行定制签名,保证只有合法的签名应用程序才能够允许被安装执行。然而,定制签名虽然可以保证应用程序是被授权的且在授权后无法被篡改,但是无法保证该应用程序权限的合法性,是否使用了被禁止的权限,是否会威胁终端数据的安全性。
3.目前,市场上的带有权限管理功能的安全管理工具大都只是将侦测到的应用程序带有的权限展示给用户,再由用户判断是否允许应用程序使用该权限,而这些安全管理工具并不对该权限是否被禁止做任何本地判断,从而也不无法给用户任何提示。由于用户对这些应用程序的功能及相关权限的了解存在欠缺,造成判断或操作失误将在权限管理过程中造成降低安全性。还有一类方案,在应用安装时将该应用的安装信息包括各项权限上报至服务器,由服务器判定应用权限的合法性并将判定结果通知用户,用户根据该结果对应用程序的各项权限进行管理,该方案可以实现对应用程序的权限进行管理,但是需要一个中央权限管理服务器进行权限管理,无法本地判断,不适合弱中心的应用环境。


技术实现要素:

4.本发明提供了一种应用程序安装过程中的权限管理系统、方法及存储介质,可以有效解决上述问题。
5.本发明是这样实现的:
6.本发明提供一种应用程序安装过程中的权限管理方法,包括以下步骤:
7.s1,对签名证书进行密钥用途扩展,其中,所述密钥用途扩展包括支持扩展应用权限黑名单或应用权限白名单;
8.s2,使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包到原始应用程序中生成已签名应用程序;
9.s3,在所述待安装应用程序安装时验证签名证书及签名的合法性,然后获取待安装应用程序的权限信息,并根据签名证书扩展的权限黑名单列表或者白名单列表判断待安装应用程序的权限的合法性,判定权限不合法则终止应用程序安装。
10.作为进一步改进的,在步骤s1中,所述签名证书为x509 v3标准证书,且所述对签名证书进行密钥用途扩展的步骤包括:
11.使用证书扩展项extkeyusage存储应用权限描述信息,其中,所述扩展项可以零个、一个或者多个,且每个所述扩展项由oid号构成,所述应用权限描述信息包括权限黑名单列表或者白名单列表。
12.作为进一步改进的,在步骤s2中,所述使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包到原始应用程序中生成已签名应用程序的步骤包括:
13.使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包成sgn文件插入到原始应用程序中生成已签名应用程序。
14.作为进一步改进的,在步骤s3中,所述在所述待安装应用程序安装时验证签名证书及签名的合法性,然后获取待安装应用程序的权限信息,并根据签名证书扩展的权限黑名单列表或者白名单列表判断待安装应用程序的权限的合法性,判定权限不合法则终止应用程序安装的步骤包括:
15.s31,使用预置在终端的根证书验证签名证书的合法性,如果验证失败则终止应用安装,否则进入步骤s32;
16.s32,将删除签名文件sgn后还原的apk字节流作为原文,使用签证书与签名数据进行验签操作,如果验证失败则终止应用安装,否则进入步骤s33;
17.s33,读取签名证书的扩展项,如果存在权限描述信息,则获取应用程序中的权限信息,根据签名证书的权限描述信息判断应用程序权限的合法性;如果签名证书的权限描述为权限黑名单则不允许应用程序使用权限黑名单中的权限,如果签名证书的权限描述信息为权限白名单则只允许应用程序使用权限白名单列出的权限,并进入s34;
18.s34,判定权限合法则进行应用程序安装,实现对应用程序权限的管理。
19.本发明进一步提供一种应用程序安装过程中的权限管理系统,包括:
20.配置单元,用于密钥用途扩展,并生成带有权限描述信息的签名证书,其中,所述密钥用途扩展包括支持扩展应用权限黑名单或应用权限白名单;
21.签名单元,用于使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包到原始应用程序中生成已签名应用程序;
22.处理单元,用于在所述待安装应用程序安装时验证签名证书及签名的合法性,然后获取待安装应用程序的权限信息,并根据签名证书扩展的权限黑名单列表或者白名单列表判断待安装应用程序的权限的合法性,判定权限不合法则终止应用程序安装。
23.本发明还进一步提供一种计算机可读存储介质,其上存储有程序文件,所述程序文件在被处理器执行时,执行上述的方法。
24.本发明的有益效果是:本发明提供了一种应用程序安装过程中的权限管理方法及系统,该方法包括在签名证书的扩展项中加入权限描述信息然后将签名证书与应用签名打包到应用中,应用安装时,验证签名证书和应用签名的合法性,然后检查应用的权限是否满足签名证书中权限描述信息对权限的要求,如果验证失败则禁止安装该应用,从而有效实现对应用程序的权限进行管理,提高用户的数据安全性。进一步的,本发明基于x509证书扩展项,将扩展用途和相关的应用权限映射为扩展项的oi d号,扩展了证书的用途,不但可以验证应用程序的签名同时可以验证应用程序权限的合法性,支持权限黑名单和权限白名单功能,实现对应用权限的管理。
附图说明
25.为了更清楚地说明本发明实施方式的技术方案,下面将对实施方式中所需要使用
的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
26.图1是本发明实施例提供的应用程序安装过程中的权限管理方法流程图。
具体实施方式
27.为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本发明一部分实施方式,而不是全部的实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施方式的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施方式。基于本发明中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本发明保护的范围。
28.本发明提供的应用程序安装过程中的权限管理系统、方法及存储介质,适用于智能pos机的应用程序安装,但不限于智能pos机。
29.参照图1所示,本发明提供一种应用程序安装过程中的权限管理方法,包括以下步骤:
30.s1,对签名证书进行密钥用途扩展,其中,所述密钥用途扩展包括支持扩展应用权限黑名单或应用权限白名单;
31.s2,使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包到原始应用程序中生成已签名应用程序;
32.s3,在所述待安装应用程序安装时验证签名证书及签名的合法性,然后获取待安装应用程序的权限信息,并根据签名证书扩展的权限黑名单列表或者白名单列表判断待安装应用程序的权限的合法性,判定权限不合法则终止应用程序安装。
33.作为进一步改进的,在步骤s1中,所述签名证书为x509 v3标准证书,且所述对签名证书进行密钥用途扩展的步骤包括:
34.使用证书扩展项extkeyusage存储应用权限描述信息,其中,所述扩展项可以零个、一个或者多个,且每个所述扩展项由oid号构成,所述应用权限描述信息包括权限黑名单列表或者白名单列表。
35.本发明使用第一个扩展项的oid号表示扩展用途,定义了两种扩展用途分别是应用权限黑名单和应用权限白名单,后继的每个oid号都代表一个应用权限,根据扩展用途应用权限描述信息可以是权限黑名单列表或者白名单列表。具体的,本实施例中的扩展用途包括:应用权限黑名单,第一个扩展项的oid号:1.3.6.1.4.1.34712.80017.0;应用权限白名单,第一个扩展项的oid号:1.3.6.1.4.1.34712.80017.1。
36.所述权限不限于表1中列举的webview使用权限、网络访问权限、相机使用权限、蓝牙使用权限以及写入外部存储等权限,可以根据实际需要定义及调整。
37.表1为各种权限列表
[0038][0039][0040]
作为进一步改进的,在步骤s2中,所述使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包到原始应用程序中生成已签名应用程序的步骤包括:
[0041]
使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包成sgn文件插入到原始应用程序中生成已签名应用程序。
[0042]
作为进一步改进的,在步骤s3中,所述在所述待安装应用程序安装时验证签名证书及签名的合法性,然后获取待安装应用程序的权限信息,并根据签名证书扩展的权限黑名单列表或者白名单列表判断待安装应用程序的权限的合法性,判定权限不合法则终止应用程序安装的步骤包括:
[0043]
s31,使用预置在终端的根证书验证签名证书的合法性,如果验证失败则终止应用安装,否则进入步骤s32;
[0044]
s32,将删除签名文件sgn后还原的apk字节流作为原文,使用签证书与签名数据进行验签操作,如果验证失败则终止应用安装,否则进入步骤s33;
[0045]
s33,读取签名证书的扩展项,如果存在权限描述信息,则获取应用程序中的权限信息,根据签名证书的权限描述信息判断应用程序权限的合法性;如果签名证书的权限描述为权限黑名单则不允许应用程序使用权限黑名单中的权限,如果签名证书的权限描述信息为权限白名单则只允许应用程序使用权限白名单列出的权限,并进入s34;
[0046]
s34,判定权限合法则进行应用程序安装。实现对应用程序权限的管理。
[0047]
本发明进一步提供一种应用程序安装过程中的权限管理系统,包括:
[0048]
配置单元,用于密钥用途扩展,并生成带有权限描述信息的签名证书,其中,所述
密钥用途扩展包括支持扩展应用权限黑名单或应用权限白名单;
[0049]
签名单元,用于使用所述密钥用途扩展的签名证书对待安装应用程序进行签名,签名过程中将签名证书和签名数据打包到原始应用程序中生成已签名应用程序;
[0050]
处理单元,用于在所述待安装应用程序安装时验证签名证书及签名的合法性,然后获取待安装应用程序的权限信息,并根据签名证书扩展的权限黑名单列表或者白名单列表判断待安装应用程序的权限的合法性,判定权限不合法则终止应用程序安装。
[0051]
本发明还进一步提供一种计算机可读存储介质,其上存储有程序文件,所述程序文件在被处理器执行时,执行上述的方法。
[0052]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0053]
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0054]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0055]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0056]
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
[0057]
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0058]
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
[0059]
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0060]
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0061]
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
[0062]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不应理解为必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1