- •Криптография с открытом ключом
- •2.0 Элементы теории сложности
- •2.1 Односторонние функции
- •2.2 Схема шифрования с открытым ключом
- •2.2.2 Схема шифрования rsa
- •2.3 Схема цифроврй подписи
- •2.3.1 Конструкция цп на основе односторонней функции с секретом
- •2.3.2 Цп на основе схемы шифрования с о.К.
- •2.3.4 Гост р 34.10-94
- •2.3.5 Гост р 34.10-2001
- •2.4.1 Слабые и сильные хф
- •2.4.2 Конструкция хф
- •2.4.3 Хф гост р 34.10-94
- •2.4.4 Применение хф
- •2.5 Хф с ключом
- •2.5.1 Определение
- •2.5.2 Конструкция хф с ключом
- •2.5.3 Имитовставка гост 28147
- •Криптографические протоколы
- •3.1 Определение
- •3.2 Классификация кп
- •3.3 Правила построения кп
- •3.4 Прием защиты от атак повтора
- •3.5 Протоколы обеспечения к, ц, н
- •3.5.1 Протокол пс с обеспечением ц
- •3.6 Протоколы аутентификации
- •3.6.1 Протокол простой защищенной аутентификации
- •3.6.2 Протоколы сильной аутентификации
- •3.7 Протоколы управления ключами
- •3.7.1 Протокол диффи-хэлмана
- •3.7.3 Протокол явного ключевого обмена
- •Управление ключами
- •4.1 Общие
- •4.2 Угрозы управления ключами
- •4.3 Защита ключей
- •4.4.1 По типу алгоритма
- •4.4.2 По уровням
- •4.4.3 По криптопериоду
- •4.5 Состояние ключей
- •4.6 Концепция распределения ключей
- •4.6.1 Распределение ключей «точка – точка»
- •4.6.2 Распределение внутри домена безопасности
- •4.6.3 Распределение ключей между доменами безопасности
3.5 Протоколы обеспечения к, ц, н
3.5.1 Протокол пс с обеспечением ц
(КАВ= КВА)
Для обеспечения Ц будем использовать ХФ с ключом. Для защиты от атак повтора будем использовать отметку времени. ha – ХФ с ключом – использует ключ КАВ, ha=hAB(M) необходимо поместить адресную часть, в данном случае В, А, поэтому ha=hAB(B,A,M,TA)=hAB(B||A||M||TA). Сторона В должна вычислить ha для себя и сравнить с .
ha=Hab(B||A||Ta||M), hb=Hba(A||B||Tb||ha)
Не хватает того, что должно В в принципе выполнять, и того, что где уверенность в том, что В получило то, что отправил А. Следовательно, надо менять.
Формальная запись протокола:
1) А: ключ запоминающего устройства (КЗУа)→Kab, где → означает доверительную передачу
ha=Hab(B||A||Ta||M)
[B||A||Ta||M||ha]=> B, где => - передача в открытый канал связи, недостоверная передача
2) В: , В получает то, что прислал А, но не факт, что получил правильно, поэтому обозначаем с волной над буквой. Делаем проверку Та tb – сравнение с меткой времени, если совпадает, то принимаем, если нет, то сообщение отвергается.
КЗУb→ - ключ извлекли.
- проверка контрольной суммы. Правильное значение вычисляет только тот, кто обладает ключом, следовательно , и . Вместе с этим прошла аутентификация А.
Но т.к. А не знает о том, что В получило правильное сообщение, необходимо известить А об этом
;
3) A: [A|| ]. ta. .
, и - это все подтверждает то, что и эти данные действительно получены получателем В.
3.5.2 ПС с обеспечением К и Н
А В
М, КАВ, SKA – З.К. ЦП, SKВ КВА, SKВ, РКВ – О.К. ЦП
ДСЧ→SA;
ha=SKA(B||A||Sa||M) – вычисление ЦП
CA=Eab(M||ha) – шифрование
После того, как В получил сообщение и убедился, что оно правильное, ему необходимо отправить квитанцию А.
ДСЧ→Sb;
hb=SKb(B||A||Sb||ha), Cb=Eba(ha||hb)
Ответную квитанцию шифровать необязательно как и ЦП на первом этапе.
Теперь надо осуществить защиту от атак повтора.
Чтобы избежать, надо перед передачей передать [A||B||Sa], т.е. нонс, где сообщения от А к В, Sa берется из памяти В.
3.6 Протоколы аутентификации
Аутентификация предназначена для проверки подлинности заявленного идентификатора.
В протоколе по крайней мере две стороны: доказывающей и проверяющей. Обе стороны обладают аутентифицированной информацией.
Существуют три фактора аутентификации:
- аутентификацию можно выполнять по тому, что доказывающий знает;
- то, что он имеет;
- что он есть (биометрическая аутентификация), т.е. что из себя представляет доказывающий.
Различают одностороннюю и двустороннюю (взаимную) аутентификацию.
При односторонней доказывающый и проверяющий не меняетсются ролями.
При взаимной – доказывающий и проверяющий пооередно выполняют роли.
В процессе аутентификации может участвовать и третья сторона (доверяющая), которой доверяют оба участника.
3.6.1 Протокол простой защищенной аутентификации
Рекомендации ITU-T X.509
А(доказывающий) В (проверяющий)
Ра, Н Ра – пароль А, Н – ХФ без ключа
ha=H(Ta||Na||A||Pa), Ta – значение таймера, Na – нонс
1) А: ДСЧ→Na;
ha=H(Ta||Na||A||Pa)
[Ta||Na||A||ha] => B
2) B: [ ]
- не совпадение врядли, т.к. поймать коллизию трудно.
Если совпало, составитель тот, кто действительно отправлял, следовательно: => A аутентифицирован.