Использование криптографии для идентификации
Криптография не только используется для скрытия секретов, она также может быть использована для идентификации данных отправленныех через незащищенную сеть – такую как Интернет. Этот процесс начинается с проверки – действительно ли ваша копия сегмента данных соответствует запрошенной вами.
Хэширование
Хэширование это математический процесс преобразования данных любого размера в данные фиксированной длины, изветный как «хеш» (другие названия – дайджест сообщения, хеш-коды, хеш-суммирование или хеш-значения).
Хеширование функцирует только в одном направлении, делая невозможными попытки проследить оригинальные данные из получившихся результатов хеширования. Цель хеширования – не сохранять содержимое информации, а создать уникальную характеристику для кажого сегмента данных. Когда файл размещается в Интернете, автор может указать хеш-значения для этого файла. Например, здесь указана некоторая информация, размещенная авторами шифровальных программ GnuPG на своем сайте:
Каждый длинный ряд чисел и букв с правой стороны это хеш (в данном случае выполнен хеширующей программой под названием SHA-1), текст с правой стороны – это название файла. Если вы загрузите одну из этих программ с сайта GnuPG, затем запустите свою собственную копию программы SHA-1 для загруженного файла и получите хеш – два хеш-значения будут идентичными, если ваш файл полностью соотвествует оригиналу.
Вариации одного бита данных в двух идентичных файлах, будет выражаться в полностью отличающихся хеш-значениях, так что результатом любых изменений файла в период между двумя хеш-операциями будут различные хеш-значения, показывающие, что данные были повреждены и им нельзя доверять.
Было разработано большое число алгоритмов хеширования; наиболее распространенными являются алгоритмы под названиями MD5, SHA-1 и SHA-2. Алгоритмы MD5 и SHA-1 находятся в общем пользовании, в обоих з них были найдены уязвимости. При определенных обстоятельствах, могут возникнуть «коллизии», когда две части различной информации могут сгенерировать однаковое хеш-значение (хотя и при специально контролируемых условиях).
Эта уязвимость в алгоритме хеширования MD5 были использована вредоносной программой для атаки на компьютеры с ОС Microsoft Windows. Так как ни один алгоритм не может гарантировать, что он создаст уникальные хеш-значения, то они считаются «взломанными» и не должны использоваться. Правительство Соединенных Штатов требует, чтобы все хеширование осуществлялось с использованием новейшего алгоритма SHA-2, в котором не был обнаружено подобных уязвимостей.
- По материалам The Open University.
- Перевод thingshistory.com. Использовать только с разрешения!