基于可扩展密码服务框架的密码服务方法技术

技术编号:10393936 阅读:69 留言:0更新日期:2014-09-05 19:44
本发明专利技术公开了一种基于可扩展密码服务框架的密码服务方法,其实施步骤如下:构建包括跨Ring0~Ring3级别的API层、密码服务交换开关、MPI层和密码模块层的密码服务框架;当应用程序发出密码服务请求时,初始化密码服务框架实例,查询已注册的密码模块并进行完整性验证,将验证通过的密码模块挂接关联到密码服务框架,应用程序通过密码服务框架和密码模块建立会话并获取密码服务,并在使用完密码服务后关闭会话及密码服务框架。本发明专利技术能够使得密码服务提供者可以很方便地进行密码模块的扩展、替换以及删除等操作,实现现有密码服务和新型密码服务的即插即用,既能很好地保护密码资源又能灵活动态扩展密码服务框架。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种,其实施步骤如下:构建包括跨Ring0~Ring3级别的API层、密码服务交换开关、MPI层和密码模块层的密码服务框架;当应用程序发出密码服务请求时,初始化密码服务框架实例,查询已注册的密码模块并进行完整性验证,将验证通过的密码模块挂接关联到密码服务框架,应用程序通过密码服务框架和密码模块建立会话并获取密码服务,并在使用完密码服务后关闭会话及密码服务框架。本专利技术能够使得密码服务提供者可以很方便地进行密码模块的扩展、替换以及删除等操作,实现现有密码服务和新型密码服务的即插即用,既能很好地保护密码资源又能灵活动态扩展密码服务框架。【专利说明】
本专利技术涉及计算机操作系统的密码
,具体涉及一种。
技术介绍
密码技术目前被广泛应用于各类信息系统,其对于信息安全而言至关重要。在应用密码技术时,许多安全应用直接集成密码算法,一些操作系统内核也嵌入各种密码算法,还有许多硬件产商推出了繁杂多样的密码硬件加速设备,跨越PCI卡级、芯片组级、CPU级以及集成密码处理的设备。这种各自为政的局面使安全应用开发效率偏低,妨碍了安全互操作,导致密码服务层次混乱。密码服务框架力图统一各类密码处理资源,包括软件算法和硬件密码加速设备,密码服务框架是应用和密码服务之间的桥梁,它向上为用户提供统一的密码服务调用接口,向下则为密码服务供应商提供统一的密码算法开发接口。然而,现有的密码服务框架的各个层次通常位于同一个特权级,甚至与应用位于同一空间,对密码资源缺乏保护,使密码资源与应用一样暴露在攻击者的面前。并且在传统操作系统设计中,密码机制和操作系统的内核安全功能是分离设计的,内核安全得不到密码机制的有效支撑,而密码算法等资源也得不到操作系统的有效保护。这种设计上的脱节,使得攻击者既能够绕开内核安全功能获取密码等敏感资源,也能够绕开密码服务对操作系统实施攻击。另外,现有的密码服务框架在支持新型密码算法或新型密码服务方面还有不足,难以做到透明扩展,即在扩展新型密码服务时,以前的应用也可以调用而不用修改代码。比如,一个应用当前调用指纹识别技术来进行身份鉴别,而当虹膜技术加入到密码服务框架时,该应用能够无缝支持虹膜身份鉴别,而无需修改代码。
技术实现思路
针对前述的现有技术的密码服务框架对密码资源(算法、密钥等)保护不够,接口不够灵活,难以动态挂载新的密码模块,不支持直接挂载新型密码服务等不足,本专利技术要解决的技术问题是提供一种使得密码服务提供者可以很方便地进行密码模块的扩展、替换以及删除等操作,实现现有密码服务和新型密码服务的即插即用,既能很好地保护密码资源又能灵活动态扩展密码服务框架的。为了解决上述技术问题,本专利技术采用的技术方案为: 一种,其实施步骤如下: O预先在操作系统中构建可供调用的密码服务框架;所述密码服务框架包括API层、密码服务交换开关、MPI层和密码模块层,所述API层面向密码服务使用者提供密码服务API,所述MPI层面向密码服务提供者提供密码模块MPI,所述密码服务交换开关用于控制密码服务AP1、密码模块MPI之间的映射以及密码服务框架中注册的密码模块管理;所述API层位于CPU特权级最低的Ring3级,所述MPI层和密码模块层则共同位于CPU特权级最高的RingO级,所述密码服务交换开关位于CPU特权级次高级的Ringl级,所述密码模块层则包括用于作为提供密码服务实体的密码模块; 2)当作为密码服务使用者的应用程序发出密码服务请求时,首先初始化一个密码服务框架实例,查询密码服务框架中所有已注册的密码模块,并对已注册的密码模块进行完整性验证,将验证通过的密码模块挂接关联到密码服务框架; 3)应用程序通过密码服务框架和密码模块建立会话,应用程序通过密码服务框架向密码模块请求密码服务,并在使用完密码服务后跳转执行下一步; 4)应用程序通过密码服务框架关闭和密码模块之间的会话,将密码服务框架的各个密码模块卸载取消关联,通过清除密 码服务框架的实例关闭密码服务框架,本次密码服务结束。优选地,所述步骤I)预先构建的密码服务框架中,所述密码服务API包括加解密服务AP1、证书服务AP1、数据存储服务API和扩展服务API,所述密码模块MPI包括加解密模块MP1、证书模块MP1、数据存储模块MPI和扩展模块MPI,所述密码模块包括加解密模块、证书模块、数据存储模块和扩展模块,所述密码模块、密码模块MP1、密码服务API三者之间--对应。优选地,所述步骤I)中预先创建的密码服务框架中,所述密码服务AP1、密码服务交换开关之间通过系统调用syscall进行交互,所述密码服务交换开关、密码模块MPI之间通过超级调用hypercall进行交互。优选地,所述密码服务交换开关包括加解密服务管理器、证书服务管理器、数据存储服务管理器、扩展服务管理器、模块目录管理子模块、模块管理子模块、会话管理子模块、回调子模块和完整性认证子模块,所述加解密服务管理器用于将加解密服务API映射至加解密模块MPI,所述证书服务管理器用于将证书服务API映射至证书模块MPI,所述数据存储服务管理器用于将数据存储服务API映射至数据存储模块MPI,所述扩展服务管理器用于将扩展服务API映射至扩展模块MPI,所述模块目录管理子模块用于管理密码模块的注册信息,所述模块管理子模块用于为作为密码服务使用者的应用程序定位、加载、卸载所需的密码模块,所述会话管理子模块用于在作为密码服务使用者的应用程序和作为密码服务提供者的密码模块之间建立一个逻辑连接以提供上下文服务以及保障线程安全,所述回调子模块用于为密码模块层下不同服务类的密码模块之间的相互调用提供渠道以降低不同类型密码模块间的依赖性,所述完整性认证子模块用于验证已注册密码模块的完整性。优选地,所述步骤I)中的模块目录管理子模块通过多条key-value形式的记录存储密码模块的注册信息,所述key值为密码模块为全局唯一无符号长整型ID值转换成的字符串,且所述密码模块层中加解密模块、证书模块和数据存储模块、扩展模块四类密码模块的全局唯一无符号长整型ID值的取值范围各不相同;所述value值记载密码模块注册信息为密码模块的基本信息、类型信息、令牌信息、扩展令牌信息、扩展密钥信息、扩展机制信息中的一种。优选地,所述步骤2)中对每一个注册的密码模块进行完整性验证的详细步骤如下: 2.1)预先在将每一个密码模块注册到密码服务框架时,采用指定的摘要提取算法提取所述密码模块的原始摘要信息,并将所述原始摘要信息和所述密码模块在操作系统中的安装路径信息存储到预设的数据库中;在需要对每一个注册的密码模块进行完整性验证时,从密码服务框架中取出一个尚未进行完整性验证的密码模块作为当前密码模块,跳转执行步骤2.2); 2.2)从所述数据库中取出当前密码模块的原始摘要信息及所述安装路径信息; 2.3)根据所述安装路径信息,采用所述摘要提取算法提取当前密码模块的当前摘要信息; 2.4)判定当前密码模块的原始摘要信息、当前摘要信息是否相等,如果相等,则表示当前密码模块没有被篡改,判定验证通过;如果不相等,则表示当前密码模块已经被篡改,判定验证不通过。优选地,所述步骤3)的详细步骤如下: 3.1本文档来自技高网
...

