一种支持调用多种安全设备的处理方法技术

技术编号:10756268 阅读:77 留言:0更新日期:2014-12-11 12:40
本发明专利技术提供一种支持调用多种安全设备的处理方法,该方法包括以下步骤:(1)接收应用系统发送的调用初始化接口的命令,对中间件接口进行初始化;(2)调用打开安全设备接口,返回安全设备基类对象句柄;(3)调用安全设备的安全服务程序接口,得到安全服务程序的运算结果;(4)调用关闭安全设备接口,释放中间件接口。具有使得用户无需了解各种算法及API接口便能完成安装有应用程序的设备与多种安全设备的连接通信,大大方便了用户使用各种安全设备的突出优点。

【技术实现步骤摘要】
一种支持调用多种安全设备的处理方法
本专利技术涉及信息安全领域,尤其是涉及一种支持调用多种安全设备的处理方法。
技术介绍
在信息安全中,安全设备为应用程序提供安全服务,然而,现在各安全设备厂商提供的安全设备所支持的功能和算法差异却很大,且安全服务提供者的API接口也各不相同,安全设备的API主要可以分为三类,一是API支持国际标准和规范,主要有:CDSA、RSAPKCS#11CryptographicTokenInterfaceStandard和MicrosoftCryptoAPI等;二是API支持国内标准,主要有:GM/T0016-2012技术规范等;第三类是安全设备厂商自定义API。应用用户获取安全设备提供的安全服务是通过安装有应用程序的设备调用安全服务程序的API接口实现,但由于现在各安全设备厂商提供的安全设备所支持的功能和算法差异很大,且安全服务提供者的API接口也各不相同,使得用户必须了解算法信息,必须熟知各种规范的API,才能实现对各安全服务程序的API接口的调用,这给用户使用安全设备带来了很大的不便。对用户而言,其关心的是应用业务,需要的是业务安全,用户关注的是某种安全功能(如完整性保护、机密性保护),至于具体的算法信息用户是不关心的,因此找到一种处理方法,使得用户不必去了解算法信息和各种规范的API,就能实现对各种安全设备的使用是一个亟待解决的问题。
技术实现思路
本专利技术的目的在于:针对现有技术存在的问题,提供一种支持调用多种安全设备的处理方法,解决了由于现在各安全设备厂商提供的安全设备所支持的功能和算法差异很大,且安全服务提供者的API接口也各不相同,用户需要了解各种算法及API接口才能完成安装有应用程序的设备与安全设备的连接通信,从而正常使用安全设备的问题。本专利技术的专利技术目的通过以下技术方案来实现:一种支持调用多种安全设备的处理方法,其特征在于,该方法包括以下步骤:(1)接收应用系统发送的调用初始化接口的命令,对中间件接口进行初始化;(2)调用打开安全设备接口,返回安全设备基类对象句柄;(3)调用安全设备的安全服务程序接口,得到安全服务程序的运算结果;(4)调用关闭安全设备接口,释放中间件接口。优选的,步骤(1)中对中间件接口进行初始化的方法包括以下步骤:(11)创建管理者对象;(12)管理者读取中间件配置文件,组装中间件配置对象;(13)中间件配置对象读取所有的安全设备配置文件,完成中间件接口初始化。优选的,步骤(2)中所述打开安全设备接口的流程为:(21)管理者根据安全设备ID查找指定ID的安全设备配置文件;(22)查找成功后,管理者调用设备工厂创建指定设备对象,返回设备基类对象句柄。优选的,步骤(3)中所述安全服务程序接口的流程为:根据设备基类对象句柄指向的指定对象设备,调用指定对象设备的安全服务程序接口,得到安全服务程序的运算结果并返回给用户。优选的,步骤(4)中所述关闭安全设备接口的流程为:管理者调用设备工厂删除指定句柄的安全设备对象。优选的,步骤(4)中所述释放中间件接口的流程为:管理者删除管理相关的对象,释放内存,完成中间件接口释放。优选的,所述中间件接口包括:打开安全设备接口、关闭安全设备接口、安全服务程序接口。优选的,所述安全服务程序接口为签名运算接口、验证运算接口、杂凑运算接口、非对称加解密运算接口或对称加解密运算接口。与现有技术相比,本专利技术具有以下优点:1、使得用户无需了解各种算法及API接口便能完成安装有应用程序的设备与多种安全设备的连接通信,大大方便了用户使用各种安全设备;2、由于本专利技术屏蔽了安全设备接口差异和算法差异,因此具有很大的扩展性,支持安装有应用程序的设备能够与多个安全设备连接;3、本专利技术相当于一个万能转换器,可将对战安全设备的API接口转换成统一的对外接口。附图说明图1为本专利技术的流程图;图2为本专利技术的时序图。具体实施方式下面结合附图和具体实施例对本专利技术进行详细说明。实施例一种支持调用多种安全设备的处理方法,该方法用于安装有应用程序的设备(如计算机)与安全设备的连接通信中。在原理上,本专利技术方法采用工厂模式,将安全设备功能抽象得到设备基类,安全设备都继承自设备基类,设备工根据算法配置生产设备,管理者根据中间件配置管理工厂生产。本方法的流程和时序图分别如图1、图2所示,具体包括以下步骤:步骤1、接收应用系统发送的调用初始化接口的命令,对中间件接口进行初始化。该步骤中,对中间件接口进行初始化的流程如下:首先,创建管理者对象;然后,管理者读取中间件配置文件,组装中间件配置对象;最后,中间件配置对象读取所有的安全设备配置文件,完成中间件接口初始化。其中中间件接口中的参数主要是输入和输出数据,不涉及算法信息。当安全设备的功能为签名运算、验证运算时,中间件接口的定义参考如下:其定义有各种功能函数接口,如初始化、释放、摘要、打开安全设备、关闭安全设备、签名、验证。其中签名、验证接口可看作是针对具有不同安全设备所定义的安全服务程序接口,因而,当安全设备功能不同时,还可以定义杂凑运算、非对称加解密运算、对称加解密运算等接口。中间件配置文件中存储的是复杂的算法信息,其中算法是每个安全设备出厂时即自带。一种安全设备对应多个算法配置文件,从而抽象出该设备的不同实例,设备A1、An等。不同实例的算法配置文件的格式相同,不同在于配置文件中配置不同的算法,如A1中签名运算配置的算法为RSA1024算法,An中签名运算配置的算法为RSA2048算法。不同设备实例配置指定的算法,通过新增配置文件来新增算法。算法相关的信息隐藏在配置文件中,不暴露在中间件接口中,可以同能满足粗粒度和细粒度的应用服务。这样,本方法既能满足扩展性要求又能保持对外接口的一致。针对设备A1,其算法配置文件A1的内容如下:设备An的算法配置文件An的内容如下:算法配置文件和设备实例的对应关系在系统配置文件中配置,系统配置文件如系统配置文件中Equipment元素对应一种设备实例,Config元素对应一种算法配置文件,Id元素的值传入对外接口函数C_OpenDevice中的nDeviceId参数。这样,就可以灵活选择需要使用的安全设备实例。算法配置文件和设备实例的对应关系在系统配置文件中配置,系统配置文件如下:步骤2、调用打开安全设备接口,返回安全设备基类对象句柄。该步骤中,打开安全设备接口的流程为:首先,管理者根据安全设备ID查找指定ID的安全设备配置文件;然后,查找成功后,管理者调用设备工厂创建指定设备对象,返回设备基类对象句柄。步骤3、调用安全设备的安全服务程序接口,得到安全服务程序的运算结果;该步骤中,安全服务程序接口的流程为:根据设备基类对象句柄指向的指定对象设备,调用指定对象设备的安全服务程序接口,得到安全服务程序的运算结果并返回给用户。例如,安全设备的安全功能是签名运算,则根据设备基类句柄指向的指定对象设备,调用指定对象设备的签名运算功能接口,得到签名值返回给用户。其他功能运算,如摘要、验证的接口流程也类似。步骤4、调用关闭安全设备接口,释放中间件接口,完成一次安全设备调用。该步骤中,关闭安全设备接口的流程为:管理者调用设备工厂删除指定句柄的安全设备对象。释放中间件接口的流程为:管理者删除管理相本文档来自技高网...
一种支持调用多种安全设备的处理方法

