Язык: Русский Перейти на английский

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

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

Перетащите файлы сюда или
  1. Перетащите один или несколько файлов в пунктирное поле или нажмите «выбрать».
  2. Нажмите «Хэшировать всё» — MD5, SHA-1, SHA-256 и SHA-512 вычисляются для каждого файла.
  3. Скопируйте отдельный хэш любой строки или возьмите SHA-256 всех файлов сразу в формате SHA256SUMS.
  4. Вставьте опубликованную контрольную сумму в поле Verify, чтобы найти, какой файл (если есть) совпадает.
Что это делает?

Инструмент читает ваш файл локально и производит сразу четыре отраслевых дайджеста — MD5, SHA-1, SHA-256 и SHA-512. Используйте SHA-256 для всего нового; MD5 или SHA-1 — только когда публикатор, с которым вы сверяетесь, всё ещё их публикует. Поле Verify принимает любую hex-строку и сообщает, какому из четырёх алгоритмов (если какому-либо) она соответствует, поэтому не нужно заранее знать, какой использовал проект.

Пример

Хэширование файла ubuntu-24.04.1-desktop-amd64.iso (6,114,656,256 bytes) даёт:

MD5     e3a5c61d27d541e09ef0e894c514ad54
SHA-1   0bc9a82a4f7fc19f97cefc8a62e5ef10d2d65f80
SHA-256 c2e6f4dbefb08d47d3e3b41e4bcadce9dcebdf3a47f8c08390d6b8b10b35b1ab
SHA-512 bd4a8f30...d14e97c2 (128 hex chars)

Вставьте опубликованную Ubuntu строку SHA-256 из SHA256SUMS в поле Verify, и вы должны увидеть совпадение.

Почему мой SHA-256 хэш отличается от того, что сообщает сервер?

Несколько распространённых причин расхождения хэшей и ограничений, которые стоит знать:

  • Неправильная граница файла. Хэширование archive.zip и одного файла внутри него даёт разные дайджесты. Публикаторы обычно хэшируют внешний архив.
  • Перезапись окончаний строк. Git на Windows с core.autocrlf=true меняет \n на \r\n при checkout, поэтому файл рабочего дерева больше не соответствует upstream-хэшу. Делайте checkout с core.autocrlf=false или скачайте сырой blob.
  • Hex против Base64. sha256sum выдаёт hex. Некоторые S3 ETag или подписанные манифесты используют Base64. Вставка одного там, где ожидается другое, всегда приводит к провалу.
  • Ограничения памяти браузера. Семейство SHA читает файл целиком в ArrayBuffer, поэтому 4 ГБ ISO может вызвать OOM на мобильном браузере. Попробуйте на десктопе или используйте sha256sum в командной строке для очень больших файлов.
  • Сравнение алгоритмов между собой. SHA-256 (64 hex-символа) несопоставим с SHA-1 (40 символов). Сопоставьте длину алгоритма, прежде чем даже смотреть на содержимое.
  • Завершающий пробел при вставке. Перенос строки, скопированный вместе с hex-дайджестом, делает строку длиной 65 символов вместо 64. Обрежьте перед сравнением.
Часто задаваемые вопросы

В чём разница между MD5, SHA-1, SHA-256 и SHA-512?

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

Почему мой SHA-256 хэш отличается от того, что сообщает сервер?

Обычно по одной из трёх причин: файл был изменён при загрузке (CDN его перекодировал, антивирусный сканер добавил футер, или Git изменил окончания строк на Windows); публикатор хэшировал архив, а вы хэшировали извлечённый файл (или наоборот); или вы сравниваете hex с Base64. Пересчитайте с обеих сторон одним инструментом и сначала проверьте размер файла — если байты отличаются, хэш тоже будет отличаться.

Есть ли ограничение на размер файла?

Ограничение — память вашего браузера, а не инструмента. Семейство SHA здесь читает файл целиком в ArrayBuffer, чтобы передать Web Crypto API, что практически ограничивается несколькими ГБ на большинстве десктопов и гораздо меньше на телефонах. MD5 стримится кусками по 4 МБ, поэтому переносит большие файлы, но общий процесс ограничен памятью.

Соответствует ли это sha256sum или PowerShell Get-FileHash?

Да. Запуск sha256sum file.iso на Linux/macOS или Get-FileHash -Algorithm SHA256 file.iso в PowerShell 5+ даёт тот же hex-дайджест в нижнем регистре, что выводит этот инструмент. Если видите расхождение, убедитесь, что хэшируете одни и те же байты — PowerShell по умолчанию использует SHA-256, а sha1sum / md5sum существуют как собратья для других алгоритмов.

Подходит ли этот инструмент для проверки загрузок Linux ISO?

Да, именно для этого он и предназначен. Перетащите ISO, дождитесь завершения SHA-256, и вставьте ожидаемое значение из файла checksums дистрибутива в поле «Verify against a known hash». Совпадение доказывает, что байты на диске идентичны тем, что подписал публикатор. По возможности всегда дважды проверяйте сам файл checksums через подпись (GPG).

Сохраняете ли вы файлы, которые я здесь хэширую?

Нет. Мы не сохраняем файл, который вы перетаскиваете, и не храним произведённый хэш. Всё отбрасывается, как только вы закрываете или обновляете страницу — никаких логов, никакой записи того, что вы хэшировали. Можете смело перетаскивать чувствительный файл и проверять в DevTools браузера, если хотите.