1.本发明涉及信息安全技术领域,尤其是涉及一种基于智能手表授权的手机应用程序安全管控的方法。
背景技术:2.手机中可安装的应用程序越来越多,这虽然提高了手机的可用性,丰富了人们的生活,但由于目前手机应用程序均无需授权即可启用,所以导致手机用户的个人信息越来越容易被暴露。
技术实现要素:3.有鉴于此,本发明提供了一种基于智能手表授权的手机应用程序安全管控的方法,旨在通过智能手表控制手机端受控应用程序的使用,以智能手表与手机间蓝牙连通性、授权验证作为控制条件,保护用户个人隐私安全以及受控应用程序的使用。
4.为此,本发明提供了以下技术方案:
5.本发明提供了一种基于智能手表授权的手机应用程序安全管控的方法,手机中安装有用于对手机中的应用程序进行安全管控的应用安全管控程序受控手机端,应用安全管控程序受控手机端以注册为系统服务的方式在手机中运行;智能手表中安装有用于对手机应用程序进行授权的应用安全管控程序智能手表端,受控手机端与智能手表端能够进行蓝牙连接,并通过蓝牙连接进行信息交互;所述方法应用于受控手机端,包括:
6.通过手机操作系统底层接口实时监测当前系统中应用程序的启动动作;
7.监测到有应用程序启动时,拦截所述应用程序的启动动作;
8.根据当前拦截的所述应用程序的数据信息计算所述应用程序的数字摘要,并根据所述数字摘要获得所述应用程序的应用程序id;
9.从本地保存的应用安全管控策略列表中查找与所述应用程序id对应的应用安全管控策略;所述应用安全管控策略列表中存储有策略版本号、需要进行管控的应用程序id以及对应的应用安全管控策略,其中应用安全管控策略包括禁止应用程序执行和手工确认应用程序执行两种类型;
10.如果所述应用程序id对应的应用安全管控策略为手工确认应用程序执行,则通过蓝牙连接将应用程序启动信息传输至智能手表端,并接收智能手表端返回的手工确认结果信息;其中,应用程序启动信息包括用户id、应用程序名称、应用程序版本、应用程序id以及该应用程序所要求的访问权限和时间戳;
11.确认所述手工确认结果信息中的用户id与本地保存的用户id是否一致,若一致,则根据所述手工确认结果,在应用程序拦截点处恢复或者禁止应用程序的启动动作。
12.进一步地,手机中安装有用于对手机中的应用程序进行安全管控的应用安全管控程序受控手机端,智能手表中安装有用于对手机应用程序进行授权的应用安全管控程序智能手表端,包括:
13.在受控手机操作系统中安装应用安全管控程序受控手机端,并且许可应用安全管控程序受控手机端的执行权限,所述执行权限包括:网络访问权限、蓝牙访问权限和存储访问权限;
14.受控手机端启动后,通过受控手机端与智能手表之间的同步机制安装应用安全管控程序智能手表端。
15.进一步地,所述应用安全管控策略列表按照以下方式获取:
16.受控手机端初次启动时连接至应用安全管控服务器端注册用户账号,并将从服务器端获取的服务器端根据用户账号分配的用户id以及所述用户id对应的应用安全管控策略列表保存在本地;
17.受控手机端每次登录成功后,还会向服务器端发送最新的应用安全管控策略列表同步请求,如果服务器端有更新版本的应用安全管控策略列表,则向受控手机端传输最新的应用安全管控策略列表,受控手机端接收到最新的应用安全管控策略列表后保存至本地。
18.进一步地,如果未找到所述应用程序id对应的应用安全管控策略,则表示所述应用程序不需要经过智能手表端确认直接准许运行,在启动拦截处恢复所述应用程序后续的启动动作,结束整个流程。
19.进一步地,如果所述应用程序id对应的应用安全管控策略为禁止应用程序执行,则在启动拦截处禁止所述应用程序后续的启动动作,结束整个流程。
20.进一步地,在应用程序拦截点处恢复或者禁止应用程序的启动动作之后,还包括:
21.向服务器端上传本次安全策略执行结果信息,执行结果信息包括用户id、应用程序id、应用程序名称、应用程序版本、用户确认结果和时间戳。
22.本发明还提供了一种基于智能手表授权的手机应用程序安全管控的方法,手机中安装有用于对手机中的应用程序进行安全管控的应用安全管控程序受控手机端,智能手表中安装有用于对手机应用程序进行授权的应用安全管控程序智能手表端,受控手机端与智能手表端能够进行蓝牙连接,并通过蓝牙连接进行信息交互;所述方法应用于智能手表端;包括:
23.通过蓝牙连接接收受控手机端发送的应用程序启动信息;其中,应用程序启动信息包括用户id、应用程序名称、应用程序版本、应用程序id以及该应用程序所要求的访问权限和时间戳;
24.确认所述应用程序启动信息中携带的用户id是否和智能手表本地保存的用户id一致,如果一致,则弹出所述应用程序的启动信息以及需要用户确认的提示框,提示用户选择允许或者拒绝;
25.接收用户选择允许或拒绝的操作,并生成手工确认结果信息,通过蓝牙连接将所述手工确认结果信息返回至受控手机端;其中,手工确认结果信息包括:用户id、应用程序id、用户确认结果和时间戳。
26.本发明的优点和积极效果:
27.本发明中的一种基于智能手表授权的手机应用程序安全管控的方法,在手机和智能手表分别安装应用安全管控程序受控手机端和应用安全管控程序智能手表端,受控手机端与智能手表端保持蓝牙连接,受控手机端实时监控应用进程启动情况,并与受控手机端
本地保存的应用安全策略相匹配,发现疑似非法应用进程启动后,挂起进程的启动动作,并在智能手表端弹出被挂起的进程信息以及提示确认框,用户在手表上点击允许或者拒绝按钮后,受控手机端恢复或禁止当前挂起进程的后续启动动作,以达到通过手表控制受控手机端应用程序的使用,以智能手表与手机间蓝牙连通性、授权验证作为控制条件,保护用户个人隐私安全以及受控app使用的目的。
附图说明
28.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
29.图1为本发明实施例中应用程序安全管控初始化流程图;
30.图2为本发明实施例中应用程序安全管控初次启用的流程图;
31.图3为本发明实施例中应用程序安全管控后续启用的流程图;
32.图4为本发明实施例中应用安全管控策略对比验证的流程图。
具体实施方式
33.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
34.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
35.本发明实施例中的一种基于智能手表授权的手机应用程序安全管控的方法由应用安全管控程序执行,应用安全管控程序包括应用安全管控程序受控手机端和应用安全管控程序智能手表端,手机中安装有应用安全管控程序受控手机端(下文简称为受控手机端),用于对手机中的应用程序进行安全管控,智能手表中安装有应用安全管控程序智能手表端(下文简称为智能手表端),用于对手机应用程序进行授权,手机端与智能手表端能够进行蓝牙连接,通过蓝牙连接进行信息交互。
36.在进行智能手表授权的手机应用程序安全管控时,受控手机端按照以下步骤执行:
37.s11、通过手机操作系统底层接口实时监测当前系统中应用程序的启动动作;
38.s12、监测到有应用程序启动时,拦截所述应用程序的启动动作;
39.应用安全管控程序作为一种注册的系统服务,会随着受控手机端操作系统启动而自动运行,运行后,实时通过手机操作系统底层接口监控当前系统中应用程序的启动动作,监测到有应用程序启动时,将此应用程序的启动动作挂起/拦截,此处也就是应用程序的拦截点(将应用程序后续的启动代码强行挂起,等待管控程序处理完成之后再允许或者终止应用程序后续的代码执行),待经过应用安全管控策略验证后继续。
40.以安卓系统为例,此处应用程序的拦截操作为通过安卓系统提供的aidl接口(android interface definition language)来完成应用程序的状态监听控制,通过iactivitycontroller.aidl中标识的应用程序状态,将状态为activitystarting的应用程序启动行为拦截挂起后,通过应用安全管控策略验证决定应用程序的后续动作。
41.s13、根据当前拦截的所述应用程序的数据信息计算所述应用程序的数字摘要,并根据所述数字摘要获得所述应用程序的应用程序id。
42.这里,引用程序的数据信息具体指的是:应用程序运行时在内存映像中的二进制数据。在具体实施中,计算数字摘要可以是根据应用程序的二进制数据采用数字摘要的一些算法进行数据摘要的计算,例如sha1、sha256算法等。
43.s14、从本地保存的应用安全管控策略列表中查找与所述应用程序id对应的应用安全管控策略;
44.其中,受控手机端初次启动应用安全管控程序(下文简称为管控程序)时会连接至应用安全管控服务器端(后文简称服务器端)注册用户账号,并将从服务器端获取的服务器端根据用户账号分配的用户id以及所述用户id对应的应用安全管控策略列表保存在本地;受控手机端每次登录成功后,还会向服务器端发送最新的应用安全管控策略列表同步请求,如果服务器端有更新版本的应用安全管控策略列表,则向受控手机端传输最新的应用安全管控策略列表;受控手机端接收到最新的应用安全管控策略列表后保存至本地,如果下次启用应用时无法联网,则直接使用本地保存的应用安全管控策略列表运行。
45.应用安全管控策略列表中存储了策略版本号、需要进行管控的应用程序id以及对应的应用安全管控策略,其中应用安全管控策略包括“策略1:禁止应用程序执行”、“策略2:手工确认应用程序执行”两种类型。
46.s15、如果未找到所述应用程序id对应的应用安全管控策略,则表示所述应用程序不需要经过智能手表端确认直接准许运行,在应用程序拦截点处恢复所述应用程序后续的启动动作,结束整个流程。
47.s16、如果所述应用程序id对应的应用安全管控策略为禁止应用程序执行(策略1),则在启动拦截处禁止所述应用程序后续的启动动作,结束整个流程。
48.s17、如果所述应用程序id对应的应用安全管控策略为手工确认应用程序执行(策略2),则通过蓝牙连接将应用程序启动信息传输至智能手表端,并接收智能手表端返回的手工确认结果信息;
49.其中,应用程序启动信息包括用户id、应用程序名称、应用程序版本、应用程序id、以及该应用程序所要求的访问权限、时间戳等。
50.s18、确认所述手工确认结果信息中的用户id与受控手机端本地保存的用户id是否一致,若一致,则根据所述手工确认结果(允许或拒绝),在应用程序拦截点处恢复或者禁止应用程序的启动动作。
51.s19、向服务器端上传本次安全策略执行结果信息,执行结果信息包括用户id、应用程序id、应用程序名称、应用程序版本、用户确认结果、时间戳等信息。
52.智能手表端的执行步骤具体包括:
53.s21、通过蓝牙连接接收受控手机端发送的应用程序启动信息;
54.s22、确认所述应用程序启动信息中携带的用户id是否和智能手表本地保存的用户id一致,如果一致,则弹出所述应用程序的启动信息以及需要用户确认的提示框,提示用户选择允许或者拒绝;
55.s23、接收用户选择允许或拒绝的操作,并生成手工确认结果信息,通过蓝牙连接将所述手工确认结果信息返回至受控手机端;
56.其中,手工确认结果信息包括:用户id、应用程序id、用户确认结果、时间戳等信息。
57.为了便于理解,下面以受控手机端和智能手表端交互的方式对上述智能手表授权的手机应用程序安全管控的方法中涉及的应用程序安全管控初始化、应用程序安全管控初次启用以及应用程序安全管控后续启用的流程进行具体说明:
58.(一)、应用程序安全管控初始化
59.如图1所示,应用程序安全管控初始化包括以下步骤:
60.s101、在受控手机操作系统中安装应用安全管控程序受控手机端,并且许可本管控程序相应的执行权限。
61.以安卓手机操作系统为例,管控程序需要注册为系统服务的方式运行而非普通的应用程序,并且需要网络访问权限、蓝牙访问权限、存储访问权限等,部分安卓手机系统中执行需要具备root执行权限。
62.s102、安全管控程序启动后,通过受控手机端与智能手表之间的同步机制安装相对应的应用安全管控程序智能手表端;
63.其中,受控手机端与智能手表之间的同步机制指的是:智能手表都会在智能手机中安装对应的智能手表操作app软件,这个软件会扫描当前智能手机中安装的app,然后把app列表传输到智能手表端,手表端比对缺少的app软件,就会自动联网安装这些app,其中就包括了安全管控程序智能手表端。
64.s103、安装完毕后,受控手机端通过蓝牙连接的方式与智能手表端进行通信,并且需要确保受控手机端与智能手表端在蓝牙通信的有效距离内,保持蓝牙连接。
65.(二)、应用程序安全管控流程
66.如图2所示,应用程序安全管控初次启用包括以下步骤:
67.s201、受控手机端初次启动管控程序;
68.s202、根据提示流程连接至应用服务器端注册用户账号;
69.s203、服务器端根据用户的账号信息分配对应的用户id以及此用户对应的应用安全管控策略;
70.s204、将用户id及用户对应的应用安全管控策略传输至受控手机端保存。
71.s205、受控手机端确认收到用户id后,通过蓝牙连接将此用户id信息传输至智能手表端保存。
72.如图3所示,应用程序安全管控后续启用包括以下步骤:
73.s301、受控手机端每次登录成功后,向服务器端发送最新的应用安全管控策略同步请求,请求中带有用户id以及用户受控手机端中当前存在的应用安全管控策略版本号;
74.s302、服务器端查询到用户id对应的应用安全管控策略版本号后,对比服务器中存储的策略版本以及用户受控手机端的策略版本;
75.s303、如果服务器端有更新版本的应用安全管控策略,则向受控手机端传输最新的应用安全管控策略;
76.s304、受控手机端接收到最新的应用安全管控策略后保存至本地,如果下次启用应用时无法联网,则直接使用本地保存的应用安全管控策略运行;
77.s305、受控手机端实时监控应用程序启动动作并挂起启动动作以待验证。
78.如图4所示,应用安全管控策略对比验证的步骤包括:
79.s401、首先根据当前拦截的应用程序的数据信息计算应用程序的数字摘要,并且根据摘要进一步计算获得应用程序id;
80.s402、通过应用程序id到受控手机端本地保存的应用安全管控策略中进行匹配:
81.如果未在应用安全管控策略中找到对应的应用程序id及对应的应用安全管控策略,则表示应用程序不需要经过智能手表端确认直接准许运行,在启动拦截处恢复此应用程序后续的启动动作,结束整个流程。
82.如果本应用程序id对应的应用安全管控策略为“策略1:禁止应用程序执行”,则直接在启动拦截处禁止此应用程序后续的启动动作,结束整个流程。
83.如果本应用程序id对应的应用安全管控策略为“策略2:手工确认应用程序执行”,则需要执行后续的智能手表确认操作,通过智能手表确认后应用程序方可继续执行后续的启动动作;
84.其中,智能手表确认操作,具体包括:
85.s403、管控程序通过蓝牙连接将需要手工确认的应用程序启动信息传输至智能手表端,其中,应用程序启动信息包括用户id、应用程序名称、应用程序版本、应用程序id、以及本应用程序所要求的访问权限、时间戳等;
86.s404、智能手表端通过蓝牙连接收到此应用程序启动信息后,首先确认此信息中带有的用户id信息是否和本地保存的用户id一致,如果一致,则弹出所述应用程序的启动信息以及需要用户确认的提示框,提示用户选择允许或者拒绝,操作完成后,通过蓝牙连接将此确认信息发送回受控手机端,确认信息包括用户id、应用程序id、用户确认结果、时间戳等信息;
87.s405、受控手机端通过蓝牙连接收到此确认结果信息,首先确认收到信息中的用户id是否一致;
88.s406、根据用户确认结果的允许或拒绝信息,在应用程序拦截点处恢复或者中断应用程序的启动动作;
89.s407、向服务器端上传本次的安全策略执行结果信息,其中,执行结果信息包括用户id、应用程序id、应用程序名称、应用程序版本、用户确认结果、时间戳等信息。
90.最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进
行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
技术特征:1.一种基于智能手表授权的手机应用程序安全管控的方法,其特征在于,手机中安装有用于对手机中的应用程序进行安全管控的应用安全管控程序受控手机端,应用安全管控程序受控手机端以注册为系统服务的方式在手机中运行;智能手表中安装有用于对手机应用程序进行授权的应用安全管控程序智能手表端,受控手机端与智能手表端能够进行蓝牙连接,并通过蓝牙连接进行信息交互;所述方法应用于受控手机端,包括:通过手机操作系统底层接口实时监测当前系统中应用程序的启动动作;监测到有应用程序启动时,拦截所述应用程序的启动动作;根据当前拦截的所述应用程序的数据信息计算所述应用程序的数字摘要,并根据所述数字摘要获得所述应用程序的应用程序id;从本地保存的应用安全管控策略列表中查找与所述应用程序id对应的应用安全管控策略;所述应用安全管控策略列表中存储有策略版本号、需要进行管控的应用程序id以及对应的应用安全管控策略,其中应用安全管控策略包括禁止应用程序执行和手工确认应用程序执行两种类型;如果所述应用程序id对应的应用安全管控策略为手工确认应用程序执行,则通过蓝牙连接将应用程序启动信息传输至智能手表端,并接收智能手表端返回的手工确认结果信息;其中,应用程序启动信息包括用户id、应用程序名称、应用程序版本、应用程序id以及该应用程序所要求的访问权限和时间戳;确认所述手工确认结果信息中的用户id与本地保存的用户id是否一致,若一致,则根据所述手工确认结果,在应用程序拦截点处恢复或者禁止应用程序的启动动作。2.根据权利要求1所述的一种基于智能手表授权的手机应用程序安全管控的方法,其特征在于,手机中安装有用于对手机中的应用程序进行安全管控的应用安全管控程序受控手机端,智能手表中安装有用于对手机应用程序进行授权的应用安全管控程序智能手表端,包括:在受控手机操作系统中安装应用安全管控程序受控手机端,并且许可应用安全管控程序受控手机端的执行权限,所述执行权限包括:网络访问权限、蓝牙访问权限和存储访问权限;受控手机端启动后,通过受控手机端与智能手表之间的同步机制安装应用安全管控程序智能手表端。3.根据权利要求1所述的一种基于智能手表授权的手机应用程序安全管控的方法,其特征在于,所述应用安全管控策略列表按照以下方式获取:受控手机端初次启动时连接至应用安全管控服务器端注册用户账号,并将从服务器端获取的服务器端根据用户账号分配的用户id以及所述用户id对应的应用安全管控策略列表保存在本地;受控手机端每次登录成功后,还会向服务器端发送最新的应用安全管控策略列表同步请求,如果服务器端有更新版本的应用安全管控策略列表,则向受控手机端传输最新的应用安全管控策略列表,受控手机端接收到最新的应用安全管控策略列表后保存至本地。4.根据权利要求1所述的一种基于智能手表授权的手机应用程序安全管控的方法,其特征在于,如果未找到所述应用程序id对应的应用安全管控策略,则表示所述应用程序不需要经过智能手表端确认直接准许运行,在启动拦截处恢复所述应用程序后续的启动动
作,结束整个流程。5.根据权利要求1所述的一种基于智能手表授权的手机应用程序安全管控的方法,其特征在于,如果所述应用程序id对应的应用安全管控策略为禁止应用程序执行,则在启动拦截处禁止所述应用程序后续的启动动作,结束整个流程。6.根据权利要求1所述的一种基于智能手表授权的手机应用程序安全管控的方法,其特征在于,在应用程序拦截点处恢复或者禁止应用程序的启动动作之后,还包括:向服务器端上传本次安全策略执行结果信息,执行结果信息包括用户id、应用程序id、应用程序名称、应用程序版本、用户确认结果和时间戳。7.一种基于智能手表授权的手机应用程序安全管控的方法,其特征在于,手机中安装有用于对手机中的应用程序进行安全管控的应用安全管控程序受控手机端,智能手表中安装有用于对手机应用程序进行授权的应用安全管控程序智能手表端,受控手机端与智能手表端能够进行蓝牙连接,并通过蓝牙连接进行信息交互;所述方法应用于智能手表端;包括:通过蓝牙连接接收受控手机端发送的应用程序启动信息;其中,应用程序启动信息包括用户id、应用程序名称、应用程序版本、应用程序id以及该应用程序所要求的访问权限和时间戳;确认所述应用程序启动信息中携带的用户id是否和智能手表本地保存的用户id一致,如果一致,则弹出所述应用程序的启动信息以及需要用户确认的提示框,提示用户选择允许或者拒绝;接收用户选择允许或拒绝的操作,并生成手工确认结果信息,通过蓝牙连接将所述手工确认结果信息返回至受控手机端;其中,手工确认结果信息包括:用户id、应用程序id、用户确认结果和时间戳。
技术总结本发明公开了一种基于智能手表授权的手机应用程序安全管控的方法,涉及信息安全技术领域,在手机和智能手表分别安装应用安全管控程序受控手机端和应用安全管控程序智能手表端,受控手机端与智能手表端保持蓝牙连接,受控手机端实时监控应用进程启动情况,并与受控手机端本地保存的应用安全策略相匹配,发现疑似非法应用进程启动后,挂起进程的启动动作,并在智能手表端弹出被挂起的进程信息以及提示确认框,用户在手表上点击允许或者拒绝按钮后,受控手机端恢复或禁止当前挂起进程的后续启动动作,以达到通过手表控制受控手机端应用程序的使用,以智能手表与手机间蓝牙连通性、授权验证作为控制条件,保护用户个人隐私安全以及受控APP使用的目的。以及受控APP使用的目的。以及受控APP使用的目的。
技术研发人员:聂奇彪 王皓 孙宇鑫
受保护的技术使用者:大连九锁网络有限公司
技术研发日:2022.02.16
技术公布日:2022/7/5