Что такое SHA-1?
SHA-1 (Secure Hash Algorithm 1) — это криптографическая хеш-функция, которая производит 160-битное (20-байтовое) хеш-значение, обычно представляемое как 40-символьное шестнадцатеричное число. Он был разработан АНБ и опубликован NIST в 1995 году как часть стандарта цифровой подписи.
Ключевые характеристики:
- Детерминированность: Одинаковый ввод всегда производит одинаковый хеш
- Быстрое вычисление: Быстро вычисляется для любого заданного ввода
- Эффект лавины: Небольшие изменения во вводе производят кардинально разные выводы
- Необратимость: Вычислительно невозможно обратить хеш для поиска исходного ввода
- Уязвимость к коллизиям: Известные уязвимости делают возможным поиск коллизий
Статус безопасности: ⚠️ SHA-1 криптографически сломан и не должен использоваться для критически важных для безопасности приложений. Теоретические атаки были продемонстрированы в 2005 году, а практические атаки коллизий были достигнуты в 2017 году.
Обычные применения (исторические):
- Цифровые подписи и сертификаты (устаревшие)
- Система контроля версий Git (для совместимости)
- Устаревшие системы, требующие SHA-1
- Проверка целостности файлов (не критично для безопасности)
- Алгоритмы доказательства работы (некоторые старые криптовалюты)
Рекомендуемые альтернативы:
- SHA-256 или SHA-3 для новых приложений
- SHA-512 для высоких требований безопасности