Что такое формат файла SHA1?
.SHA1 - это текстовый вспомогательный файл контрольной суммы, в котором хранятся один или несколько криптографических дайджестов SHA-1 вместе с соответствующими именами файлов. Его формат следует соглашению GNU sha1sum: каждая строка содержит 40-символьный шестнадцатеричный дайджест в нижнем регистре (представляющий 160 бит / 20 байт), разделитель из двух пробелов (или * для бинарного режима) и имя файла.
SHA-1 был опубликован NIST в апреле 1995 года (FIPS 180-1) и стал стандартным инструментом проверки целостности при распространении программного обеспечения в конце 1990-х и 2000-х годах. Файл .sha1 позволяет пользователю убедиться, что загруженный файл не был поврежден, путем запуска sha1sum -c file.sha1 в Linux/macOS или certutil -hashfile / Get-FileHash -Algorithm SHA1 в Windows.
Важно: SHA-1 криптографически взломан. Google и CWI Amsterdam продемонстрировали практическую атаку коллизией (*SHAttered*) в феврале 2017 года, доказав, что два разных файла могут иметь одинаковый дайджест. NIST еще в 2011 году признал SHA-1 устаревшим для использования в целях безопасности. Файлы .sha1 остаются полезными для обнаружения случайных повреждений (деградации данных), но на них нельзя полагаться для проверки подлинности или обнаружения преднамеренного вмешательства. В целях безопасности настоятельно рекомендуется использовать .sha256 или .sha512.
SHA-1 по-прежнему широко используется в Git для хеширования объектов; новые форматы репозиториев Git активно мигрируют на SHA-256.
Безопасность и защита
РИСК: LOWСам файл .sha1 является безвредным текстовым файлом. Проблема безопасности заключается в том, что именно гарантирует SHA-1: он надежно обнаруживает случайные повреждения (ошибки битов, прерванную загрузку), но криптографически взломан после атаки коллизией SHAttered в 2017 году. Совпадение SHA-1 НЕ доказывает, что файл не был намеренно подменен. Для загрузок, чувствительных к безопасности (образы ОС, подписанное ПО), проверяйте контрольную сумму SHA-256 или SHA-512 И подпись PGP/GPG издателя. Убедитесь, что опубликованный хеш получен из доверенного источника HTTPS, а не с того же сервера, что и сам файл.
Детали формата
в двух словахПрограммы, открывающие файлы SHA1
Технические подробности
глубокая спецификация| Алгоритм дайджеста | SHA-1 (Secure Hash Algorithm 1), FIPS 180-1 / FIPS 180-4 |
| Длина дайджеста | 160 бит (20 байт), представлен в виде 40 шестнадцатеричных символов в нижнем регистре на каждый хеш |
| Кодировка файла | Простой текст ASCII (UTF-8 для имен файлов, содержащих символы не из набора ASCII) |
| Формат строки | <40-символьный hex> <имя_файла> (разделитель два пробела, текстовый режим); <40-символьный hex> *<имя_файла> (бинарный режим) |
| Совместимость с командной строкой | GNU sha1sum -c (Linux/macOS); certutil -hashfile (Windows); Get-FileHash -Algorithm SHA1 (PowerShell) |
| Контейнер | Отсутствует - обычный текстовый файл, без бинарной оболочки |
| Типичный размер файла | Менее 1 КБ (для одного файла); несколько КБ для манифестов с множеством файлов |
| Статус безопасности | Криптографически взломан - коллизия SHAttered продемонстрирована в феврале 2017 года (Google / CWI Amsterdam) |
| Устаревание NIST | Признан устаревшим для использования в целях безопасности с 2011 года; сертификаты TLS с SHA-1 не принимаются основными браузерами с 2017 года |
| Оставшееся допустимое использование | Обнаружение случайных повреждений (деградация данных) в некритичных контекстах; хеширование объектов Git (устаревший режим SHA-1) |
| Рекомендуемая замена | SHA-256 (.sha256) или SHA-512 (.sha512) согласно NIST SP 800-131A |
| Выпущен | SHA-1 published April 1995 (FIPS 180-1); .sha1 sidecar convention in common use since late 1990s |
| Последняя версия | FIPS 180-4 (2015) - no versioned file format; format is a convention |
| Открыть стандартное | Да · без роялти |
| Спецификация | csrc.nist.gov |
Конвертации SHA1
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах SHA1.