Главная›Инструменты›Разработка и данные›Кодирование и данные›Генератор хешей и контрольных сумм

Генератор хешей и контрольных сумм

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

Перетащите файл сюда — он прочитается в браузере

Потолок — около 512 МБ: SHA в браузере считается от файла целиком в памяти.

Считаю…
АлгоритмДлинаЗначение

Сверить с эталоном

Алгоритм определится по длине строки.

Поле пустое.

Чем отличаются алгоритмы

АлгоритмДлинаГде встречается
CRC328 знаков Целостность при передаче: zip-архивы, сетевые кадры. Ловит случайную порчу, от подделки не защищает.
MD532 знака Контрольная сумма дистрибутива, сверка копий, ключ кэша. Пары файлов с одинаковой суммой подбираются, поэтому для подписи он закрыт.
SHA-140 знаков Идентификаторы коммитов в git и старые сертификаты. Коллизия для него показана в 2017 году, новые системы на нём не строят.
SHA-25664 знака Сегодняшний рабочий стандарт: проверка дистрибутивов, подпись вебхуков, TLS-сертификаты, блокчейны.
SHA-38496 знаков Тот же алгоритм, что и SHA-512, с обрезанным результатом. Просят там, где нужен запас по стойкости и короткая запись.
SHA-512128 знаков Длинный вариант семейства. На 64-разрядных машинах считается быстрее SHA-256 и берётся, когда важен запас на годы вперёд.

Шесть сумм и чем они различаются

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

Работают эти шесть по-разному. CRC32 — контрольная сумма от помех связи: она ловит случайное искажение бита и совсем не защищает от подделки, потому что подобрать под неё данные легко. MD5 и SHA-1 — криптографические функции, у которых нашли способ строить коллизии, то есть два разных файла с одинаковым отпечатком. Семейство SHA-2 таких брешей пока не имеет.

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

Проверка данных
Контрольная сумма проверяет целостность так же, как сверка счёта в бухгалтерии. Фото: Raimond Spekking, CC BY-SA 4.0.
ФункцияДлинаДля чего годится
CRC328 знаковЛовит случайные искажения
MD532 знакаТолько сверка файлов
SHA-140 знаковУстарел для защиты
SHA-25664 знакаРабочий стандарт
SHA-512128 знаковТам, где нужен запас

От Петерсона до проекта SHAttered

Идея контрольной суммы старше вычислительных машин: телеграфисты повторяли числа в конце сообщения, банковские клерки сверяли итог колонки. Формально алгоритм циклической проверки описал Уэсли Петерсон в 1961 году, и CRC разошёлся по всем каналам передачи данных.

MD5 предложил Рональд Ривест в 1991 году, и полтора десятилетия он был стандартом де-факто. В 2004 году китайская группа под руководством Ван Сяоюнь показала способ строить коллизии за часы работы обычного компьютера. С этого момента подписывать что-либо MD5 стало бессмысленно.

SHA-1 выпустило Агентство национальной безопасности США в 1995 году. Теоретические атаки на него появились к 2005-му, а в 2017 году Google вместе с институтом CWI показала реальную коллизию: два разных PDF-файла с одинаковым отпечатком. Проект назвали SHAttered, и после него браузеры и системы контроля версий начали отказываться от SHA-1. Отдельный класс задач — дедупликация: хранилища сравнивают отпечатки блоков и не записывают одинаковое дважды, экономя место без потери данных.

Сургучная печать
Печать на письме решала ту же задачу: подтвердить, что содержимое не подменили. Фото: Викисклад, общественное достояние.
Перфолента
На перфоленте контрольную сумму пробивали отдельной дорожкой. Фото: Wtshymanski, CC BY-SA 3.0.

Как сверить файл и чего не делать хешем

Вставьте текст или выберите файл — суммы посчитаются в браузере, никуда не отправляясь. Для проверки скачанного дистрибутива сравните полученный SHA-256 с тем, что опубликован на сайте разработчика: совпали все шестьдесят четыре знака — файл целый.

Сравнивать удобно копированием: глазами человек надёжно замечает разницу в начале и в конце строки и пропускает её в середине. Именно на этом строятся подмены, где первые и последние символы совпадают.

Для хранения паролей обычные хеши не годятся: они слишком быстрые, и перебор идёт миллиардами вариантов в секунду. Там нужны намеренно медленные функции вроде bcrypt или argon2 с солью. Оценить стойкость самого пароля поможет проверка надёжности, а собрать новый — генератор паролей.

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

Сумм в расчётешесть
CRC описан1961
MD51991
Коллизия MD52004
SHA-11995
Коллизия SHA-12017, SHAttered
Рабочий стандартSHA-256
Для паролейbcrypt, argon2

