MQV

редактировать

MQV ( Menezes – Qu – Vanstone) - это аутентифицированный протокол для согласования ключей, основанный на схеме Диффи – Хеллмана. Как и другие схемы Диффи – Хеллмана с проверкой подлинности, MQV обеспечивает защиту от активного злоумышленника. Протокол может быть изменен для работы в произвольной конечной группе и, в частности, в группах эллиптических кривых, где он известен как эллиптическая кривая MQV (ECMQV).

Первоначально MQV был предложен Альфредом Менезесом, Минхуа Ку и Скоттом Ванстоуном в 1995 году. Позднее он был модифицирован в результате совместной работы с Лори Лоу и Джерри Солинасом. Есть одно-, двух- и трехходовые варианты.

MQV включен в стандарт открытого ключа IEEE P1363 и стандарт NIST SP800-56A.

Некоторые варианты MQV заявлены в патентах, переданных Certicom.

ECMQV исключен из набора криптографических стандартов Suite B Агентства национальной безопасности.

СОДЕРЖАНИЕ
  • 1 Описание
    • 1.1 Правильность
  • 2 MQV против HMQV
  • 3 См. Также
  • 4 ссылки
  • 5 Библиография
  • 6 Внешние ссылки
Описание

У Алисы есть пара ключей с ее открытым ключом и ее частным ключом, а у Боба есть пара ключей с его открытым ключом и его личным ключом. ( А , а ) {\ Displaystyle (А, а)} А {\ displaystyle A} а {\ displaystyle a} ( B , б ) {\ displaystyle (B, b)} B {\ displaystyle B} б {\ displaystyle b}

В дальнейшем имеет следующее значение. Позвольте быть точкой на эллиптической кривой. Тогда где и - порядок используемой точки генератора. Таковы первые L бит первой координаты. р ¯ {\ displaystyle {\ bar {R}}} р знак равно ( Икс , у ) {\ Displaystyle R = (х, у)} р ¯ знак равно ( Икс мод 2 L ) + 2 L {\ displaystyle {\ bar {R}} = (х \, {\ bmod {\,}} 2 ^ {L}) + 2 ^ {L}} L знак равно бревно 2 п + 1 2 {\ Displaystyle L = \ left \ lceil {\ frac {\ lfloor \ log _ {2} n \ rfloor +1} {2}} \ right \ rceil} п {\ displaystyle n} п {\ displaystyle P} р ¯ {\ displaystyle {\ bar {R}}} р {\ displaystyle R}

Шаг Операция
1 Алиса генерирует ключевую пару, генерируя случайным образом и вычисляя с помощью точки на эллиптической кривой. ( Икс , Икс ) {\ Displaystyle (Х, х)} Икс {\ displaystyle x} Икс знак равно Икс п {\ Displaystyle X = xP} п {\ displaystyle P}
2 Боб генерирует пару ключей так же, как Алиса. ( Y , у ) {\ displaystyle (Y, y)}
3 Теперь Алиса вычисляет по модулю и отправляет Бобу. S а знак равно Икс + Икс ¯ а {\ Displaystyle S_ {а} = х + {\ бар {X}} а} п {\ displaystyle n} Икс {\ displaystyle X}
4 Боб вычисляет по модулю и отправляет Алисе. S б знак равно у + Y ¯ б {\ displaystyle S_ {b} = y + {\ bar {Y}} b} п {\ displaystyle n} Y {\ displaystyle Y}
5 Алиса вычисляет, а Боб вычисляет, где находится кофактор (см. Криптография эллиптических кривых: параметры домена ). K знак равно час S а ( Y + Y ¯ B ) {\ Displaystyle К = час \ cdot S_ {a} (Y + {\ bar {Y}} B)} K знак равно час S б ( Икс + Икс ¯ А ) {\ Displaystyle К = час \ cdot S_ {b} (X + {\ bar {X}} A)} час {\ displaystyle h}
6 Сообщение секрета было успешным. Ключ для алгоритма с симметричным ключом может быть получен из. K {\ displaystyle K} K {\ displaystyle K}

Примечание: чтобы алгоритм был безопасным, необходимо выполнить некоторые проверки. См. Hankerson et al.

Правильность

Боб вычисляет: K знак равно час S б ( Икс + Икс ¯ А ) знак равно час S б ( Икс п + Икс ¯ а п ) знак равно час S б ( Икс + Икс ¯ а ) п знак равно час S б S а п {\ Displaystyle К = час \ cdot S_ {b} (X + {\ bar {X}} A) = h \ cdot S_ {b} (xP + {\ bar {X}} AP) = h \ cdot S_ {b} (x + {\ bar {X}} a) P = h \ cdot S_ {b} S_ {a} P}

Алиса вычисляет: K знак равно час S а ( Y + Y ¯ B ) знак равно час S а ( у п + Y ¯ б п ) знак равно час S а ( у + Y ¯ б ) п знак равно час S б S а п {\ Displaystyle К = час \ cdot S_ {a} (Y + {\ bar {Y}} B) = h \ cdot S_ {a} (yP + {\ bar {Y}} bP) = h \ cdot S_ {a} (y + {\ bar {Y}} b) P = h \ cdot S_ {b} S_ {a} P}

Таким образом, общие секреты действительно совпадают с K {\ displaystyle K} K знак равно час S б S а п {\ Displaystyle К = час \ cdot S_ {b} S_ {a} P}

MQV против HMQV

