8

Надежно стирая жесткий диск перед выводом из эксплуатации, я заметил, что dd if=/dev/urandom of=/dev/sda занимает почти целый день, тогда как shred -vf -n 1 /dev/sda занимает всего пару часов с тот же компьютер и тот же диск.

Как это возможно? Я предполагаю, что узким местом является ограниченный вывод /dev/urandom . Использует ли shred какой-то генератор псевдослучайности, который является менее случайным и достаточным только для его единственной цели (т.е. более эффективной), чем urandom?

2 ответа2

10

Шред использует внутренний псевдослучайный генератор

По умолчанию эти команды используют внутренний псевдослучайный генератор, инициализированный небольшой энтропией, но могут быть направлены на использование внешнего источника с параметром --random-source = file. Об ошибке сообщается, если файл не содержит достаточно байтов.

Например, файл устройства /dev/urandom может использоваться в качестве источника случайных данных. Как правило, это устройство собирает шум окружающей среды от драйверов устройств и других источников в пул энтропии и использует пул для генерации случайных битов. Если в пуле не хватает данных, устройство повторно использует внутренний пул для создания большего количества битов, используя криптографически безопасный генератор псевдослучайных чисел. Но имейте в виду, что это устройство не предназначено для генерации объемных случайных данных и является относительно медленным.

Я не убежден, что случайные данные более эффективны, чем один проход нулей (или любое другое значение байта), чтобы скрыть предыдущее содержимое.

Для безопасного вывода из эксплуатации я использую большой магнит и большой молоток.

2

Я думаю, это будет вызвано тем, что dd использует меньшие порции для записи данных. Попробуйте dd if=... of=... bs=(1<<20) чтобы увидеть, работает ли он лучше.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .