Информационная безопасность
Хэш функции
Хэш-функция (Хэширование) - эта такая функция, которая необходима для приобретения хэш-кода файла, сообщения или каких либо других данных.
Условия, которым должна удовлетворять хэш-функция:
- должна быть чувствительна к различным преобразованиям в тексте.
- должна обладать свойством необратимости.
- должно быть практически невозможным совпадение двух файлов.
Коллизия хэш-функции - это два разных входных данных А и В таких, что F(А)=F(В). Для многих хэш-функций происходят коллизии, однако для некоторых их возникновение практически невозможно.
Области применения.
Хэш-функции широко применяются в современной криптографии.
Требования для того, чтобы хэш-функция была криптографически стойкой:
- Стойкость, необратимость к восстановлению прообраза: для имеющегося значения хэш-функции n должно быть невозможно найти блок данных Х, для которого H(X)= n
- Стойкость к коллизиям первого рода: для имеющегося сообщения L должно быть вычислительно невозможно подобрать другое сообщение T, для которого H(T)=H(L)
- Стойкость к коллизиям второго рода.
Криптографические хэш-функции делятся на:
- хэш-функции без ключа
- хэш-функции c ключом MАC
Хэш-функцией с ключом MAC- такая функция Н(к,х), которая удовлетворяет условиям:
1) х - любой длины;
2) значение H(к,х) - фиксированной длины;
3) при различных к и х без труда можно посчитать H(к,х);
4) для различных х сложно вычислить H(к,х), когда к неизвестно;
5) сложно установить к даже при большом числе неизвестных пар {х, H(к,х)} при выбранном наборе к.
Электронная цифровая подпись
ЭЦП - это шифрование данных алгоритмом с открытым ключом. Производится шифрование не самого сообщения, а значение хэш-функции взятой от сообщения.
Плюсы этого метода:
Легче производить вычислении, т.к файл намного больше его хэша.
Повышается криптостойкость, можно подобрать подпись под хэш документа, а не под сообщение.
Обеспечивается совместимость. Хэш-функцию можно использовать для преобразования произвольного входного текста в подходящий формат.
Контро́льная су́мма - такое значение, которое посчитано по набору данных, определенным алгоритмом и необходимое для контроля полноты данных при передаче, хранении.
Контрольная сумма является хэш-функцией, которая необходима для нахождения контрольного кода. Контрольный код используется для обнаружения ошибок при хранении данных и их передаче . Перед началом передачи сообщения в конец блока данных добавляется значение контрольной. Такой контроль хорошо происходит в специальном цифровом оборудовании.
Геометрическое хэширование- используется в компьютерной графике и вычислительной геометрии для решения задач на плоскости или в трёхмерном пространстве. Хэш-функция получает на вход метрическое пространство и разделяет его, создавая сетку из клеток. Таблица в этом случае является массивом с двумя или более индексами, называется файл сетки.
Хэш-таблица - это структура данных, которая позволяет хранить пары вида (ключ,хэш-код) и использует операции вставки, поиска, удаления.
Задача хэш-таблиц - ускорение поиска. Пример: расположение в алфавитном порядке слов в словаре. Хэш-кодом является первая буква слова, при поиске анализируется не целиком словарь, а только нужная буква.
MD5 (Message-Digest algorithm) - это алгоритм хэширования, который разработал Р. Л. Ривест в 1991 г. md5 шифрует различные данные в формате 128-бит , которые возможно подделать. С помощью MD5 можно шифровать пароли, сообщения, другие данные. Если MD5 двух файлов совпали, то это может означать, что файлы одинаковые, если у сообщения не изменилась MD5, то можно утверждать, что и сообщение не изменилось..
SHA-1 (Secure Hash Algorithm 1 )- это алгоритм хэширования. Для входных данных любой длины алгоритм генерирует 160-битное хэш-значение. Данный алгоритм широко применяется в криптографических приложениях и протоколах, предложен в качестве основного для государственных учреждений США.
- Войдите на сайт для отправки комментариев