【技术保护点】
一种基于可扩展密码服务框架的密码服务方法,其特征在于实施步骤如下:1)预先在操作系统中构建可供调用的密码服务框架;所述密码服务框架包括API层、密码服务交换开关、MPI层和密码模块层,所述API层面向密码服务使用者提供密码服务API,所述MPI层面向密码服务提供者提供密码模块MPI,所述密码服务交换开关用于控制密码服务API、密码模块MPI之间的映射以及密码服务框架中注册的密码模块管理;所述API层位于CPU特权级最低的Ring3级,所述MPI层和密码模块层则共同位于CPU特权级最高的Ring0级,所述密码服务交换开关位于CPU特权级次高级的Ring1级,所述密码模块层则包括用于作为提供密码服务实体的密码模块;2)当作为密码服务使用者的应用程序发出密码服务请求时,首先初始化一个密码服务框架实例,查询密码服务框架中所有已注册的密码模块,并对已注册的密码模块进行完整性验证,将验证通过的密码模块挂接关联到密码服务框架;3)应用程序通过密码服务框架和密码模块建立会话,应用程序通过密码服务框架向密码模块请求密码服务,并在使用完密码服务后跳转执行下一步;4)应用程序通过密码服务框架关闭和密码模块之间的会话,将密码服务框架的各个密码模块卸载取消关联,通过清除密码服务框架的实例关闭密码服务框架,本次密码服务结束。...

【技术特征摘要】

【专利技术属性】
技术研发人员:戴华东廖湘科陈松政罗军付松龄魏立峰董攀黄辰林丁滟
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1