为什么haveged不适合在虚拟机上使用

简介: 为什么haveged不适合在虚拟机上使用

为什么haveged不适合在虚拟机上使用?

我们先来了解一下haveged是什么?HAVEGE 全称(Hardware Volatile Entropy Gathering and Expansion) ,可以翻译作硬件挥发性熵收集和扩展,本质上是一个软件熵源,通过其算法从一些间接的硬件事件生成高质量的随机序列。在计算机系统中,随机数是由熵源产生,而熵源是指具有不确定性的物理或逻辑过程。

那么为什么虚拟机不适合haveged呢?由于虚拟机其操作系统无法直接访问宿主机的物理设备,没有足够的随机事件产生高质量的随机序列,当haveged作为熵源时,在被用于生成密钥、签名或者加密数据等任务时可能会造成安全风险。

根据linux - Is it appropriate to use haveged as a source of entropy on virtual machines? - Information Security Stack Exchange这篇文章中的讨论,虚拟机假如需要获取高质量的随机序列,需要借助rdtsc指令发挥作用,而对虚拟机系统来说,使用该指令有三种选择:

  • 让cpu指令透传到虚拟机上
  • 捕获该指令
  • 完全禁用该指令

回到主题,为什么虚拟机不适合haveged?其中争议最大的点,主要围绕安全风险的考量,赞成的人是认为在虚拟机的场景下,没有使用rdtsc指令的情况下的,低质量的随机序列增加的安全风险,而一些使用haveged - Online Testing (issihosts.com)一文中的测试数据,认为其安全风险是危言耸听。

我个人觉得,其实Linux内核对随机数生成算法,还是比较重视的,从v5.17可能就开始启用crng增强随机数生成器的安全性。

目录
相关文章
|
2月前
|
存储 Linux 虚拟化
常见的虚拟机
VMware Fusion是功能强大的虚拟机软件,可以模拟完整的计算机系统,包括处理器、内存、显卡、声卡等,使得在虚拟机中运行的操作系统与在真实计算机上运行几乎一样。VMware Fusion还支持多显示器、USB设备、网络和文件共享等功能,可以提供更好的隔离和安全性。
40 2
|
14天前
|
边缘计算 人工智能 测试技术
什么是虚拟机技术?
拟机技术作为现代计算环境中的重要组成部分,极大地丰富了我们对资源管理和系统部署的理解与实践。本文将深入探讨虚拟机的定义、工作原理、应用场景、优势、主要技术以及未来发展趋势,帮助读者全方位地理解虚拟机这一强大技术。
22 7
|
2月前
|
存储 自然语言处理 Java
【JVM】深入理解虚拟机(上)
【JVM】深入理解虚拟机(上)
15 0
|
7月前
|
Ubuntu 网络安全 虚拟化
001_k8s_准备虚拟机
001_k8s_准备虚拟机
34 0
|
9月前
|
运维 Linux 虚拟化
虚拟机是什么
简单地说,虚拟机(Virtual Machine)就是允许我们在当前操作系统中运行其他操作系统的软件,本质上和 VS、QQ 这些应用程序一样。 所以,只要我们在电脑(PC 或笔记本等)上安装好虚拟机软件,就可以模拟出来若干台相互独立的虚拟 PC 设备,每一个都如何一台真实的计算机。在此基础上,我们可以给每台虚拟的 PC 设备安装指定的操作系统,这样就可以实现在一台电脑上同时运行多个操作系统。 另外,还可以将这些虚拟的系统连成局域网,用来部署网站集群架构等更深层次的运维技术。 展示的是在 Windows 10 桌面操作系统上安装的虚拟机软件 VMware Workstation(简称 VM
119 0
|
10月前
|
Linux 开发工具 数据安全/隐私保护
虚拟机的安装
虚拟机的安装
208 0
|
10月前
|
监控 虚拟化
虚拟机(VMM)
虚拟机又名虚拟机管理程序、虚拟机监控程序、VMM 使用虚拟化技术,将一台物理机器虚拟化为多台虚拟机器,每台虚拟机器都可以独立一个操作系统。 传统的计算机,一台物理机器只能运行一个操作系统。
316 0
|
运维 Linux KVM
2.2 虚拟机是什么
简单地说,虚拟机(Virtual Machine)就是允许我们在当前操作系统中运行其他操作系统的软件,本质上和 VS、QQ 这些应用程序一样。
138 0
2.2 虚拟机是什么
|
存储 安全 Java
深入理解虚拟机之虚拟机类加载机制
**本节常见面试题(推荐带着问题阅读,问题答案在文中都有提到):** 简单说说类加载过程,里面执行了哪些操作? 对类加载器有了解吗? 什么是双亲委派模型? 双亲委派模型的工作过程以及使用它的好处。
2465 0