¿Por qué GNU shred es más rápido que dd cuando se llena una unidad con datos aleatorios?

¿Por qué GNU shred es más rápido que dd cuando se llena una unidad con datos aleatorios?

Mientras borraba de forma segura un disco duro antes de desmantelarlo, noté que eso dd if=/dev/urandom of=/dev/sdalleva casi un día entero, mientras que shred -vf -n 1 /dev/sdasolo toma un par de horas con la misma computadora y el mismo disco.

¿Cómo es esto posible? Supongo que el cuello de botella es la producción limitada de /dev/urandom. ¿Shred utiliza algún generador de pseudoaleatoriedad que sea menos aleatorio y sólo suficiente para su único propósito (es decir, más eficiente) que urandom?

Respuesta1

Desgarrarutiliza un generador pseudoaleatorio interno

De forma predeterminada, estos comandos utilizan un generador pseudoaleatorio interno inicializado por una pequeña cantidad de entropía, pero se puede dirigir a utilizar una fuente externa con la opción --random-source=file. Se informa un error si el archivo no contiene suficientes bytes.

Por ejemplo, el archivo del dispositivo/dev/urandompodría utilizarse como fuente de datos aleatorios. Normalmente, este dispositivo recopila el ruido ambiental de los controladores de dispositivos y otras fuentes en un grupo de entropía y utiliza el grupo para generar bits aleatorios. Si el grupo tiene escasez de datos, el dispositivo reutiliza el grupo interno para producir más bits, utilizando un generador de números pseudoaleatorios criptográficamente seguro. Pero tenga en cuenta que este dispositivo no está diseñado para la generación masiva de datos aleatorios y es relativamente lento.

No estoy convencido de que los datos aleatorios sean más efectivos queun solo pasedeceros(o cualquier otro valor de byte) para ocultar contenidos anteriores.

Para desactivar de forma segura una unidad, utilizo un imán grande y un martillo grande.

Respuesta2

Supongo que se debe más bien al dduso de fragmentos más pequeños para escribir los datos. Intente dd if=... of=... bs=(1<<20)ver si funciona mejor.

información relacionada