CN104951688B - 适用于Xen虚拟化环境下的专用数据加密方法及加密卡 - Google Patents

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

Info

Publication number
CN104951688B
CN104951688B CN201410201062.9A CN201410201062A CN104951688B CN 104951688 B CN104951688 B CN 104951688B CN 201410201062 A CN201410201062 A CN 201410201062A CN 104951688 B CN104951688 B CN 104951688B
Authority
CN
China
Prior art keywords
virtual machine
request
input rank
encryption
processing unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201410201062.9A
Other languages
English (en)
Other versions
CN104951688A (zh
Inventor
彭义刚
石旭
鲁松
张良
姜杨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National Computer Network and Information Security Management Center
Original Assignee
National Computer Network and Information Security Management Center
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National Computer Network and Information Security Management Center filed Critical National Computer Network and Information Security Management Center
Priority to CN201410201062.9A priority Critical patent/CN104951688B/zh
Publication of CN104951688A publication Critical patent/CN104951688A/zh
Application granted granted Critical
Publication of CN104951688B publication Critical patent/CN104951688B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供一种适用于Xen虚拟化环境下的专用数据加密方法及加密卡,加密卡包括:权限管理单元、数据分配单元、队列加工单元和业务处理单元;数据分配单元用于将数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;队列加工单元用于建立与每一个缓冲资源池唯一对应的一组输入队列和输出队列;输入队列用于接收到的来自与其唯一对应的缓冲资源池的加密业务请求;然后将各加密业务请求依次发送到业务处理单元;输出队列用于将接收到的来自业务处理单元的加密业务响应依次返回给与其唯一对应的缓冲资源池。多台虚拟机共享一个加密卡硬件,提高了加密卡硬件的使用效率;还具有数据安全性高的优点。

Description

适用于Xen虚拟化环境下的专用数据加密方法及加密卡
技术领域
本发明属于云计算技术领域,具体涉及一种适用于Xen虚拟化环境下的专用数据加密方法及加密卡。
背景技术
加密卡是为PC机提供加密服务的专用插卡式密码设备,通常通过应用程序接口API的方式为计算机应用系统提供各种安全保密服务,例如:数据加密、数字签名、信息完整性验证、身份认证和访问控制等,主要应用于电子政务、电子商务、电子金融等行业。通过在计算机与外部通信接口上安插特殊的加密卡,可以保证计算机输出的数据均经过加密卡的处理而难以被网络上的攻击者偷窃解读;同时,也只有安装了相应解密卡的计算机才可以正确收取被加密了的数据。也就是说,在物理环境中,通过各种加密设备可以保证数据的可靠性。
但是,目前在虚拟化环境下,一个加密卡硬件只能被唯一一台虚拟机使用;具有加密卡硬件使用效率低的问题。
发明内容
针对现有技术存在的缺陷,本发明提供一种适用于Xen虚拟化环境下的专用数据加密方法及加密卡,多台虚拟机共享一个加密卡硬件,提高了加密卡硬件的使用效率;还具有数据安全性高的优点。
本发明采用的技术方案如下:
本发明提供一种适用于Xen虚拟化环境下的专用数据加密方法,包括以下步骤:
S1,根据配置规则,将所述数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;所述缓冲资源池的另一端唯一对应一组输入队列和输出队列;
S2,当指定虚拟机需要使用所述数据加密卡进行加密业务处理时,所述指定虚拟机将加密业务请求发送到与其唯一对应的指定缓冲资源池;
S3,所述指定缓冲资源池再将所述加密业务请求发送到与其唯一对应的指定输入队列;
S4,所述指定输入队列按时间先后顺序排列不同时间接收到的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;
S5,所述业务处理单元处理所述加密业务请求,得到加密业务响应;然后将所述加密业务响应发送到指定输出队列;
S6,所述指定输出队列按照先到先服务原则,将接收到的各加密业务响应依次返回给所述指定缓冲资源池,所述指定缓冲资源池再将该加密业务响应返回给所述指定虚拟机。
优选的,S2中,还包括:
当指定虚拟机需要使用所述数据加密卡时,首先判断所述指定虚拟机是否具有使用所述数据加密卡的权限,如果有,则执行后续步骤;否则,拒绝其使用所述数据加密卡。
优选的,S4之后,还包括:
当所述指定输入队列输出某一加密业务请求到所述业务处理单元之后,即从所述指定输入队列中删除该加密业务请求。
优选的,S6之后,还包括:
当所述指定输出队列输出某一加密业务响应到所述指定虚拟机之后,即从所述指定输出队列中删除该加密业务响应。
本发明还提供一种适用于Xen虚拟化环境下的专用数据加密卡,包括:权限管理单元、数据分配单元、队列加工单元和业务处理单元;
所述权限管理单元用于管理本数据加密卡所对应的各虚拟机账户的权限;
所述数据分配单元用于将数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;还用于在驱动层分别对各个所述缓冲资源池进行管理;
所述队列加工单元用于建立与每一个所述缓冲资源池唯一对应的一组输入队列和输出队列;所述输入队列用于按时间先后顺序排列不同时间接收到的来自与其唯一对应的缓冲资源池的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;所述输出队列用于按照先到先服务原则,将接收到的来自业务处理单元的加密业务响应依次返回给与其唯一对应的缓冲资源池;
所述业务处理单元用于对接收到的来自输入队列的加密业务请求进行处理,得到加密业务响应;然后将所述加密业务响应返回给所述输出队列。
本发明的有益效果如下:
本发明提供的适用于Xen虚拟化环境下的专用数据加密方法及加密卡,为每一台虚拟机配置唯一的由虚拟资源池和输入输出队列组成的访问通道,每一台虚拟机通过唯一的访问通道访问加密卡的业务处理单元,通过共享业务处理单元进行业务处理,既提高了加密卡硬件的使用效率;还具有数据安全性高的优点。
附图说明
图1为本发明提供的专用数据加密卡的结构示意图。
具体实施方式
以下结合附图对本发明进行详细说明:
如图1所示,本发明提供一种适用于Xen虚拟化环境下的专用数据加密方法,包括以下步骤:
S1,根据配置规则,将所述数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;所述缓冲资源池的另一端唯一对应一组输入队列和输出队列。
实际应用中,每一个数据加密卡可存储一张配置表,该配置表用于存储虚拟机ID、缓冲资源池ID和输入输出队列ID的唯一对应关系,因此,每当数据加密卡接收到来自某一虚拟机的业务处理请求时,可通过查询该配置表,快速获得该虚拟机能够使用的缓冲资源池和输入输出队列,从而使该虚拟机快速使用数据加密卡进行业务处理。
另外,配置表还可以同时存储虚拟机ID对数据加密卡的操作权限,例如:是否可以创建本数据加密卡对应的新虚拟机,是否可以删除本数据加密卡对应的虚拟机等。
S2,当指定虚拟机需要使用所述数据加密卡进行加密业务处理时,所述指定虚拟机将加密业务请求发送到与其唯一对应的指定缓冲资源池;
本步骤中,为提高数据加密卡使用的安全性,还可以包括对虚拟机权限进行验证的过程,即:当指定虚拟机需要使用数据加密卡时,数据加密卡首先判断所述指定虚拟机是否具有使用所述数据加密卡的权限,如果有,则执行后续步骤;否则,拒绝其使用所述数据加密卡。
S3,所述指定缓冲资源池再将所述加密业务请求发送到与其唯一对应的指定输入队列;
S4,所述指定输入队列按时间先后顺序排列不同时间接收到的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;当指定输入队列输出某一加密业务请求到业务处理单元之后,即从指定输入队列中删除该加密业务请求。
S5,所述业务处理单元处理所述加密业务请求,得到加密业务响应;然后将所述加密业务响应发送到指定输出队列;
S6,所述指定输出队列按照先到先服务原则,将接收到的各加密业务响应依次返回给所述指定缓冲资源池,所述指定缓冲资源池再将该加密业务响应返回给所述指定虚拟机。当所述指定输出队列输出某一加密业务响应到所述指定虚拟机之后,即从所述指定输出队列中删除该加密业务响应。
具体的,由于一个数据加密卡被若干台虚拟机共享,为合理调度各虚拟机使用业务处理单元进行业务处理的效率,数据加密卡可设置一定的调度策略,以下仅列举几个具体的调度策略:(1)优先级调度策略:即:预先配置各虚拟机的优先级别;数据加密卡配置输入队列监听模块,用于实时监听各个虚拟机输入队列的空闲状态,一旦监听到优先级高的虚拟机输入队列中存在业务处理请求时,则优先处理该优先级别高的输入队列存储的请求,直到处理完成后,再处理其他低优先级的业务处理请求。例如:配置以下优先级别顺序:虚拟机1>虚拟机2>虚拟机3;若某一时刻,监听到虚拟机1和虚拟机2输入队列为空,而虚拟机3输入队列中存在处理请求,则业务处理单元处理虚拟机3输入队列的处理请求;一旦某一时刻监听到虚拟机1输入队列中存在处理请求时,则业务处理单元将当前正在处理的请求处理完毕后,立刻按顺序执行虚拟机1输入队列的请求,直到将虚拟机1输入队列所有请求均处理完毕后,再执行其他虚拟机输入队列中的请求。(2)轮询调度策略:即:数据加密卡配置输入队列监听模块,用于实时监听各个虚拟机输入队列的空闲状态,然后按顺序循环执行各虚拟机输入队列的请求。例如:如果某一时刻监听到虚拟机1输入队列按时间先后顺序存在AB两条请求;虚拟机2输入队列按时间先后顺序存在CDE三条请求;虚拟机3输入队列为空。则首先处理A请求,然后处理C请求;然后再处理B请求,然后再处理D请求,最后处理E请求。
本发明还提供一种适用于Xen虚拟化环境下的专用数据加密卡,包括:权限管理单元、数据分配单元、队列加工单元和业务处理单元。
(一)权限管理单元
权限管理单元用于管理本数据加密卡所对应的各虚拟机账户的权限。在数据加密卡使用过程中,当其通过PCI/PCIE接口与主机端连接时,可以在主机端使用特定的管理工具软件,对权限管理单元进行配置,例如:配置与本数据加密卡对应的各虚拟机的用户名和密码等。若在某一次数据加密卡使用过程中,没有对其进行配置,则数据加密卡工作于默认的初始状态或最近一次的配置状态。
通过权限管理单元,控制只有授权的虚拟机可以访问数据加密卡,提高了数据加密卡使用的安全性。
(二)数据分配单元
数据分配单元用于将数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;还用于在驱动层分别对各个所述缓冲资源池进行管理。
如图1所示,一个数据加密卡硬件对应三个独立的缓冲资源池,分别为缓冲资源池1、缓冲资源池2和缓冲资源池3;并且,缓冲资源池1唯一对应虚拟机1,缓冲资源池2唯一对应虚拟机2,缓冲资源池3唯一对应虚拟机3。
(三)队列加工单元
所述队列加工单元用于建立与每一个所述缓冲资源池唯一对应的一组输入队列和输出队列;所述输入队列用于按时间先后顺序排列不同时间接收到的来自与其唯一对应的缓冲资源池的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;所述输出队列用于按照先到先服务原则,将接收到的来自业务处理单元的加密业务响应依次返回给与其唯一对应的缓冲资源池。
仍以图1为例,缓冲资源池1唯一对应输入队列IP1和输出队列OP1;缓冲资源池2唯一对应输入队列IP2和输出队列OP2;缓冲资源池3唯一对应输入队列IP3和输出队列OP3。
(四)业务处理单元
所述业务处理单元用于对接收到的来自输入队列的加密业务请求进行处理,得到加密业务响应;然后将所述加密业务响应返回给所述输出队列。
综上所述,本发明提供的适用于Xen虚拟化环境下的专用数据加密方法及加密卡,为每一台虚拟机配置唯一的由虚拟资源池和输入输出队列组成的访问通道,每一台虚拟机通过唯一的访问通道访问加密卡的业务处理单元,通过共享业务处理单元进行业务处理,既提高了加密卡硬件的使用效率;还具有数据安全性高的优点。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。

Claims (2)

1.一种适用于Xen虚拟化环境下的专用数据加密方法,其特征在于,包括以下步骤:
S1,根据配置规则,将所述数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;所述缓冲资源池的另一端唯一对应一组输入队列和输出队列;
S2,当指定虚拟机需要使用所述数据加密卡进行加密业务处理时,所述指定虚拟机将加密业务请求发送到与其唯一对应的指定缓冲资源池;
S3,所述指定缓冲资源池再将所述加密业务请求发送到与其唯一对应的指定输入队列;
S4,所述指定输入队列按时间先后顺序排列不同时间接收到的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;
S5,所述业务处理单元处理所述加密业务请求,得到加密业务响应;然后将所述加密业务响应发送到指定输出队列;
S6,所述指定输出队列按照先到先服务原则,将接收到的各加密业务响应依次返回给所述指定缓冲资源池,所述指定缓冲资源池再将该加密业务响应返回给所述指定虚拟机;
其中,S2中,还包括:
当指定虚拟机需要使用所述数据加密卡时,首先判断所述指定虚拟机是否具有使用所述数据加密卡的权限,如果有,则执行后续步骤;否则,拒绝其使用所述数据加密卡;
S6之后,还包括:
当所述指定输出队列输出某一加密业务响应到所述指定虚拟机之后,即从所述指定输出队列中删除该加密业务响应;
基于适用于Xen虚拟化环境下的专用数据加密方法的适用于Xen虚拟化环境下的专用数据加密卡,包括:权限管理单元、数据分配单元、队列加工单元和业务处理单元;
所述权限管理单元用于管理本数据加密卡所对应的各虚拟机账户的权限;
所述数据分配单元用于将数据加密卡的硬件映射为多个独立的缓冲资源池,并且,每一个缓冲资源池的一端唯一对应一个虚拟机;还用于在驱动层分别对各个所述缓冲资源池进行管理;
所述队列加工单元用于建立与每一个所述缓冲资源池唯一对应的一组输入队列和输出队列;所述输入队列用于按时间先后顺序排列不同时间接收到的来自与其唯一对应的缓冲资源池的加密业务请求;然后按照先到先服务原则,将各加密业务请求依次发送到所述数据加密卡的业务处理单元;所述输出队列用于按照先到先服务原则,将接收到的来自业务处理单元的加密业务响应依次返回给与其唯一对应的缓冲资源池;
所述业务处理单元用于对接收到的来自输入队列的加密业务请求进行处理,得到加密业务响应;然后将所述加密业务响应返回给所述输出队列;
由于一个数据加密卡被若干台虚拟机共享,为合理调度各虚拟机使用业务处理单元进行业务处理的效率,数据加密卡设置调度策略,包括:(1)优先级调度策略:即:预先配置各虚拟机的优先级别;数据加密卡配置输入队列监听模块,用于实时监听各个虚拟机输入队列的空闲状态,一旦监听到优先级高的虚拟机输入队列中存在业务处理请求时,则优先处理该优先级别高的输入队列存储的请求,直到处理完成后,再处理其他低优先级的业务处理请求;当配置以下优先级别顺序:虚拟机1>虚拟机2>虚拟机3;若某一时刻,监听到虚拟机1和虚拟机2输入队列为空,而虚拟机3输入队列中存在处理请求,则业务处理单元处理虚拟机3输入队列的处理请求;一旦某一时刻监听到虚拟机1输入队列中存在处理请求时,则业务处理单元将当前正在处理的请求处理完毕后,立刻按顺序执行虚拟机1输入队列的请求,直到将虚拟机1输入队列所有请求均处理完毕后,再执行其他虚拟机输入队列中的请求;(2)轮询调度策略:即:数据加密卡配置输入队列监听模块,用于实时监听各个虚拟机输入队列的空闲状态,然后按顺序循环执行各虚拟机输入队列的请求;如果某一时刻监听到虚拟机1输入队列按时间先后顺序存在AB两条请求;虚拟机2输入队列按时间先后顺序存在CDE三条请求;虚拟机3输入队列为空;则首先处理A请求,然后处理C请求;然后再处理B请求,然后再处理D请求,最后处理E请求。
2.根据权利要求1所述的适用于Xen虚拟化环境下的专用数据加密方法,其特征在于,S4之后,还包括:
当所述指定输入队列输出某一加密业务请求到所述业务处理单元之后,即从所述指定输入队列中删除该加密业务请求。
CN201410201062.9A 2014-03-24 2014-05-13 适用于Xen虚拟化环境下的专用数据加密方法及加密卡 Expired - Fee Related CN104951688B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410201062.9A CN104951688B (zh) 2014-03-24 2014-05-13 适用于Xen虚拟化环境下的专用数据加密方法及加密卡

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2014101097714 2014-03-24
CN201410109771 2014-03-24
CN201410201062.9A CN104951688B (zh) 2014-03-24 2014-05-13 适用于Xen虚拟化环境下的专用数据加密方法及加密卡

Publications (2)

Publication Number Publication Date
CN104951688A CN104951688A (zh) 2015-09-30
CN104951688B true CN104951688B (zh) 2019-04-12

Family

ID=54166341

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410201062.9A Expired - Fee Related CN104951688B (zh) 2014-03-24 2014-05-13 适用于Xen虚拟化环境下的专用数据加密方法及加密卡

Country Status (1)

Country Link
CN (1) CN104951688B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106921607B (zh) * 2015-12-24 2020-06-26 航天信息股份有限公司 一种密码服务器集群下的密码运算管理方法及系统
CN106874065A (zh) * 2017-01-18 2017-06-20 北京三未信安科技发展有限公司 一种支持硬件虚拟化的系统
CN108718316B (zh) * 2018-06-11 2020-11-24 山东超越数控电子股份有限公司 一种虚拟机密码信息安全迁移的实现方法及系统
CN108830094A (zh) * 2018-06-19 2018-11-16 北京元心科技有限公司 基于对加密卡识别的操作处理方法、装置及电子设备
CN112130981A (zh) * 2020-09-28 2020-12-25 天地伟业技术有限公司 一种提升soc内部硬件处理单元使用效率的方法
CN112035866B (zh) * 2020-11-04 2021-07-23 湖北芯擎科技有限公司 一种数据加密方法、装置、设备和计算机可读存储介质
CN116841691A (zh) * 2023-06-15 2023-10-03 海光信息技术股份有限公司 加密硬件的配置方法、数据机密计算方法及相关设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102270153A (zh) * 2011-08-12 2011-12-07 曙光信息产业(北京)有限公司 一种虚拟环境下加密卡共享的方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102270153A (zh) * 2011-08-12 2011-12-07 曙光信息产业(北京)有限公司 一种虚拟环境下加密卡共享的方法和装置

Also Published As

Publication number Publication date
CN104951688A (zh) 2015-09-30

Similar Documents

Publication Publication Date Title
CN104951688B (zh) 适用于Xen虚拟化环境下的专用数据加密方法及加密卡
CN104951712B (zh) 一种Xen虚拟化环境下的数据安全防护方法
US9626497B2 (en) Sharing USB key by multiple virtual machines located at different hosts
US10547595B2 (en) Restricting guest instances in a shared environment
US8156503B2 (en) System, method and computer program product for accessing a memory space allocated to a virtual machine
US9948616B2 (en) Apparatus and method for providing security service based on virtualization
US10956596B2 (en) System and method for automatically securing sensitive data in public cloud using a serverless architecture
US8935756B2 (en) Providing multiple authentications to authenticate users with respect to a system and file systems offered through the system
US20150169894A1 (en) Network encrypted data object stored on an encrypted file system
CN109104275A (zh) 一种hsm设备
CN109344664A (zh) 一种基于fpga对数据进行算法处理的密码卡及其加密方法
CN102270153A (zh) 一种虚拟环境下加密卡共享的方法和装置
WO2019062066A1 (zh) 终端设备联机任务执行方法、服务器及可读存储介质
CN116418522A (zh) 一种基于虚拟化技术的云服务器密码机系统
EP3553689B1 (en) System and method for automatically securing sensitive data in public cloud using a serverless architecture
CN103281365A (zh) 分布式虚拟化架构
CN114707134A (zh) 一种高性能密码卡安全管理方法、装置和系统
CN106850641A (zh) 一种基于云计算安全管理平台的信息传输控制方法和系统
CN110769027A (zh) 服务请求处理方法、装置、计算机设备及存储介质
US9442808B1 (en) Session tickets for a backup and recovery system
CN115021980B (zh) 快速登录方法、装置、电子设备及存储介质
CN116166429B (zh) 多安全芯片的通道属性确定方法及安全芯片装置
EP4216094A1 (en) System and method for automatically securing sensitive data in public cloud using a serverless architecture
TW201317828A (zh) 雲端競爭隔離系統

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20190412

Termination date: 20200513