Проверка файла - File verification

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

Проверка целостности

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

Хеш -основанная проверка гарантирует, что файл не был поврежден, путем сравнения хеш-значения файла с ранее рассчитанным значением. Если эти значения совпадают, предполагается, что файл не был изменен. Из-за характера хэш-функций хеш-коллизии может привести к ложные срабатывания, но вероятность столкновения часто незначительна при случайном повреждении.

Проверка подлинности

Часто желательно убедиться, что файл не был изменен при передаче или хранении недоверенными сторонами, например, для включения вредоносного кода, такого как вирусы или же бэкдоры. Для проверки подлинности классической хеш-функции недостаточно, поскольку они не предназначены для стойкий к столкновениям; для злоумышленника с вычислительной точки зрения тривиально вызвать преднамеренные конфликты хэшей, что означает, что злонамеренное изменение в файле не обнаруживается при сравнении хешей. В криптографии такая атака называется атака на прообраз.

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

Форматы файлов

А файл контрольной суммы это небольшой файл, содержащий контрольные суммы других файлов.

Есть несколько хорошо известных форматов файлов контрольной суммы.[1]

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

Конкретный используемый алгоритм хеширования часто указывается расширением файла контрольной суммы.

Расширение файла ".sha1" указывает на файл контрольной суммы, содержащий 160-битный SHA-1 хеши в sha1sum формат.

Расширение файла ".md5" или файл с именем "MD5SUMS" указывает файл контрольной суммы, содержащий 128-битные MD5 хеши в md5sum формат.

Расширение файла ".sfv" указывает на файл контрольной суммы, содержащий 32-битные контрольные суммы CRC32 в простая проверка файла формат.

Файл "crc.list" указывает файл контрольной суммы, содержащий 32-битные контрольные суммы CRC в формате brik.

По состоянию на 2012 год рекомендуется использовать SHA-2 или же SHA-3 для создания новых дайджестов целостности файлов и для принятия дайджестов MD5 и SHA1 для обратной совместимости, если более сильные дайджесты недоступны. Теоретически более слабый SHA1, более слабый MD5 или гораздо более слабый CRC ранее обычно использовались для проверки целостности файлов.[2][3][4][5][6][7][8][9][10]

Контрольные суммы CRC нельзя использовать для проверки подлинности файлов, поскольку CRC32 не является стойкий к столкновениям хэш-функция - даже если файл хеш-суммы не был изменен, для злоумышленника вычислительно тривиально заменить файл тем же дайджестом CRC, что и исходный файл, что означает, что злонамеренное изменение в файле не обнаруживается CRC сравнение.

Рекомендации

Смотрите также