3.1.2. Протокол 2. Асимметричная криптосистема
Обозначим открытый и секретный парные ключи абонента А через РКд и 8Кд соответственно. Протокол начинается с запроса открытого ключа абонента-респондента:
А -> AS: А, В. (IX.8)
Сервер аутентификации отвечает сообщением:
AS-»A: {PKB,B}SKAS. (IX.9)
Через SKas обозначен парный секретный ключ сервера. Предполагается, что А заранее знает парный открытый ключ РKas, необходимый для дешифрования принятого сообщения. Процедуры хранения, извлечения и применения ключа РKas должны отвечать требованиям повышенной безопасности. Подлог РKas означает полную дискредитацию сервера и вместе с ним всего протокола аутентификации.
Шифрование в (IX.9) выполняется не для того, чтобы гарантировать конфиденциальность, а для того, чтобы обеспечить целостность и аутентичность передаваемого сообщения. Необходимо, чтобы абонент А мог убедиться в аутентичности открытого ключа РКв. Для этого имя абонента В возвращается в сообщении (IX.9) вместе с его отрытым ключом. Абонент А знает имя абонента-респондента и всегда может его проверить.
Затем А посылает В сообщение:
А->В: {1А, А}РКв. (IX.10)
Абонент В дешифрует сообщение на парном секретном ключе и затем обращается к серверу за открытым ключом РKa:
B->AS: В, А, (IX.11)
AS->B: {PKA, A}SKAS. (IX. 12)
Шифрование в (IX. 12), как и в (IX.9), выполняется для обеспечения целостности и аутентичности сообщения сервера.
Для доказательства уникальности текущего сеанса необходимо выполнить следующие действия:
А->В: {1в}РКв. (IX. 14)
Рассмотренный протокол состоит из семи сообщений. Сохраняя в локальной базе данных открытые ключи абонентов А и В, можно избежать передачи сообщений (IX.8), (IX.9), (IX.11) и (IX. 12). В результате протокол будет состоять из трех сообщений.
Отметим, что, поскольку открытые ключи не являются секретными, злоумышленник может пытаться изымать сообщения легальных пользователей и вставлять свои собственные. Простейший способ защиты — использование преобразования вида {{данные} SKa} . Другой способ заключается во введении функции нумерации шифруемых сообщений. Так, номер текущего сообщения может вычисляться как функция его порядкового номера (например, текущий_номер := предыдущий_номер—1) и одноразового случайного значения Ia или Ib в зависимости от направления передачи. Еще один известный способ — метод одноразовых паролей S/KEY компании Bellcore [100]. При таком методе защиты злоумышленник не может воспроизвести легальный номер сообщения и, как следствие, не может вставить ложное сообщение в передаваемый поток.
- 1. Пароли
- 1.1. Противодействие раскрытию и угадыванию пароля
- 1.2. Противодействие пассивному перехвату
- 1.3. Защита при компрометации проверяющего
- 1.4. Противодействие несанкционированному воспроизведению
- 1.5. Одноразовые пароли
- 1.6. Метод «запрос-ответ»
- 2. Биометрические методы
- 3. Криптографические методы аутентификации
- 3.1. Аутентификация в режиме on-line
- 3.1.1. Протокол 1. Симметричная криптосистема
- 3.1.2. Протокол 2. Асимметричная криптосистема
- 3.2. Аутентификация при участии нескольких серверов
- 3.3. Организация серверов аутентификации
- 3.4. Аутентификация в режиме off-line
- 3.4.1. Протокол на основе симметричной криптосистемы
- 3.4.2. Протокол на основе асимметричной криптосистемы
- 3.5. Аутентификация с привлечением арбитра
- 3.5.1. Протокол 3. Симметричная криптосистема
- 3.5.2. Протокол 4. Асимметричная криптосистема
- 4. Анализ протоколов аутентификации
- 4.1. Протокол с сервером аутентификации
- 4.2. Протокол «запрос-ответ»
- 4.3. Протоколы на основе асимметричных криптосистем
- 4.4. Протокол с «двуликим Янусом»
- 4.5. Протокол стандарта х.509
- 4.6. Протокол для сетей подвижной радиосвязи
- 4.7. Анализ протоколов ssh и ака
- 5. В an-логика
- 6. Протокол Kerberos
- 6.1. Модель Kerberos
- 6.2. Этапы протокола Kerberos
- 6.3. Атрибуты
- 6.4. Сообщения Kerberos версии 5
- 6.5. Получение первоначального мандата
- 6.6. Получение мандатов прикладных серверов
- 6.7. Запрос услуги
- 6.8. Kerberos версии 4
- 6.9. Безопасность Kerberos