专利名称:一种移动终端、以及移动终端中根证书的调用方法
技术领域:
本发明涉及移动终端技术领域,尤其涉及一种移动终端、以及移动终端中根证书
的调用方法。
背景技术:
移动终端上的应用程序认证技术已经成为智能终端上对应用程序的行为进行安全防护的主流技术之一,Windows Mobile平台和Symbian平台均有其相应的应用程序签名认证机制。 应用程序签名认证技术即对移动终端中运行的应用程序使用数字证书进行签名,程序开发者向证书发行者申请用以验证其身份和权限的数字证书,并使用该数字证书对开发的应用程序进行签名。移动终端的操作系统在安装或运行应用程序时,首先对应用程序的数字证书进行验证,以鉴别该应用程序的发行者和拥有的权限等信息,从而对其安装或运行权限做出安全决策。根证书是应用程序签名认证技术的核心元素之一,根证书内置于移动终端,通过根证书与应用程序数字证书的匹配来实现对应用程序的发行者和权限的验证。 目前在Symbian和Windows Mobile终端操作系统中均引入了不同的应用程序签名认证技术,其认证系统中的根证书均采用静态证书的方式,即根证书在终端出厂时即内置在终端中,并以此来执行静态的安全策略。实际应用中,往往需要对移动终端中内置的根证书进行更新,例如增加、修改或删除根证书,这就需要移动终端用户到客服中心去进行导入,给用户造成很大不便。针对此问题,一种现有技术提出了移动终端中根证书的维护方法,该方法的核心为设备管理服务器将移动终端根证书维护信息下发给移动终端的设备管理客户端;设备管理客户端根据设备管理服务器的命令将移动终端根证书维护信息保存
后进行根证书维护操作处理。 通过上述方法实现了无需用户干预的根证书动态维护,进而通过根证书的更换来进行安全策略的修改。但该方案中,移动终端中根证书的替换过程是一种硬替换,即通过移动终端的相应操作将原有根证书直接替换,替换的过程往往伴随着终端中安全保护系统的重新启动,在此过程中,终端的安全性得不到保障;并且,根证书的更新信息都是基于网络侧统一下发的,替换前后系统执行的是仍然是静态的安全策略,而终端中的应用程序往往是多种多样的,对应的安全级别也有所不同,因此,无法满足移动终端中对不同应用程序安全性的要求。
发明内容
本发明提供一种移动终端、以及移动终端中根证书的调用方法,用以满足移动终
端中对不同应用程序安全性的要求。 本发明实施例通过如下技术方案实现 本发明实施例提供了一种移动终端中根证书的切换方法,包括
4
获取系统中应用程序发出的行为请求; 若所述行为请求不属于特权行为请求类别,则调用普通证书体系中的根证书对所述行为请求进行验证; 若所述行为请求属于特权行为请求类别,获取与所述行为请求对应的操作上下
文,当获取到所述操作上下文且根据所述操作上下文确定所述行为请求适用于特权证书体
系时,调用特权证书体系中的根证书对所述行为请求进行验证;当未获取到所述操作上下
文或根据所述操作上下文确定所述行为请求不适用于特权证书体系时,调用普通证书体系
中的根证书对所述行为请求进行验证。 本发明实施例还提供了一种移动终端,包括 请求获取单元,用于获取系统中应用程序发出的行为请求; 根证书选择单元,用于当所述请求获取单元获取的行为请求不属于特权行为请求类别时,选择普通证书体系;当所述请求获取单元获取的行为请求属于特权行为请求类别时,获取与所述行为请求对应的操作上下文,当获取到所述操作上下文且根据所述操作上下文确定所述行为请求适用于特权证书体系时,选择特权证书体系;当未获取到所述操作上下文或根据所述操作上下文确定所述行为请求不适用于特权证书体系时,选择普通证书体系; 验证单元,用于当所述根证书选择单元的选择结果为普通证书体系时,调用普通证书体系中的根证书对所述行为请求进行验证;当所述根证书选择单元的选择结果为特权证书体系时,调用特权证书体系中的根证书对所述行为请求进行验证。 通过上述技术方案,本发明实施例中,当系统中应用程序发出行为请求时,首先确定该行为请求是否属于特权行为请求,若该行为请求不属于特权行为请求,则调用普通证书体系中的根证书对该行为请求进行验证,若该行为请求属于特权行为请求,则进一步获取与该行为请求对应的操作上下文,当获取到操作上下文且根据该操作上下文确定该行为请求适用于特权证书体系时,调用特权证书体系中的根证书对该行为请求进行验证,否则调用普通证书体系中的根证书对该行为请求进行验证。根据该技术方案,能够针对系统中不同应用程序发出的不同行为请求,结合在系统运行过程中抓取的操作上下文,对用于验证行为请求的证书体系做出决策,实现了证书体系的动态更换,对不同应用程序发出的不同行为请求选择适用的证书验证体系,从而满足了移动终端中对不同应用程序安全性的要求。
图1为本发明实施例中动态调用证书体系的流程图; 图2为本发明实施例中动态调用证书体系的移动终端的结构示意图。
具体实施例方式
为了更好地满足移动终端中对不同应用程序安全性的要求,本发明实施例提出了一种移动终端、以及移动终端中根证书的调用方法,下面结合说明书附图及具体实施例对本发明技术方案的主要实现原理、具体实施过程及其对应能够达到的有益效果进行详细的阐述。
5
本发明实施例中,在移动终端中内置两套根证书体系,即普通根证书体系和特权根证书体系。不同的根证书体系对应着不同的安全性要求,且每套根证书体系下可以包含多个根证书。在系统运作过程中,采集移动终端中的操作上下文,作为动态调用证书体系的依据。具体地,本发明实施例的主要思想包括
获取系统中应用程序发出的行为请求; 若获取的行为请求不属于特权行为请求类别,则调用普通证书体系中的根证书对该行为请求进行验证; 若获取的行为请求属于特权行为请求类别,进一步获取与该行为请求对应的操作
上下文,当获取到操作上下文且根据获取的操作上下文被映射到的从属域确定该行为请求
适用于特权证书体系时,调用特权证书体系中的根证书对该行为请求进行验证;当未获取
到操作上下文或根据获取的操作上下文被映射到的从属域确定该行为请求不适用于特权
证书体系时,调用普通证书体系中的根证书对该行为请求进行验证。 下面对上述过程做进一步详尽的描述 本发明实施例中,需要在移动终端运行过程中不断采集操作上下文信息,并建立操作上下文库,具体如下 监控移动终端的操作系统,对系统中发生的用户主动操作、系统级应用行为以及系统环境变化等事件进行拦截,并将与事件相关的信息作为操作上下文保存到操作上下文库中。具体地,操作上下文在保存到操作上下文库中时可以通过如下格式
(序列号,上下文详情,操作对象);其中, 序列号由系统按照操作上下文对应的操作行为发生的时间生成,例如,按照操作行为发生时间的先后顺序进行自增计数生成序列号,在操作上下文库进行更新时,自增计数归零。 上下文详情用于描述操作上下文对应的操作行为的详情,其中包括操作行为对
应的操作类型,例如,操作行为为用户的按键操作或系统定时任务到达等。
操作对象指操作上下文对应的操作行为针对的操作对象,例如,用户的按键操作
针对的操作对象是当前获得窗口控制权的应用程序,系统定时任务到达针对的操作对象是
定时到达时要启动的应用程序。 需要指出的是,上述保存格式仅为本发明实施例实现时的一种方式,任何可以实现上述目的的保存方式均可实施,例如,也可以通过表格的方式保存,从此不一一列举。
进一步地,由于操作上下文库中保存的操作上下文随系统的运行而增加,为了不占用移动终端中太多存储空间,一个实施例中,可以根据设定策略对操作上下文库中保存的操作上下文进行清理,例如,当对一个应用程序发出的行为请求对应的证书体系决策完毕时,删除该请求之前操作上下文库中保存的操作上下文,或者,当采集操作上下文的时间达到设定长度时,删除操作上下文库中除最近设定条数的操作上下文之外的操作上下文。
如图1所示,本发明一个实施例中,根据系统中应用程序发出的行为请求动态调用证书体系的过程,包括如下步骤 步骤101、获取系统中应用程序发出的行为请求。 该步骤中,监控系统中各种应用程序的接口 ,当应用程序请求调用某种行为或某项能力时,截取该行为请求。其中,截获的行为请求中包括与应用程序的行为请求相关的详
6细信息,例如,发出行为请求的应用程序对应的编程接口名称、此次行为请求对应的操作类
型等信息。 步骤102、判断获取的行为请求是否为特权行为请求,若是,则执行步骤103,否则执行步骤108。 为了实现该步骤,预先对特权行为请求的类别进行了定义,具体地,将特权行为请求定义为可能对系统运行安全或用户数据安全造成重大影响的行为请求,例如,更改系
统设置的请求、拨打电话的请求、发送短信的请求、删除联系人的请求或启动摄像头的请求等。 该步骤中,若应用程序发出的行为请求被定义在上述特权行为请求类别中,则确定步骤101中获取的行为请求为特权行为请求。 步骤103、根据获取的行为请求从预先建立的操作上下文库中获取与该行为请求对应的操作上下文。 具体地,该步骤实现时可以通过如下方式 根据获取的行为请求,确定发出该行为请求的应用程序; 根据操作上下文库保存的操作上下文的操作对象信息,获取操作对象为发出行为请求的应用程序的操作上下文。 步骤104、是否获取到与该行为请求对应的操作上下文,若获取到,则执行步骤105,否则执行步骤108。 步骤105、将获取的操作上下文归类到一个或多个操作类别,并根据预先建立的操作类别与从属域的映射关系,将操作上下文映射到对应的从属域中。 具体地,该步骤中,操作上下文可能被映射到一个或多个从属域中。其中,系统预定义的从属域包括用户主动操作、系统组件行为、系统应用行为、系统待机、系统唤醒以及系统模式切换等,同时,建立操作类别与从属域的映射关系,例如,按键操作(操作类型)将会被映射到用户主动操作类别(从属域)中。映射后的操作上下文记录将具备以下属性
从属域、操作类别、序列号,上下文详情,操作对象。 进一步地,该步骤中定于的操作类型与从属域的映射关系,可以根据需要进行编辑,例如,修改映射关系、添加或删除新的映射关系等。 步骤106、根据与应用程序的行为请求对应的操作上下文被映射到的从属域,判断
该行为请求是否适用于特权证书体系,若是,则执行步骤107,否则执行步骤108。 该步骤中,预先定义了适用于特权证书体系的从属域,即预先建立了从属域与证
书体系的映射关系,并为每个从属域分配了安全优先级。具体地,在判断行为请求是否适用
于特权证书体系时,包括 若与该行为请求对应的操作上下文被映射到一个从属域、且该从属域对应特权证书体系,则确定该行为请求适用于特权证书体系; 若与该行为请求对应的操作上下文被映射到多个从属域、且该多个从属域中对应
安全优先级最高的从属域对应特权证书体系,则确定该行为请求适用于特权证书体系。 步骤107、调用特权证书体系对获取的应用程序的行为请求进行验证。 该步骤中,预先对特权证书体系中的根证书进行安全域的映射,从而使不同根证
书对应的证书颁发者签名的应用程序能够具备不同的安全域属性,进而决定应用程序的行为请求是否被接受。具体地,该步骤包括如下过程 首先根据发出行为请求的应用程序对应的证书颁发者签名信息,从特权证书体系中的选择对应的根证书,并根据预设的根证书与安全域的映射关系,确定该根证书对应的安全域; 判断该安全域是否能够满足发出行为请求的应用程序的编程接口要求达到的安全域,若满足,则授权该应用程序发出的行为请求,若不满足,则不授权该应用程序发出的行为请求。 步骤108、调用普通证书体系对该获取的应用程序的行为请求进行验证。 该步骤在实现时,与上述步骤107的基本原理一致,此处不再详细描述。 上述步骤105中,操作上下文按照操作类型分类,一般可分为如下类别 用户的主动操作、系统级的应用行为和系统环境变化三个大类。 进一步地,还可以对每个大类进行细化分类,例如,用户的主动操作包括用户的按
键操作、触摸屏操作、机身翻转操作、机身加速及一切其它由用户主动发起的操作;系统级
的应用行为包括WAP-Push接收、系统恶意程序检测启动、系统定时任务、系统全局定时器
及一切由系统组件和系统应用发起的行为;系统环境变化包括待机状态进入、省电模式进
入、系统唤醒、存储模式进入、同步模式进入及一切其它系统本身环境的变化。 进行上述分类的目的主要是方便从操作上下文库中保存的复杂的操作上下文中
分离出与应用程序发出的行为请求相关的操作上下文。 根据上述流程,一个具体实例如下 移动终端中预置了普通证书体系和特权证书体系,其中,普通证书体系包括A、 B、C、 D的根证书,特权证书体系包括A、 C、 D、 E的根证书。其中,A、 B、 C、 D、 E指证书颁发者的签名信息。 在普通根证书体系下,A、 B、 C、 D四个根证书分别对应Dl、 D2、 D3、 D4四个安全域,在特权根证书体系下,A、C、D、E四个根证书分别对应D1、D2、D3、D4四个安全域。其中,D1为最高安全域,能够使用所有的编程接口 , D2、D3、D4的安全级依次降低,能够使用的编程接口也依次减少。 假设一个经过证书颁发者D签名的应用程序发出的行为请求为使用发送短信对应的编程接口,该编程接口要求的安全域为D3。当不存在任何操作上下文时,调用普通证书体系对该行为请求进行验证,那么,该证书颁发者D所签名的应用请求被映射到D4安全域,D4低于该编程接口要求达到的安全域D3,因此,拒绝该行为请求;当系统存在按键操作对应的操作上下文,且根据该上下文确定该行为请求适用于特权证书体系时,调用特权证书体系对该行为请求进行验证,那么,该证书颁发者D所签名的应用将被映射到D3安全域,满足编程接口对安全域的要求,因此,授权该行为请求。 从上例中可以看到,相对于传统证书认证体系固定的模式,本发明实施例通过证
书体系动态切换和安全域的动态映射实现了应用程序行为请求的动态决策。 与上述流程对应,本发明实施例提供了一种移动终端,如图2所示,该移动终端包
括 请求获取单元201、根证书选择单元202以及验证单元203。
其中
请求获取单元201,用于获取系统中应用程序发出的行为请求。
根证书选择单元202,用于当请求获取单元201获取的行为请求不属于特权行为请求类别时,选择普通证书体系;当请求获取单元201获取的行为请求属于特权行为请求类别时,获取与该行为请求对应的操作上下文,当获取到操作上下文且根据获取的操作上下文确定该行为请求适用于特权证书体系时,选择特权证书体系;当未获取到操作上下文或根据获取的操作上下文确定该行为请求不适用于特权证书体系时,选择普通证书体系。
验证单元203,用于当根证书选择单元202的选择结果为普通证书体系时,调用普通证书体系中的根证书对该行为请求进行验证;当根证书选择单元202的选择结果为特权证书体系时,调用特权证书体系中的根证书对该行为请求进行验证。 —个实施例中,上述根证书选择单元包括上下文获取模块,该模块用于根据预先采集的操作上下文中包括的操作对象信息,从预先采集的操作上下文中获取操作对象为发出行为请求的应用程序的操作上下文。 —个实施例中,上述根证书选择单元还包括上下文映射模块以及适用性判定模块;其中, 上下文映射模块,用于当上下文获取模块获取到操作上下文时,根据该操作上下文所属的操作类别以及操作类别与从属域的映射关系,将获取的操作上下文映射到一个或多个从属域; 适用性判定模块,用于当上下文映射模块将操作上下文映射到一个从属域、且该从属域对应特权证书体系时,确定该行为请求适用于特权证书体系;当上下文映射模块将操作上下文映射到多个从属域、且该多个从属域中对应安全优先级最高的从属域对应特权证书体系时,确定该行为请求适用于特权证书体系。 —个实施例中,上述验证单元具体用于,根据发出行为请求的应用程序对应的证书颁发者签名信息,从根证书选择单元202选择出的普通证书体系或特权证书体系中选择对应的根证书,并根据根证书与安全域的映射关系,确定选择出的根证书对应的安全域,判断该安全域是否高于发出行为请求的应用程序的编程接口对应的安全域,若是,则授权该请求,否则拒绝该请求。 通过上述技术方案,本发明实施例中,当系统中应用程序发出行为请求时,首先确定该行为请求是否属于特权行为请求,若该行为请求不属于特权行为请求,则调用普通证书体系中的根证书对该行为请求进行验证,若该行为请求属于特权行为请求,则进一步获取与该行为请求对应的操作上下文,当获取到操作上下文且根据该操作上下文确定该行为请求适用于特权证书体系时,调用特权证书体系中的根证书对该行为请求进行验证,否则调用普通证书体系中的根证书对该行为请求进行验证。根据该技术方案,能够针对系统中不同应用程序发出的不同行为请求,结合在系统运行过程中抓取的操作上下文,对用于验证行为请求的证书体系做出决策,实现了证书体系的动态更换,对不同应用程序发出的不同行为请求选择适用的证书验证体系,从而满足了移动终端中对不同应用程序安全性的要求。 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
一种移动终端中根证书的调用方法,其特征在于,包括获取系统中应用程序发出的行为请求;若所述行为请求不属于特权行为请求类别,则调用普通证书体系中的根证书对所述行为请求进行验证;若所述行为请求属于特权行为请求类别,获取与所述行为请求对应的操作上下文,当获取到所述操作上下文且根据所述操作上下文确定所述行为请求适用于特权证书体系时,调用特权证书体系中的根证书对所述行为请求进行验证;当未获取到所述操作上下文或根据所述操作上下文确定所述行为请求不适用于特权证书体系时,调用普通证书体系中的根证书对所述行为请求进行验证。
2. 如权利要求1所述的方法,其特征在于,获取与所述行为请求对应的操作上下文,包括根据预先采集的操作上下文中的操作对象信息,从所述预先采集的操作上下文中获取操作对象为发出所述行为请求的应用程序的操作上下文。
3. 如权利要求1所述的方法,其特征在于,当获取到所述操作上下文后,还包括根据所述操作上下文所属的操作类别以及操作类别与从属域的映射关系,确定所述操作上下文被映射到的一个或多个从属域;根据所述操作上下文确定所述行为请求适用于特权证书体系,包括若所述操作上下文被映射到一个从属域、且所述从属域对应特权证书体系,则确定所述行为请求适用于特权证书体系;若所述操作上下文被映射到多个从属域、且所述多个从属域中对应安全优先级最高的从属域对应特权证书体系,则确定所述行为请求适用于特权证书体系。
4. 如权利要求1所述的方法,其特征在于,调用普通证书体系或特权证书体系中的根证书对所述行为请求进行验证,包括根据发出所述行为请求的应用程序对应的证书颁发者签名信息,从所述普通证书体系或特权证书体系中选择对应的根证书;根据根证书与安全域的映射关系,确定选择出的根证书对应的安全域;判断所述安全域是否高于发出所述行为请求的应用程序的编程接口对应的安全域,若是,则授权所述行为请求,否则拒绝所述行为请求。
5. —种移动终端,其特征在于,包括请求获取单元,用于获取系统中应用程序发出的行为请求;根证书选择单元,用于当所述请求获取单元获取的行为请求不属于特权行为请求类别时,选择普通证书体系;当所述请求获取单元获取的行为请求属于特权行为请求类别时,获取与所述行为请求对应的操作上下文,当获取到所述操作上下文且根据所述操作上下文确定所述行为请求适用于特权证书体系时,选择特权证书体系;当未获取到所述操作上下文或根据所述操作上下文确定所述行为请求不适用于特权证书体系时,选择普通证书体系;验证单元,用于当所述根证书选择单元的选择结果为普通证书体系时,调用普通证书体系中的根证书对所述行为请求进行验证;当所述根证书选择单元的选择结果为特权证书体系时,调用特权证书体系中的根证书对所述行为请求进行验证。
6. 如权利要求5所述的移动终端,其特征在于,所述根证书选择单元包括上下文获取模块,用于根据预先采集的操作上下文中包括的操作对象信息,从所述预先采集的操作上下文中获取操作对象为发出所述行为请求的应用程序的操作上下文。
7. 如权利要求6所述的移动终端,其特征在于,所述根证书选择单元还包括上下文映射模块,用于当所述上下文获取模块获取到所述操作上下文时,根据所述操作上下文所属的操作类别以及操作类别与从属域的映射关系,将所述操作上下文映射到一个或多个从属域;适用性判定模块,用于当所述上下文映射模块将所述操作上下文映射到一个从属域、且所述从属域对应特权证书体系时,确定所述行为请求适用于特权证书体系;当所述上下文映射模块将所述操作上下文映射到多个从属域、且所述多个从属域中对应安全优先级最高的从属域对应特权证书体系时,确定所述行为请求适用于特权证书体系。
8. 如权利要求5所述的移动终端,其特征在于,所述验证单元具体用于,根据发出所述行为请求中的应用程序对应的证书颁发者签名信息,从所述普通证书体系或特权证书体系中选择对应的根证书,并根据根证书与安全域的映射关系,确定选择出的根证书对应的安全域,判断所述安全域是否高于发出所述行为请求的应用程序的编程接口对应的安全域,若是,则授权所述行为请求,否则拒绝所述行为请求。
全文摘要
本发明公开了一种移动终端、以及移动终端中根证书的调用方法,主要包括获取系统中应用程序发出的行为请求;若该行为请求不属于特权行为请求类别,则调用普通证书体系中的根证书对该行为请求进行验证;若该行为请求属于特权行为请求类别,获取与该行为请求对应的操作上下文,当获取到操作上下文且根据操作上下文确定该行为请求适用于特权证书体系时,调用特权证书体系中的根证书对该行为请求进行验证;当未获取到操作上下文或根据操作上下文确定该行为请求不适用于特权证书体系时,调用普通证书体系中的根证书对该行为请求进行验证。该技术方案能够满足了移动终端中对不同应用程序安全性的要求。
文档编号G06F21/00GK101770553SQ200810247069
公开日2010年7月7日 申请日期2008年12月31日 优先权日2008年12月31日
发明者匡硕, 张小栋 申请人:中国移动通信集团公司