Что такое хеширование и зачем нужна "соль"?

Категория: Безопасность

Просмотров: 5

Ответ:

Что такое хеширование?
Хеширование — это процесс преобразования входных данных (например, пароля или файла) в фиксированную строку бит/символов — хеш.

  • Хеш-функция всегда выдаёт одинаковый результат для одинакового ввода.

  • Малейшее изменение входа сильно меняет результат хеша.

  • Хеширование — однонаправленная операция: нельзя (или крайне сложно) восстановить оригинальные данные из хеша.

 Применения хеширования:

  • Проверка целостности файлов (например, контрольные суммы).

  • Хранение паролей в базе данных (не хранить пароль в открытом виде!).

  • Быстрый поиск данных (в хеш-таблицах).

Что такое "соль" и зачем она нужна?
Соль (от англ. salt) — это случайная строка, которая добавляется к паролю перед хешированием.

Зачем это нужно:
1️Защита от радужных таблиц — заранее подготовленных баз для мгновенного нахождения пароля по его хешу. Соль делает такие атаки бесполезными, потому что добавляет уникальность для каждого пароля.
2️Индивидуальность хеша — даже если два человека выбрали одинаковый пароль, но у каждого разная соль, их хеши будут разными.