Калькулятор хеша файла

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

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

  1. 1

    Вставьте текст

    Скопируйте содержимое файла или любой текст в текстовое поле. Этот инструмент хеширует текстовый ввод; он не читает файлы с вашего диска.

  2. 2

    Вычислите

    Нажмите кнопку «Вычислить хеши». Тот же самый ввод обрабатывается сразу всеми четырьмя алгоритмами.

  3. 3

    Прочитайте дайджесты

    MD5, SHA-1, SHA-256 и SHA-512 показываются одновременно, строчными шестнадцатеричными символами, готовые к копированию.

  4. 4

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

    Сравните каждый дайджест с контрольной суммой, опубликованной поставщиком, посимвольно. Инструмент показывает дайджесты; сравнение остаётся за вами.

Справочник по хеш-функциям

Алгоритм Длина результата Пригодность для целостности Пригодность для безопасности
MD5 128 бит (32 шестнадцатеричных символа) Годится для базовой проверки целостности Взломан, не использовать для безопасности
SHA-1 160 бит (40 шестнадцатеричных символов) Годится для проверки целостности Взломан, коллизии продемонстрированы
SHA-256 256 бит (64 шестнадцатеричных символа) Рекомендуемое значение по умолчанию По-прежнему считается безопасным
SHA-512 512 бит (128 шестнадцатеричных символов) Часто быстрее на 64-битных системах По-прежнему считается безопасным

Когда что использовать

  • MD5: только для обнаружения случайных повреждений (сбой при чтении с диска, неудачная загрузка). Небезопасен, если злоумышленник может подобрать файл под нужный хеш.
  • SHA-1: устаревшие системы, которые невозможно обновить. Избегайте для всего нового.
  • SHA-256: современный стандарт по умолчанию. Каждый дистрибутив Linux, каждый облачный поставщик, каждый пакетный менеджер публикует SHA-256.
  • SHA-512: когда платформа имеет нативную поддержку 64-битного хеширования, на таком оборудовании он часто на 20-30% быстрее SHA-256, несмотря на больший размер результата.

Типичный сценарий: проверка загрузки

  1. Скачайте файл у поставщика.
  2. Найдите опубликованный поставщиком SHA-256 на странице выпуска.
  3. Если файл текстовый, вставьте его содержимое в этот инструмент и прочитайте его SHA-256. Для двоичных файлов используйте локальную утилиту командной строки (sha256sum в Linux, shasum в macOS, Get-FileHash в PowerShell).
  4. Сравните две строки посимвольно.
  5. Если они различаются, файл повреждён или подменён: удалите его и загрузите заново с официального зеркала.

Частые ошибки

  • Сравнивать только первые 6-8 шестнадцатеричных символов. Злоумышленники с достаточными вычислительными ресурсами могут подделать коллизии по короткому префиксу для слабых алгоритмов, всегда сравнивайте строку целиком.
  • Доверять хешу, опубликованному на той же странице, что и загрузка. Если сайт скомпрометирован, скомпрометировано и то и другое. Когда ставки высоки, используйте отдельный канал (Twitter поставщика, подписанные примечания к выпуску).
  • Считать совпавший MD5 «безопасным». Это доказывает лишь, что файл не был случайно повреждён, но не то, что его не подменили.

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

Да. Текст отправляется на сервер как часть запроса страницы, с помощью которого вычисляются хеши. Он не сохраняется и не добавляется в ссылку на страницу.

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

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

Искусственного ограничения размера нет, но очень большие вставки замедляют страницу и могут упереться в лимиты браузера для текстовых полей. Этот инструмент обрабатывает только текст; для двоичных файлов используйте утилиту, которая читает файл напрямую.

Сопутствующие инструменты

Кодировщик и декодировщик Base58

Кодируйте текст UTF-8 или шестнадцатеричные байты и безопасно декодируйте Base58 с алфавитом Bitcoin, Ripple или Flickr.

Кодировщик файлов Base64

Кодируйте любой файл (PDF, ZIP, изображение, исполняемый файл) в текст Base64 для встраивания в JSON, письма, YAML или data URI. Работает локально в браузере, без загрузки на сервер.

Генератор CSR

Создайте запрос на подпись сертификата в формате PEM и соответствующий закрытый ключ RSA. Укажите общее имя, поля организации и размер ключа (2048, 3072 или 4096 бит).

Кодировщик шифра A1Z26

Кодируйте текст шифром A1Z26 (A=1, B=2, ... Z=26) или декодируйте числовую последовательность обратно в буквы, выбрав разделитель.

Генератор SSL-сертификатов

Создайте самоподписанный сертификат SSL/TLS и закрытый ключ RSA полностью в браузере. Свои Common Name, SAN и срок действия, экспорт в PEM.

Кодировщик и декодировщик Base85

Кодируйте и декодируйте Base85 в варианте Adobe Ascii85, который используется в файлах PostScript и PDF. Компактнее Base64 для двоичных данных.

Инструмент доступен на других языках