UOV: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Строка 53: Строка 53:


== Результаты по анализу на [[Криптографическая стойкость|криптографическую стойкость]] ==
== Результаты по анализу на [[Криптографическая стойкость|криптографическую стойкость]] ==
В данной таблице находятся основные результаты, полученные при попытках взлома схемы UOV при различных значениях <math>n</math> и <math>u</math>
В данной таблице находятся основные результаты<ref>{{Статья|автор=Aviad Kipnis, Jacques Patarin, Louis Goubin|заглавие=Unbalanced Oil and Vinegar Signature Schemes|ссылка=http://dx.doi.org/10.1007/3-540-48910-x_15|издание=Advances in Cryptology — EUROCRYPT ’99|место=Berlin, Heidelberg|издательство=Springer Berlin Heidelberg|год=1999|страницы=206–222|isbn=9783540658894, 9783540489108}}</ref>, полученные при попытках взлома схемы UOV при различных значениях <math>n</math> и <math>u</math>


Пусть <math>K</math>= <math>F_q</math>конечное поле <math>q = p^m</math> . Элементы <math>a_1, \ldots, a_n </math> и <math>\acute{a}_1, \ldots, \acute{a}_u</math>- его элементы и <math>n+u=p</math>
Пусть <math>K</math>= <math>F_q</math>конечное поле <math>q = p^m</math> . Элементы <math>a_1, \ldots, a_n </math> и <math>\acute{a}_1, \ldots, \acute{a}_u</math>- его элементы и <math>n+u=p</math>

Версия от 17:43, 9 декабря 2018


В криптографии схема Unbalanced Oil and Vinegar  “Несбалансированная схема масла и уксуса” (Далее для удобства будем называть схемой UOV) представляет собой модифицированную версию стандартной схемы Oil and Vinegar  «Масла и уксуса», разработанной Дж. Патарином. Свое название схема получила ввиду использования двух типов переменных: "уксусных" и "масляных",формирующих открытый ключ. В самих уравнениях эти величины не перемножаются, т.е. не смешиваются подобно маслу и уксусу, используемых в кулинарии. Отсюда и пошло такое название.[1] Обе эти схемы  являются схемами цифровой подписи. Они относятся к группе многомерной криптографии. Безопасность подписи данной схемы основана на решении  NP-полной задачи. Для создания и проверки подписей необходимо решить систему минимальных квадратичных уравнений. Решение  уравнений с переменными является NP-трудной задачей[2], что означает, что проблему почти наверняка трудно эффективно решить в худшем случае, даже при использовании квантового компьютера. В то время как задача становится простой, если значение  намного больше или намного меньше [3],в среднем случае когда  и  почти равны  проблема считается сложной, даже при использовании квантового компьютера. В результате был разработан ряд схем цифровых подписей на основе многомерных уравнений с целью достижения квантово-устойчивых сигнатур.

Ключ подписи и ключ проверки

Математической задачей является решение   уравнений c Вся система уравнений сама по себе и является открытым ключом. Чтобы использовать такую задачу для применения в криптографии, ее необходимо было изменить. Для вычисления переменных требуется много ресурсов. Стандартный компьютер не может вычислить это за приемлемое время. Поэтому в систему уравнений вставляется так называемая односторонняя функция с потайным входом или Trapdoor, которая будет являться ключом подписи, состоящим  из трех частей: двух аффинных преобразований и и вектора полиномов . Оба преобразования используются для разбиения элементов исходного сообщения на определенные группы. Афинное преобразование преобразует исходное сообщение в . Второе преобразование преобразует вектор из переменных в действительную подпись. Третий секретный элемент предоставляет определенные инструменты для создания системы уравнений.  Благодаря этому уравнения будут построены с определенными правилами, известными только владельцу ключа цифровой подписи.[4]

Процедура создания подписи

Чтобы создать действительную подпись, необходимо решить следующую систему уравнений:

Где это сообщение, которое необходимо подписать. Действительной подписью здесь будет вектор , полученный при решении данной системы уравнений.

Чтобы подписать исходное сообщение его нужно преобразовать  таким образом, чтобы оно удовлетворяло системе уравнений. Для этого как раз и используется преобразование необходимое для "разбиения" сообщения  на фрагменты, которые обозначены как . После этого строится система уравнений, где каждое уравнение системы должно быть записано в виде:[5]

Для подписи исходного сообщения получения действительной подписи необходимо выполнить следующие шаги:

  1. Коэффициенты должны быть выбраны секретными
  2. “Уксусные” переменные () выбираются случайным образом
  3. Конечная система уравнений решается относительно неизвестных “масляных” переменных ()

С помощью найденных переменных масла и уксуса () и () строится предварительная подпись . Наконец, при помощи секретного биективного афинного преобразования преобразуется действительную подпись .

Таким образом, каждое значение может быть записано как квадратичный полином от неизвестных , где .

Поэтому система квадратичных уравнений будет являться открытым ключом. где:

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

Проверка подписи

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

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

Результаты по анализу на криптографическую стойкость

В данной таблице находятся основные результаты[7], полученные при попытках взлома схемы UOV при различных значениях и

Пусть = конечное поле . Элементы и - его элементы и

"Сложностью сравнимой со случайным решением" означает что сложность взлома сопоставима с решением систем уравнений относительно перемененных когда коэффиценты выбираются случайным образом

Степень Вломано Не взломано Не взломано и сложность сравнима со случайным решением Взломано, не смотря на то что сложность сравнима со случайным решением
2 ( для всех ) или
3 ( для )
3 ( для ) или

Преимущества и недостатки схемы масла и уксуса

Основным преимуществом является то, что вычислительная задача, используемая в алгоритме, является квантовостойкой. То есть, если когда-нибудь будет построен квантовый компьютер, который может обрабатывать достаточное количество состояний, чтобы нарушить коммерческие схемы подписи, такие как RSA или ElGamal, схема подписи UOV остается безопасной, поскольку в настоящее время не существует алгоритма, который дает квантовому компьютеру большое преимущество в решении таких многомерных систем уравнений.

Второе преимущество заключается в том, что операции, используемые в уравнениях, относительно просты. Подписи создаются и проверяются только при помощи операций сложения и умножения «малых» значений, что делает эту подпись жизнеспособной для низкоресурсного оборудования, например, в смарт-картах.[8]

Недостатком является то, что  в схеме UOV используется очень длинный ключ, причем открытым ключом является вся система уравнений для которой может потребоваться несколько килобайт памяти. UOV также является молодой схемой цифровой подписи. Хотя некоторые методы атаки уже известны, могут появиться еще не изученные, если UOV станет широко использоваться. Этот алгоритм еще не готов к коммерческому использованию, поскольку его безопасность требует дополнительных исследований.[9]

Ссылки

  1. Unbalanced Oil and Vinegar Signature Schemes - Louis Goubin. www.goubin.fr. Дата обращения: 9 декабря 2018.
  2. Courtois, Nicolas et al. Solving Underdefined Systems of Multivariate Equations. Дата обращения: 16 октября 2016.
  3. Courtois, Nicolas et al. Solving Underdefined Systems of Multivariate Equations. Дата обращения: 16 октября 2016.
  4. Unbalanced Oil and Vinegar Signature Schemes - Louis Goubin. www.goubin.fr. Дата обращения: 9 декабря 2018.
  5. [https://www.win.tue.nl/diamant/symposium05/abstracts/wolf.pdf Multivariate Quadratic Polynomials in Public Key Cryptography Christopher Wolf]. www.win.tue.nl. Дата обращения: 9 декабря 2018.
  6. Unbalanced Oil and Vinegar Signature Schemes - Louis Goubin. www.goubin.fr. Дата обращения: 9 декабря 2018.
  7. Aviad Kipnis, Jacques Patarin, Louis Goubin. Unbalanced Oil and Vinegar Signature Schemes // Advances in Cryptology — EUROCRYPT ’99. — Berlin, Heidelberg: Springer Berlin Heidelberg, 1999. — С. 206–222. — ISBN 9783540658894, 9783540489108.
  8. Johannes Buchmann, Carlos Coronado, Martin D�ring, Daniela Engelbert, Christoph Ludwig. Post-Quantum Signatures. — 2004. — № 297.
  9. Johannes Buchmann, Carlos Coronado, Martin D�ring, Daniela Engelbert, Christoph Ludwig. Post-Quantum Signatures. — 2004. — № 297.