当前位置: 首页 > 专利查询>CM埃利森专利>正文

用于虚拟机的熵池制造技术

技术编号:7368629 阅读:209 留言:0更新日期:2012-05-27 06:02
在计算设备的主机操作系统中,熵数据是至少部分基于计算设备的一个或多个硬件组件中的每一个收集的。熵池至少部分是基于收集到的熵数据更新的,并且来自熵池的数据被提供给作为计算设备的虚拟机运行的客户操作系统。客户操作系统基于来自主机操作系统提供的熵池的数据来保持客户操作系统熵池。客户操作系统访问客户操作系统熵池,并且使用客户操作系统熵池作为产生包括随机数在内的值的基础。

【技术实现步骤摘要】
【国外来华专利技术】用于虚拟机的熵池
技术介绍
随机数能够在多种不同的计算场景中使用。一个常见的使用场景是密码加密(cryptography),其中密码加密密钥和密码加密处理全都依赖于随机数的生成。随机数生成通常依赖于计算机中的一个或多个硬件组件的状态。然而,当虚拟机在计算机上运行时,这种依赖性有可能会存在问题。所述虚拟机抽象化计算机中的硬件组件,并且将其作为虚拟组件呈现给虚拟机中运行的操作系统。与其对应的硬件组件相比,这种虚拟组件有可能具有较小的随机性或熵,而这有可能会减小所产生的数字的熵。
技术实现思路

技术实现思路
是为了以简化形式引入精选概念而被提供的,并且在以下的详细描述中将会进一步描述这些概念。本
技术实现思路
的目的既不是识别所要求保护主题的关键特征或必要特征,也不是用于限制所要求保护的主题的范围。根据一个或多个方面,由计算设备中的虚拟机管理器管理的程序的熵池至少部分基于计算设备中的一个或多个硬件组件中的每一个而被产生。所述程序访问熵池,并且使用熵池作为产生随机数的基础。根据一个或多个方面,在计算设备的主机操作系统中,熵数据至少部分基于计算设备的一个或多个硬件组件中的每一个而被收集。熵池至少部分基于收集到的熵数据而被更新,并且被提供给作为计算设备的虚拟机运行的客户操作系统。附图说明在附图中始终使用了相同数字来引用相同特征。图1是示出了根据一个或多个实施例来实现用于虚拟机的熵池的例示计算设备的框图。图2是示出了根据一个或多个实施例来获取和提供用于虚拟机的熵的例示处理的流程图。图3是示出了根据一个或多个实施例来实现用于虚拟机的熵池的例示客户操作系统的框图。图4是示出了根据一个或多个实施例的用于使用了顺序计数器的客户操作系统的例示处理的流程图。图5示出了能够根据一个或多个实施例而被配置成实现用于虚拟机的熵池的例示计算设备。具体实施方式在这里论述的是用于虚拟机的熵池。基于计算设备中的硬件组件的熵池是由计算设备的主机操作系统产生和更新的。运行客户操作系统的虚拟机也可以在计算设备上运行。所述客户操作系统具有至少部分基于主机操作系统的熵池产生的熵池,由此,即便客户操作系统是在虚拟机中运行的,也可以至少部分基于硬件组件来为客户操作系统提供熵池。此外,客户操作系统可以保持顺序计数器值。在每次产生客户操作系统的拷贝或克隆的时候,其中一个客户操作系统的顺序计数器值都会递增。此外,在每次获取基于客户操作系统熵池的值时,这时都会存储关于所获取的值以及获取该值时的客户操作系统的当前顺序计数器值的记录。当使用基于客户操作系统熵池的值时,关于该值的已存储顺序计数器值将会与客户操作系统的当前顺序计数器值相比较,并且只有在这两个计数器值相同的时候才会使用该值。图1是示出了根据一个或多个实施例来实现用于虚拟机的熵池的例示计算设备100的框图。计算设备100可以是多种不同类型的设备。例如,所述计算设备100可以是台式计算机、移动站、上网本、娱乐电器、可通信地耦合到显示设备的机顶盒、电视、蜂窝或其他无线电话、游戏控制台、车载计算机等等。由此,计算设备100的范围可以是从具有大量存储器和处理器资源的资源充足的设备(例如个人计算机、游戏控制台)到存储器和/或处理资源有限的资源很少的设备(例如传统的机顶盒、手持游戏控制台)。计算设备100包括主机操作系统102和虚拟机管理器104。主机操作系统102管理对由一个或多个组件108提供的功能所进行的访问。组件108可以是多种不同的输入/输出(I/O)组件以及其他组件或设备。例如,组件108可以包括一个或多个存储器组件、存储设备、通信组件等等。对于包括虚拟机管理器104在内的在计算设备100上运行的其他各种不同的组件或模块来说,即使这种组件或模块不能直接访问组件108,它们也可以访问主机操作系统102管理的这个功能。主机操作系统102还包括熵池110。通常,熵池是一组向计算设备100提供随机源的数据或比特。所述熵池是基于从一个或多个熵源收集的数据产生的,并且是由随机数生成器和/或作为随机源的其他组件进行提取的。在主机操作系统102上可以运行一个或多个虚拟机(VM)管理器。虚拟机管理器允许一个或多个附加程序在计算设备100上运行。这些程序可以是每个都被称为客户操作系统的操作系统或可替换地是其他程序。虚拟机管理器向客户操作系统呈现一个虚拟化硬件系统,其中客户操作系统是在所述虚拟化硬件系统中运行的。相应地,在虚拟化硬件系统中运行的客户操作系统也被称为虚拟机。客户操作系统经常是在不知道其硬件资源已被虚拟化的情况下在这个虚拟化硬件系统中运行的。虚拟机支持各种不同的使用场景,这其中包括允许以不同方式将I/O组件呈现给客户操作系统(例如仿真、合成、虚拟、透传、作为不同组件、具有不同的通信协议等等)。在图1中,虚拟机管理器104包括虚拟机控制模块120以及一个或多个虚拟化组件122。虚拟机控制模块120管理虚拟化硬件系统,由此与客户操作系统132进行通信。虚拟化组件122是由虚拟机控制模块120作为硬件组件呈现给客户操作系统132的虚拟化硬件组件。虚拟化组件122与组件108既可以是相同类型的组件,可替换地,也可以是不同类型的组件。客户操作系统132与控制模块120和/或虚拟化组件122进行通信,就好像客户操作系统132在与计算设备100的物理硬件进行通信一样。虽然在这里是参考客户操作系统132来论述计算设备100的,但是作为替换,除了操作系统之外的其他程序也可以在虚拟机中运行。客户操作系统132包括随机数生成器134和熵池136。在这里将熵池136论述成由随机数生成器134使用,但是应该了解,可替换地,熵池136也可以由客户操作系统132的其他组件使用。随机数生成器134是一个被设计成模拟或近似真实随机发生器的确定性系统。相应地,随机数生成器134也可以被称为伪随机数生成器。随机数生成器134可以采用多种不同方式中的一种或多种方式来产生随机数。在一个或多个实施例中,随机数生成器134基于从熵池136获取的被称为种子值的数据来产生随机数。所述随机数生成器134可以通过将多种不同算法应用于种子值来获取随机数,例如安全散列算法(SHA)函数(例如SHA-512)、标准对称密码算法(例如高级加密标准(AES))等等中的一种。作为熵池(例如熵池136或熵池110)存储的数据是基于来自一个或多个熵源的值而被产生的。熵源是具有某种随机量的数据或值的来源。有多种不同的源可被用于熵池的熵源。例如,下列系统信息中的每一个都可以是熵源,如各种系统时钟或定时器、页面错误发生次数、可用空闲RAM大小、已占用盘驱动器空间、空闲盘驱动器空间、系统后备信息、系统中断信息等等。每一个网络信息都可以是熵源,例如接收或发送的分组的数目、网络分组定时、从中接收到网络分组的地址等等。此外,鼠标移动、按键、语音输入及其他类似事件的定时或内容中的每一个都可以是熵源。计算系统上的现有硬件资源也可以充当熵源。来自插有(或未插入)源的声音或视频输入的数据可以是熵源。由于混乱的空气扰动,盘驱动器在旋转速度中有可能具有小的随机波动,所述空气扰动可以由低级磁盘寻道时间测量装置(lowleveldiskseektimeinstrumentation)测量并被用作熵源。包括硬盘驱动器序列号和B本文档来自技高网...
用于虚拟机的熵池