【技术保护点】
一种支持调用多种安全设备的处理方法,其特征在于,该方法包括以下步骤:(1)接收应用系统发送的调用初始化接口的命令,对中间件接口进行初始化;(2)调用打开安全设备接口,返回安全设备基类对象句柄;(3)调用安全设备的安全服务程序接口,得到安全服务程序的运算结果;(4)调用关闭安全设备接口,释放中间件接口。

【技术特征摘要】
1.一种支持调用多种安全设备的处理方法,其特征在于,该方法包括以下步骤:(1)接收应用系统发送的调用初始化接口的命令,对中间件接口进行初始化;(2)调用打开安全设备接口,返回安全设备基类对象句柄;(3)调用安全设备的安全服务程序接口,得到安全服务程序的运算结果;(4)调用关闭安全设备接口,释放中间件接口;步骤(1)中对中间件接口进行初始化的方法包括以下步骤:(11)创建管理者对象;(12)管理者读取中间件配置文件,组装中间件配置对象;(13)中间件配置对象读取所有的安全设备配置文件,完成中间件接口初始化。2.根据权利要求1所述的一种支持调用多种安全设备的处理方法,其特征在于,步骤(2)中所述打开安全设备接口的流程为:(21)管理者根据安全设备ID查找指定ID的安全设备配置文件;(22)查找成功后,管理者调用设备工厂创建指定设备对象,返回设备基类对象句柄。3.根据权利要求1所述的一种支持调用多种安全设备的处理方法...

【专利技术属性】
技术研发人员:林俊燕何智陈兴容侯建宁
申请(专利权)人:中国电子科技集团公司第三十研究所
类型:发明
国别省市:四川;51

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

1