[алгоритм / md5]: каков подробный процесс проверки при обмене файлами? - PullRequest
0 голосов
/ 02 сентября 2011

Сегодня я прочитал вики-страницу "Криптографической хэш-функции". И я узнал, что md5 был применен при проверке файла.

Есть кое-что, что я не могу понять, вот оно.

Предположим, я хочу загрузить файл (.exe, .iso, что угодно) с веб-сайта. 1. Сервер сначала передает код md5 файла мне? Если да, то как мне сохранить код md5? сохранить код в файле?

2.После завершения загрузки, как начать процесс проверки? Я должен выполнять проверку вручную или загрузчик (будь то инструмент загрузки Chrome Explorer) выполняет проверку автоматически?

3.Если скачиваемый файл перехватывается каким-либо хакером в Интернете, то узнает ли хакер, что это за файл? А как предотвратить перехват?

спасибо.

Ответы [ 3 ]

1 голос
/ 02 сентября 2011

Вероятно, есть плагины для браузера, которые позволят вам автоматически выполнять хеширование.Я не исследовал ранее.

Веб-сайт обычно предоставляет хеш в шестнадцатеричном формате рядом со ссылкой для скачивания.

После того, как вы загрузили файл, вы «кормите» егок инструменту, который будет вычислять хэш файла.Почти все языки программирования могут это делать, и для этого есть множество инструментов googable.

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

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

Цифровая подпись также используется для проверки правильности файла и его исправности.сгенерировано известным человеком / органом / сайтом.

1 голос
/ 02 сентября 2011

В дополнение к предыдущим ответам, цель MD5, опубликованная на веб-сайтах загрузки, не имеет ничего общего с взломщиками (атаками типа «человек посередине»).Это просто, чтобы убедиться, что вы загрузили его правильно.Если некоторые биты были повреждены по какой-либо причине, программное обеспечение может не работать.Безопасность гораздо сложнее настроить, чем один маленький хеш, но, к счастью, ваш браузер знает, как с этим справиться: всякий раз, когда вы подключаетесь через TLS (SSL, https), он устанавливает безопасное соединение.Просто наблюдая, сколько данных отправлено, даже если он не может увидеть, что это за данные, злоумышленник может угадать, какой файл вы скачиваете.

  1. Проверка MD5 полностью ручная.Вы загружаете это или копируете и вставляете это самостоятельно.
  2. Каждая операционная система должна идти с программой md5;Windows, вероятно, единственная, которая этого не делает.Гугл для одного, если у вас есть несчастье необходимости.
  3. С одним md5 он, конечно, может видеть, что это за файл.Единственный способ предотвратить перехват - использовать шифрование, которое большинство сайтов предоставляют с помощью https URL.

Редактировать: Что такое MD5?Это просто значение небольшого вычисления, выполненного со всеми частями файла.Вы отправляете файл и самостоятельно производите расчеты с помощью программы md5 и проверяете, что вы получите то же значение, которое указано на веб-сайте.Вычисление является разумным, и если один или несколько битов файла повреждены, вычисленное значение MD5 изменится, поэтому вы знаете, что загрузка не сработала, и вам нужно загрузить снова.

1 голос
/ 02 сентября 2011

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

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

...