本发明涉及设备虚拟,尤其涉及一种跨总线域的虚拟设备安全使用方法、系统、终端及介质。
背景技术:
1、pc i e设备虚拟通常是只在一个pc i e总线域下,虚拟机环境中模拟和管理物理pc i e设备的过程。虚拟化pc i e设备可以让虚拟机访问和使用这些设备,就像它们直接连接到虚拟机一样。
2、目前跨pc i e总线域(两个或多个主机系统)的pc i e设备,可以通过pc i e ntb(non-transparent br i dge)来互相暴露访问接口,比如中断、bars、执行dma。但是目前跨总线域的虚拟pc i e设备在使用时难以保证安全,尤其是被借用设备无法用于安全计算,造成数据泄露。
3、因此,现有技术还有待改进和提高。
技术实现思路
1、本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种跨总线域的虚拟设备安全使用方法、系统、终端及介质,本发明所采用的技术方案如下:
2、第一方面,本发明提供一种跨总线域的虚拟设备安全使用方法,其中,所述方法包括:
3、当控制桥上电后,进入初始化状态,并在完成初始化后,控制桥进入可用状态;
4、在接收到启动安全任务指令后,则控制桥进入认证状态,在所述认证状态下进行控制桥的身份认证,并获取通信密钥;
5、进入运行安全任务状态,基于所述通信密钥,控制桥对所有输出到设备出借方总线的数据进行加密以及对所有从设备出借方总线输入的数据进行解密。
6、在一种实现方式中,所述方法还包括:
7、在接收到启动非安全任务指令后,进入运行非安全任务状态;
8、在运行非安全任务状态下,控制桥停止使用任何安全功能。
9、在一种实现方式中,所述当控制桥上电后,进入初始化状态,并在完成初始化后,控制桥进入可用状态,包括:
10、完成可信启动,其中,所述可信启动包括:检查必要的参数,若存在固件或软件,则对固件和软件进行度量;
11、在可信启动成功后,建立启动标志,并确保连接的被虚拟设备正常复位;
12、连接桥从控制桥获取认证公钥,并在所述启动标志有效,且接收到初始化完成指令后,控制桥进入可用状态。
13、在一种实现方式中,所述在所述认证状态下进行控制桥的身份认证,并获取通信密钥,包括:
14、设备借用方通过连接桥采用远程认证方式或者身份鉴别方式完成对所述控制桥的身份认证;
15、设备借用方通过连接桥向所述控制桥请求安全状态报告;
16、控制桥接收到安全状态报告的请求后,锁定安全相关配置参数,并把锁定后的参数作为安全状态报告的一部分,使用认证私钥对所述安全状态报告进行签名后发送给设备借用方。
17、在一种实现方式中,所述在所述认证状态下进行控制桥的身份认证,并获取通信密钥,包括:
18、设备借用方接收到安全状态报告后,使用控制桥的认证公钥进行验签;
19、验签通过后,对所述安全状态报告进行评估,以确定所述控制桥是否处于安全的状态;
20、根据设备借用方的请求,获取通信密钥。
21、在一种实现方式中,所述根据设备借用方的请求,获取通信密钥,包括:
22、由设备借用方与控制桥共同协商通信密钥;
23、或者,
24、由设备借用方直接分发所述通信密钥,所述设备借用方使用所述控制桥的认证公钥对通信密钥进行加密。
25、在一种实现方式中,所述方法还包括:
26、在除所述初始化状态以外的任何状态下出现错误,则控制桥进入错误处理状态;
27、在所述错误处理状态下收集错误信息,并更新所述控制桥内的错误状态信息;
28、在完成错误状态信息的收集和更新后,控制桥回到初始化状态,
29、第二方面,本发明实施例还提供一种跨总线域的虚拟设备安全使用系统,其中,所述系统应用于上述技术方案中所述的跨总线域的虚拟设备安全使用方法,所述系统包括:设备借用方、设备出借方、连接桥和控制桥,所述设备借用方包括虚拟设备,所述设备出借方包括被虚拟设备,所述连接桥用于连接所述设备借用方和所述设备出借方分别对应的总线,所述控制桥用于连接所述被虚拟设备与所述设备出借方的总线,其中,所述控制桥包括:
30、初始化模块,用于当控制桥上电后,进入初始化状态,并在完成初始化后,控制桥进入可用状态;
31、身份认证模块,用于在接收到启动安全任务指令后,则控制桥进入认证状态,在所述认证状态下进行控制桥的身份认证,并获取通信密钥;
32、数据加解密模块,用于进入运行安全任务状态,基于所述通信密钥,控制桥对所有输出到设备出借方总线的数据进行加密以及对所有从设备出借方总线输入的数据进行解密。
33、第三方面,本发明实施例还提供一种终端,其中,所述终端包括存储器、处理器及存储在存储器中并可在处理器上运行的跨总线域的虚拟设备安全使用程序,处理器执行跨总线域的虚拟设备安全使用程序时,实现上述方案中任一项的跨总线域的虚拟设备安全使用方法的步骤。
34、第四方面,本发明实施例还提供一种计算机可读存储介质,其中,计算机可读存储介质上存储有跨总线域的虚拟设备安全使用程序,所述跨总线域的虚拟设备安全使用程序被处理器执行时,实现上述方案中任一项所述的跨总线域的虚拟设备安全使用方法的步骤。
35、有益效果:与现有技术相比,本发明提供了一种跨总线域的虚拟设备安全使用方法,本发明首先当控制桥上电后,进入初始化状态,并在完成初始化后,控制桥进入可用状态。然后,在接收到启动安全任务指令后,则控制桥进入认证状态,在所述认证状态下进行控制桥的身份认证,并获取通信密钥。进入运行安全任务状态,基于所述通信密钥,控制桥对所有输出到设备出借方总线的数据进行加密以及对所有从设备出借方总线输入的数据进行解密。本发明通过控制桥实现安全状态管理,使得被虚拟设备可以用于普通计算任务,也可以用于安全计算任务,保证计算任务的安全。
1.一种跨总线域的虚拟设备安全使用方法,其特征在于,所述方法包括:
2.根据权利要求1所述跨总线域的虚拟设备安全使用方法,其特征在于,所述方法还包括:
3.根据权利要求1所述跨总线域的虚拟设备安全使用方法,其特征在于,所述当控制桥上电后,进入初始化状态,并在完成初始化后,控制桥进入可用状态,包括:
4.根据权利要求1所述跨总线域的虚拟设备安全使用方法,其特征在于,所述在所述认证状态下进行控制桥的身份认证,并获取通信密钥,包括:
5.根据权利要求4所述跨总线域的虚拟设备安全使用方法,其特征在于,所述在所述认证状态下进行控制桥的身份认证,并获取通信密钥,包括:
6.根据权利要求5所述跨总线域的虚拟设备安全使用方法,其特征在于,所述根据设备借用方的请求,获取通信密钥,包括:
7.根据权利要求1所述跨总线域的虚拟设备安全使用方法,其特征在于,所述方法还包括:
8.一种跨总线域的虚拟设备安全使用系统,其特征在于,所述系统应用于上述权利要求1-7任一项所述的跨总线域的虚拟设备安全使用方法,所述系统包括:设备借用方、设备出借方、连接桥和控制桥,所述设备借用方包括虚拟设备,所述设备出借方包括被虚拟设备,所述连接桥用于连接所述设备借用方和所述设备出借方分别对应的总线,所述控制桥用于连接所述被虚拟设备与所述设备出借方的总线,其中,所述控制桥包括:
9.一种终端,其特征在于,所述终端包括存储器、处理器及存储在所述存储器中并可在所述处理器上运行的跨总线域的虚拟设备安全使用程序,所述处理器执行跨总线域的虚拟设备安全使用程序时,实现如权利要求1-7任一项所述的跨总线域的虚拟设备安全使用方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有跨总线域的虚拟设备安全使用程序,所述跨总线域的虚拟设备安全使用程序被处理器执行时,实现如权利要求1-7任一项所述的跨总线域的虚拟设备安全使用方法的步骤。