Helionix

Как проверить целостность ZIP по CRC

Проверка CRC каждой записи ZIP: как пересчитывается контрольное значение, почему каталог может открываться при повреждении и что делать при несовпадении.

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

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

Как работает проверка CRC

При создании ZIP программа рассчитывает CRC-32 для исходных данных и записывает результат в служебную структуру. Проверяющий инструмент читает и распаковывает поток, вычисляет CRC снова и сравнивает два значения. Совпадение означает, что проверенные байты не изменились относительно записанного состояния.

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

Как проверить ZIP по CRC

  1. Скопируйте архив в локальную папку и дождитесь завершения синхронизации.
  2. Если известен ожидаемый размер файла, сверьте его.
  3. Откройте Archive Inspector.
  4. Выберите ZIP и дождитесь чтения центрального каталога.
  5. Проверьте наличие CRC у отдельных записей.
  6. Запустите доступный полный тест данных, если он предусмотрен интерфейсом.
  7. Просмотрите результат для каждого файла, а не только общий статус.
  8. При ошибке повторно получите архив из исходного источника.
  9. Не перезаписывайте единственную копию в процессе диагностики.

Как интерпретировать результат

СтатусЗначениеДействие
CRC совпадаетПроверенная запись прочитана без обнаруженной случайной ошибкиПродолжить остальные проверки
CRC mismatchВычисленное значение отличается от сохранённогоПолучить новую копию или восстановить из резерва
CRC недоступенФормат, метод или шифрование не дали провести тестИспользовать совместимый инструмент и пароль
Ошибка до вычисленияСтруктура обрывается или нет нужного томаПроверить комплект и целостность контейнера

Почему список файлов открывается при повреждении

Центральный каталог ZIP находится отдельно от упакованных данных. Он способен остаться читаемым, даже если повреждён участок с одним документом. Поэтому просмотр дерева — это только проверка структуры, а не доказательство целостности каждой записи.

Парольные ZIP и CRC

Для зашифрованной записи инструменту может понадобиться правильный пароль, чтобы получить исходные данные и пересчитать CRC. Неверный пароль, несовместимый AES-режим и реальное повреждение иногда приводят к похожим сообщениям. Сначала подтвердите секрет и поддержку метода, затем делайте вывод о целостности.

Что делать при несовпадении CRC

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

Повторная упаковка повреждённого файла создаст новый архив с корректным CRC уже для испорченных данных. Она не вернёт утраченные байты и может скрыть историю проблемы.

CRC архива и хеш всего файла

CRC записей отвечает на вопрос, читаются ли данные внутри контейнера. SHA-256 всего ZIP позволяет сравнить полученный файл с эталонной копией побайтно. Эти проверки дополняют друг друга: внешний хеш подтверждает совпадение контейнера, внутренний тест локализует проблемную запись.

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

Совпавший CRC гарантирует отсутствие вирусов?

Нет. Вредоносный файл может быть упакован без ошибок и иметь правильное контрольное значение. Проверяйте источник и содержимое отдельно.

Можно ли исправить CRC вручную?

Замена сохранённого числа не восстанавливает данные. Нужно получить целую копию или попытаться извлечь доступные записи специальным средством восстановления.

Почему ошибка касается только одного файла?

Повреждение может затронуть ограниченный диапазон байтов. Остальные независимые записи ZIP при этом сохраняют корректные значения.

Итог

Проверяйте CRC каждой записи и не ограничивайтесь чтением каталога. При несовпадении сохраните исходник, повторно получите архив, сравните внешний хеш и только затем переходите к восстановлению.

Проверить CRC ZIP →