Как пользоваться

Поле ключа включает HMAC: подпись вебхука проверяется тем же алгоритмом, каким её ставил отправитель. Отдельный блок сверяет вашу сумму с эталоном: вставьте строку из README, и инструмент сам узнает алгоритм по длине и скажет, совпало ли. Файл читается в браузере и никуда не отправляется.

  1. Текст считается на лету при каждом изменении. Для файла есть вторая вкладка: перетащите его в рамку или нажмите кнопку выбора.
  2. Шестнадцатеричный вид строчными — то, что просят чаще всего. Переключатели рядом дают заглавные буквы и Base64.
  3. Впишите ключ в поле рядом — семейство SHA пересчитается как HMAC. У MD5 и CRC32 подписи нет, они останутся обычными суммами.
  4. Вставьте контрольную сумму из README или из письма в нижнее поле. Алгоритм определится по длине строки, ответ будет однозначным.

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

Чем MD5 отличается от SHA-256?

MD5 даёт 128 бит и считается быстрее, но для него давно умеют подбирать пары разных файлов с одинаковой суммой. Поэтому MD5 годится как контрольная сумма против случайной порчи при скачивании и не годится там, где кто-то может подделать файл намеренно. SHA-256 даёт 256 бит, известных способов подобрать коллизию у него нет, и именно его сегодня просят для проверки дистрибутивов и подписи запросов.

Почему у одного файла разные суммы на разных сайтах?

Чаще всего дело в переводах строки. Текстовый файл, сохранённый в Windows, содержит CRLF, а тот же файл из Linux — только LF: байты разные, значит и хеш другой. Второй частый случай — BOM в начале UTF-8 файла. Инструмент считает ровно те байты, которые лежат в файле, ничего не нормализуя.

Что такое HMAC и когда он нужен?

Это хеш с секретным ключом. Сервис, отправляющий вебхук, считает HMAC от тела запроса своим ключом и кладёт результат в заголовок. Получатель считает то же самое своим экземпляром ключа и сравнивает: совпало — запрос действительно от отправителя и тело не менялось по дороге. Без ключа обычный хеш такой гарантии не даёт, потому что подделать его вместе с телом может кто угодно.

Файл правда никуда не уходит?

Да. SHA считает встроенный в браузер криптографический модуль, MD5 и CRC32 — код самой страницы. Ни одного сетевого запроса при расчёте не происходит, страницу можно открыть и отключить интернет.

Есть ли предел размера файла?

Около 512 МБ. SHA в браузере умеет считать только от целого куска данных в памяти, поэтому файл целиком загружается в оперативную память вкладки. MD5 и CRC32 считаются кусками по мере чтения и на большом файле ведут себя спокойнее.

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

Нет, преобразование одностороннее. Короткие и предсказуемые строки вроде «123456» находятся по готовым словарям за секунды, поэтому хранить пароли простым хешем нельзя — для этого есть отдельные медленные функции с солью, bcrypt и argon2.

Что показывает CRC32?

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

Спросите нейросети об инструменте

Отвечает DeepSeek по данным этой страницы и тому, что у вас сейчас на экране: что делает, как устроен, ограничения

Больше возможностей: Нейросеть для кода, написать, найти ошибку, объяснить.

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

Проверка надёжности пароля

Стойкость в битах, время перебора и разбор слабых мест: словарные слова под заменой символов, клавиатурные ряды, годы и повторы.

Открыть
Генератор паролей

Пароль длиной до 64 символов с выбором наборов и отсевом похожих знаков. Показывает стойкость в битах и время перебора, делает до 50 паролей пачкой.

Открыть
Сравнить два JSON

Показывает, чем отличаются два ответа API: какие поля появились, пропали и изменились, с путём вида data.items[0].price. Служебные поля можно исключить.

Открыть
Шифр Виженера

Шифрование и расшифровка по ключевому слову, а также шифр Цезаря со сдвигом и Атбаш, русский и латинский алфавиты, таблица Виженера.

Открыть
Сканер QR-кода

Считывает QR-код и штрихкод камерой или с картинки прямо в браузере: ссылка, Wi-Fi, визитка, телефон и номер товара разбираются по полям.

Открыть
JWT-декодер

Разбор токена JWT: заголовок, полезная нагрузка с расшифровкой стандартных полей, сроки выдачи и истечения в датах, проверка структуры. Без отправки на сервер.

Открыть

Ещё инструменты для кода и данных

Base64 и URL, форматтер и сравнение JSON, хеши, регулярные выражения, cron, подсети, UUID, QR-код и Unix-время — в разделе 42 инструмента.