CN102073821A - 基于xen平台的虚拟安全通信隧道的建立方法 - Google Patents

基于xen平台的虚拟安全通信隧道的建立方法 Download PDF

Info

Publication number
CN102073821A
CN102073821A CN201110029267XA CN201110029267A CN102073821A CN 102073821 A CN102073821 A CN 102073821A CN 201110029267X A CN201110029267X A CN 201110029267XA CN 201110029267 A CN201110029267 A CN 201110029267A CN 102073821 A CN102073821 A CN 102073821A
Authority
CN
China
Prior art keywords
virtual machine
vmm
information
request
virtual
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.)
Granted
Application number
CN201110029267XA
Other languages
English (en)
Other versions
CN102073821B (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.)
Beijing University of Technology
Original Assignee
Beijing University of Technology
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 Beijing University of Technology filed Critical Beijing University of Technology
Priority to CN201110029267XA priority Critical patent/CN102073821B/zh
Publication of CN102073821A publication Critical patent/CN102073821A/zh
Application granted granted Critical
Publication of CN102073821B publication Critical patent/CN102073821B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

基于XEN平台的虚拟安全通信隧道的建立方法,旨在保证虚拟机之间信息传输的安全性,属于信息安全领域。它通过XEN平台固有的内存共享机制,由VMM(虚拟机监视器,在XEN平台下称为XEN Hypervisor,下同)负责建立虚拟通信隧道,并对共享内存的地址进行加密,使隧道的入口对除通信双方和VMM之外的其他对象不可见。与传统的通信安全保护手段相比,本方法避免了对传输信息的全文进行加密,节约了性能,并同样可达到保护信道安全的目的。同时由于内存共享为单向的一次性的通信方式,加入数字签名进行身份验证以及报文散列进行完整性鉴别可以更加全面地保护通信的安全。

Description

