Вы не можете использовать нестатический метод для инициализации статической переменной.
Это - меры безопасности. Это позволяет Вам проверять, что файл, который Вы просто загрузили, является тем, который автор разместил на сайт. Обратите внимание, что с помощью хешей с того же веб-сайта Вы добираетесь, файлы от не особенно безопасно. Часто хорошее место для получения их от является объявлением списка рассылки, где электронное письмо PGP-со-знаком содержит ссылку на файл и хеш.
Так как этот ответ был оценен так высоко по сравнению с другими по некоторым причинам, я редактирую его для добавления другой основной причины, упомянутой сначала другими авторами ниже, который должен проверить целостность файла после передачи его по сети.
Так:
При загрузке больших файлов часто полезно выполнить контрольную сумму, чтобы гарантировать, что загрузка была успешна и не искаженная вдоль транспорта. Существуют тонны бесплатно распространяемых приложений, которые могут привыкнуть к генералу контрольная сумма для Вас для проверки загрузки. Это мне - интересная актуализация процедур, которые популярный mp3 и сайты нелицензионного софта раньше использовали назад в день когда распределительные файлы.
SHA1 и хеши MD5 используются для проверки целостности файлов, которые Вы загрузили. Они - не обязательно технология прежней версии и могут использоваться инструментами как те, которые в openssl, чтобы проверить, был ли Ваш файл поврежден/изменен из его оригинала.
Это должно гарантировать загрузку файла правильно. Если Вы хешируете загруженный файл, и он соответствует хешу на странице, все хорошо.
Соглашаться с тем, что все здесь говорят, что я использую HashTab, когда я должен генерировать/сравнить MD5 и хеши SHA1 в Windows. Это добавляет новую вкладку к окну свойств файла и вычислит хеши.
Криптографический хеш (такой как SH1 или MD5) позволяет Вам проверять, что файл, который Вы имеете, загрузили правильно и не вмешались.
С (MD5, SHA-1) один вход соответствует только одному выводу, и затем если Вы вниз загружаете файл и вычисляете, хеш снова должен получить тот же вывод. Если вывод отличается, файл поврежден.
If (hash(file) == “Hash in page”)
validFile = true;
else
validFile = false;