TanodTools
RU

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

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

Работает полностью в браузере

Хеш
Вывод

Текст до 5 МБ. Файлы до 200 МБ, они читаются в память на этом устройстве.

Как получить хеш

  1. Введите или вставьте текст либо переключитесь на «Файл» и выберите файл. Все пять хешей вычисляются сразу.
  2. Выберите формат вывода: hex строчными, hex прописными или Base64.
  3. Чтобы проверить скачанный файл, вставьте опубликованную контрольную сумму в поле Сравнить; подходящий алгоритм будет подсвечен. Скопируйте хеш или скачайте все хеши файлом .txt.

Для чего нужен хеш

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

Чтобы проверить скачанный файл, найдите контрольную сумму, которую издатель указал рядом с ним (чаще всего SHA-256), перетащите файл сюда и вставьте сумму в поле «Сравнить». Если значения совпали, файл байт в байт совпадает с тем, что хешировал издатель. Совпадение доказывает, что это именно тот файл, лишь если вы доверяете странице, с которой взята контрольная сумма.

Хеши SHA-1 и SHA-2 (SHA-256, SHA-384, SHA-512) вычисляются функциями Web Crypto вашего браузера. Браузеры не поддерживают MD5, поэтому на странице есть собственный код MD5: он читает файлы частями и показывает ход выполнения для больших файлов. MD5 и SHA-1 оставлены только для совместимости со старыми контрольными суммами.

Советы

Вопросы и ответы

Мой текст или файл загружается на сервер?

Нет. Хеши вычисляются в вашем браузере: SHA встроенными функциями Web Crypto, а MD5 кодом на этой странице. Ничего не отправляется и не сохраняется, а при закрытии вкладки всё стирается.

Безопасно ли использовать MD5 или SHA-1?

Для защиты данных нет. Оба алгоритма взломаны: можно намеренно создать два разных входа с одинаковым хешем MD5 или SHA-1. Для обнаружения случайных повреждений, например чтобы убедиться, что файл скачался целым, они по-прежнему годятся. Если данные может подменить злоумышленник, а также для подписей используйте SHA-256 или более стойкий алгоритм.

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

Хеш пароля увидеть можно, но простой хеш — неверный способ хранения паролей: такие быстрые хеши можно перебирать миллиарды раз в секунду. Для хранения паролей нужен медленный алгоритм с солью, например Argon2, scrypt или bcrypt, который выполняется на вашем сервере.

Хеширование — то же самое, что шифрование?

Нет. Шифрование обратимо с помощью ключа. Хеш — это отпечаток фиксированной длины, из которого нельзя восстановить исходные данные; найти вход можно только подбором и сравнением. Одинаковые данные всегда дают одинаковый хеш, а изменение одного символа даёт совершенно другой.

Почему мой хеш не совпадает с полученным в командной строке?

Проверьте, нет ли перевода строки в конце: echo "text" | sha256sum хеширует текст вместе с символом новой строки, а это поле хеширует ровно то, что вы ввели. Текст хешируется как UTF-8, а переводы строк в поле — одиночные символы LF, поэтому текст, скопированный из файла Windows (CRLF), может дать другой результат. Для точного совпадения хешируйте сам файл в режиме «Файл».

Что здесь означают hex и Base64?

Это два способа записи одних и тех же байтов хеша. Hex использует два символа на байт (SHA-256 — это 64 hex-символа); Base64 короче (44 символа) и применяется, например, в атрибутах Subresource Integrity. Поле «Сравнить» принимает любой из форматов.