基于XEN平台的虚拟安全通信隧道的建立方法
技术领域:
本发明旨在保证虚拟机之间信息传输的安全性,属于信息安全领域。
背景技术:
XEN是由英国剑桥大学开发的开源虚拟机平台,它的特点是提供了一种被称为半虚拟化(para-virtualize)的虚拟化方式。在这种虚拟化方式的实现方式中,需要修改虚拟机操作系统的源代码,使其通过VMM提供的接口调用硬件资源,而非如传统的虚拟化方式一样需要提供虚拟硬件,这样就大大的提高了虚拟机运行的效率。
目前为减少性能浪费,分布式系统部署于虚拟化平台,各组成模块分别部署于不同的虚拟机上已经成为一种常用的手段。为实现系统的整体功能通常需要各个模块之间紧密协作,这就要求各个虚拟机之间可以安全有效地传输信息。
XEN虚拟化平台为半虚拟化虚拟机之间的通信提供了一种高效的手段,即XEN的内存共享机制。XEN的内存共享机制是以内存页面为单位实现的,实现方式包括页面映射和页面传递。其中,页面映射方法指通过虚拟地址映射的手段,使得目的虚拟机可以按照规定的权限使用源虚拟机中的一块内存,在使用结束后,源虚拟机将收回目的虚拟机对该块内存空间的使用权限;而页面传递方式则是将该块内存空间完全交由目的虚拟机使用,操作结束后并不收回。即页面映射方式仅出让内存的使用权,而页面传递则是将内存空间的所有权移交给目的虚拟机。XEN的内存共享机制由于仅对内存的伪地址进行映射操作,其性能远远高于利用传统的虚拟网络设备进行通信。
XEN内存共享机制是通过授权表(Grant Table)和授权项(Grant Entry)来进行实现的。授权表中有若干授权项,每一个授权项代表一个内存共享操作,其中包含了操作的源虚拟机、目的虚拟机、共享内存的地址、对共享内存的访问规则等等信息。VMM通过查询授权表中的授权项来确认操作是否存在,并且根据授权项中的内容执行内存共享操作。
但是,XEN内存共享操作过程中的安全没有受到保护,如果某虚拟机系统被入侵,入侵者可以假冒其他虚拟机请求内存共享操作,或窃取、篡改通信的内容。发明人提出并实现了一种基于现有XEN内存共享机制的安全通信隧道的建立方法。通过使用加密和散列等手段,保证信息在XEN虚拟机之间传输的真实性、机密性和完整性。
发明内容:
本发明的目的为对XEN虚拟机之间使用内存共享方式进行通信的机制进行安全加固,保证域间通信过程的安全,即基于XEN平台的虚拟安全通信隧道的建立方法。
本方法具体步骤如下:
首先,在VMM中加入密钥管理模块,采用非对称密钥算法,负责生成和保存、管理密钥。在每一个虚拟机启动时,密钥管理模块将为虚拟机生成公钥和私钥,并将私钥分配给虚拟机,将公钥保存在VMM中。
任何一个虚拟机在请求内存共享操作时,必须使用自身的私钥对需要共享的内存的伪地址进行数字签名,并将签名传递给VMM。同时传入的信息包括源虚拟机的ID,目标虚拟机的ID,和未经签名的共享内存地址。VMM在收到请求信息后,根据收到的源虚拟机ID查找对应虚拟机的公钥,并对数字签名进行解密,将解密后的内容与收到的内存地址进行比对,以确认请求来源的正确性。如果证明请求的来源确实是请求中声称的虚拟机,则信息的真实性得到保证,操作可以继续进行,否则,将视为非法操作而取消。
在完成请求来源的身份验证后,VMM将使用目标虚拟机的公钥,对共享内存地址进行加密,并对共享内存中的内容进行散列,之后通知目标虚拟机,并在通知中包含加密过的共享内存地址和共享内存中内容的散列值。这样既可保证除目标虚拟机之外,没有其他的虚拟机可以得到共享内存的地址以及其中的信息。这样,就建立了一条在请求通信的虚拟机双方之间的虚拟隧道。
目标虚拟机在收到VMM的通知之后,使用自身的私钥对收到的加密过的内存地址进行解密,并依照解密操作得到的明文地址获取共享内存中的内容,并使用相同的散列算法对其中的内容进行散列,将得到的散列值与VMM的通知中的散列值比对,进行信息完整性的鉴别。如果完整性鉴别通过,则说明共享内存中的内容没有被篡改过,可以使用。否则,认为信息受到破坏,操作终止。
本发明的特点是将XEN的内存共享机制更改为经过加密的专属隧道通信方式,由第三方(VMM)验证通信双方身份的真实性和可靠性,搭建通信隧道,并将通信信道与除通信双方之外的其他虚拟机隔离开来,保证通信过程中信息的安全。同时,加密操作的对象为共享内存的伪地址,即对通信隧道的入口进行保护,而非如传统手段对传输的信息进行加密。
附图说明:
图1是本发明实现基于XEN的虚拟安全通信隧道的方法架构图。
图2是本发明方法的工作流程图。
具体实施方式:
下面结合附图2具体介绍本发明的实现方法和步骤:
如附图2所示,本发明是一种基于XEN虚拟机平台建立虚拟机之间安全的通信隧道的方法。
①首先,在VMM中加入密钥管理模块,采用非对称密钥算法,负责生成和保存、管理密钥。在每一个虚拟机启动时,密钥管理模块将为虚拟机生成公钥和私钥,并将私钥分配给虚拟机,将公钥保存在VMM中。
②任何一个虚拟机在请求内存共享操作时,必须使用自身的私钥对需要共享的内存的伪地址进行数字签名,并将签名传递给VMM。同时传入的信息包括源虚拟机的ID,目标虚拟机的ID,和未经签名的共享内存地址。VMM在收到请求信息后,根据收到的源虚拟机ID查找对应虚拟机的公钥,并对数字签名进行解密,将解密后的内容与收到的内存地址进行比对,以确认请求来源的正确性。如果证明请求的来源确实是请求中声称的虚拟机,则信息的真实性得到保证,操作可以继续进行,否则,将视为非法操作而取消。
③在完成请求来源的身份验证后,VMM将使用目标虚拟机的公钥,对共享内存地址进行加密,并对共享内存中的内容进行散列,之后通知目标虚拟机,并在通知中包含加密过的共享内存地址和共享内存中内容的散列值。这样既可保证除目标虚拟机之外,没有其他的虚拟机可以得到共享内存的地址以及其中的信息。这样,就建立了一条在请求通信的虚拟机双方之间的虚拟隧道。
④目标虚拟机在收到VMM的通知之后,使用自身的私钥对收到的加密过的内存地址进行解密,并依照解密操作得到的明文地址获取共享内存中的内容,并使用相同的散列算法对其中的内容进行散列,将得到的散列值与VMM的通知中的散列值比对,进行信息完整性的鉴别。如果完整性鉴别通过,则说明共享内存中的内容没有被篡改过,可以使用。否则,认为信息受到破坏,操作终止。

Claims (1)

