2018 Математические методы криптографии №41
УДК 003.26; 004.056.55; 512.54
МЕТОД НЕЛИНЕЙНОГО РАЗЛОЖЕНИЯ ДЛЯ АНАЛИЗА КРИПТОГРАФИЧЕСКИХ СХЕМ, ИСПОЛЬЗУЮЩИХ АВТОМОРФИЗМЫ ГРУПП1
В. А. Романьков, А. А. Обзор Омский государственный университет им. Ф. М. Достоевского, г. Омск, Россия
Показано применение метода нелинейного разложения для криптографического анализа на примере двух схем, которые используют автоморфизмы группы. При некоторых ограничениях на группу, выбранную в качестве платформы шифрования, данный метод работает эффективно и позволяет раскрывать секретную информацию (распределяемый ключ или пересылаемое сообщение) без решения алгоритмически сложных проблем, заложенных в основу схемы. Такими являются нетеровы группы, для которых эффективно решается проблема поиска вхождения элемента в заданную подгруппу. В частности, этим свойством обладают конечно порожденные нильпотентные или, более общо, полициклические группы, часто рекомендуемые в качестве платформ в современной алгебраической криптографии.
Ключевые слова: криптография, криптоанализ, 'распределение ключа, нелинейное разложение, проблема поиска вхождения.
DOI 10.17223/20710410/41/4
A NONLINEAR DECOMPOSITION METHOD IN ANALYSIS OF SOME ENCRYPTION SCHEMES USING GROUP AUTOMORPHISMS
V. A. Roman'kov, A. A. Obzor Dostoevskii Omsk State University, Omsk, Russia E-mail: [email protected], [email protected]
This paper shows how the nonlinear decomposition method, that had been invented by the first author, works against two cryptographic schemes based on group automorphisms. In some cases we can find the secret data and break the scheme without solving the algorithmic problem on which scheme is based. More exactly, let G be a group and A be a finitely generated subgroup of the automorphism group Aut(G). Suppose, that the membership search problem for G is efficiently solvable for any subgroup of the form (gA) generated by the all images of g under automorphisms of A, and every subgroup (gA) is finitely generated. Then there exists an efficient algorithm to construct a finite generating set of (gA) and the nonlinear decomposition method can be applied. In particular, if the elements g,f = ga,h = fe e G are public, а, в e Aut(G), ав = ва, and а, в are private, then one can efficiently compute ha without computing а or в. The method efficiently works for a Noetherian group with efficiently solvable membership search problem. In particular, finitely generated nilpotent (more generally, polycyclic) groups, that are frequently used in the modern algebraic cryptography, share this property.
Исследование выполнено за счёт гранта Российского научного фонда (проект №16-11-10002).
Keywords: cryptography, cryptanalysis, key exchange, nonlinear decomposition, membership search problem.
Введение
В данной работе рассматривается применение метода нелинейного разложения, предложенного первым автором в [1], на примере двух схем: схемы передачи ключа Махалонобиса [2], являющейся алгебраическим аналогом классической схемы Масси — Омуры, и алгебраического аналога классического протокола Эль-Гамаля, использующего автоморфизмы [3, 4] (относительно классических версий см., например, [5]). В отличие от метода линейного разложения, теоретические основы которого изложены в [6] (см. также [7, 8]), метод нелинейного разложения не предполагает наличия структуры векторного пространства у платформы, на которой строится схема.
В [2] А. Махалонобис предложил два протокола распределения ключа, один из которых является алгебраической версией протокола Диффи — Хеллмана, другой — алгебраической версией протокола Масси — Омуры. В качестве платформы шифрования предлагались конечно порождённые нильпотентные группы и их автоморфизмы специального вида. Оба протокола проанализированы в [6] в предположении, что используемая группа линейна. Методом линейного разложения установлено, что в этом случае протоколы уязвимы. Конечно порождённые нильпотентные группы всегда допускают точное представление матрицами, но размерность матриц может оказаться слишком большой для проведения такого анализа. Поэтому возникла потребность поиска других методов.
В [1] первым автором дан криптографический анализ первого из этих протоколов (аналога протокола Диффи — Хеллмана), показана его уязвимость. При этом не была использована детализация групп и автоморфизмов из [2]. Применён новый метод нелинейного анализа, основанный на эффективной разрешимости в группе проблемы вхождения элемента в подгруппу. Отмечено, что такая проблема эффективно разрешима в полициклических, а значит, и в конечно порождённых нильпотентных группах. В последнем классе большинство основных алгоритмических проблем разрешаются алгоритмами с низкой сложностью. Об этом говорится далее более подробно. В том числе существует алгоритм низкой сложности, решающий проблему поиска вхождения элемента в подгруппу.
В настоящей работе представлен криптографический анализ второго из протоколов работы [2] — алгебраической версии протокола Масси — Омуры. В предположениях автора протокола он оказывается уязвимым относительно анализа методом нелинейного разложения. Аналогичный анализ проведён также для алгебраической версии протокола Эль-Гамаля.
Метод нелинейного разложения используется также для криптографического анализа алгебраической версии протокола Эль-Гамаля и алгебраической версии системы MOR, предложенной в [3, 4]. Доказано, что эти версии также уязвимы.
Через (gi,..., gn) будем обозначать подгруппу рассматриваемой группы, порождённую элементами g1,... ,gn. Выражение H ^ G означает, что H — подгруппа группы G.
Напомним, что проблема поиска, соответствующая классической проблеме вхождения (поиска вхождения элемента в подгруппу), ставится следующим образом: для данной группы G, её подгруппы H = (hi,... ,hk) и заданного элемента g Е H найти слово u(x1,... ,Xk), такое, что g = u(h1,... , hk). Если подгруппа H фиксирована, рассматриваем соответствующую проблему поиска вхождения элемента g Е H в H.
Здесь и далее предполагается, что используется язык комбинаторной теории групп, в котором группы задаются своими представлениями через порождающие элементы и определяющие соотношения, элементы записываются словами от порождающих элементов. Допустимы также матричные задания групп и их подгрупп над полями, в которых основные операции эффективно выполнимы. Почти во всех известных случаях группы, предлагаемые как платформы для криптографических схем, задаются именно таким способом. Как правило, требуется наличие в группах нормальных форм записи элементов, операции над которыми также должны быть эффективными.
Пусть О — алгебраическая система (группа, полугруппа, кольцо и т.п.), Аи^О)— её группа автоморфизмов. Через да будем обозначать образ элемента д € О относительно автоморфизма а € Аи^О). Другими словами, да = а(д). В данной работе мы ограничиваемся рассмотрением групп, но предлагаемый метод криптографического анализа при соответствующих условиях может быть применён и к произвольным алгебраическим системам.
Если А — подгруппа группы автоморфизмов Аи^О) группы О и V € О, то vл = = {Vе|а € А} обозначает орбиту относительно А, порождённую элементом V.
1. Лемма о построении порождающего множества
Пусть О — группа, А = (а1,... , ап) —подгруппа группы автоморфизмов Аи^О).
Лемма 1. Если в группе О эффективно разрешима проблема поиска вхождения элемента в подгруппу (дл) и подгруппа (дл) конечно порождена, то существует алгоритм построения её конечного порождающего множества.
Доказательство. Считаем для простоты, что множество {а1,..., ап} замкнуто относительно взятия обратных элементов. Упорядочим все конечные наборы вида а^ ... а^, £ = 0,1,..., в соответствии с длиной и лексикографическим порядком. Полученная последовательность содержит записи всех элементов множества дл. Элемент 1 соответствует набору длины 0. Через Ь обозначим часть полученной последовательности, соответствующую наборам длины г; Ы^ = д^ —индуцированно упорядоченный
набор элементов вида да, а € Ь^. Последовательность множеств Ы^, г = 0,1,..., очевид-
л
но, содержит все элементы множества д , а значит, и какое-то конечное порождающее множество подгруппы (дл).
Опишем процесс построения конечного порождающего множества. Положим К0 = = Ы0 = {д}. Добавляем к К0 по очереди элементы да € Ы1, для которых да € € (д,да1,... ,да-1). Другими словами, добавляем элементы, не принадлежащие подгруппе, порождённой ранее выбранными элементами. Шаг заканчивается, когда будут просмотрены все элементы из Ы1 . В результате получим эффективно построенное подмножество К1 = {д,д°г1 ,...,даг® : /1 < ... < /8} множества К0 и Ы1. При этом
оо
(дл) = (К1, и ыг).
г=2
Если К0 = К1, то алгоритм завершает свою работу, констатируя, что (дл) = = (К0) = (д) —циклическая группа. Действительно, в этом случае подгруппа (д) очевидно инвариантна относительно любого автоморфизма а^, г = 1,...,п, значит, и любого автоморфизма из А.
Если К0 = К1 , продолжаем описанный процесс, добавляя к К1 поочередно элементы из Ы2, не входящие в подгруппу, порождённую уже выбранными элементами. При этом можно сразу убрать из рассмотрения элементы вида , где да не является выбранным элементом. Это может значительно ускорить процесс. В итоге построим множество К2, равное объединению К1 с выбранными на этом шаге элементами из Ы2.
Если ни один элемент не выбран, то (gA) = (K1). Это также следует из того, что группа (K1) в этом случае инвариантна относительно действия A.
Далее аналогично строим множества Kr для r = 3,..., просматривая и поочередно добавляя элементы из соответствующего множества Mr. Заметим, что на каждом шаге
и
(gA) = (Kr, U мг).
i=r+1
На каком-то шаге получим Kt = Kt+1, так как группа (gA) по сделанному предположению конечно порождена. Тогда получаем равенство (gA) = (Kt). Заметим также, что если подгруппа (gA) имеет s порождающих, то процесс обязательно закончится не позднее чем при рассмотрении Ks. Описанный процесс находит наименьшее по мощности множество порождающих элементов группы (gA) . Это позволяет в ряде случаев дать очевидную оценку сверху на число шагов алгоритма. ■
Замечание 1. Если A — коммутативная подгруппа, как далее в протоколе из [2], то рассматриваем не все конечные наборы вида aix... ait, t = 0,1,..., а только те, для которых индексы не убывают.
2. Эффективность метода
Метод нелинейного разложения применим, если в группе G, используемой в качестве платформы шифрования, эффективно решается проблема поиска вхождения элемента в подгруппу, соответствующая классической проблеме вхождения, а также если можно эффективно построить порождающие множества элементов для некоторых конечно порождённых подгрупп, использующихся при шифровании. Пример такого построения указан в лемме 1.
Метод хорошо работает на ряде схем, построенных на полициклических группах, которые сейчас часто предлагаются в качестве платформ [9-11]. В полициклических группах любая подгруппа конечно порождена, причем количество её порождающих элементов оценивается сверху длиной полициклического ряда всей группы. Это позволяет дать верхнюю оценку времени работы алгоритма, описанного в лемме 1. В [12] показано, что основные алгоритмические проблемы (построения нормальной формы элемента, определения сопряжённости двух элементов, проблемы вхождения и др.) могут быть решены алгоритмами, работающими в логарифмическом пространстве за квазилинейное время. Более того, если рассматривать постановку проблемы в сжатом виде, причем каждое вхождение слова представлять как strait-line программу, то эти проблемы решаются за полиномиальное время. В [13] использование так называемых ТС0-схем позволило авторам понизить оценки сложности проблем. Наконец, в [14] авторы расширили список алгоритмических проблем для конечно порождённых нильпотентных групп, решаемых алгоритмами с низкой сложностью, включив в него ряд проблем для подгрупп.
3. Примеры криптографического анализа алгебраических схем с использованием метода нелинейного разложения 3.1. Пример 1
Опишем протокол распределения ключа Махалонобиса [2] — аналога классического протокола Масси — Омуры.
Пусть G — группа и g Е G. Предположим, что Ф и Ф — два конечных подмножества группы автоморфизмов Aut(G), причём элементы из Ф попарно перестановочны с элементами из Ф. Пусть A и B — подгруппы группы Aut(G), порождённые множествами Ф и Ф соответственно.
Алгоритм распределения ключа работает следующим образом:
1) Алиса выбирает случайный автоморфизм а Е А, вычисляет да и посылает результат Бобу.
2) Боб выбирает случайным образом автоморфизм в Е В, вычисляет и посылает (да)в Алисе.
3) Затем Алиса вычисляет а-1 и получает ((да)в)а = дв. После этого она выбирает еще один случайный автоморфизм 7 Е А, вычисляет (дв)7 и передаёт его Бобу.
4) Боб находит в-1 и получает ключ К = ((дв)7)в = д7.
5) Алиса в свою очередь, зная д и 7, тоже вычисляет ключ К.
Криптографический анализ. Заметим, что в алгоритме подгруппы А, В ^ ^ Аи^С) конечно порождены.
Предположим, что для группы С эффективно решается проблема поиска вхождения элемента в подгруппу (иА), где V = (да)в. Пусть известно, что подгруппа (иА) в-порождена для некоторого в.
Замечание 2. В [2] в качестве платформы шифрования предлагается использовать конечно порождённую р-группу, более того, конечную р-группу специального вида. Приведённые условия криптографического анализа в этом случае выполнены. Значение оценочного параметра в оригинальном протоколе очевидно (в общем случае в не больше, чем полициклический ранг группы).
Заметим также, что выше приведён несколько более общий вариант оригинального протокола: автор брал в качестве А и В общую коммутативную подгруппу Б группы автоморфизмов Аи^С). Мы не даём и не используем детали выбора групп и автоморфизмов из [2], так как криптоанализ от них не зависит. Детали только упрощают его реализацию.
Перейдём непосредственно к криптографическому анализу.
По лемме 1 можно эффективно найти порождающее множество элементов для группы (иА). Обозначим эти элементы как (V"1,... , Vй1). Далее отметим, что (дв)7 Е vA, поэтому можно найти его представление вида
д^7 = V (V"1 ),
где V(х1,... , х^) —групповое слово от Ь переменных. Затем в правую часть данного представления вместо V = (да)в подставим да = )в . Получим
V ((да)а1,..., (да)а) = V ((Vе-1 )а1,..., (Vе-1 )а) = = V ((V"1 )в-1,..., (V"4 )в-1) = (V (V"1 ))в-1 = д7.
Таким образом, не вычисляя ни один из закрытых элементов а, в и 7, можно эффективно найти распределяемый (передаваемый) секретный элемент (ключ или сообщение) д7. Это означает, что данная схема является уязвимой.
3.2. П р и м е р 2
В качестве второго примера рассмотрим алгебраический аналог классического протокола Эль-Гамаля, использующий автоморфизмы. Имеется несколько алгебраических версий как самого протокола Эль-Гамаля, так и его обобщения — так называемой системы МОИ,, относительно которых см. [3, 4].
Алгебраическая версия системы Эль-Гамаля. Соглашения о группе G, элементе g £ G и подгруппах A,B ^ Aut(G) те же, что и в предыдущем примере.
Алгоритм работает следующим образом:
1) Алиса случайным образом выбирает автоморфизм a £ A, вычисляет элемент ga и отправляет его Бобу.
2) Боб хочет послать сообщение m Алисе. Для этого он выбирает случайный автоморфизм в £ B и посылает по сети сообщение (ge, m • ga'e).
3) После этого Алиса вычисляет элемент (ge)a = ga'e, находит к нему обратный и получает сообщение m = m • ga'e(g^e)-1.
Криптографический анализ. Пусть для группы G эффективно решается проблема поиска вхождения элемента в подгруппу (gA). Тогда по лемме 1, аналогично примеру 1, найдём порождающее множество для группы (gA), скажем, {gai,... , gak}. Из того, что Алиса выбирала автоморфизм a £ A, следует, что ga £ gA, а значит, можно найти представление этого элемента через порождающие:
ga = V(gai,..., gak).
Заменив в правой части g на ge, получим
V((ge)ai,..., (ge)ak) = V((gai)e,..., (gak)e) = (V(gai,... ,gak))e = .
Далее, действуя аналогично Алисе, вычисляем обратный элемент к ga'e и расшифровываем сообщение m = m • ga'e (g"^)-1.
Алгебраическая версия системы MOR. Пусть G = (g1,..., gn) — конечно порождённая группа. Алгоритм распределения ключа работает следующим образом:
1) Алиса выбирает случайный автоморфизм ^ £ Aut(G) и случайное натуральное
k
число k, вычисляет значения gf и gf для i = 1,...,n, которые считаются открытыми. Другими словами, Алиса объявляет открытыми автоморфизмы ^ и . При этом k — закрытый параметр.
2) Боб хочет послать Алисе сообщение m, закодированное как элемент группы G. Для этого Боб выбирает случайное натуральное число /, вычисляет и посылает Алисе набор значений gf для i = 1,...,n, а также элемент mfk. Другими словами, Боб посылает Алисе пару (^k,mf ).
3) Затем Алиса, зная k, вычисляет )-1 и раскрывает сообщение m, подействовав этим автоморфизмом на mf .
Криптографический анализ. Повторяем рассуждения предыдущего крипто-
k J kl
fk fl fkl
графического анализа, позволяющие вычислить по значениям g¡ и g¡ значение g¡ для любого i = 1,... ,n. Тем самым мы найдём автоморфизм <^k1, вычислим к нему обратный, а затем по элементу mf получим сообщение m.
Замечание 3. Для эффективности алгоритма проведённого криптографического анализа необходимо уметь решать проблему поиска вхождения элемента в подгруппу. В [3] в качестве платформы предложено выбирать группу унитреугольных матриц над конечным полем (конечную нильпотентную р-группу, где р — характеристика поля), в которой эта проблема решается легко. В [4] предлагается брать специальную линейную группу над конечным полем, которая, очевидно, сама конечна. Вопрос о сложности алгоритма, решающего в такой группе проблему вхождения элемента в подгруппу, как и вопрос об эффективности построения порождающего множества для подгруппы ещё должен быть изучен. Заметим, что при том и другом предложении для
криптоанализа лучше использовать метод линейного разложения, уже неоднократно упомянутый в данной работе.
Заключение
В работе показано, как метод нелинейного разложения может быть эффективно применен для криптографического анализа ряда схем алгебраической криптографии, использующих автоморфизмы, в частности, для алгебраических аналогов схем Мас-си — Омуры, Эль-Гамаля и системы MOR. Для его реализации необходимо и достаточно, чтобы в группе, выбранной в качестве платформы шифрования, эффективно решалась проблема вхождения элемента в подгруппу определённого вида, а также можно было бы эффективно построить систему порождающих элементов такой подгруппы. Объяснено, что конечно порождённые и полициклические группы, часто предлагаемые в качестве платформ в современной алгебраической криптографии (в том числе в приведённых в работе примерах криптографического анализа), удовлетворяют этим условиям. Алгоритм построения системы порождающих элементов для таких групп описан в работе.
Выводы. Приведённый криптографический анализ позволяет заключить, что рассматриваемые схемы при определённых естественных и часто предлагаемых условиях оказываются уязвимыми, следовательно, они не могут считаться надёжными.
ЛИТЕРАТУРА
1. Roman'kov V. A. A nonlinear decomposition attack // Groups Complexity Cryptology. 2017. V. 8. P. 197-207.
2. Mahalanobis A. The Diffie — Hellman key exchange protocol and non-abelian nilpotent groups // Israel J. Math. 2008. V. 165. P. 161-187.
3. Mahalanobis A. A simple generalization of El-Gamal cryptosystem to non-abelian groups // Communications in Algebra. 2008. V. 36. P. 3878-3889.
4. Mahalanobis A. A simple generalization of El-Gamal cryptosystem to non-abelian groups II // Communications in Algebra. 2012. V. 40. P. 171-186.
5. Романьков В. А. Введение в криптографию. Курс лекций. М.: Форум, 2012. 240 с.
6. Романьков В. А. Алгебраическая криптография. Омск: Изд-во ОмГУ, 2013. 135 с.
7. Романьков В. А. Криптографический анализ некоторых известных схем шифрования, использующих автоморфизмы // Прикладная дискретная математика. 2013. №3(21). С. 35-51.
8. Myasnikov A. G. and Roman'kov V. A. A linear decomposition attack // Groups Complexity Cryptology. 2015. V.7. P. 81-94.
9. Eick B. and Kahrobaei D. Polycyclic groups: A new platform for cryptology? arXiv math.: 0411.077v1 [math.GR].
10. Gryak K. J. and Kahrobaei D. The status of polycyclic group-based cryptography: A survey and open problems // Groups Complexity Cryptology. 2017. V. 8. P. 171-186.
11. Cavallo B. and Kahrobaei D. A family of polycyclic groups over which the conjugacy problem is NP-complete. arXiv math.: 1403.4153v2 [math. GR], 19 Mar 2014. P. 1-14.
12. Macdonald J., Miasnikov A., Nikolaev A., and Vassileva S. Logspace and compressed-word computations in nilpotentgroups. arXiv math.:1503.03888 [math.GR]. 2015.
13. Macdonald J., Miasnikov A., and Ovchinnikov D. Low-complexity computations for nilpotent subgroup theorem. arXiv math.: 1706.01092v2 [math. GR] 4 Jul 2017. 23 p.
14. Miasnikov A. and Weiß A. TC0 circuits for algorithmic problems in nilpotent groups // 42nd Intern. Symp. MFCS. 2017. Article No. 23.
REFERENCES
1. Roman'kov V. A. A nonlinear decomposition attack. Groups Complexity Cryptology, 2017, vol. 8, pp. 197-207.
2. Mahalonobis A. The Diffie — Hellman key exchange protocol and non-abelian nilpotent groups. Israel J. Math., 2008, vol.165, pp. 161-187.
3. Mahalanobis A. A simple generalization of El-Gamal cryptosystem to non-abelian groups. Communications in Algebra, 2008, vol. 36, pp. 3878-3889.
4. Mahalanobis A. A simple generalization of El-Gamal cryptosystem to non-abelian groups II. Communications in Algebra, 2012, vol.40, pp. 171-186.
5. Roman'kov V. A. Vvedenie v kriptografiyu. Kurs lektsiy [Introduction to Cryptography. Lecture Course]. Moscow, Forum Publ., 2012. 240 p. (in Russian)
6. Roman'kov V. A. Algebraicheskaya kriptografiya [Algebraic Cryptography]. Omsk, Dostoevsky Omsk State University Publ., 2013. 135 p. (in Russian)
7. Roman'kov V. A. Kriptograficheskiy analiz nekotorykh izvestnykh skhem shifrovaniya, ispol'zuyushchikh avtomorfizmy [Cryptographic analysis of some known encryption schemes using automorphisms]. Prikladnaya Diskretnaya Matematika, 2013, no.3(21), pp.35-51. (in Russian)
8. Myasnikov A. G. and Roman'kov V. A. A linear decomposition attack. Groups Complexity Cryptology, 2015, vol. 7, pp. 81-94.
9. Eick B. and Kahrobaei D. Polycyclic groups: A new platform for cryptology? arXiv math.: 0411.077v1 [math.GR].
10. Gryak K. J. and Kahrobaei D. The status of polycyclic group-based cryptography: A survey and open problems. Groups Complexity Cryptology, 2017, vol. 8, pp. 171-186.
11. Cavallo B. and Kahrobaei D. A family of polycyclic groups over which the conjugacy problem is NP-complete. arXiv math.: 1403.4153v2 [math. GR], 19 Mar 2014, pp. 1-14.
12. Macdonald J., Miasnikov A., Nikolaev A., and Vassileva S. Logspace and compressed-word computations in nilpotentgroups. arXiv math.:1503.03888 [math.GR], 2015.
13. Macdonald J., Miasnikov A., and Ovchinnikov D. Low-complexity computations for nilpotent subgroup theorem. arXiv math.: 1706.01092v2 [math. GR], 4 Jul 2017. 23 p.
14. Miasnikov A. and Weiß A. TC0 circuits for algorithmic problems in nilpotent groups. 42nd Intern. Symp. MFCS, 2017. Article no. 23.