logo
Анин Б

Гибридные криптосистемы

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

 Алгоритмы шифрования с открытым ключом в среднем работают в

тысячи раз медленнее, чем алгоритмы с симметричным ключом. И хотя темпы роста компьютерной производительности очень высоки, требования к скорости шифрования растут не менее стремительно. Поэтому криптосистемы с открытым ключом вряд ли когда-нибудь смогут удовлетворить современные потребности в скорости шифрования.

 Алгоритмы шифрования с открытым ключом уязвимы по отношению к

криптоаналитическим атакам со знанием открытого текста. Пусть С=Е(Р), где С обозначает шифртекст, Р — открытый текст, Е — функцию шифрования. Тогда, если Р принимает значения из некоторого конечного множества, состоящего из п открытых текстов, криптоаналитику достаточно зашифровать все эти тексты, используя известный ему открытый ключ, и сравнить результаты с С. Ключ таким способом ему вскрыть не удастся, однако открытый текст будет успешно определен.

Чем меньше количество (n) возможных открытых текстов, тем эффективнее будет атака на криптосистему с открытым ключом. Например, если криптоаналитику известно, что шифрованию подверглась сумма сделки, не превышающая 1 млн долл., он может перебрать все числа от 1 до 1 000 000.

В большинстве случаев криптографические алгоритмы с открытым ключом применяются для шифрования сеансовых ключей при их передаче абонентам сети связи. Соответствующий протокол выглядит обычно так:

1. Антон генерирует сеансовый ключ К и шифрует его с использованием

открытого ключа В, принадлежащего Борису:

ЕВ(К)

2. Борис расшифровывает сообщение Антона при помощи своего тайного

ключа и получает в результате сеансовый ключ К, сгенерированный Антоном:

K=DB(EB(K))

3. Антон и Борис обмениваются сообщениями, зашифрованными одним и

тем же сеансовым ключом К.

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