СПИК
SPEKE ( Простой парольный экспоненциальный обмен ключами ) — это криптографический метод соглашения о ключах, проверяемый паролем .
Описание
[ редактировать ]Протокол представляет собой нечто большее, чем обмен ключами Диффи-Хеллмана где генератор Диффи-Хеллмана g создается из хеша пароля , .
Вот одна простая форма SPEKE:
- Алиса и Боб соглашаются использовать достаточно большое и случайно выбранное безопасное простое число p , а также хеш-функцию H ().
- Алиса и Боб договариваются об общем пароле π .
- Алиса и Боб оба строят g = H ( π ) 2 мод п . (Возведение в квадрат делает g генератором подгруппы простого порядка мультипликативной группы целых чисел по модулю p .)
- Алиса выбирает секретное случайное целое число a , затем отправляет Бобу g а против п .
- Боб выбирает секретное случайное целое число b , затем отправляет Алисе g б против п.
- Алиса и Боб прерывают работу, если полученные ими значения выходят за пределы диапазона [2, p -2], чтобы предотвратить атаку с ограничением небольшой подгруппы .
- Алиса вычисляет K = ( g б против п ) а против п .
- Боб вычисляет K = ( g а против п ) б против п .
И Алиса, и Боб придут к одному и тому же значению K тогда и только тогда, когда они используют одно и то же значение для π .Как только Алиса и Боб вычислят общий секрет K, они смогут использовать его в протоколе подтверждения ключа , чтобы доказать друг другу, что они знают один и тот же пароль π, и получить общий секретный ключ шифрования для отправки друг другу защищенных и аутентифицированных сообщений. Использование протокола подтверждения ключа не является обязательным, как указано в стандартах IEEE P1363.2 и ISO/IEC 11770-4.
В отличие от алгоритма Диффи-Хеллмана без аутентификации, SPEKE предотвращает атаку «человек посередине» за счет включения пароля. Злоумышленник, который может читать и изменять все сообщения между Алисой и Бобом, не может узнать общий ключ K и не может угадать пароль более одного раза при каждом взаимодействии со стороной, которая его знает.
В общем, SPEKE может использовать любую группу простого порядка, подходящую для криптографии с открытым ключом, включая криптографию с эллиптической кривой . Однако когда SPEKE реализуется с использованием криптографии на основе эллиптической кривой, протокол существенно изменяется, требуя дополнительного примитива, который должен надежно сопоставлять пароль со случайной точкой на назначенной эллиптической кривой. (Этот примитив называется IOP или функцией «целочисленное соединение» в IEEE P1363.2 и ISO/IEC 11770-4.)
История
[ редактировать ]SPEKE — один из старых и хорошо известных протоколов в относительно новой области обмена ключами с аутентификацией по паролю. Впервые он был описан Дэвидом Джаблоном в 1996 году. [1] В этой публикации Яблон также предложил вариант, где на шаге 2 протокола g рассчитывается как g = g q С с константой g q . Однако эта конструкция оказалась небезопасной против словарных атак и поэтому больше не рекомендовалась в исправленной версии статьи. В 1997 году Jablon усовершенствовал и расширил SPEKE, добавив дополнительные варианты, включая расширенный метод согласования ключей с аутентификацией по паролю, названный B-SPEKE. [2] В статье, опубликованной Маккензи в 2001 году, с помощью модели случайного оракула представлено доказательство того, что SPEKE является безопасным протоколом PAKE (с использованием несколько смягченного определения), основанным на вариации предположения Диффи-Хеллмана о решении. [3] Однако в доказательстве функция подтверждения ключа в SPEKE рассматривается как обязательная, в отличие от того, как SPEKE определен в стандартах IEEE P1363.2 и ISO/IEC 11770-4.
С 1999 года протокол использовался несколькими компаниями в различных продуктах, обычно дополняя другие криптографические методы.
В 2014 году были выявлены две атаки на протокол SPEKE, как указано в оригинальной статье Джаблона 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/ МЭК 11770-4 (2006 г.) следует пересмотреть для решения выявленных проблем. Предлагаемый патч включает явное определение идентификаторов сеансов и включение этих идентификаторов в функцию получения ключей таким образом, чтобы не изменить симметрию протокола. Исправленный SPEKE опубликован в ISO/IEC 11770-4 (2017). [5] Однако спецификация SPEKE в IEEE P1363.2 остается неисправленной.
Патенты
[ редактировать ]Патент США 6226383 описывает несколько вариантов метода. Срок действия патента истек в марте 2017 года.
Стандарты
[ редактировать ]Стандарты, описывающие SPEKE, включают IEEE P1363.2 и ISO/IEC 11770-4. В последнем стандарте ISO/IEC 11770-4 (2017 г.) спецификация SPEKE отличается от предыдущей спецификации ISO/IEC 11770-4 (2006 г.) для устранения двух атак, о которых сообщили Хао и Шахандашти в 2014 году. [4]
Ссылки
[ редактировать ]- ^ Яблон, Дэвид (октябрь 1996 г.). «Обмен ключами с аутентификацией только по надежному паролю» . Обзор компьютерных коммуникаций ACM SIGCOMM . 26 (5): 5–26. CiteSeerX 10.1.1.57.4798 . дои : 10.1145/242896.242897 . S2CID 2870433 .
- ^ Яблон, Дэвид (20 июня 1997 г.). «Расширенные протоколы обмена ключами паролей, невосприимчивые к атакам по словарю» . Материалы 6-го семинара IEEE по технологиям: инфраструктура для совместных предприятий . Кембридж, Массачусетс, США: Компьютерное общество IEEE. стр. 248–255. CiteSeerX 10.1.1.30.8102 . дои : 10.1109/ENABL.1997.630822 . ISBN 978-0-8186-7967-4 . S2CID 10568917 .
- ^ Маккензи, Филип (19 июля 2001 г.). «О безопасности протокола обмена ключами с аутентификацией паролем SPEKE» . Проверено 22 марта 2008 г.
- ^ Jump up to: а б Ф. Хао, С.Ф. Шахандашти. Новый взгляд на протокол SPEKE . Материалы 1-й Международной конференции по исследованиям в области стандартизации безопасности, 2014 г.
- ^ «Платформа онлайн-просмотра (OBP)» . Архивировано из оригинала 21 августа 2012 г.