Como sabrás, no es tan fácil generar entropía en una máquina virtual como en una PC "normal". Generar una clave gpg en una máquina virtual puede llevar un tiempo, incluso con las herramientas correctas.
Hay muchas más funciones de cifrado que no son tan conscientes de la entropía como gpg.
Entonces, ¿se puede decir que la criptografía es menos segura en una máquina virtual?
Respuestas:
Antes que nada, déjame decirte que no soy un experto en seguridad.
Como la creación de claves gpg se utiliza
/dev/random
como generador de números aleatorios, es tan segura en una máquina virtual como en una máquina real./dev/random
es un dispositivo de bloqueo y dejará de entregar cualquier aleatoriedad más allá de la cantidad disponible. Puede verificar su aleatoriedad disponible porcat /proc/sys/kernel/random/entropy_avail
(debe ser alrededor de 2000 )En una máquina virtual, la aleatoriedad disponible es de hecho menor que en una máquina real, debido a la falta de acceso al hardware.
Puede aumentar la entropía, por ejemplo, aplicando claves de entropía y / o cambiando a una máquina no virtualizada.
Hay un buen artículo disponible sobre entropía en máquinas virtuales. Desafortunadamente, ambas partes del artículo solo están disponibles en el caché de Google en este momento.
La entropía tiene más efectos sobre cualquier encriptación SSL / TLS. Por lo tanto, el uso de
/dev/urandom
cualquier fuente no aleatoria tiene un impacto en la seguridad de sus aplicaciones.En términos de cuán confiable es en
/dev/urandom
comparación con la aleatoriedad verdadera;No puedo darte una respuesta decente allí, lo siento.
Para obtener más información sobre este tema, puede visitar http://security.stackexchange.com y / o leer, por ejemplo. esta publicación
fuente
/dev/urandom
está utilizando un PRNG criptográficamente seguro (sembrado por el mismo grupo que/dev/random
), por lo que no debería haber ningún problema siempre que haya suficiente entropía inicial en este grupo. Puede haber un punto en sembrarlo del grupo de entropía de la máquina principal.Sí, en la mayoría de los casos, la criptografía es menos segura en una máquina virtual que en un servidor "real".
Este último puede al menos reunir entropía de algún hardware real. De hecho, la operación de una pieza de HW está, en la mayoría de los casos, vinculada a algún fenómeno físico, que siempre está sujeto a pequeñas variaciones, al azar por todas las cuentas. Dado que los servidores generalmente se ejecutan durante mucho tiempo sin un reinicio, el grupo de entropía resultante eventualmente será de calidad suficiente.
Las máquinas virtuales sufren de tres problemas.
La mejor solución es hacer que la VM simplemente se rinda y se dé cuenta de que el HW que ve es una mala fuente de entropía. Luego, organice un servicio de red local para distribuir entropía de alta calidad (consulte Entropy Broker ). El "servidor de entropía" puede extraer aleatoriedad de HW genérico (en cuyo caso debe funcionar durante un tiempo suficiente y debe tener un SO decente) o de HW criptográfico específico (un chip TPM, un chip VIA Padlock, etc.).
Una máquina virtual que utiliza dicho servicio puede incluso ser más segura (criptográficamente) que un servidor "real" que acaba de iniciarse.
fuente