Исходный протокол MQV не включает идентификаторы пользователей взаимодействующих сторон в потоках обмена ключами. Идентификационные данные пользователей включаются только в последующий процесс явного подтверждения ключа. Однако явное подтверждение ключа не является обязательным в MQV (и в спецификации IEEE P1363 ). В 2001 году Калиски представил неизвестную атаку с использованием общего ключа, в которой использовались отсутствующие идентификаторы в протоколе обмена ключами MQV. Атака работает против неявно аутентифицированного MQV, у которого нет явного подтверждения ключа. В этой атаке пользователь устанавливает сеансовый ключ с другим пользователем, но его обманывают, заставляя полагать, что он делится ключом с другим пользователем. В 2006 году Менезеш и Устаоглу предложили противодействовать этой атаке, включив идентификационные данные пользователей в функцию деривации ключей в конце обмена ключами MQV. Явный процесс подтверждения ключа остается необязательным.

В 2005 году Кравчик предложил хэш-вариант MQV, названный HMQV. Протокол HMQV был разработан для защиты от атаки Калиски (без обязательного явного подтверждения ключа) с дополнительными целями достижения доказуемой безопасности и повышения эффективности. HMQV внесла в MQV три изменения:

  1. Включение идентификаторов пользователей в потоки обмена ключами: более конкретно, letting и where и - это идентификаторы Алисы и Боба соответственно. Икс ¯ знак равно ЧАС ( Икс , B ) {\ displaystyle {\ bar {X}} = H (X, B)} Y ¯ знак равно ЧАС ( Y , А ) {\ displaystyle {\ bar {Y}} = H (Y, A)} А {\ displaystyle A} B {\ displaystyle B}
  2. Удаление обязательного требования в MQV о том, что центр сертификации (ЦС) должен проверять подтверждение владения закрытым ключом пользователя во время регистрации открытого ключа. В HMQV CA просто нужно проверить, что представленный открытый ключ не равен 0 или 1.
  3. Удаление обязательного требования в MQV о том, что пользователь должен проверять, является ли полученный эфемерный открытый ключ действительным открытым ключом (известное как проверка открытого ключа). В HMQV пользователю просто нужно проверить, что полученный эфемерный открытый ключ не равен 0 или 1.

HMQV утверждает, что превосходит MQV по производительности, поскольку не требует операций в 2) и 3) выше, которые являются обязательными в MQV. В документе HMQV представлены «формальные доказательства безопасности», подтверждающие, что отказ от этих операций является безопасным.

В 2005 году Менезес впервые представил атаку с ограничением подгруппы против HMQV. Эта атака использует точное отсутствие проверок открытого ключа в 2) и 3). Он показывает, что при взаимодействии с активным злоумышленником протокол HMQV приводит к утечке информации о долгосрочном закрытом ключе пользователя, и в зависимости от настройки базовой криптографической группы злоумышленник может восстановить весь закрытый ключ. Менезеш предложил противодействовать этой атаке, по крайней мере, требуя проверки открытых ключей в пунктах 2) и 3).

В 2006 году, в ответ на атаку Менезеса, Кравчик пересмотрел HMQV в представлении IEEE P1363 (включенном в предварительный проект IEEE P1363 D1 ). Однако вместо того, чтобы проверять долгосрочные и эфемерные открытые ключи в пунктах 2) и 3) соответственно как две отдельные операции, Кравчик предложил проверять их вместе в одной комбинированной операции во время процесса обмена ключами. Это сэкономит деньги. С помощью комбинированной проверки открытого ключа атака Менезеса будет предотвращена. Пересмотренный HMQV все еще может претендовать на более высокую эффективность, чем MQV.

В 2010 году Хао представил две атаки на обновленный HMQV (как указано в предварительном проекте IEEE P1363 D1). Первая атака использует тот факт, что HMQV позволяет регистрировать любую строку данных, кроме 0 и 1, как долгосрочный открытый ключ. Следовательно, небольшой элемент подгруппы может быть зарегистрирован как «открытый ключ». Зная этот «открытый ключ», пользователь может пройти все этапы проверки в HMQV и в конце будет полностью «аутентифицирован». Это противоречит общепринятому пониманию того, что «аутентификация» в протоколе обмена аутентифицированными ключами определяется на основе доказательства знания секретного ключа. В этом случае пользователь «аутентифицирован», но не имеет закрытого ключа (на самом деле закрытого ключа не существует). Эта проблема не применима к MQV. Вторая атака использует режим самосвязи, который явно поддерживается в HMQV, чтобы позволить пользователю общаться с самим собой, используя один и тот же сертификат открытого ключа. В этом режиме показано, что HMQV уязвим для неизвестной атаки с использованием общего ключа. Чтобы противостоять первой атаке, Хао предложил выполнять проверки открытых ключей в пунктах 2) и 3) отдельно, как первоначально было предложено Менезешем. Однако это изменение уменьшит преимущества эффективности HMQV по сравнению с MQV. Чтобы противостоять второй атаке, Хао предложил включить дополнительные идентификаторы, чтобы различать копии себя, или отключить режим самосвязи.

Две атаки Хао обсуждались членами рабочей группы IEEE P1363 в 2010 году. Однако единого мнения о том, как следует пересмотреть HMQV, не было. В результате спецификация HMQV в предварительном проекте IEEE P1363 D1 осталась неизменной, но с тех пор стандартизация HMQV в IEEE P1363 остановилась.

Смотрите также
Рекомендации
Библиография
Внешние ссылки
Последняя правка сделана 2023-12-31 11:00:33
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте