Хеши MD5 и SHA-256: что это такое и зачем они нужны
Хеш — это «отпечаток» данных. Берёте файл или строку любого размера, а на выходе получаете строку фиксированной длины. По отпечатку нельзя восстановить исходник, зато можно мгновенно проверить, что два файла (или два пароля) — одинаковые. На этом строятся контрольные суммы, хранение паролей и цифровые подписи.
Главное свойство: необратимость и точность
Хеш-функция работает только «в одну сторону», и малейшее изменение входа полностью меняет результат. Вот реальные значения для похожих строк:
MD5("test") = 098f6bcd4621d373cade4e832627b4f6
MD5("test1") = 5a105e8b9d40e1329780d62ea2265d8aНи одного общего символа — это называют «лавинным эффектом». Именно поэтому хешами сверяют файлы: если в скачанном образе изменился хоть один байт, контрольная сумма не совпадёт.
Где хеши применяются
- контрольные суммы скачиваний: рядом с ISO-образами и архивами публикуют SHA-256, чтобы проверить целостность;
- хранение паролей: сервер хранит не пароль, а его хеш (с солью);
- дедупликация и поиск дубликатов файлов;
- подписи и блокчейн — там хеши сшивают блоки друг с другом.
Какой алгоритм выбирать
MD5 (128 бит) давно «сломан» для защиты: подбор коллизий — задача часов. Для проверки целостности не-секретного файла он ещё сгодится, но не более. SHA-1 официально запрещён для подписей после практической атаки 2017 года. Рабочая лошадка сегодня — SHA-256: она в стандартах, сертификатах и повсеместно поддерживается. Для хранения паролей же нужны не «быстрые» хеши, а специальные медленные — bcrypt, scrypt, argon2: скорость перебора у них намеренно задрана вниз.
Как посчитать хеш онлайн
В генераторе MD5 и генераторе SHA-256 вычисление происходит в браузере через Web Crypto API — текст никуда не отправляется. Если нужны сразу все алгоритмы, удобнее мульти-хеш: вставил строку один раз — получил MD5, SHA-1 и SHA-256 рядом. Сверить хеш скачанного файла теперь просто: скопировали значение из контрольной суммы сайта и сравнили.
Генератор MD5 хеша
Генерация MD5 хеша из текста с переключением верхнего/нижнего регистра и сравнением хешей
Генератор SHA-256 хеша
Генерация SHA-256 хеша с использованием Web Crypto API и функциями копирования
Мульти-хеш генератор
Генерация MD5, SHA-1, SHA-256, SHA-512 и CRC32 хешей одновременно из текста или файлов