一种KVM虚拟机通信方法技术

技术编号:13679755 阅读:73 留言:0更新日期:2016-09-08 07:30
本发明专利技术公开了一种KVM虚拟机通信方法,实现过程为:构建虚拟机交互模型,该虚拟机交互模型基于可信计算和KVM的共享内存建立;设置加密的专属安全可信信道和加密的内存伪地址,从而保障交互双方虚拟机的可信性和它们之外的其他虚拟机的隔离性,完成虚拟机的通信。该一种KVM虚拟机通信方法与现有技术相比,将可信计算与共享内存通信方法相结合应用到KVM虚拟机中,验证交互双方的可信性,从而建立可信信道;采用加密共享内存的伪地址而非单纯加密传输内容,相比传统的方法更具灵活性和可信性,从而有效防止入侵者通过攻击虚拟机而访问共享内存而导致的安全问题,实用性强,易于实现,易于推广。

【技术实现步骤摘要】

本专利技术涉及计算机通信
,具体地说是一种实用性强、KVM虚拟机通信方法
技术介绍
目前,一般的KVM虚拟机主要优化了虚拟机间的通信效率,而其应用的安全策略过于笼统,并未保障虚拟机的可信性。如图1所示,是目前流行的KVM虚拟机共享内存的架构模型。该架构结合virtio半虚拟化模型,从而有效提高了虚拟机的通信效率,然而该架构模式下的共享内存的实现并没有进行安全性保护,入侵者一旦入侵虚拟机,便可以假冒其他虚拟机操作共享内存或窃取及修改通信内容。随着云计算和虚拟化的发展,处于同一物理主机上的虚拟机间的通信安全问题越来越多,针对云计算安全中的KVM虚拟化安全问题,本专利提出一种基于共享内存和可信信道的KVM虚拟机通信方法,此专利将可信计算和共享内存机制融入KVM虚拟化,从而有效保障KVM虚拟机之间通信的可信性和安全性。
技术实现思路
本专利技术的技术任务是针对以上不足之处,提供一种实用性强、KVM虚拟机通信方法。一种KVM虚拟机通信方法,其具体实现过程为:构建虚拟机交互模型,该虚拟机交互模型基于可信计算和KVM的共享内存建立;设置加密的专属安全可信信道和加密的内存伪地址,从而保障交互双方虚拟机的可信性和它们之外的其他虚拟机的隔离性,完成虚拟机的通信。虚拟机交互模型中有两种虚拟机:Domain 0的虚拟机MVM和Domain U的虚拟机VM,MVM为一个可信虚拟机,为其他虚拟机VM提供VTPM功能,并通过VTPM管理器实现对VTPM的访问,每个MVM虚拟机中都部署一个包含秘钥管理模块、身份认证模块和动态度量机制的TCB模块,从而保障运行环境的可信性。在建立虚拟机时,MVM的秘钥管理模块为其生成公钥和私钥,并将私钥分配给虚拟机,公钥保存在秘钥管理模块中;虚拟机请求共享内存时,首先进行请求虚拟机的身份验证;验证通过后,密钥管理模块将加密后的内存信息从源虚拟机中发送给目标虚拟机,这里的目标虚拟机即为上述请求虚拟机;目标虚拟机接收到内存信息后进行解密,确定信息未被篡改后,完成通信。请求虚拟机的身份验证过程为:请求虚拟机将自己分配到的私钥和内存的伪地址进行数字签名,通过QEMU将签名后的伪地址、伪地址、目标虚拟机ID转发给MVM虚拟机的秘钥管理模块,秘钥管理模块根据源虚拟机ID查找其对应的公钥,并对签名后的伪地址进行解密,再与伪地址进行对比,若一致则请求未被篡改;然后再根据动态度量值参考表验证程序的度量值是否变化,若未变化说明请求可信,可以继续;完成上述两项对比后,即完成请求虚拟机的身份验证。发送加密信息给目标虚拟机的过程为:完成请求虚拟机的身份验证后,秘钥管理模块使用目的虚拟机ID对应的公钥对内存伪地址进行加密,并对内存中的内容进行加密,然后发加密内存内容、加密的内存伪地址、源虚拟机ID给目标虚拟机,从而保证信道的可信。目标虚拟机的解密过程为:目标虚拟机使用私钥解密加密的内存伪地址,获取伪地址,并读取内存中的内容,然后使用相同的散列算法计算加密内存内容看是否和收到的加密内存内容一致,若一致说明共享内存中的信息未被篡改,从而完成信息通信。本专利技术的一种KVM虚拟机通信方法,具有以下优点:该专利技术的一种KVM虚拟机通信方法将可信计算与共享内存通信方法相结合应用到KVM虚拟机中,验证交互双方的可信性,从而建立可信信道;采用加密共享内存的伪地址而非单纯加密传输内容,相比传统的方法更具灵活性和可信性,从而有效防止入侵者通过攻击虚拟机而访问共享内存而导致的安全问题,保证了虚拟机间通信交互过程中信息的安全性,具有通用性,实用性强,易于实现,易于推广。附图说明附图1为现有KVM虚拟机共享内存的架构图。附图2为本专利技术的虚拟机交互架构图。附图3为虚拟机间共享内存可信通道的建立过程图。具体实施方式下面结合附图及具体实施例对本专利技术作进一步说明。一种KVM虚拟机通信方法,以可信计算为基础,通过KVM的共享内存机制,采用加密的专属安全可信信道和加密的内存伪地址,从而保障交互双方虚拟机的可信性和它们之外的其他虚拟机的隔离性。其具体实现过程为:构建虚拟机交互模型,该虚拟机交互模型基于可信计算和KVM的共享内存建立;设置加密的专属安全可信信道和加密的内存伪地址,从而保障交互双方虚拟机的可信性和它们之外的其他虚拟机的隔离性,完成虚拟机的通信。在建立虚拟机时,MVM的秘钥管理模块为其生成公钥和私钥,并将私钥分配给虚拟机,公钥保存在秘钥管理模块中;虚拟机请求共享内存时,首先进行请求虚拟机的身份验证;验证通过后,密钥管理模块将加密后的内存信息从源虚拟机中发送给目标虚拟机,这里的目标虚拟机即为上述请求虚拟机;目标虚拟机接收到内存信息后进行解密,确定信息未被篡改后,完成通信。具体为:如附图2、图3所示,将图1的模型与将可信平台模块(TPM)相结合,构建出基于可信计算和共享内存的虚拟机交互模型。该模型中共有两种虚拟机:Domain 0的虚拟机MVM和Domain U的虚拟机VM,MVM为一个可信虚拟机,为其他VM提供VTPM功能,并通过VTPM管理器实现对VTPM的访问。每个虚拟机中都要部署一个包含秘钥管理、身份认证和动态度量机制的TCB模块,从而保障运行环境的可信性。虚拟机请求共享内存时,将自己分配到的私钥和内存的伪地址(LAdrress)进行数字签名,即SHA-1(LAdrress),通过QEMU将信息{ SHA-1(LAdrress),LAdrress ,目标虚拟机ID本文档来自技高网...

【技术保护点】
一种KVM虚拟机通信方法,其特征在于,实现过程为:构建虚拟机交互模型,该虚拟机交互模型基于可信计算和KVM的共享内存建立;设置加密的专属安全可信信道和加密的内存伪地址,从而保障交互双方虚拟机的可信性和它们之外的其他虚拟机的隔离性,完成虚拟机的通信。

【技术特征摘要】
1.一种KVM虚拟机通信方法,其特征在于,实现过程为:构建虚拟机交互模型,该虚拟机交互模型基于可信计算和KVM的共享内存建立;设置加密的专属安全可信信道和加密的内存伪地址,从而保障交互双方虚拟机的可信性和它们之外的其他虚拟机的隔离性,完成虚拟机的通信。2.根据权利要求1所述的一种KVM虚拟机通信方法,其特征在于,虚拟机交互模型中有两种虚拟机:Domain 0的虚拟机MVM和Domain U的虚拟机VM,MVM为一个可信虚拟机,为其他虚拟机VM提供VTPM功能,并通过VTPM管理器实现对VTPM的访问,每个MVM虚拟机中都部署一个包含秘钥管理模块、身份认证模块和动态度量机制的TCB模块,从而保障运行环境的可信性。3.根据权利要求2所述的一种KVM虚拟机通信方法,其特征在于,在建立虚拟机时,MVM的秘钥管理模块为其生成公钥和私钥,并将私钥分配给虚拟机,公钥保存在秘钥管理模块中;虚拟机请求共享内存时,首先进行请求虚拟机的身份验证;验证通过后,密钥管理模块将加密后的内存信息从源虚拟机中发送给目标虚拟机,这里的目标虚拟机即为上述请求虚拟机;目标虚拟机接收到内存信息后进行解密,确定信息未被篡改后,完成通信。4.根据权利要求3所述的...

【专利技术属性】
技术研发人员:杨晓娟
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:山东;37

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

1