Согласно сайтам, например apache подписание файла (генерирование контрольной суммы) с использованием GPG более безопасно, чем простой старый MD5. Я не понимаю, почему большинство людей используют MD5. Могут ли некоторые объяснить реальные различия в простом техническом английском?MD5 vs подпись GPG
ответ
Контрольная сумма MD5 может быть сгенерирована любым, кто имеет доступ к файлу. Злоумышленник, который врывается на сайт или выполняет атаку «человек в середине», может легко изменить контрольную сумму MD5, чтобы он соответствовал скомпрометированному файлу.
Подпись GPG, с другой стороны, может (теоретически) генерироваться только владельцем соответствующего закрытого ключа. Если подписант находится в вашей сети доверия, подпись проверяет целостность содержимого файла и демонстрирует, что владелец ключа передает данные о содержимом файла.
Кроме того, MD5 начал проявлять некоторые недостатки за последние несколько лет; GPG имеет тенденцию использовать более современные алгоритмы.
Вероятно, контрольные суммы MD5 по-прежнему используются, потому что им легче. (SHA-1 лучше, чем MD5, и становится все более распространенным.)
ОБНОВЛЕНИЕ (4 года спустя): MD5 теперь должен считаться небезопасным, и были продемонстрированы отдельные файлы с идентичными контрольными суммами SHA-1. Есть лучшие алгоритмы контрольной суммы, но я не буду рекомендовать конкретный; Я подозреваю, что этот ответ по-прежнему будет здесь после того, как они будут сломаны.
- 1. Как отключить подпись git gpg
- 2. Как проверить подпись GPG с OpenSSL
- 3. проверить подпись gpg без установки ключа
- 4. Проверьте подпись gpg в Go openpgp
- 5. md5 vs md4 признание
- 6. Проверьте, есть ли подпись сертификата MD5 OpenSSL
- 7. gpg :: MD5 (char const *, int): ошибка: неопределенная ссылка на 'MD5_Init'
- 8. Как проверить rpm подпись GPG с помощью Python3?
- 9. Как узнать, когда была создана подпись подписи GPG
- 10. Как проверить, соответствует ли подпись gpg файлу открытого ключа?
- 11. скрипт bash, если подпись GPG действительна и принадлежит ключу
- 12. ident vs md5 для аутентификации Postgres
- 13. GUID vs md5 hash for persistent cookie
- 14. md5 base64 encoder в C++ vs Java
- 15. BSD md5 vs GNU md5sum формат вывода?
- 16. Невозможно установить md5 пароль в HSQLDB: рутина подпись не найдена
- 17. Использование Keytool для извлечения MD5 подпись из Android APK
- 18. Perl скрипт использования gpg против CLI gpg?
- 19. pecl/oauth vs pecl/oauthprovider подпись несоответствие
- 20. РВМ предупреждения установки ключа GPG
- 21. GPG: расшифровать зашифрованный файл BLOWFISH
- 22. PGP/GPG Подписан код Python
- 23. хеширование PHP MD5 (MD5)
- 24. GPG использование ошибок: GPG [опции] [имя файла] во время GPG --decrypt
- 25. TLS 1.2 ECDHE_RSA подпись
- 26. GPG SECURITY: как проверить открытый ключ электронной почты и GPG?
- 27. Ошибка Enigmail GPG - gpg: дешифрование не выполнено: секретный ключ недоступен
- 28. Необязательный скрипт командной строки GPG зависает в команде GPG
- 29. Как использовать gpg, gpg-agent, особенно для .authinfo.gpg?
- 30. GPG Input/Output Error
Хмм ... Я думаю, что время, когда мы все переключаемся на gpg – LogicalConfusion
@LogicalConfusion: GPG и MD5 имеют разные цели. MD5 - это всего лишь отпечаток пальца для данного файла, а иногда это все, что вам нужно. Подпись GPG/PGP должна быть сделана владельцем определенного ключа - и она не может быть проверена, если у вас нет доступа к этому открытому ключу. Это не так уж плохо, если открытый ключ находится на публичных серверах, но это дополнительные накладные расходы, которые вам не всегда нужны. Известно, что MD5 составляет несколько недель; SHA1 лучше, а новые алгоритмы еще лучше. –
Например, Git использует контрольные суммы SHA1 для идентификации контента; не было бы особого преимущества при использовании GPG/PGP. И вы всегда можете PGP-подписывать файл, содержащий контрольные суммы SHA1 (или SHA-whatever). (Фактически Git поддерживает подписание тегов GPG.) –