MD5 и контрольная сумма SHA1 используют для загрузки

Я замечаю, что при загрузке большого количества инструментов с открытым исходным кодом (Eclipse, и т.д.) там ссылки для MD5 и контрольных сумм SHA1, и не знали то, чем они были или какова их цель была.

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

Я близок или полностью неправильно, и если неправильно, каковы они?!?!

Спасибо!

8
задан 02.01.2011, 17:06

2 ответа

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

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

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

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

Некоторые мысли о каналах распределения. Часто бесплатное программное обеспечение может быть найдено на большой сумме сайтов и самых популярных сайтов как SourceForge, например, иметь большое количество зеркал. Скажем, существует сервер в Barland, который зеркально отражает большой сайт распределения программного обеспечения. FooSoft использует программу, распределенную сайтом, и они находятся в республике Baz, который является прямо рядом с Barland. Если бы кто-то хотел пропитать FooSoft, то он мог бы изменить просто копию в зеркале Barland и надеяться, что программное обеспечение геолокации затем удостоверится, что FooSoft получает измененные версии. Так как версии от других зеркал прекрасны, возможности ниже, что вредоносное программное обеспечение было бы обнаружено. Вы могли также заставить вредоносное программное обеспечение обнаружить IP-адрес компьютера и активироваться, только если это от определенного диапазона и того пути более низкие возможности исследования и так далее.

11
ответ дан 07.12.2019, 14:00

MD5 и SHA1 не являются просто контрольными суммами. Они - криптографические контрольные суммы. Это означает, что в теории, два различных файла могли бы иметь ту же контрольную сумму, но вероятность этого является очень маленькой, почти 0. Как последствие, Вы используете реверс: различные контрольные суммы означают, что Вы получаете другое содержание с вероятностью почти 1. Таким образом, криптографические контрольные суммы используются для обнаружения изменений в файлах. Они могут быть злонамеренными изменениями, сделанными нарочно или просто ошибки, которые произошли во время загрузок.

1
ответ дан 07.12.2019, 14:00

Теги

Похожие вопросы