Функция вывода ключа
-
Определение и применение KDF
- KDF — это криптографический алгоритм для получения ключей из секретного значения.
- KDF используются для увеличения длины ключей и для получения ключей требуемого формата.
-
История и развитие
- Первая KDF, «crypt», была изобретена в 1978 году Робертом Моррисом.
- С развитием технологий и увеличением вычислительной мощности, KDF стали более критичными для защиты паролей.
- Были разработаны новые алгоритмы, такие как bcrypt, scrypt и Lyra2, для повышения безопасности.
-
Утечка данных Ashley Madison и важность выбора алгоритма
- Утечка данных Ashley Madison продемонстрировала важность выбора надежного алгоритма для защиты паролей.
- Использование bcrypt для защиты паролей было неэффективным из-за наличия в данных хэшей паролей на основе MD5.
-
Стандарты и рекомендации NIST
- NIST рекомендует использовать KDF для хранения паролей в форме, устойчивой к атакам.
- Современные KDF основаны на криптографических хэшах и используют больше соли и итераций.
-
Вывод ключей и их применение
- KDF могут использоваться для получения ключей из паролей или парольных фраз.
- Они также могут быть использованы для диверсификации ключей и обеспечения желаемых свойств ключей.
-
Растяжение и укрепление ключей
- KDF могут быть использованы для замедления процесса получения ключей для предотвращения атак методом перебора.
- Использование salt предотвращает предварительное вычисление словаря производных ключей.
-
Хэширование паролей
- KDF широко используются для хэширования паролей, что делает процесс проверки пароля более дорогостоящим.
- Argon2 был выбран победителем конкурса на новый стандартный алгоритм хэширования паролей.
-
Рекомендации OWASP
- OWASP рекомендует использовать определенные KDF для хэширования паролей в зависимости от приоритета.