Иллюстрированный самоучитель по защите информации

Основные криптографические протоколы

Протокол обмена ключами с цифровой подписью

При обмене сеансовыми ключами атаку методом сведения к середине можно попытаться отразить также с помощью цифровой подписи. В этом случае Антон и Борис получают сеансовые ключи, подписанные Дмитрием, который является доверенным лицом, наделенным правами арбитра. Каждый сеансовый ключ снабжается свидетельством о его принадлежности определенному лицу. Получая от Дмитрия ключ, Антон и Борис могут проверить его подпись и убедиться, что этот ключ принадлежит именно тому человеку. которому они собираются послать сообщение.

В результате Зиновию придется весьма несладко. Он не сможет выдать себя за Антона или Бориса, поскольку не знает их тайных ключей. Зиновий будет лишен возможности подменить открытые ключи Антона и Бориса на свои собственные, поскольку в его распоряжении есть только сеансовые ключи с подписью Дмитрия, удостоверяющей их принадлежность Зиновию. Зиновию остается только перехватывать шифрованные сообщения, которыми обмениваются Антон и Борис, и пытаться их читать с помощью криптоаналитических методов.

Однако следует отметить, что в протоколе обмена сеансовыми ключами с цифровой подписью появился новый участник – Дмитрий. Если Зиновий сумеет перевоплотиться в Дмитрия, он сможет подписывать и навязывать участникам протокола известные ему фальшивые сеансовые ключи. Таким образом, несмотря ни на что, у Зиновия все же остается возможность атаковать этот протокол, воспользовавшись методом сведения к середине.

Одновременная передача ключа и сообщения

Антон и Борис совершенно необязательно передают друг другу сеансовые ключи перед тем, как приступить к обмену сообщениями. Вместо этого они могут воспользоваться следующим протоколом:

  1. Антон генерирует случайный сеансовый ключ К и с помощью него зашифровывает сообщение М, получая в результате ЕК(М).
  2. Антон извлекает открытый ключ Бориса В из базы данных.
  3. Антон шифрует сеансовый ключ К при помощи В, получая в результате ЕВ(К).
  4. Антон посылает Борису ЕК(М) и ЕВ(К).
  5. Борис расшифровывает сеансовый ключ К с помощью своего тайного ключа.
  6. Борис расшифровывает сообщение Антона на сеансовом ключе К.

Данный протокол наглядно демонстрирует использование современных гибридных криптосистем на практике. Для достижения большей стойкости в него может быть добавлена цифровая подпись, а также применены другие приемы, которые помогут сделать его более стойким против различных атак.

Множественная рассылка ключей и сообщений

Почему бы Антону не послать шифрованное сообщение сразу нескольким адресатам? Он может сделать это, например так:

  1. Антон генерирует случайный сеансовый ключ К и с его помощью зашифровывает сообщение М, получая в результате ЕК(М).
  2. Антон извлекает открытые ключи Бориса, Владимира и Георгия из базы данных.
  3. Антон шифрует К при помощи открытых ключей Бориса, Владимира и Георгия, получая в результате ЕБ(К), ЕВ(К) и ЕГ(К).
  4. Антон посылает шифрованное сообщение ЕК(М), а также многократно зашифрованный сеансовый ключ Б(К), ЕВ(К) и ЕГ(К)) всем, кто пожелает их получить.
  5. Только Борис, Владимир и Георгий смогут расшифровать сеансовый ключ К при помощи своих тайных ключей.
  6. Только Борис, Владимир и Георгий смогут прочесть шифрованное сообщение Антона с помощью сеансового ключа К.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.