А. А. КУЗНЕЦОВ
Московский государственный технический университет им.
МЕТОД ПОВЫШЕНИЯ СТОЙКОСТИ СИСТЕМ
ШИФРОВАНИЯ ПРИ ИСПОЛЬЗОВАНИИ
КОРОТКИХ КЛЮЧЕЙ
Рассмотрен метод повышения стойкости систем шифрования за счет применения комбинации симметричных и асимметричных шифров при условии использования коротких ключей.
В некоторых случаях размеры ключей ограничены, так, например, не требуется лицензирование лишь при использовании симметричных алгоритмов с ключом до 40 бит и асимметричных алгоритмов с ключом не более 128 бит [1]. Рассмотрим метод повышения стойкости систем шифрования при таких ограничениях. Данный метод предназначен для случая передачи сообщения между абонентами с заранее согласованным 40-битовым ключом. На первом этапе абоненты вырабатывают пары открытого и секретного ключей и осуществляют обмен открытыми ключами по следующей схеме:
Абонент A:
1. Вырабатывает сеансовую пару открытого и секретного ключей (PKA,SKA) размером 128 бит.
2. Преобразует открытый ключ PKA таким образом, чтобы он не содержал избыточных данных, т. е. чтобы не существовало критерия, по которому можно было бы определить допустимость ключа. И в результате получает псевдоключ PK’A.
3. Шифрует PK’A заранее согласованным симметричным ключом K размером 40 бит.
4. Передает зашифрованный псевдоключ EK(PK’A) абоненту B.
Абонент B:
5. Расшифровывает псевдоключ PK’A=DK(EK(PK’A)).
6. Восстанавливает открытый ключ PKA.
Аналогично осуществляется передача открытого ключа абонента B абоненту A. При этом открытые ключи неизвестны никому, кроме абонентов, а подбор злоумышленником ключа K оказывается невозможным из-за отсутствия критериев проверки правильности расшифрования псевдоключа PK’.
Для шифрования сообщения M предварительно производится его преобразование в псевдосообщение M’ следующим образом:
1. Вырабатывается случайный ключ K’ размером 128 бит.
2. Вычисляется псевдосообщение M’=K’||EK’(M), где «||» обозначает конкатенацию.
Следует отметить, что такое преобразование по сути не является шифрованием, поскольку исходное сообщение M может быть легко восстановлено из псевдосообщения M’ без какой-либо дополнительной секретной информации.
Представим псевдосообщение M’ в виде последовательности 128-битовых блоков: M’=M’0M’1...M’n. Тогда восстановление исходного сообщения будет выполняться следующим образом: M=DM’0(M’1...M’n).
После вычисления псевдосообщения осуществляется шифрование его первого блока открытым ключом получателя, последующие же блоки остаются без изменения: C=EPKA(M’0)||M’1...M’n.
Необходимо подчеркнуть, что при дешифровании сообщения злоумышленнику неизвестен открытый ключ абонента. Расшифровывая перехваченный псевдоключ с помощью возможных вариантов ключа K, злоумышленник получит 240 вариантов открытых ключей абонента, для каждого из которых ему необходимо осуществить дешифрование сообщения. Учитывая, что по сложности дешифрования 128-битовому ключу для алгоритмов на эллиптических кривых соответствует 64-битовый ключ симметричных шифров [2], получаем стойкость, соответствующую 104-битовым симметричным шифрам.
Еще некоторого повышения стойкости можно достичь за счет многократного шифрования с помощью открытых ключей. Так, например, абонент A вырабатывает набор из m пар асимметричных ключей (где, скажем, m=26=64): (PKA(1), SKA(1)), ..., (PKA(m), SKA(m)). Тогда абонент B будет осуществлять шифрование: C=EPKA(1)(... EPKA(m)(M’0)...)||M’1...M’n. Таким образом, оказывается возможным достижение стойкости, соответствующей 110-битовым симметричным ключам.
Рассмотренный метод позволяет повысить стойкость систем шифрования при наличии ограничений на размеры ключей за счет применения комбинации симметричного и асимметричного шифров, а также обеспечить аутентификацию абонентов с помощью достаточного короткого симметричного ключа.
Список литературы
1. Положение о лицензировании предоставления услуг в области шифрования информации от 01.01.01 года № 000.
2. , Фионов методы защиты информации: Учебное пособие для вузов. – М.: Горячая линия – Телеком, 2005. – 229 с.: ил.


