МКВ

Протокол обмена открытыми ключами

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

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

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

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

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

Описание

У Алисы есть пара ключей, состоящая из ее открытого ключа и ее закрытого ключа, а у Боба есть пара ключей, состоящая из его открытого ключа и его закрытого ключа. ( А , а ) {\displaystyle (А,а)} А {\displaystyle А} а {\displaystyle а} ( Б , б ) {\displaystyle (Б,б)} Б {\displaystyle Б} б {\displaystyle б}

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

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

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

Корректность

Боб вычисляет: К = час С б ( Х + Х ¯ А ) = час С б ( х П + Х ¯ а П ) = час С б ( х + Х ¯ а ) П = час С б С а П {\displaystyle K=h\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}

Алиса вычисляет: К = час С а ( И + И ¯ Б ) = час С а ( у П + И ¯ б П ) = час С а ( у + И ¯ б ) П = час С б С а П {\displaystyle K=h\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}

Итак, общие секреты действительно одинаковы. К {\displaystyle К} К = час С б С а П {\displaystyle K=h\cdot S_{b}S_{a}P}

MQV против HMQV

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

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

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

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

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

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

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

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

Смотрите также

Ссылки

  1. ^ Лоу, Л.; Менезес, А .; Ку, М.; Солинас, Дж.; Ванстоун, С. (2003). «Эффективный протокол для аутентифицированного согласования ключей». Des. Codes Cryptography . 28 (2): 119– 134. doi :10.1023/A:1022595222606. S2CID  27921095.
  2. ^ Баркер, Элейн; Чен, Лили; Рогински, Аллен; Смид, Майлз (2013). «Рекомендации по схемам установления парных ключей с использованием дискретной логарифмической криптографии». doi : 10.6028/NIST.SP.800-56Ar2 . Получено 15 апреля 2018 г. {{cite journal}}: Цитировать журнал требует |journal=( помощь )
  3. ^ Калиски, Бертон С. младший (август 2001 г.). «Неизвестная атака с общим ключом на протокол согласования ключей MQV». ACM Transactions on Information and System Security . 4 (3): 275– 288. doi :10.1145/501978.501981. ISSN  1094-9224. S2CID  15388065.
  4. ^ Менезес, Альфред; Устаоглу, Беркант (2006-12-11). "О важности проверки открытого ключа в протоколах согласования ключей MQV и HMQV". Прогресс в криптологии - INDOCRYPT 2006. Конспект лекций по информатике. Том 4329. Springer, Берлин, Гейдельберг. С.  133– 147. doi :10.1007/11941378_11. hdl :11147/4782. ISBN 978-3-540-49767-7.
  5. ^ Krawczyk, H. (2005). "HMQV: Высокопроизводительный безопасный протокол Диффи–Хеллмана". Advances in Cryptology – CRYPTO 2005. Lecture Notes in Computer Science. Vol. 3621. pp.  546– 566. doi :10.1007/11535218_33. ISBN 978-3-540-28114-6.
  6. ^ Менезес, Альфред (2007-01-01). "Еще один взгляд на HMQV". Математическая криптология . 1 (1). doi : 10.1515/jmc.2007.004 . ISSN  1862-2984. S2CID  15540513.
  7. ^ Ф. Хао, О надежном соглашении о ключах на основе аутентификации с открытым ключом. Труды 14-й Международной конференции по финансовой криптографии и безопасности данных, Тенерифе, Испания, LNCS 6052, стр. 383–390, январь 2010 г.

Библиография

  • Калиски, Б. С. младший (2001). «Неизвестная атака с разделением ключей на протокол согласования ключей MQV». ACM Transactions on Information and System Security . 4 (3): 275– 288. doi :10.1145/501978.501981. S2CID  15388065.
  • Лоу, Л.; Менезес, А .; Ку, М.; Солинас, Дж.; Ванстоун, С. (2003). «Эффективный протокол для аутентифицированного соглашения о ключах». Des. Codes Cryptography . 28 (2): 119– 134. doi :10.1023/A:1022595222606. S2CID  27921095.
  • Leadbitter, PJ; Smart, NP (2003). "Анализ небезопасности ECMQV с частично известными одноразовыми кодами". Информационная безопасность . 6-я международная конференция ISC 2003, Бристоль, Великобритания, 1–3 октября 2003 г. Труды. Конспект лекций по информатике . Том 2851. стр.  240–251 . doi :10.1007/10958513_19. ISBN 978-3-540-20176-2.
  • Менезес, Альфред Дж.; Ку, Минхуа; Ванстоун, Скотт А. (2005). Некоторые новые протоколы согласования ключей, обеспечивающие неявную аутентификацию (PDF) . 2-й семинар по избранным областям в криптографии (SAC '95). Оттава, Канада. стр.  22–32 .
  • Hankerson, D.; Vanstone, S .; Menezes, A. (2004). Руководство по эллиптической криптографии . Springer Professional Computing. Нью-Йорк: Springer . CiteSeerX  10.1.1.331.1248 . doi :10.1007/b97644. ISBN 978-0-387-95273-4. S2CID  720546.
  • HMQV: высокопроизводительный безопасный протокол Диффи-Хеллмана, автор Хьюго Кравчик
  • Еще один взгляд на HMQV
  • Эффективный протокол для аутентифицированного согласования ключей
  • MQV и HMQV в IEEE P1363 (Power Point)
Взято с "https://en.wikipedia.org/w/index.php?title=MQV&oldid=1244028711"