Inicialización de una partición encriptada LUKS con cifrado o / dev / urandom

1

He creado algunos dispositivos cifrados con LUKS y cryptsetup en Linux y estoy bastante cómodo con el cifrado de disco en este sentido.

He visto que se menciona en muchos lugares diferentes que cuando se configura una partición / disco LUKS, se recomienda sobrescribir primero la partición / disco completa con /dev/urandom . He visto algunos lugares que indican que esto no es necesario, ya que el disco se puede sobrescribir con el cifrado, que es mucho más rápido. ( /dev/urandom max en un sistema de 4.6GHz puede obtener más de 20MB / s, mientras que estoy seguro de que un cifrado AES-256 CBC puede funcionar a más de 2GB / s, lo que significa que mi cifrado del disco podría ejecutarse a 100 a 102.4 veces más rápido si estoy usando el cifrado en lugar de /dev/urandom , siendo la velocidad del disco el factor limitante aquí).

¿Está utilizando el cifrado para inicializar el disco como "seguro" usando /dev/urandom ? Asumiría que sí, ya que los datos de salida deberían ser teóricamente indistinguibles entre los dos.

Además, ¿cómo hace esto para sobrescribir toda la partición / disco utilizando el cifrado? He perdido el enlace y no recuerdo cómo hacerlo.

    
pregunta Naftuli Kay 21.01.2015 - 02:32
fuente

2 respuestas

2

Para usar el módulo criptográfico del kernel para inicializar la partición / disco, haga esto:

cryptsetup create --key-file=/dev/urandom eraseme /dev/sde
dd if=/dev/zero bs=1M of=/dev/mapper/eraseme
cryptsetup remove eraseme

Esto inicializa una asignación criptográfica llamada eraseme que abarca la partición / disco utilizando datos de / dev / urandom como clave. Escribe ceros en el mapeo y luego borra el mapeo. Use la opción --cipher para usar el cifrado no predeterminado si es necesario.

Es mucho más rápido que leer de urandom. En mi computadora, al escribir en un disco RAM, obtengo estas cifras de rendimiento:

  • 640 MB / s ceros ( dd if=/dev/zero bs=1M of=/dev/sde )
  • Módulo criptográfico de 270 MB / s que utiliza el cifrado predeterminado aes-cbc-essiv: sha256 (comandos como arriba)
  • 8,7 MB / s urandom ( dd if=/dev/urandom bs=1M of=/dev/sde )
respondido por el Mike Fleetwood 08.03.2015 - 16:36
fuente
1

/dev/urandom es básicamente un cifrado de flujo, solo con el reabastecimiento periódico de sus fuentes de entropía para proteger contra su estado o fuentes de entropía comprometidas.

Dado que es extremadamente improbable que el estado de su cifrado se vea comprometido al inicializar el disco, que si esto sucediera, un atacante tiene suficiente control sobre su sistema, por lo que probablemente esté equivocado, y el hecho de que los números aleatorios no son En realidad no se utiliza para algo como el material de clave criptográfica, no se me puede ocurrir con la inicialización del disco al escribir la salida de un cifrado inicializado con una clave aleatoria y IV.

    
respondido por el Stephen Touset 21.01.2015 - 03:28
fuente

Lea otras preguntas en las etiquetas