Протоколы распределения ключей
Протокол распределения ключей (key establishment protocol) - это криптографический протокол, в процессе выполнения которого общий секрет становится доступен двум или более сторонам для последующего использования в криптографических целях.
Протоколы распределения ключей делят на два класса:
Протоколы транспортировки ключей;
Протоколы обмена ключами.
Протоколы транспортировки ключей(key transport) - это протоколы распределения ключей, в которых один участник создает или другим образом приобретает секрет и безопасным образом передает его другим участникам.
Протоколы обмена ключами(key agreement, key exchange) — это протоколы распределения ключей, в которых общий секрет вырабатывается двумя или более участниками как функция от информации, вносимой каждым из них (или ассоциированной с ними) таким образом, что (в идеале) никакая другая сторона не может предопределить их общий секрет.
Выделяют две дополнительные формы протоколов распределения ключей. Говорят, что протокол осуществляет обновление ключей (key update), если в протоколе вырабатывается совершенно новый ключ, не зависящий от ключей, выработанных в прошлых сеансах выполнения протокола. Протокол выполняет выработку производных ключей (key derivation), если новый ключ «выводится» из уже существующих у участников криптосистемы.
К основным свойствам протоколов распределения ключей относят свойства аутентификации ключа, подтверждения ключа и явной аутентификации ключа.
(Неявная) аутентификация ключа(implicit key authentication) — свойство, посредством которого один участник протокола убеждается, что никакая другая сторона, кроме специально идентифицированного второго участника протокола (и возможно, центра доверия), не может получить доступ к секретным ключам, полученным в протоколе. Здесь нет гарантий, что второй участник действительно получил доступ к ключу, но никто другой, кроме него, не мог его получить. Неявная аутентификация ключа независима от реального обладания ключом другим участником и не требует каких бы то ни было действий от второй стороны.
Подтверждение ключа(key confirmation) - свойство, посредством которого один участник протокола убеждается, что другой участник (возможно, неидентифицированный) действительно обладает секретными ключами, полученными в протоколе.
Явная аутентификация ключа(explicit key authentication) - свойство, которое выполняется, когда имеют место (неявная) аутентификация ключа и подтверждение ключа одновременно.
-
Содержание
- Протоколы распределения ключей
- Протокол Нидхема-Шрёдера (Needham-Schroeder protocol) на симметричных ключах
- Протокол Нидхема-Шрёдера (Needham-Schroeder protocol) на aсимметричных ключах
- Протокол Kerberos
- Протокол Отвея-Рииса (Otway-Rees Protocol)
- Задания
- Реализация симметричного протокола Нидхема-Шрёдера
- Реализация протокола Kerberos
- Реализация протокола Отвея-Рииса
- Реализация протокола Нидхема-Шрёдера на ассиметричных ключах
- Примечания