stringtranslate.com

СПИК

SPEKE ( Simple Password Exponential Key Exchange ) — это криптографический метод для согласования ключей с аутентификацией по паролю .

Описание

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

Вот одна из простых форм SPEKE:

  1. Алиса и Боб договариваются использовать достаточно большое и случайно выбранное безопасное простое число p , а также хеш-функцию H ().
  2. Алиса и Боб договариваются об общем пароле π .
  3. Алиса и Боб оба строят g = H ( π ) 2 mod p . (Возведение в квадрат делает g генератором подгруппы простого порядка мультипликативной группы целых чисел по модулю p .)
  4. Алиса выбирает секретное случайное целое число a , затем отправляет Бобу g a mod p .
  5. Боб выбирает секретное случайное целое число b , затем отправляет Алисе g b mod p.
  6. Алиса и Боб прерывают работу, если полученные ими значения не попадают в диапазон [2, p -2], чтобы предотвратить атаку ограничения небольшой подгруппы .
  7. Алиса вычисляет K = ( g b mod p ) a mod p .
  8. Боб вычисляет K = ( g a mod p ) b mod p .

И Алиса, и Боб придут к одному и тому же значению для K, если и только если они используют одно и то же значение для π . После того, как Алиса и Боб вычислят общий секрет K, они могут использовать его в протоколе подтверждения ключа, чтобы доказать друг другу, что они знают один и тот же пароль π, и вывести общий секретный ключ шифрования для отправки друг другу защищенных и аутентифицированных сообщений. Использование протокола подтверждения ключа является необязательным, как указано в стандартах IEEE P1363.2 и ISO/IEC 11770-4.

В отличие от неаутентифицированного Диффи-Хеллмана, SPEKE предотвращает атаку «человек посередине» путем включения пароля. Злоумышленник, который может читать и изменять все сообщения между Алисой и Бобом, не может узнать общий ключ K и не может сделать более одной попытки для пароля в каждом взаимодействии со стороной, которая его знает.

В общем случае SPEKE может использовать любую группу простого порядка, подходящую для криптографии с открытым ключом, включая криптографию на основе эллиптических кривых . Однако, когда SPEKE реализуется с использованием криптографии на основе эллиптических кривых, протокол существенно изменяется, требуя дополнительного примитива, который должен надежно сопоставлять пароль со случайной точкой на указанной эллиптической кривой. (Этот примитив называется функцией IOP или Integer-to-Point в IEEE P1363.2 и ISO/IEC 11770-4.)

История

SPEKE — один из старых и известных протоколов в относительно новой области обмена ключами с аутентификацией по паролю. Впервые он был описан Дэвидом Джаблоном в 1996 году. [1] В этой публикации Джаблон также предложил вариант, в котором на шаге 2 протокола g вычисляется как g = g q S с константой g q . Однако эта конструкция оказалась небезопасной для атак по словарю и поэтому больше не рекомендовалась в пересмотренной версии статьи. В 1997 году Джаблон усовершенствовал и улучшил SPEKE дополнительными вариациями, включая расширенный метод согласования ключей с аутентификацией по паролю, называемый B-SPEKE. [2] В статье, опубликованной Маккензи в 2001 году, представлено доказательство в модели случайного оракула того, что SPEKE является безопасным протоколом PAKE (с использованием несколько смягченного определения), основанным на вариации предположения о решении Диффи-Хеллмана. [3] Однако доказательство рассматривает функцию подтверждения ключа в SPEKE как обязательную, что не соответствует спецификации SPEKE в стандартах IEEE P1363.2 и ISO/IEC 11770-4.

С 1999 года этот протокол использовался несколькими компаниями в различных продуктах, как правило, в дополнение к другим криптографическим методам.

В 2014 году были выявлены две атаки на протокол SPEKE, как указано в оригинальной статье Jablon 1996 года и в стандартах IEEE P1363.2 (D26) и ISO/IEC 11770-4 (2006). [4] Первая атака позволяет активному злоумышленнику выдавать себя за пользователя, не зная пароля, путем запуска двух параллельных сеансов с жертвой. Вторая атака позволяет злоумышленнику-посреднику манипулировать ключом сеанса между двумя честными пользователями, не будучи обнаруженным. Первая атака указывает на практическую слабость протокола, в то время как вторая атака имеет теоретические последствия для доказательств безопасности SPEKE. Во время встречи ISO/IEC JTC 1/SC 27 в Мехико в октябре 2014 года эти две атаки обсуждались техническим комитетом в ISO/IEC SC 27/Work Group 2, и было решено, что спецификация SPEKE в ISO/IEC 11770-4 (2006) должна быть пересмотрена для решения выявленных проблем. Предлагаемый патч включает явное определение идентификаторов сеансов и включение этих идентификаторов в функцию выведения ключей таким образом, чтобы не изменить симметрию протокола. Исправленный SPEKE был опубликован в ISO/IEC 11770-4 (2017). [5] Однако спецификация SPEKE в IEEE P1363.2 остается неисправленной.

Патенты

Патент США 6,226,383 описывает несколько вариантов метода. Этот патент истек в марте 2017 года.

Стандарты

Стандарты, описывающие SPEKE, включают IEEE P1363 .2 и ISO/IEC 11770-4. В последнем стандарте ISO/IEC 11770-4 (2017) спецификация SPEKE пересмотрена по сравнению с предыдущей в ISO/IEC 11770-4 (2006) для решения двух атак, о которых сообщили Хао и Шахандашти в 2014 году. [4]

Ссылки

  1. ^ Jablon, David (октябрь 1996 г.). «Strong Password-Only Authenticated Key Exchange» (Обмен ключами с аутентификацией только с помощью сильного пароля). ACM SIGCOMM Computer Communication Review . 26 (5): 5–26. CiteSeerX  10.1.1.57.4798 . doi :10.1145/242896.242897. S2CID  2870433.
  2. ^ Jablon, David (20 июня 1997 г.). «Расширенные протоколы обмена ключами паролей, устойчивые к атакам по словарю». Труды 6-го семинара IEEE по технологиям поддержки: инфраструктура для совместных предприятий . Кембридж, Массачусетс, США: IEEE Computer Society. стр. 248–255. CiteSeerX 10.1.1.30.8102 . doi :10.1109/ENABL.1997.630822. ISBN  978-0-8186-7967-4. S2CID  10568917.
  3. ^ Маккензи, Филип (2001-07-19). "О безопасности протокола обмена ключами с аутентификацией по паролю SPEKE" . Получено 2008-03-22 .
  4. ^ ab F. Hao, SF Shahandashti. Пересмотр протокола SPEKE. Труды 1-й Международной конференции по исследованиям стандартизации безопасности, 2014.
  5. ^ "Платформа онлайн-просмотра (OBP)". Архивировано из оригинала 2012-08-21.

Внешние ссылки