onlinetools.dev

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

MD5, SHA-1, SHA-256, SHA-512 и HMAC — всё считается в браузере

Работает локально
loading…
Об этом инструменте

Вычисляйте дайджесты MD5, SHA-1, SHA-256, SHA-384 и SHA-512 для любого текста, а также подписи HMAC с ключом — прямо в браузере. Семейство SHA и HMAC используют Web Crypto API — те же проверенные примитивы, которые ваш браузер применяет для TLS, — а MD5 (который Web Crypto намеренно не включает) поставляется как небольшая локальная реализация для работы с устаревшими контрольными суммами.

Хэши обновляются на лету по мере набора, и все алгоритмы вычисляются одновременно, поэтому сверка значения с контрольной суммой в любом алгоритме, который выбрала страница загрузки, не требует никаких настроек. Режим HMAC добавляет поле секретного ключа для проверки подписей вебхуков — GitHub, Stripe и большинство провайдеров вебхуков подписывают данные с помощью HMAC-SHA256.

Поскольку ввод никогда не покидает страницу, здесь безопасно хэшировать то, что нельзя было бы вставить в онлайн-сервис: данные API, пароли, которые вы сверяете со списком утёкших хэшей, внутренние документы.

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

Какой алгоритм хэширования выбрать?
Для всего, что сегодня имеет отношение к безопасности: SHA-256 или сильнее. MD5 и SHA-1 сломаны в части стойкости к коллизиям — можно сконструировать два разных входа с одинаковым дайджестом, — поэтому они выживают только для контрольных сумм без злоумышленника и совместимости с устаревшими протоколами.
Почему MD5 вообще всё ещё предлагается?
Потому что вы всё ещё с ним сталкиваетесь: ETag, ключи кэша, манифесты файлов, старые колонки баз данных. Для проверки таких значений приходится вычислять MD5 независимо от его криптографического статуса. Просто не проектируйте ничего нового вокруг него.
Что такое HMAC и чем он отличается от обычного хэша?
HMAC подмешивает секретный ключ в хэширование, поэтому создать или проверить дайджест могут только владельцы ключа. Обычный хэш доказывает целостность («эти данные не изменялись»); HMAC вдобавок доказывает подлинность («это сделал кто-то с ключом»). Повседневный пример — проверка подписей вебхуков.
Хэширование — это то же самое, что шифрование пароля?
Нет, и быстрые хэши вроде SHA-256 — неподходящий инструмент для хранения паролей: атакующие могут перебирать миллиарды вариантов в секунду. Для хранения паролей нужен намеренно медленный алгоритм с солью: bcrypt, scrypt или Argon2.
Похожие инструменты