【技术保护点】

【技术特征摘要】
【国外来华专利技术】2009.08.24 US 12/5461671.一种计算设备,包括:处理器;以及计算机可读媒体,在该计算机可读媒体上存储了用于虚拟机管理器管理的程序的指令,其中在由处理器运行时,所述指令将会促使处理器:访问至少部分基于计算设备的一个或多个硬件组件中的每一个产生的熵池,所述程序运行在虚拟化硬件系统中,所述熵池已从所述计算设备上的主机操作系统获取,其中经由虚拟机管理器管理的程序将该熵池从主机操作系统传送到所述虚拟机管理器的虚拟化组件,存储在虚拟化组件中并且通过客户操作系统访问;以及使用所述熵池作为产生用于创建密码加密密钥的随机数的基础。2.如权利要求1所述的计算设备,其中熵池的至少一部分被主机操作系统映射到虚拟机管理器的存储器空间。3.如权利要求1所述的计算设备,其中熵池是经由程序的基本输入/输出系统(BIOS)表而从主机操作系统获取的。4.如权利要求1所述的计算设备,该指令还会促使处理器:向主机操作系统请求附加熵;从主机操作系统接收附加熵数据;以及将附加熵数据引入程序的熵池。5.如权利要求1所述的计算设备,该指令还促使处理器:在特定间隔接收来自主机操作系统的附加熵;以及将附加熵数据引入程序的熵池。6.如权利要求1所述的计算设备,该指令还促使处理器:获取程序的第一顺序计数器值;以及存储用于该程序的随机数以及第一顺序计数器值。7.如权利要求6所述的计算设备,该指令还促使处理器:接收要求使用随机数的请求;获取已存储的第一顺序计数器值;在接收到请求时,获取用于该程序的第二顺序计数器值;将第二顺序计数器值...

【专利技术属性】
技术研发人员:CM埃利森SA菲尔德BS贝克
申请(专利权)人:CM埃利森SA菲尔德BS贝克
类型:发明
国别省市:

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

1
相关领域技术