Анализ существующих уязвимостей протокола выработки общего ключа PAKE | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 30 ноября, печатный экземпляр отправим 4 декабря.

Опубликовать статью в журнале

Авторы: ,

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №26 (316) июнь 2020 г.

Дата публикации: 30.06.2020

Статья просмотрена: 137 раз

Библиографическое описание:

Полков, А. А. Анализ существующих уязвимостей протокола выработки общего ключа PAKE / А. А. Полков, Е. А. Никифорова. — Текст : непосредственный // Молодой ученый. — 2020. — № 26 (316). — С. 36-39. — URL: https://moluch.ru/archive/316/72118/ (дата обращения: 16.11.2024).



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

Возникает очевидный вопрос: « можно ли для сохранения секрета пользоваться коротким и несложным для запоминания паролем» ? — ведь при слове «пароль» сразу же возникает мысль о его нахождении перебором. Поэтому для взаимодействия по каналу связи, где возможен активный противник, требуются особые протоколы.

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

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

Эта идея стала основой усовершенствованного подхода — PAKE, протокола выработки общего ключа с аутентификацией на основе пароля.

Протокол PAKE («Password-Authenticated Key Exchange») был разработан для выработки общего ключа c аутентификацией на основе пароля. Принцип работы заключается в том, что сначала стороны знают лишь малоэнтропийный ключ (пароль), а общий высокоэнтропийный сессионный ключ получают в процессе взаимодействия. Таким образом, активный противник, имеющий доступ к каналу связи, не может получить информацию, достаточную для подбора пароля без взаимодействия с легитимными участниками.

Введем ряд обозначений — мультипликативную циклическую группу обозначим G, ее порядок- q, образующие элементы группы — g и h, а нейтральный элемент –а, порядок группы точек эллиптической кривой — m, ее подгруппа –Е. Пароль обозначим PW(выбран из совокупности паролей D), хэш-функцию- Н, блочный шифр- ЕК. Функцию формирования кода аутентификации сообщения — МАС К , а идентификаторы сторон передачи сообщения ID. При несимметричной передаче А — клиент, а В — сервер. КА(КВ) и ТА(ТВ) используем для обозначения сессионных ключей и вычисленных значений соответственно.

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

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

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

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

Возможности противника определяются по его воздействию на систему. Перед началом анализа определяются параметры, которые могут быть известны противнику. Стойкость протоколов выработки общего ключа c аутентификацией на основе пароля определяется относительно активного противника в канале, для которого существует возможность перехватить и изменить информацию, а также осуществить соединение с любой легитимной стороной. Так как сессионный ключ протокола PAKE далее используется в протоколах более высоких уровней, то важно учитывать вероятность противника его вычислить по окончанию взаимодействия.

Таким образом, секретность ключа может быть нарушена при использовании в уязвимых протоколах.

Продемонстрируем основные особенности протоколов семейства PAKE.

1) Неявная aутентификация ключа.

Таблица 1

При атаках активного противника протокол семейства PAKE открыт воздействиям, направленным на вскрытие пароля. Для этого он соединяется с легитимным участником A от имени B.

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

2) выбор открытых параметров

Таблица 2

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

3) Этап выработки общего ключа

Таблица 3

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

4) Этап подтверждения ключа

Таблица 4

Обязательным условием работы протокола типа PAKE является неявная аутентификации. Но, несмотря на это, во многих из них существует отдельный этап подтверждения ключа. При некорректной работе этот этап может, наоборот, снижать безопасность. Используем такой известный метод как «атака отражения», что применяются к протоколам PAKE, а также протоколам, основанным не только на паролях, что усложняет вычисление. Такая атака открывает доступ противнику через сторону B взаимодействовать со стороной A. Важно отметить, что сообщения, передаваемые сторонами, кажутся правильными ввиду совпадения задающих параметров для получения аутентификационной информации для легитимной стороны. Вследствие этого, такая аутентификация завершается удачно.

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

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

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

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

Литература:

  1. Clarke D., Hao F., “Cryptanalysis of the Dragonfly key exchange protocol”, IET Information Security, 8 :6 (2014), 283–289.
  2. Federal Office for Information Security (BSI): Advanced security mechanism for machine readable travel documents — extended access control (eac), password authenticated connection establishment (PACE), and restricted identification (ri), 2008.
  3. Е. К. Алексеев, Л. Р. Ахметзянова, И. Б. Ошкин, С. В. Смышляев. Математические вопросы криптографииООО «КРИПТО-ПРО», Москва 2016 Т. 7 № 4 С. 7–28
  4. Информационная технология. Криптографическая защита информации. Протокол выработки общего ключа с аутентификацией на основе пароля, Рекомендации по стандартизации, М.: Стандартинформ, 2016.
  5. Национальный стандарт Российской Федерации ГОСТ Р 34.10–2012 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи, Федеральное агентство по техническому регулированию и метрологии, М.: Стандартинформ, 2012.
Основные термины (генерируются автоматически): PAKE, общий ключ, активный противник, пароль, протокол, сессионный ключ, канал связи, противник, протокол семейства, основа пароля.


Задать вопрос