Как проверить, была ли случайность записана на устройство и что именно было записано?

Я готовлю устройство с клочком, чтобы позже использовать его в зашифрованном виде с помощью dm-crypt/cryptsetup/luks.

Как я могу проверить устройство до и после использования shred или, например, openssl/dd с /dev/urandom, чтобы быть уверенным в том, что было сделано? Есть ли возможность?

1 ответ

Решение

В системе POSIX дисковое устройство - это файл, поэтому его может прочитать любой инструмент, который поддерживает чтение из файлов, будь то cat, dd или даже LibreOffice Writer (хорошо, шучу).

Итак, в основном у вас есть две проблемы, чтобы разобраться:

  • Как интерпретировать то, что будет прочитано.
  • Решите, означает ли то, что вы увидите, ваш тест пройден или не пройден.

Поскольку ваш диск будет содержать, как правило, нечитаемые человеком данные, самый простой способ просмотреть их на глаз - использовать что-то вроде od (должно быть доступно сразу) или xxd (немного удобнее, но может быть недоступно в минимальной системе). Итак, что-то вроде

# od </dev/sda3 | less

должно быть в порядке, чтобы увидеть, что там на диске.

Вторая проблема сложнее, так как она скорее философская, чем техническая (на что пытался указать @sebix). Проблема в том, что неясно, что вы на самом деле имеете в виду. Если вы хотите как-то измерить случайность данных после вашего openssl а также /dev/urandom В случае заклинания вы должны: 1) придумать способ определения метода для измерения этой случайности; 2) выполнить его.

Я сомневаюсь, что вы действительно имели в виду нечто подобное, и сделаете дикое предположение: вы, вероятно, просто хотели посмотреть, выглядят ли данные на диске просто случайными.

Если да, то самым простым способом было бы сначала dd if=/dev/zero of=/dev/sda3 ... чтобы заполнить диск нулевыми байтами, затем переписать его, используя "случайное заклинание", а затем использовать od или аналогичный инструмент для проверки того, что на диске действительно случайные данные.

Если вместо этого вы действительно хотели измерить случайность своих данных, тогда просто неуместно спрашивать: попробуйте спросить math.stackexchange.com и пометьте свой вопрос как связанный со статистикой. Другими словами, способ чтения данных - это технический вопрос, а способ проведения статистического анализа - нет.

Другие вопросы по тегам