Hash-генератор

Считайте MD5, SHA-1, SHA-256, SHA-384 и SHA-512 из любого текста. Всё работает в браузере — ввод никуда не уходит.

Полезно для контрольных сумм файлов или сообщений, сравнения payload-ов и детерминированных ID из текста.

Хеши

MD5
MD5 hash will appear here.
SHA-1
SHA-1 hash will appear here.
SHA-256
SHA-256 hash will appear here.
SHA-384
SHA-384 hash will appear here.
SHA-512
SHA-512 hash will appear here.
Type input above and the hashes will compute live.

Когда что использовать

  • SHA-256 — the default choice for most checksums, content fingerprints and digital signatures today.
  • SHA-384 / SHA-512 — same family, larger output. Common in JWT (HS384/HS512) and some PKI contexts.
  • SHA-1 — legacy. Still used for git object IDs and a few protocols, but not safe for collision-resistant signatures anymore.
  • MD5 — checksum-only. Convenient for non-security uses like detecting accidental file corruption. Broken for any cryptographic purpose.

Не для хеширования паролей

Ни MD5, ни SHA-1, ни SHA-2 не подходят для хранения паролей. Используйте медленный, memory-hard алгоритм с уникальной солью на пользователя: bcrypt, scrypt или argon2id. Иначе атакующий переберёт утёкшую базу за минуты.

Примеры

Пустая строка:

MD5      d41d8cd98f00b204e9800998ecf8427e
SHA-1    da39a3ee5e6b4b0d3255bfef95601890afd80709
SHA-256  e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

UTF-8 строка hello world:

MD5      5eb63bbbe01eeed093cb22bb8f5acdc3
SHA-1    2aae6c35c94fcfb415dbe95f408b9ce91ee846ed
SHA-256  b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9

Частые вопросы

Можно ли использовать это для хеширования пароля?

Нет. MD5, SHA-1 и SHA-2 слишком быстрые — современный GPU перебирает их миллиардами попыток в секунду. Используйте алгоритм для паролей с регулируемой стоимостью: argon2id, bcrypt или scrypt, всегда с уникальной солью на пользователя.

Безопасен ли MD5 хоть для чего-то?

Для не-секьюрити задач — например, обнаружения случайных повреждений данных — да. Для всего, где нужна устойчивость к коллизиям (подписи, content addressing, дедупликация при возможном влиянии атакующего), — нет.

Почему мой хеш отличается от хеша другого инструмента?

Обычно из-за кодировки. Один и тот же текст в UTF-8 и UTF-16 даёт разные байты и, значит, разные хеши. Замыкающие переводы строк тоже важны — копирование из файла часто добавляет их.

Что делает ввод Hex bytes?

Считает ввод сырой последовательностью байт в шестнадцатеричной записи (например, deadbeef = 4 байта 0xde 0xad 0xbe 0xef), а не строкой для UTF-8 кодирования. Полезно, когда нужно хешировать конкретный бинарный контент, а не текст.

Отправляется ли мой ввод куда-нибудь?

Нет. SHA-1/256/384/512 используют API браузера crypto.subtle.digest, а MD5 — небольшую встроенную реализацию. Всё работает локально.

Связанные инструменты