1.基于XEN平台的虚拟安全通信隧道的建立方法,其特征在于步骤如下:
首先虚拟机监视器VMM中嵌入密钥管理模块,使用不对称加密算法,负责生成、管理密钥,实现加密算法逻辑,并预留接口进行加密操作;虚拟机监视器以下简称为VMM;在每一个虚拟机实例启动时,密钥管理模块将为该虚拟机实例生成一个密钥对,并将私钥颁发给该虚拟机实例,同时将公钥保存于VMM中;
当虚拟机之间互相请求内存共享时,VMM将要求通信发起方对请求内包含的为内存地址进行数字签名,当请求到达VMM时,由VMM对请求中的签名进行身份验证,即使用请求中声称的请求来源虚拟机的公钥对签名进行解密,并与请求中的伪内存地址进行比对,籍此完成对请求来源真实性的鉴别;
VMM在对请求来源的真实性验证完成之后,根据请求中包含的信息,使用请求目标虚拟机的公钥对需要共享的内存的地址进行加密,并通知请求的目标虚拟域,籍此保证信息在传输过程中的机密性;并使用散列算法对通信内容进行散列,在通知中内容中加入该散列值;
目标虚拟机在接收到VMM的通知后,读取发起请求的虚拟机发来的信息,并使用相同的散列算法对该信息进行散列,取散列值与通知信息中包含的散列值进行比对,籍此对接受到的信息的完整性进行鉴别;通过完整性鉴别的信息才视为安全信息,目标虚拟使用该信息。
CN201110029267XA 2011-01-27 2011-01-27 基于xen平台的虚拟安全通信隧道的建立方法 Expired - Fee Related CN102073821B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110029267XA CN102073821B (zh) 2011-01-27 2011-01-27 基于xen平台的虚拟安全通信隧道的建立方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110029267XA CN102073821B (zh) 2011-01-27 2011-01-27 基于xen平台的虚拟安全通信隧道的建立方法

Publications (2)

Publication Number Publication Date
CN102073821A true CN102073821A (zh) 2011-05-25
CN102073821B CN102073821B (zh) 2012-10-31

Family

ID=44032357

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110029267XA Expired - Fee Related CN102073821B (zh) 2011-01-27 2011-01-27 基于xen平台的虚拟安全通信隧道的建立方法

Country Status (1)

Country Link
CN (1) CN102073821B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103067270A (zh) * 2013-01-08 2013-04-24 杭州华三通信技术有限公司 一种虚拟机互访安全控制方法及装置
CN103297229A (zh) * 2012-02-24 2013-09-11 鸿富锦精密工业(深圳)有限公司 虚拟机安全操作系统及方法
CN104850451A (zh) * 2015-05-15 2015-08-19 北京北信源软件股份有限公司 一种实现虚拟机与管理域进程间通信的方法
CN105471657A (zh) * 2015-12-11 2016-04-06 航天恒星科技有限公司 一种虚拟机域间通信日志管理方法、装置及系统
CN105933123A (zh) * 2016-04-26 2016-09-07 浪潮电子信息产业股份有限公司 一种kvm虚拟机通信方法
CN106445642A (zh) * 2016-10-27 2017-02-22 广东铂亚信息技术有限公司 一种基于虚拟机监视器的安全通信方法与系统
CN107544918A (zh) * 2017-08-17 2018-01-05 致象尔微电子科技(上海)有限公司 一种内存页共享方法
CN108804203A (zh) * 2018-06-15 2018-11-13 四川大学 基于标签的vTPM私密信息保护方法
CN111813584A (zh) * 2020-08-05 2020-10-23 Oppo广东移动通信有限公司 内存共享方法、装置、电子设备及存储介质
CN114244515A (zh) * 2022-02-25 2022-03-25 中瓴智行(成都)科技有限公司 基于Hypervisor的虚拟机通信方法、装置、可读存储介质及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101097526A (zh) * 2006-06-29 2008-01-02 联想(北京)有限公司 一种虚拟机系统及硬件设备的访问控制方法
US20090125974A1 (en) * 2007-11-13 2009-05-14 Samsung Electronics Co., Ltd Method and system for enforcing trusted computing policies in a hypervisor security module architecture
CN101587524A (zh) * 2009-06-23 2009-11-25 上海北大方正科技电脑系统有限公司 一种基于虚拟系统的数据存储设备加密方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101097526A (zh) * 2006-06-29 2008-01-02 联想(北京)有限公司 一种虚拟机系统及硬件设备的访问控制方法
US20090125974A1 (en) * 2007-11-13 2009-05-14 Samsung Electronics Co., Ltd Method and system for enforcing trusted computing policies in a hypervisor security module architecture
CN101587524A (zh) * 2009-06-23 2009-11-25 上海北大方正科技电脑系统有限公司 一种基于虚拟系统的数据存储设备加密方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
《计算机与数字工程》 20100320 程川 一种基于Xen的信任虚拟机安全访问设计与实现 109-111,149页 第38卷, 第3期 *
CHUNXIAO LI,ET AL.: "Secure virtual machine execution under an untrusted management OS", 《2010 IEEE 3RD INTERNATIONAL CONFERENCE ON CLOUD COMPUTING》 *
CHUNXIAO LI,ET AL.: "Secure virtual machine execution under an untrusted management OS", 《2010 IEEE 3RD INTERNATIONAL CONFERENCE ON CLOUD COMPUTING》, 31 December 2010 (2010-12-31) *
PEREZ,R: "Virtualization and Hardware-Based Security", 《IEEE SECURITY&PRIVACY》 *
PRASHANT DEWAN,ET AL.: "A hypervisor-based system for protecting software runtime memory and persistent storage", 《SPRINGSIM》 *
PRASHANT DEWAN,ET AL.: "A hypervisor-based system for protecting software runtime memory and persistent storage", 《SPRINGSIM》, 31 December 2008 (2008-12-31) *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297229A (zh) * 2012-02-24 2013-09-11 鸿富锦精密工业(深圳)有限公司 虚拟机安全操作系统及方法
CN103067270B (zh) * 2013-01-08 2016-12-28 杭州华三通信技术有限公司 一种虚拟机互访安全控制方法及装置
CN103067270A (zh) * 2013-01-08 2013-04-24 杭州华三通信技术有限公司 一种虚拟机互访安全控制方法及装置
CN104850451A (zh) * 2015-05-15 2015-08-19 北京北信源软件股份有限公司 一种实现虚拟机与管理域进程间通信的方法
CN104850451B (zh) * 2015-05-15 2017-12-22 北京北信源软件股份有限公司 一种实现虚拟机与管理域进程间通信的方法
CN105471657B (zh) * 2015-12-11 2019-12-13 航天恒星科技有限公司 一种虚拟机域间通信日志管理方法、装置及系统
CN105471657A (zh) * 2015-12-11 2016-04-06 航天恒星科技有限公司 一种虚拟机域间通信日志管理方法、装置及系统
CN105933123A (zh) * 2016-04-26 2016-09-07 浪潮电子信息产业股份有限公司 一种kvm虚拟机通信方法
CN106445642A (zh) * 2016-10-27 2017-02-22 广东铂亚信息技术有限公司 一种基于虚拟机监视器的安全通信方法与系统
CN107544918A (zh) * 2017-08-17 2018-01-05 致象尔微电子科技(上海)有限公司 一种内存页共享方法
CN107544918B (zh) * 2017-08-17 2021-01-15 海光信息技术股份有限公司 一种内存页共享方法
CN108804203A (zh) * 2018-06-15 2018-11-13 四川大学 基于标签的vTPM私密信息保护方法
CN111813584A (zh) * 2020-08-05 2020-10-23 Oppo广东移动通信有限公司 内存共享方法、装置、电子设备及存储介质
CN114244515A (zh) * 2022-02-25 2022-03-25 中瓴智行(成都)科技有限公司 基于Hypervisor的虚拟机通信方法、装置、可读存储介质及电子设备

