UltKit
Изображения11
PDF13
Документы и данные7
Видео6
Аудио4
Другие инструменты22

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

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

Символов: 0 · слов: 0 · строк: 0

MD5не для безопасности
—
SHA-1не для безопасности
—
SHA-256
—
SHA-384
—
SHA-512
—

Символов: 0 · слов: 0 · строк: 0

Всё работает в этой вкладке браузера. Ваш текст никуда не загружается и не сохраняется.

Размеры дайджестов

Длины и дайджесты пустой строки вычислены собственной реализацией MD5 этой страницы и Web Crypto API при сборке страницы.

АлгоритмБит в дайджестеДлина в hexБит в блокеСтатусХеш пустой строки
MD512832512Взломан: коллизии найдены в 2004 годуd41d8cd98f00b204e9800998ecf8427e
SHA-116040512Взломан: коллизия показана в 2017 годуda39a3ee5e6b4b0d3255bfef95601890afd80709
SHA-25625664512Надёжный (SHA-2)e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
SHA-384384961024Надёжный (SHA-2)38b060a751ac96384cd9327eb1b1e36a21fdb71114be07434c0cc7bf63f6e1da274edebfe76f65fbd51ad2f14898b95b
SHA-5125121281024Надёжный (SHA-2)cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e

Пять алгоритмов, два из них устарели

Хеш-функция превращает входные данные любого размера в «отпечаток» фиксированной длины. Если изменить один символ, примерно половина битов результата меняется, поэтому даже «UltKit» и «ultkit» дают совершенно разные хеши. MD5, опубликованный Роном Ривестом в RFC 1321 в 1992 году, выдаёт 128 бит (32 шестнадцатеричных символа). В 2004 году Сяоюнь Ван с коллегами показали, как построить два разных входа с одинаковым хешем MD5, а к 2012 году вредоносная программа Flame использовала коллизию MD5, чтобы подделать сертификат подписи кода Microsoft. SHA-1 (160 бит) постигла та же участь, когда Google и CWI Amsterdam в 2017 году опубликовали первую реальную коллизию, SHAttered. Оба алгоритма помечены здесь как «не для безопасности».

SHA-256, SHA-384 и SHA-512 относятся к семейству SHA-2, описанному NIST в FIPS 180-4; практических атак на них не известно. SHA-256 используется по умолчанию для загрузок программ, в новом формате объектов Git, сертификатах TLS и в Bitcoin. MD5 и SHA-1 по-прежнему подходят для задач без злоумышленника, например для выявления случайных повреждений или поиска дубликатов файлов, поэтому многие страницы загрузки до сих пор указывают их.

Почему хеширование — это не шифрование

Шифрование по замыслу обратимо: у кого есть ключ, тот получит исходные данные. У хеша ключа нет, и обратить его нельзя, потому что каждому хешу соответствует бесконечно много входов. Но это не делает хеш надёжным хранилищем секретов. Если злоумышленник видит SHA-256 короткого или распространённого значения, он просто хеширует варианты, пока один не совпадёт, а готовые таблицы покрывают миллиарды известных паролей. Быстрые хеши создаются быстрыми, и современные GPU перебирают миллиарды вариантов SHA-256 в секунду.

Поэтому храните пароли с помощью намеренно медленного хеша с солью, такого как Argon2, bcrypt или scrypt, а не обычного MD5 или SHA-256, а сами пароли создавайте в генераторе паролей. Эта страница нужна для того, что быстрые хеши делают хорошо: проверить, что скачанный файл совпадает с контрольной суммой издателя, сравнить два файла, не открывая их, или проверить хеш, вычисленный вашим кодом. Текст хешируется как UTF-8 без завершающего перевода строки; обычно именно поэтому результат отличается от echo "text" | sha256sum в терминале. В разделе инструменты разработчика на одном примере сравниваются хеширование и обратимые кодировки.

Часто задаваемые вопросы

Как проверить скачанный файл по контрольной сумме SHA-256?
Выберите файл в разделе «Хеш файла», затем сравните строку SHA-256 со значением на сайте издателя. Должен совпасть каждый символ; шестнадцатеричная запись в верхнем регистре меняет только вид букв от a до f.
Можно ли расшифровать хеш MD5 или SHA-256?
Нет, расшифровывать нечего. Сайты, которые обещают обратить хеш, ищут его в таблицах ранее хешированных строк, а это работает только для коротких или распространённых значений.
Зачем нужен MD5, если он взломан?
Многие системы по-прежнему публикуют контрольные суммы MD5, и случайные изменения он обнаруживает вполне надёжно. Он взломан только против злоумышленника, который может намеренно создать файлы с одинаковым хешем.
Какой хеш MD5 у пустой строки?
d41d8cd98f00b204e9800998ecf8427e. Это значение обычно означает, что программа хешировала пустые данные, например потому, что файл не загрузился до вычисления хеша.
SHA-512 надежнее, чем SHA-256?
Оба не взломаны и недоступны для перебора. У SHA-512 длиннее результат, и на 64-разрядных процессорах он может работать быстрее, но SHA-256 чаще ожидают для контрольных сумм и подписей.