Генератор хешей

Работает офлайнНичего не загружаетсяБесплатно, без регистрации
С ключом каждая строка ниже становится HMAC — тем, чем подписывают вебхуки и API-запросы.
—
—
—
—
—
—

Хеширование выполняется на вашем устройстве через Web Crypto API. Файлы никуда не загружаются.

Считайте SHA-1, SHA-256, SHA-384, SHA-512, MD5 и CRC32 для текста или файлов — все сразу. Файлы хешируются локально независимо от размера, а результат можно сразу сверить с опубликованной контрольной суммой.

Как проверить загрузку

  1. Скопируйте контрольную сумму SHA-256, опубликованную рядом с загрузкой.
  2. Перейдите на вкладку «Файл» и перетащите скачанный файл.
  3. Вставьте опубликованную сумму в поле сравнения.

Совпадение означает, что ваша копия побайтно совпадает с тем, что описывает контрольная сумма. Это ровно настолько ценно, насколько надёжен источник самой суммы: если и файл, и сумма пришли с одного скомпрометированного зеркала, они прекрасно сойдутся. Берите сумму с собственного сайта проекта по HTTPS, а не со страницы загрузки, на которую вас перенаправили.

Справочник по алгоритмам

АлгоритмРезультатСостояние
SHA-1160 бит, 40 hex-символовСломан — только legacy
SHA-256256 бит, 64 hex-символаТекущий стандарт
SHA-384384 бита, 96 hex-символовНадёжен
SHA-512512 бит, 128 hex-символовНадёжен, быстр на 64 битах
MD5128 бит, 32 hex-символаСломан — только для опубликованных сумм
CRC3232 бита, 8 hex-символовОбнаружение ошибок, никогда не защита

Обратите внимание на лавинный эффект: измените один символ входа — и перевернётся примерно половина выходных бит. Хеши «hello» и «hellp» различаются в 131 бите из 256. Хеша, «близкого» к другому, не бывает: он либо совпадает точно, либо не говорит ничего.

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

Стоит ли пользоваться выводом MD5?

Только для того, с чем он до сих пор справляется: сверить скачанный файл с контрольной суммой MD5, которую опубликовал проект. MD5 криптографически сломан — два разных файла умеют приводить к одному хешу с 2004 года — поэтому совпадение доказывает, что файл не повреждён, а не что его никто не подменил. Именно поэтому Web Crypto API не включает MD5, и этот инструмент везёт собственную реализацию. Если издатель публикует ещё и SHA-256, берите её.

Для чего нужна контрольная сумма?

Чтобы убедиться, что файл дошёл целым. Проекты публикуют SHA-256 каждой загрузки; вы хешируете свою копию и сравниваете. Если в пути изменился хотя бы байт, хеш отличается полностью. Обратите внимание, что именно это подтверждает: что ваша копия совпадает с выданной вам контрольной суммой, — то есть надёжность равна надёжности канала, по которому пришла сама сумма.

Можно ли восстановить исходный текст из хеша?

Нет. Хеширование одностороннее по замыслу, а длина результата фиксирована независимо от размера входа, поэтому информация неизбежно теряется. Атакующий может лишь захешировать миллиарды вероятных вариантов и искать совпадение — поэтому хешировать пароли обычной функцией SHA недостаточно: им нужен медленный алгоритм с солью, такой как Argon2 или bcrypt.

Какой вариант SHA выбрать?

SHA-256 практически для всего — это отраслевое умолчание, он широко поддерживается и не имеет известных практических слабостей. SHA-512 на практике не заметно безопаснее, но быстрее на 64-битном железе для больших входов. SHA-1 сломан и годится лишь для сверки с устаревшими системами, которые его ещё публикуют.

Похожие инструменты