适用于Xen虚拟化环境下的专用数据加密方法及加密卡的制作方法

文档序号:9235662阅读:415来源:国知局
适用于Xen虚拟化环境下的专用数据加密方法及加密卡的制作方法
【技术领域】
[0001]本发明属于云计算技术领域,具体涉及一种适用于Xen虚拟化环境下的专用数据加密方法及加密卡。
【背景技术】
[0002]加密卡是为PC机提供加密服务的专用插卡式密码设备,通常通过应用程序接口API的方式为计算机应用系统提供各种安全保密服务,例如:数据加密、数字签名、信息完整性验证、身份认证和访问控制等,主要应用于电子政务、电子商务、电子金融等行业。通过在计算机与外部通信接口上安插特殊的加密卡,可以保证计算机输出的数据均经过加密卡的处理而难以被网络上的攻击者偷窃解读;同时,也只有安装了相应解密卡的计算机才可以正确收取被加密了的数据。也就是说,在物理环境中,通过各种加密设备可以保证数据的可靠性。
[0003]但是,目前在虚拟化环境下,一个加密卡硬件只能被唯--台虚拟机使用;具有加密卡硬件使用效率低的问题。

【发明内容】

[0004]针对现有技术存在的缺陷,本发明提供一种适用于Xen虚拟化环境下的专用数据加密方法及加密卡,多台虚拟机共享一个加密卡硬件,提高了加密卡硬件的使用效率;还具有数据安全性高的优点。
[0005]本发明采用的技术方案如下:
[0006]本发明提供一种适用于Xen虚拟化环境下的专用数据加密方法,包括以下步骤:
[0007]SI,根据配置规则,将所述数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;所述缓冲资源池的另一端唯一对应一组输入队列和输出队列;
[0008]S2,当指定虚拟机需要使用所述数据加密卡进行加密业务处理时,所述指定虚拟机将加密业务请求发送到与其唯一对应的指定缓冲资源池;
[0009]S3,所述指定缓冲资源池再将所述加密业务请求发送到与其唯一对应的指定输入队列;
[0010]S4,所述指定输入队列按时间先后顺序排列不同时间接收到的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;
[0011]S5,所述业务处理单元处理所述加密业务请求,得到加密业务响应;然后将所述加密业务响应发送到指定输出队列;
[0012]S6,所述指定输出队列按照先到先服务原则,将接收到的各加密业务响应依次返回给所述指定缓冲资源池,所述指定缓冲资源池再将该加密业务响应返回给所述指定虚拟机。
[0013]优选的,S2中,还包括:
[0014]当指定虚拟机需要使用所述数据加密卡时,首先判断所述指定虚拟机是否具有使用所述数据加密卡的权限,如果有,则执行后续步骤;否则,拒绝其使用所述数据加密卡。
[0015]优选的,S4之后,还包括:
[0016]当所述指定输入队列输出某一加密业务请求到所述业务处理单元之后,即从所述指定输入队列中删除该加密业务请求。
[0017]优选的,S6之后,还包括:
[0018]当所述指定输出队列输出某一加密业务响应到所述指定虚拟机之后,即从所述指定输出队列中删除该加密业务响应。
[0019]本发明还提供一种适用于Xen虚拟化环境下的专用数据加密卡,包括:权限管理单元、数据分配单元、队列加工单元和业务处理单元;
[0020]所述权限管理单元用于管理本数据加密卡所对应的各虚拟机账户的权限;
[0021]所述数据分配单元用于将数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;还用于在驱动层分别对各个所述缓冲资源池进行管理;
[0022]所述队列加工单元用于建立与每一个所述缓冲资源池唯一对应的一组输入队列和输出队列;所述输入队列用于按时间先后顺序排列不同时间接收到的来自与其唯一对应的缓冲资源池的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;所述输出队列用于按照先到先服务原则,将接收到的来自业务处理单元的加密业务响应依次返回给与其唯一对应的缓冲资源池;
[0023]所述业务处理单元用于对接收到的来自输入队列的加密业务请求进行处理,得到加密业务响应;然后将所述加密业务响应返回给所述输出队列。
[0024]本发明的有益效果如下:
[0025]本发明提供的适用于Xen虚拟化环境下的专用数据加密方法及加密卡,为每一台虚拟机配置唯一的由虚拟资源池和输入输出队列组成的访问通道,每一台虚拟机通过唯一的访问通道访问加密卡的业务处理单元,通过共享业务处理单元进行业务处理,既提高了加密卡硬件的使用效率;还具有数据安全性高的优点。
【附图说明】
[0026]图1为本发明提供的专用数据加密卡的结构示意图。
【具体实施方式】
[0027]以下结合附图对本发明进行详细说明:
[0028]如图1所示,本发明提供一种适用于Xen虚拟化环境下的专用数据加密方法,包括以下步骤:
[0029]SI,根据配置规则,将所述数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;所述缓冲资源池的另一端唯一对应一组输入队列和输出队列。
[0030]实际应用中,每一个数据加密卡可存储一张配置表,该配置表用于存储虚拟机ID、缓冲资源池ID和输入输出队列ID的唯一对应关系,因此,每当数据加密卡接收到来自某一虚拟机的业务处理请求时,可通过查询该配置表,快速获得该虚拟机能够使用的缓冲资源池和输入输出队列,从而使该虚拟机快速使用数据加密卡进行业务处理。
[0031]另外,配置表还可以同时存储虚拟机ID对数据加密卡的操作权限,例如:是否可以创建本数据加密卡对应的新虚拟机,是否可以删除本数据加密卡对应的虚拟机等。
[0032]S2,当指定虚拟机需要使用所述数据加密卡进行加密业务处理时,所述指定虚拟机将加密业务请求发送到与其唯一对应的指定缓冲资源池;
[0033]本步骤中,为提高数据加密卡使用的安全性,还可以包括对虚拟机权限进行验证的过程,即:当指定虚拟机需要使用数据加密卡时,数据加密卡首先判断所述指定虚拟机是否具有使用所述数据加密卡的权限,如果有,则执行后续步骤;否则,拒绝其使用所述数据加密卡。
[0034]S3,所述指定缓冲资源池再将所述加密业务请求发送到与其唯一对应的指定输入队列;
[0035]S4,所述指定输入队列按时间先后顺序排列不同时间接收到的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;当指定输入队列输出某一加密业务请求到业务处理单元之后,即从指定输入队列中删除该加密业务请求。
[0036]S5,所述业务处理单元处理所述加密业务请求,得到加密业务响应;然后将所述加密业务响应发送到指定输出队列;
[0037]S6,所述指定输出队列按照先到先服务原则,将接收到的各加密业务响应依次返回给所述指定缓冲资源池,所述指定缓冲资源池再将该加密业务响应返回给所述指定虚拟机。当所述指定输出队列输出某一加密业务响应到所述指定虚拟机之后,即从所述指定输出队列中删除该加密业务响应。
[0038]具体的,由于一个数据加密卡被若干台虚拟机共享,为合理调度各虚拟机使用业务处理单元进行业务处理的效率,数据加密卡可设置一定的调度策略,以下仅列举几个具体的调度策略:(I)优先级调度策略:即:预先配置各虚拟机的优先级别;数据加密卡配置输入队列监听模块,用于实时监听各个虚拟机输入队列的空闲状态,一旦监听到优先级高的虚拟机输入队列中存在业务处理请求时,则优先处理该优先级别高的输入队列存储的请求,直到处理完成后,再处理其他低优先级的业务处理请求。例
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1