9

Я скачал огромное количество файлов, но обнаружил использование md5 и sha в качестве средств проверки целостности совсем недавно. С тех пор я всегда предпочитаю проверять большие загруженные файлы, даже если я никогда не обнаружил, что они повреждены.

Нужно ли проверять целостность загружаемых файлов?

Выберите в качестве примера только что загруженный дистрибутив Linux объемом 1 ГБ, если хотите.

Спасибо

5 ответов5

6

Это зависит от нескольких факторов.

  1. У вас есть стабильное подключение к интернету?
    Если у вас стабильное интернет-соединение, вам не нужно проверять целостность файла, так как он, скорее всего, будет правильным. Я никогда не проверяю хеш, и у меня никогда не было поврежденных файлов. Или, может быть, один раз, когда удаленный сервер отключен.

  2. Хотите проверить файл по соображениям безопасности?
    Если вы беспокоитесь о безопасности загружаемого файла, вы можете использовать хеш MD5, чтобы убедиться, что файл не был каким-либо образом изменен. Вы загружаете файл, и если хеш MD5 не совпадает, это означает, что файл на сервере отличается от хеша MD5, и что-то не так. Это будет допустимо только в том случае, если вы не доверяете серверу, с которого вы скачиваете, но обычно, если кто-то предоставляет хэш, он также старается изо всех сил обновлять информацию. Но если их сайт взломали, и вы проверили хеш MD5, то вы получили небольшой бонус.

В целом, эти 2 дадут нет большинству людей. Если это не для вас, это полностью зависит от вас, конечно.

6

Ответ и выбор будут основаны на его / ее терпимости к риску и соображениях времени и усилий при проверке.

Проверка хэшей MD5/SHA1 - хороший первый шаг, и вы должны сделать это, когда у вас есть время. Однако вы должны учитывать свою способность доверять предоставленному хешу. Например, если веб-сайт автора с хешем взломан, то злоумышленник может изменить хеш, поэтому вы не узнаете. Если вычисляемый вами хэш не совпадает с предоставленным хешем, вы знаете, что что-то не так. Однако только то, что совпадение хэшей не гарантирует, что файл хорош.

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

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

4

Из соображений безопасности ДА. Подумайте, что было обнаружено, что выходной узел Tor исправляет двоичные файлы во время загрузки, затем помните, что ваш интернет-провайдер может иметь или не иметь малейшей морали и что он полностью контролирует ваше интернет-соединение.

3

Просто чтобы добавить к другим ответам:

TLDR: для файлов, где целостность важна, да

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

Одним из примеров является прошивка маршрутизатора с помощью OpenWRT. Если файл поврежден, то этот маршрутизатор будет заблокирован, и тогда мне придется либо:

  • Замени это (дорого)
  • Исправить это (много времени. Особенно если мне нужно припаять последовательный кабель /JTAG)

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

0

Я обычно только проверяю, была ли моя загрузка прервана, и я возобновил ее позже, потому что HTTP-запросы со смещением поиска используются не так широко, поэтому могло произойти что-то глупое.

Во многих случаях загрузка представляет собой сжатый файл, который не будет распаковываться, если он сломан. Если это не так, проверка не является плохой идеей. Я мог бы проверить ISO перед записью на носитель с однократной записью.

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .