Контрольная сумма (хеш-значение) — это результат хеширования электронного сообщения с применением хеш-функции. Этот процесс преобразует сообщение произвольной длины в фиксированную строку символов.
Ключевые свойства хеширования:
- Односторонность: Невозможно получить исходное сообщение по его хешу.
- Детерминированность: Одинаковые сообщения всегда дают один и тот же хеш.
- Устойчивость к коллизиям: Найти два разных сообщения с одинаковым хешем крайне сложно.
Хеширование используется для:
- Проверки целостности данных: Хеш-значение позволяет обнаружить изменения в электронном документе.
- Обеспечения безопасности: Хранение хешей паролей вместо открытого текста повышает безопасность.
- Электронных подписей: Хеширование используется для создания электронных подписей, которые подтверждают подлинность сообщений.
Для чего используется хеш-таблицы?
Хеш-таблицы — это оптимизированные структуры данных для хранения пар ключ-значение.
- Хеш-функция трансформирует ключи в позиции в массиве.
- Хеш-таблица уменьшает время доступа к данным за счет прямого адресования через хеш-функцию.
- В отличие от простых структур данных, хеш-таблицы включают логику для обработки столкновений, обеспечивая эффективный поиск и вставку.
Какие требования предъявляются к хэш функциям которые используются при хранении паролей?
Хэш-функции для защиты паролей должны противостоять коллизиям первого рода, то есть невозможности подобрать два разных сообщения с одинаковым хэшем.
Это гарантирует, что при хранении паролей злоумышленники не смогут подобрать их — даже если получат доступ к хэшированному значению.