Проверка целостности файлов
Теоретическое вступление на тему проверки целостности файлов
Целостность информации (также целостность данных) — термин в информатике и теории телекоммуникаций, который означает, что данные полны, условие того, что данные не были изменены при выполнении любой операции над ними, будь то передача, хранение или представление.
В основном нарушения целостности можно разделить на:
1. Неумышленное.
2. Умышленное.
Неумышленные искажения могут возникать в результате сбоев при передаче данных в Информационных Системах.
Такие искажения могут возникать периодически при передаче данных по сети или записи их на устройства хранения.
Практически всегда с такого рода ошибками справляются устройства которые участвуют в процессе обмена данных: маршрутизаторы, сетевые адаптеры, жёсткие диски т.д.
И всё же возникают случаи когда у вас может оказаться искажённая или неработоспособная копия информации(файла).
Умышленные искажения вогут возникать в результате умышленного действия третьей стороны с какой-либо целью и могут быть рассмотрены как разновидность аттаки "Человек посередине".
Для проверки целостности данных на данный момент чаще всего используют электронные цифровые подписи и значения хэш-функций различных алгоритмов хэширования, таких как MD5, SHA1, SHA2 и других.
Хэш-функции преобразуют совокупность данных в последовательность чисел. Если
данные изменятся, то и последовательность чисел, генерируемая
хеш-функцией тоже изменится.
То есть для подтверждения целостности имеющейся у вас информации вам достаточно сравнить результат полученной вами хэш-функции с результатом хэш-функции полученным с оригинала.
Например мы скачиваем установочный образ операционной системы Debian(debian-7.2.0-amd64-netinst.iso).
Далее мы получаем значение хэш-функции MD5 от скаченного файла и
сравниваем его с соответсвующим значением на официальном сайте Debian - MD5SUM. Там же выложены значения и других хэш-функций: SHA1SUMS, SHA256SUMS, SHA512SUMS и мы можем использовать и их для проверки.
Совпадение значений хэш-функций говорит о том, что у нас точная копия файла который находится на сервере.
Таким же образом можно проверять целостность любых других электронных материалов, например книг, музыки, видео и прочих.
В очень известном сетевом протоколе BitTorrent хэш-функция SHA1 используется для проверки сегментов скачиваемых данных.
Использованные материалы:
Целостность информации
Контрольная сумма
Хеширование
MD5
SHA-1
SHA-2
Электронная цифровая подпись
PGP
Электронная цифровая подпись для чайников: с чем ее есть, и как не подавиться. Часть 1
Электронная подпись для чайников: с чем ее есть и как не подавиться. Часть 2
Электронная цифровая подпись для чайников: с чем ее есть и как не подавиться. Часть 3
ЗАЩИТА ИНФОРМАЦИИ ПРИ КОДИРОВАНИИ И ПЕРЕДАЧЕ ДАННЫХ
BitTorrent