Зачем нам контрольная сумма SHA1?

На этой странице я увидел контрольную сумму SHA1.

Я знаю, что это алгоритм хеширования, но я не знаю, зачем он нам нужен для загрузки кода. Поэтому я нажал "что это?" но не получил больше информации.

Это хеш, ну и что? Почему мы должны знать, что это хеш при загрузке файла?

3 ответа

Решение

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

$ sha1sum recaptcha-dotnet-1.0.3.0-binary.zip 
bfb3397d27c95e152d80529bd11dfdde35efdddd  recaptcha-dotnet-1.0.3.0-binary.zip

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

Исходя из своего опыта, я могу сказать вам, как неинтересно находить несколько битых файлов в репозитории (Java) Maven из нескольких тысяч файлов без контрольных сумм.

Хеш создается из файла, который находится на сервере. Вы создаете второй sha1 файла, который вы скачали.

Сравните два хэша.

Если они равны: никто не возился с байтами с сервера на вашу машину, и все хорошо.

Если они не равны:

  • Аппаратный сбой
  • Кто-то возится с входящими байтами
  • Сломанный сервер

Краткий ответ: криптографические контрольные суммы - это легкий и удобный способ проверки целостности файла. Следующим шагом будет проверка файлов, подписанных ключами GPG.

Другие вопросы по тегам