Протокол соглашения о ключах
Эта статья нуждается в дополнительных цитатах для проверки . ( март 2024 г. ) |
В криптографии протокол согласования ключей — это протокол, согласно которому две или более стороны могут согласовать криптографический ключ таким образом, что обе стороны влияют на результат. Если все сделано правильно, это не позволяет нежелательным третьим лицам навязывать ключевой выбор договаривающимся сторонам. Протоколы, полезные на практике, также не раскрывают какой-либо подслушивающей стороне, какой ключ был согласован.
Во многих системах обмена ключами одна сторона генерирует ключ и просто отправляет этот ключ [1] другая сторона — другая сторона не имеет влияния на ключ.Использование протокола согласования ключей позволяет избежать некоторых проблем распределения ключей, связанных с такими системами.
Протоколы, в которых обе стороны влияют на окончательный производный ключ, являются единственным способом реализации полной прямой секретности.
Экспоненциальный обмен ключами
[ редактировать ]Первый общеизвестный [1] Протоколом соглашения об открытом ключе, который соответствует вышеуказанным критериям, был обмен ключами Диффи-Хеллмана , в котором две стороны совместно возводят в степень генератор со случайными числами таким образом, что перехватчик не может реально определить, какое результирующее значение использовалось для создания общего ключа. является.
Экспоненциальный обмен ключами сам по себе не требует какого-либо предварительного соглашения или последующей аутентификации между участниками. Таким образом, его называют протоколом анонимного соглашения о ключах.
Аутентификация
[ редактировать ]Анонимный обмен ключами, такой как метод Диффи-Хеллмана, не обеспечивает аутентификацию сторон и, таким образом, уязвим для атак «человек посередине» .
Было разработано большое количество схем и протоколов криптографической аутентификации, обеспечивающих согласование аутентифицированных ключей и предотвращающих атаки «человек посередине» и связанные с ними атаки. Эти методы обычно математически связывают согласованный ключ с другими согласованными данными, такими как следующие:
- Пары открытого/закрытого ключей
- Общие секретные ключи
- Пароли
Открытые ключи
[ редактировать ]Широко используемым механизмом защиты от таких атак является использование ключей с цифровой подписью , целостность которых должна быть гарантирована: если ключ Боба подписан доверенной третьей стороной, ручающейся за его личность, Алиса может быть в значительной степени уверена, что полученный ею подписанный ключ не является попытка перехвата со стороны Евы. Когда у Алисы и Боба есть инфраструктура открытых ключей, они могут поставить цифровую подпись на согласованном ключе Диффи-Хеллмана или обменяться открытыми ключами Диффи-Хеллмана. Такие подписанные ключи, иногда подписанные центром сертификации , являются одним из основных механизмов, используемых для защиты веб-трафика (включая HTTPS , SSL или Transport Layer Security протоколы ). Другими конкретными примерами являются MQV , YAK и компонент ISAKMP набора протоколов IPsec для защиты связи по Интернет-протоколу. Однако для правильной работы эти системы требуют тщательного подтверждения соответствия между идентификационной информацией и открытыми ключами органами сертификации.
Гибридные системы
[ редактировать ]Гибридные системы используют криптографию с открытым ключом для обмена секретными ключами, которые затем используются в системах криптографии с симметричным ключом. В большинстве практических приложений криптографии используется комбинация криптографических функций для реализации общей системы, обеспечивающей все четыре желательных функции безопасной связи (конфиденциальность, целостность, аутентификация и невозможность отказа от авторизации).
Пароли
[ редактировать ]Протоколы соглашения о ключах с аутентификацией паролем требуют отдельного установления пароля (который может быть меньше ключа) таким образом, чтобы он был конфиденциальным и гарантировал целостность. Они предназначены для защиты от посредников и других активных атак на пароль и установленные ключи. Например, DH- EKE , SPEKE и SRP являются вариантами алгоритма Диффи-Хеллмана с аутентификацией по паролю.
Другие трюки
[ редактировать ]Если у вас есть гарантированный способ проверки общего ключа по общедоступному каналу, вы можете участвовать в обмене ключами Диффи-Хеллмана для получения краткосрочного общего ключа, а затем впоследствии аутентифицировать совпадение ключей. Один из способов — использовать считывание ключа с голосовой аутентификацией, как в PGPfone . Однако голосовая аутентификация предполагает, что посреднику невозможно подделать голос одного участника другому в режиме реального времени, что может быть нежелательным предположением. Такие протоколы могут быть разработаны для работы даже с небольшим общедоступным значением, например паролем. Вариации на эту тему были предложены для протоколов сопряжения Bluetooth .
Пытаясь избежать использования каких-либо дополнительных факторов внешней аутентификации, Дэвис и Прайс предложили использовать протокол блокировки Рона Ривеста и Ади Шамира , который подвергался как атакам, так и последующим усовершенствованиям.
Общие секретные ключи
[ редактировать ]Криптография с секретным ключом (симметричная) требует первоначального обмена общим ключом конфиденциальным и гарантированным образом. Если все сделано правильно, атака «человек посередине» предотвращается. Однако без использования криптографии с открытым ключом могут возникнуть нежелательные проблемы управления ключами.
См. также
[ редактировать ]- Ключ (криптография)
- Компьютерная безопасность
- Криптоанализ
- Безопасный канал
- Цифровая подпись
- Ключевой механизм инкапсуляции
- Управление ключами
- Соглашение о ключах, подтвержденное паролем
- Протокол блокировки
- Подтверждение пароля с нулевым разглашением
- Нейронная криптография § Протокол обмена нейронными ключами
- Квантовое распределение ключей
Ссылки
[ редактировать ]- ^ Jump up to: Перейти обратно: а б См. Обмен ключами Диффи-Хеллмана для более полной истории как секретного, так и публичного развития криптографии с открытым ключом.