Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции (3).doc
Скачиваний:
203
Добавлен:
28.06.2014
Размер:
508.93 Кб
Скачать

3.5.2. Протокол chap

  • обозначения

  • аутентификация

  • выбор случайного числа

  • недостатки

CHAP – Challenge Handshake Authentication Protocol (протоколаутентификациинаосновемоделирукопожатия).

Обозначения:

U – пользователь, C – клиент, S – сервер, N – случайное число.

Аутентификация:

  1. SC:пакетвызова(challenge) (IDS, N, length(N))

  2. UC: IDU, P

  3. CS: пакет отклика (IDU, h), h = H(IDS, N, P)

  4. S: извлечение по IDU из БД H(IDS, N, P), H == H

  5. SC: пакет подтверждения/отказа

Ключевой момент протокола CHAP – выбор N. Требования;

  • уникальность,

  • непредсказуемость (алгоритм не м.б. полностью выявлен).

На практике N разбито на 2 части:

  • текущая дата и время,

  • случайное число (аппаратный или программный датчик).

Недостатки:

  • плохая масштабируемость относительно числа серверов,

  • сложность администрирования.

Аналогичные недостатки и у S/Key.

3.5.3. Протокол Kerberos

  • обозначения

  • общая схема взаимодействия

  • получение клиентом TGT

  • получение клиентомST

  • взаимная аутентификация клиента и сервера

Основа – использование мандатов (ticket).

Обозначения:

C – клиент

S – сервер

AS – Authentication Server, сервераутентификации

TGS – Ticket Grant Server, сервервыдачимандатов

TGT – ticket grant ticket, предварительныймандат

ST – session ticket, сеансовыймандат

TS – time stamp, время отправки пакета

T – time, срок жизни пакета

Схема взаимодействия:

Клиент получает мандат на доступ к серверу. Сервер «доверяет» мандату, выданному TGS. Достоинство: нет постоянного обращения к AS при обращении к S.

Доверие основано на том, что серверы имеют ключи шифрования, которым доверяют. Первоначальная ключевая информация д.б. распределена каким-то образом.

Обозначения:

KTGS – ключ шифрования TGS (очевидно, есть у всех серверов)

KS – ключ шифрования сервера S (есть у самого сервера и у TGS)

KA,B – временный ключ для взаимодействия A и B

ADC – адрес клиента

PC – пароль клиента

Получение клиентом TGT:

  1. CAS: IDC, IDTGS, TS1 (C хочет получить доступ к TGS)

  2. AS: TGT = EKTGS(KC,TGS, IDC, ADC, IDTGS, TS2, T2)

  3. ASC: EPC(KC,TGS, IDTGS, TS2, T2, TGT)

Получение клиентом ST:

  1. C: AC:= EKC,TGS(IDC, ADC, TS3)

  2. CTGS: IDS, TGT, AC (кто хочет получить доступ и к кому)

  3. TGS: расшифрование TGT (для получения KC,TGS), расшифрование AC

  4. TGS: ST := EKS(KC,S, IDC, ADC, IDS, TS4, T4)

  5. TGSC: EKC,TGS(KC,S, IDS, TS4, T4, ST)

Цель шифрование AC – проверка, тот ли клиент запрашивает доступ, что указан в TGT (на случай, если клиент украл TGT).

Взаимная аутентификация клиента и сервера:

  1. C: AC2= EKC,S(IDC, ADC, TS5)

  2. CS: ST, AC2

  3. S: расшифрование ST (для получения KC,S), расшифрование AC2

  4. S: проверка, совпадает ли запрашивающий клиент с клиентом, указанным в мандате

  5. SC: EKC,S(TS5+1) – отклик клиенту, подтверждение подлинности сервера

3.5.4. Программно-аппаратная защита от удаленного нсд

  • схема сети

  • возможности нарушителя

  • crypto router

  • схема передачи пакета

  • масштабирование относительно числа подсетей

Возможности нарушителя:

  • знает топологию всей сети;

  • знает IP-адреса подсетей;

  • имеет образцы программно-аппаратного обеспечения сети;

  • имеет информацию об ошибках в ПО, об оставленной отладочной информации, мастер-ключах;

  • не имеет локального доступа;

  • не может иметь сеансовых/базовых ключей шифрования.

CR – Crypto Router – программно-аппаратное средство, обладающее следующими возможностями:

  • внутренние (связь внутри ЛВС) и внешние интерфейсы (связь с Интернет) разделены,

  • шифрование всей исходящей изнутри информации и расшифрование всей входящей из Интернета информации.

CR использует расширенную таблицу маршрутизации. Таблица маршрутизации для CR1 содержит имя рабочей станции X, ее маршрутизатор CR2, ключ связи с этим маршрутизатором K12, интерфейс связи I(CR2).

Передача пакета от A к X:

  1. ACR1: пакет P = (ADA, ADX, данные)

  2. CR1: по X находит CR2, по CR2 находит I(CR2) и K12

  3. P= (ADCR1, ADCR2, EK12(P))

  4. CR1CR2: P

  5. CR2: в таблице маршрутизации CR1 находит K12, P = DK12(P)

  6. CR2X: P

Эта схема прозрачна для любого сетевого ПО, работающего по TCP/IP. Надежность определяется криптоалгоритмом.

Когда число подсетей большое, то нужен еще один объект – криптомаршрутизатор с функциями центра распределения ключей – KDC (Key Distribution Center). KDC распространяет таблицы маршрутизации.