Also Published As

Publication number Publication date
CN102073821B (zh) 2012-10-31

Similar Documents

Publication Publication Date Title
CN102073821B (zh) 基于xen平台的虚拟安全通信隧道的建立方法
US10142107B2 (en) Token binding using trust module protected keys
CN102271037B (zh) 基于在线密钥的密钥保护装置
US6948065B2 (en) Platform and method for securely transmitting an authorization secret
US10680816B2 (en) Method and system for improving the data security during a communication process
CN105100076A (zh) 一种基于USB Key的云数据安全系统
CN102215221A (zh) 从移动设备对计算机的安全远程唤醒、引导及登录的方法和系统
CN102986161B (zh) 用于对应用进行密码保护的方法和系统
WO2016054905A1 (zh) 一种数据处理方法
CN102236756A (zh) 一种基于TCM可信密码模块和USBKey的文件加密方法
CN109309566B (zh) 一种认证方法、装置、系统、设备及存储介质
WO2015117523A1 (zh) 访问控制方法及装置
CN103544453A (zh) 一种基于usb key的虚拟桌面文件保护方法及装置
CN103338106A (zh) 文件的加密方法、解密方法、加密装置、以及解密装置
CN103973698A (zh) 一种云存储环境中的用户访问权限回收方法
CN104468074A (zh) 应用程序之间认证的方法及设备
CN104376270A (zh) 一种文件保护方法及系统
CN107911221A (zh) 固态盘数据安全存储的密钥管理方法
US20240114025A1 (en) Modification of device behavior for use in secure networking
WO2023061320A1 (zh) 一种设备标识符防伪造方法、装置和电子设备
CN101325486B (zh) 域许可密钥的转移方法及设备
CN104463003A (zh) 一种文件加密保护方法
Campbell Supporting digital signatures in mobile environments
Yoo et al. Confidential information protection system for mobile devices
CN106302417A (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121031

Termination date: 20220127

CF01 Termination of patent right due to non-payment of annual fee