[发明专利]一种在虚拟化环境中提供密码服务的方法和系统有效
申请号: | 201410609724.6 | 申请日: | 2014-11-03 |
公开(公告)号: | CN104461678B | 公开(公告)日: | 2017-11-24 |
发明(设计)人: | 林璟锵;荆继武;管乐;汪婧;李冰雨;王跃武;潘无穷 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F21/31 |
代理公司: | 北京君尚知识产权代理事务所(普通合伙)11200 | 代理人: | 余长江 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 虚拟 环境 提供 密码 服务 方法 系统 | ||
技术领域
本发明属于计算机安全技术领域,特别涉及一种在虚拟化环境中提供密码服务的方法和系统。
背景技术
在计算机与通讯系统中,数据机密性通常通过对数据进行加密实现,即使用公开的密码算法和只有授权访问对象才知道的密钥来对数据进行变换计算,其有效性依赖于密钥的保密性。在公钥密码技术应用中,发送方利用指定接受者的公钥对邮件或其他数据加密,能够保证拥有该对应私钥的用户才能够解密。而且,拥有私钥的用户还能够使用私钥对数据进行数字签名,任意接收方可以利用公钥验证数字签名的正确性,保证文档发送者的身份和文档的不可篡改。上述安全功能的基础仍是密钥的安全性,即用户所持有的私钥不会泄露、不会被攻击者非法访问。很多密码算法在假设密钥安全的前提下进行大量的密码分析仍然保持了很高的安全性,并被广泛应用。然而,在实际环境中,各种原因都可能造成密钥的泄露,如密钥管理员的疏忽、不当的软件实现、渗透攻击等。
在计算机系统中,敏感数据分布在整个内存空间(包括内核及用户空间),各种软件漏洞使得内存空间泄露给未授权对象,这可能会造成密钥的丢失。比如,2014年4月曝出的OpenSSLHeartbleed漏洞,允许远程攻击者在不需要任何权限的情况下获取私钥。该漏洞是由于对请求包疏于检查引发的缓冲区被过度的读取造成的。
基于硬件的保护机制(比如usb key)把密钥存储在硬件中,密码计算过程也在硬件中,所以密钥对操作系统是不可见,极大地提高了密钥的安全性。但是附加的硬件设备提高了成本。虽然硬件密码设备能够很好地保护密钥数据,但是硬件密码设备只能被动地接收请求、计算、返回结果,难以了解调用者的详细信息。一旦调用者被攻击者入侵,就可以任意地调用硬件密码设备的计算服务。
随着AMD和Intel相继推出支持硬件虚拟化的产品,虚拟化技术得到广泛应用。企业利用虚拟化,可以减少资金成本、降低空间需求、提高可用性、提升业务的灵活适应力、提高安全性。通过虚拟化技术,可以在一套物理硬件上运行多个客户虚拟机。虚拟化隔离了客户虚拟机,提供了另一层次的软件隔离。即使暴露于Internet的客户虚拟机被感染,也不会对整个虚拟化平台的安全性造成威胁,更不能威胁运行在同一套物理硬件上的其他客户虚拟机。
虚拟化平台一个重要的组成部分是虚拟机监控器(Virtual Machine Monitor,VMM),它的主要作用是管理宿主机的资源,以使在其之上运行的客户虚拟机可以共享宿主机上的物理资源。根据VMM的具体实现方法不同,VMM还可以包含设备驱动(宿主机的硬件设备驱动程序)和设备模型(给客户虚拟机提供模拟的设备)。
VMI,即Virtual Machine Introspection,是一种在VMM中监测客户虚拟机运行状态的技术。在进行VMI时,客户虚拟机的运行状态可被广义地定义为包括处理器寄存器、内存、磁盘、网络及任何硬件级状态。在虚拟化技术中,客户虚拟机操作系统相当于一个进程运行在宿主机系统上,该进程的用户虚拟内存空间就是客户虚拟机操作系统的物理内存空间。VMI实现检测客户虚拟机运行状态的基本原理是:通过客户虚拟机页表、客户虚拟机与宿主机地址映射表等实现对客户虚拟机系统内存结构的解析,并通过操作宿主机虚拟地址,语义上操纵客户虚拟机的内存空间。
VMI可以在不修改客户虚拟机配置、不影响客户虚拟机运行的前提下,准确查看客户虚拟机的运行状态,如运行进程号、内存使用情况等。本发明利用VMI技术实现对客户虚拟机调用密码服务的进程等运行状态的主动检查。
发明内容
本发明针对上述的计算机与通讯系统中的数据安全问题,提出一种在虚拟化环境中提供密码服务的方法和系统。该方案设计一个虚拟密码设备管理器,用于管理宿主机上可用的密码计算资源(可以是外接硬件设备,也可以是自身提供的软件实现),给每个客户虚拟机分配虚拟的密码设备,同时对客户虚拟机对虚拟密码设备的访问进行主动的检查和审计。
具体来说,本发明采用的技术方案如下:
一种提供密码服务的方法,该方法在虚拟化环境中提供密码服务,其步骤包括:
1)设置一虚拟密码设备管理器,用于管理宿主机上可用的密码计算资源,并提供虚拟的密码运算设备,供客户虚拟机访问;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410609724.6/2.html,转载请声明来源钻瓜专利网。