2012-02-23 3 views
0

Я ищу хороший способ расчета контрольной суммы всего содержимого флеш-накопителя.Расчет контрольной суммы содержимого флеш-накопителя

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

Кто-нибудь знает о любом коде C, C++ или C#, который может открыть объем флеш-накопителя и быстро прочитать его для байт, чтобы я мог подать это, чтобы сказать алгоритм хеширования MD5 или SHA1?

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

+1

Возможно, это не очень хорошая идея. Флэш-память имеет ограниченный срок службы (с точки зрения количества чтений/записей); вы не хотите выполнять частой тяжелой операции ввода-вывода, как это. Что вы пытаетесь достичь? – ashes999

+1

@ ashes999: записывает только флэш-память. Потенциальное число чтений практически неограничено. –

+0

@BenVoigt вы уверены? Наверное, я ошибаюсь; это хорошо знать. – ashes999

ответ

0

Возможно, посмотрите на исходный код для dd и функции SHA-1 в OpenSSL.

2

Вы можете открыть весь том с помощью API-интерфейсов файловой системы OS (C# предлагает Windows, где функция CreateFile).

Прежде всего, необходимо отключить файловую систему, чтобы другой процесс не изменил ваши данные во время его использования. Кроме того, контрольная сумма всего тома вряд ли будет полезна, поскольку она будет меняться всякий раз, когда будет обновляться поле «последнее доступное время».

+0

Флэш-накопитель доступен только для чтения и не изменяется. – user1090205