2012 Математические методы криптографии №2(16)
МАТЕМАТИЧЕСКИЕ МЕТОДЫ КРИПТОГРАФИИ
УДК 512.62
ДИОФАНТОВА КРИПТОГРАФИЯ НА БЕСКОНЕЧНЫХ ГРУППАХ
В. А. Романьков
Омский государственный университет им. Ф. М. Достоевского, г. Омск, Россия
E-mail: [email protected]
В работе даётся краткое представление криптографии, основанной на группах («group-based cryptography»),— современного направления, главными объектами в котором являются абстрактные бесконечные группы, а основной целью — построение на них криптографических примитивов, систем и протоколов. Исследования по этому направлению ведутся методами теории групп, теории сложности и теории вычислений. Обращается внимание на использование неразрешимых и трудноразрешимых алгоритмических проблем теории групп в качестве основы обозначенного построения. Обсуждаются аспекты сложности алгоритмических проблем и связанных с ними проблем поиска. Объясняется универсальность дио-фантова языка в криптографии. Отмечается его объединяющая роль. В качестве возможных платформ для криптографических систем и протоколов предлагается использовать свободные метабелевы группы. Приводятся основания для такого использования, в том числе алгоритмическая разрешимость в этих группах проблемы равенства и наличие нормальных форм записи элементов группы. Ещё одним основанием является алгоритмическая неразрешимость в таких группах проблемы существования решений у групповых уравнений и алгоритмическая неразрешимость проблемы эндоморфной сводимости, вытекающих из неразрешимости 10-й Проблемы Гильберта. Предполагается, что в последующей работе автора совместно с С.Ю. Ерофеевым материал данной работы будет использован для построения на свободных метабелевых группах возможно односторонних функций и протоколов аутентификации с нулевым разглашением.
Ключевые слова: криптография, основанная на группах, алгоритмическая проблема, проблема поиска, генерическая сложность, диофантов язык, диофанто-ва криптография, свободная метабелева группа, проблема эндоморфной сводимости.
Введение
Понятие «криптография, основанная на группах» (англ. вариант — group-based cryptography) появилось сравнительно недавно — на рубеже XX и XXI столетий. Так обозначено направление исследований, основными объектами которого являются абстрактные бесконечные группы, а основной целью — построение на них криптографических систем и протоколов. Исследования ведутся методами теории групп, теории сложности и теории вычислений.
Данному направлению посвящены монографии [1, 2], а также множество статей, затрагивающих самые разные вопросы. Часть из этих работ представляет криптографические примитивы, другая описывает криптографические системы и протоколы,
третья исследует вопросы сложности и т. д. Некоторые работы посвящена вскрытию слабостей представленных систем и протоколов. Имеются и практические разработки, в том числе компьютерные программы, для использования полученных результатов на практике. Обширный список работ по данному направлению можно найти в [3].
В настоящей работе даётся краткое представление о криптографии, основанной на группах, обсуждается использование неразрешимых и трудноразрешимых алгоритмических проблем теории групп в качестве основы для построения криптографических систем и протоколов. Для обоснования возможности такого использования мы обращаем внимание на следующие аспекты:
— Как должна быть задана и какими свойствами должна обладать группа, претендующая на роль платформы для построения криптографических систем и протоколов?
— Какой должна быть алгоритмическая проблема, претендующая на роль основы для построения криптографических систем и протоколов?
— Каковы общие принципы обозначенных построений и чем должна обуславливаться их криптостойкость?
Подобные вопросы уже неоднократно рассматривались в литературе. После того как вышла пионерская в данном направлении работа М. Аншеля и др. [4], в которой представлена схема генерации общего ключа, известная теперь как протокол Ан-шель — Аншеля — Голдфельда, появилось множество работ, эксплуатирующих те или иные алгоритмические проблемы для построения систем и протоколов. В [4] в качестве платформы берётся группа кос Артина Вп на п нитях для достаточно большого п. В качестве алгоритмической в ней рассматривается проблема сопряжённости в группе Вп двух наборов элементов д = (д1,... , д^) и / = (/1,... , /). Алгоритм может быть представлен в любой группе. Конкретный её выбор обуславливается многими факторами. Во-первых, группа, выбранная в качестве платформы, должна быть удобной для реализации алгоритма. В то же время необходимо обеспечить криптостойкость алгоритма. Об этом более подробно говорится в дальнейшем. Опишем сам алгоритм в общем виде.
Пусть О — конечно порождённая группа с множеством порождающих элементов |ж1,... , хп}, которое можно считать фиксированным. Любой элемент группы О записывается в виде группового слова от порождающих элементов. Групповым называется слово, записанное от букв х1,..., хп и формальных обратных х-1,... , х-1. Конечно, такая запись элемента неоднозначна. Во-первых, возможны сокращения подслов вида х^х-£ для е = ±1. Если таких подслов нет, то слово называется редуцированным или несократимым. Если О = Гп — свободная группа с базисом {х1,..., хп}, то запись элемента в виде несократимого слова однозначна. В группе, не являющейся свободной, существуют нетривиальные слова, записывающие наравне с пустым словом тривиальный элемент. Они называются соотношениями группы.
Предположим, что в группе О существует нормальная форма записи её элементов. Это означает, что любой элемент может быть однозначно записан в виде канонического слова от порождающих элементов. Переход от произвольной записи элемента д = д(х1,... ,хп) к его записи в нормальной форме нф(д) предполагается эффективным. Обычно он осуществляется через переписывающий процесс, получающий на входе произвольное слово от порождающих элементов и выдающий на выходе запись соответствующего элемента в нормальной форме. В свободной группе с базисом {х1,...,хп} это обычный процесс сокращения подслов вида х|х-£, о которых гово-
рилось выше. Известно, что результат — несократимое слово — не зависит от выбора порядка сокращения.
В протоколе Аншель — Аншеля — Голдфельда корреспонденты A и B, часто именуемые как Алиса и Боб, выбирают наборы элементов д = (gi,... , gk) и f = (fi,... , fk) группы G, причём A выбирает набор g, а B — набор f. Эти наборы считаются известными (public). Затем A выбирает секретное (private) слово u = u(f1,..., fk), а B — секретное слово v = v(g1,... , gk). Они могут это сделать, так как наборы известны. Далее A выполняет сопряжение набора f элементом u, получая набор f u = (fU,... , fU). Запись вида ab означает сопряжение bab-1 элемента a элементом b. В дальнейшем через [a, b] обозначается коммутатор = aba-1b-1 элементов а и b. Корреспондент A вычисляет и публикует нормальную форму нф(/м) = (нф(^),... , нф(^)). Подобным образом корреспондент B вычисляет и публикует набор нф(д^) = (нф(д^),... , нф(д^)).
Предполагается, что в группе G вычисление по опубликованным нормальным формам сопряжённых наборов элементов u и v — трудная задача. На этом основывается криптостойкость протокола. После выхода [4] появилось множество работ с анализом этой криптостойкости, где подчёркивается важность выбора параметров, ключей и т. п. Появились соответствующие рекомендации и т. п.
На выходе протокола корреспонденты получают секретный ключ. Делается это следующим образом. Корреспондент A вычисляет элемент
u (нф(д?),...,нф(д£)) u-1 = [v,u].
Корреспондент B вычисляет тот же самый элемент [v, u] из равенства
v ■ v^f),..., нф(Я))-1 = [v,u].
Таким образом пользователи A и B генерируют общий известный только им ключ K = нф^, u].
Мы здесь не приводим и не обсуждаем конкретные свойства групп кос Артина Bn, выбранных авторами [4] в качестве платформы своего протокола. Относительно этих свойств см. классическую работу А. А. Маркова [5], монографию П. Дехорноя [6], обзор В. Я. Лина [7] или ещё какую-нибудь монографию, посвящённую группам кос Артина.
О криптографии на группах кос Артина, включая подробное описание протокола Аншель — Аншеля — Голдфельда, см. обзоры П. Дехорноя [8] и К. Мальбурга [9].
Нам важно выделить некоторые основные, с нашей точки зрения, свойства группы кос Артина, позволяющие рассматривать приведённые построения как заслуживающие внимания. Эти свойства следующие:
— Группы Bn при любом n являются конечно определёнными, то есть порождаются конечными множествами порождающих элементов, все соотношения между которыми следуют из конечного множества определяющих соотношений.
— Группы Bn обладают нормальными формами однозначной записи элементов, переход к которым от записей в виде групповых слов эффективен.
— В группах кос нахождение сопрягающего элемента u по элементу д и нормальной форме нф(ди) сопряжённого к нему элемента является трудноразрешимой задачей. Более того, она остаётся трудноразрешимой при замене одного элемента на набор элементов.
Отмеченные свойства так или иначе присутствуют в большинстве работ. Хочется ещё заметить, что в работе [4] фактически впервые существенно использовалась
некоммутативность группы. Более того, представленный протокол не являлся переносом известных протоколов теоретико-числового характера. Подобные переносы, например, в матричные группы уже были известны, но не дали толчка для последующего развития.
В последующей работе автора совместно с С.Ю. Ерофеевым «О построении возможно односторонних функций на основе алгоритмической неразрешимости проблемы эндоморфной сводимости в свободных метабелевых группах» мы перейдём к конкретным предложениям. В качестве платформы для построения криптографических примитивов, систем и протоколов выбираем свободные метабелевы группы. Свободная метабелева группа Mn ранга n, где n — натуральное число, определяется как факторгруппа Fn/Fn свободной группы Fn ранга n по второму коммутанту F". Напомним, что коммутантом G' произвольной группы G называется её подгруппа, порождённая всеми коммутаторами [g, f ] элементов группы G. Подгруппа G' нормальна в группе G, фактор-группа G/G' по ней абелева. Второй коммутант G" определяется как коммутант от коммутанта (G')'. Он также нормален в группе G. Группа G называется метабелевой, если G" тривиален. В этом случае коммутант G' абелев, а группа G является расширением абелевой нормальной подгруппы G' с помощью абелевой факторгруппы G/G. Отсюда её название.
Группа Mn называется свободной метабелевой группой ранга n, потому что в ней есть базис Xn = {xi,...,xn}, состоящий из n элементов, такой, что любое отображение этого базиса Xn ^ G в произвольную метабелеву группу G однозначно продолжается до гомоморфизма Mn ^ G. Говорят также, что группа Mn — свободная группа ранга n многообразия всех метабелевых групп A2. Базис Xn называют множеством свободных порождающих группы Mn. О многообразиях групп см. монографию Х. Нейман [10].
В качестве алгоритмической проблемы возьмём проблему E (Mn) эндоморфной сводимости в группе Mn. Известно [11, 12], что она алгоритмически неразрешима при достаточно большом n ^ n0. Основываясь на её алгоритмической неразрешимости, укажем метод построения функции fn : Mn ^ Mn, претендующей на роль односторонней функции. Наконец, используя платформу Mn и функцию fn, предложим протокол аутентификации с нулевым разглашением пользователя в системе. Подобный протокол уже предлагался в [13], причём также со ссылкой на работу автора [12]. Однако так просто воспользоваться группами и функциями из [12] в данном случае нельзя. Мы покажем, что для криптостойкости протокола аутентификации необходима алгоритмическая неразрешимость более сильной проблемы двукратной эндоморфной сводимости.
Важно отметить, что алгоритмическая неразрешимость проблемы эндоморфной сводимости E(Mn) при n ^ n0, установленная в [12], базируется на алгоритмической неразрешимости 10-й Проблемы Гильберта о существовании алгоритма, определяющего по произвольному уравнению вида d(Zi,... , Zk) = 0, где d(Zi,... , Zk) —многочлен с целыми коэффициентами, имеет ли это уравнение решение в целых числах. Алгоритмическая неразрешимость 10-й Проблемы Гильберта установлена Ю. В. Матиясевичем в [14] (полное доказательство в [15], см. также [16]).
В данной работе мы показываем, что диофантов язык является достаточно универсальным. На нем записываются функции и уравнения, фигурирующие во многих криптографических системах и протоколах, в том числе в системе RSA и протоколах, основанных на понятии дискретного логарифма в мультипликативных группах конеч-
ных полей. Диофантов язык позволяет объединять эти системы и протоколы в единое целое, что даёт возможность ввести в рассмотрение диофантову криптографию.
В заключение отметим, что построение криптографических систем и протоколов, основанных на неразрешимых и трудноразрешимых проблемах, осуществлялось многими авторами (см., например, монографии [1, 2], обзор [8], статьи [17-21]).
1. Бесконечные группы и алгоритмические проблемы
Рассмотрим постановку алгоритмических проблем только для групп, хотя аналоги этих проблем легко формулируются и для других алгебраических и не только алгебраических систем. Заметим, что истоки этих проблем лежат в топологии.
1.1. Постановка алгоритмических проблем
В самых общих чертах алгоритмическая проблема выглядит следующим образом. Имеется теоретико-групповое свойство P, которое может относиться как к отдельным элементам, так и к наборам элементов, к подгруппам или подмножествам группы, к различным группам и т. п. Требуется определить, обладают ли свойством P указанные объекты. Более точно проблема формулируется как следующий вопрос: существует ли алгоритм, определяющий за конечное число шагов, удовлетворяет объект O свойству P или нет?
При постановке проблемы упоминание алгоритма часто опускается. Говорят, что проблема алгоритмически разрешима (или просто разрешима), если такой алгоритм существует, и неразрешима в противном случае.
При постановке алгоритмической проблемы предполагается, что группа, её элементы, подгруппы, подмножества, словом, объекты, для которых ставится проблема, заданы каким-либо эффективным образом. Способов эффективного задания существует довольно много. Далее опишем некоторые из них.
Классические алгоритмические проблемы теории групп сформулированы в начале XX столетия Максом Деном. Они ставились для класса конечно определённых групп. Это означает, что группа G, для которой ставится проблема, задана своим конечным представлением вида
P(G) = {xi,...,xn | ri,...,rm). (1)
Иначе говоря, группа G является фактор-группой Fn/R свободной группы Fn с базисом (множеством свободных порождающих элементов) |xi,...,xnj относительно нормального замыкания R = нз(г1;... , rm), то есть минимальной нормальной подгруппы группы Fn, содержащей элементы ri,... , rm. Элементы r1,... , rm записываются в виде групповых слов от порождающих x1,... , xn. Напомним, что групповое слово записывается как слово от элементов x± ,... ,x±±1. Элементы r1,... , rm называются определяющими словами. Иногда представление (1) записывают в виде
P(G) = (xb...,xn | r1 = 1 ,...,rm =1). (2)
Смысл задания остается тем же самым, равенства r = 1 для i = 1,..., m называют определяющими соотношениями группы G.
Через H' обозначим коммутант группы H, то есть подгруппу, порождённую в группе H всеми коммутаторами её элементов. Коммутант H' является нормальной подгруппой группы H, фактор-группа H/H' по которой абелева. Более того, коммутант— наименьшая подгруппа с этим свойством, то есть если фактор-группа H/N по какой-либо нормальной подгруппе N группы H абелева, то N обязательно содержит H'.
Элементы нормального замыкания Я = нз(г1,... , гт) допускают описание как групповые слова следующего вида:
и = П (г/ Р, (3)
¿=1 3
где 1] е {1,... , т}; д] е е^ = ±1 для ] = 1,... , к.
Естественно определяется канонический гомоморфизм Еп ^ С, переводящий произвольный элемент д группы Яп в элемент дЯ группы С. Группа С имеет каноническое множество порождающих элементов у = ж^Я для г = 1,... , п. Любой элемент д группы С можно поэтому записать в виде группового слова д = д(у1,... , уп). Однако часто порождающие у группы С обозначают теми же буквами ж^, что и их прообразы. Элемент д записывается в виде д(ж1,... , жп).
Классические алгоритмические проблемы Дена формулируются следующим образом.
1. Проблема равенства. Определить по двум групповым словам д = д(ж1,... , жп) и f = f (ж1,... , жп), записывают ли они один и тот же элемент группы С, заданной своим конечным представлением (1) или (2). Другими словами, верно ли, что в группе С справедливо равенство д = ^ Иногда, чтобы указать группу, пишут д =с ^
Рассмотрение проблемы равенства может быть сведено к случаю, когда один из элементов равен 1. Действительно, равенство д =о f выполнено тогда и только тогда, когда gf-1 =с 1. Оно может быть также перенесено в группу Яп, поскольку равенство д =с 1 равносильно тому, что слово д = д(ж1,...,жп) как элемент группы Кп принадлежит нормальной подгруппе Я.
Первые примеры конечно определённых групп с неразрешимой проблемой равенства были построены в 50-е годы XX столетия П. С. Новиковым в [22, 23]. Впоследствии таких примеров стало достаточно много.
2. Проблема сопряжённости. Определить, задают ли два слова д = д(ж1,... , жп) и f = f (ж1,... , жп) сопряжённые элементы группы С. Другими словами, существует ли элемент к группы С, такой, что дн =с ^
Разрешимость проблемы сопряжённости в группе С, очевидно, влечет разрешимость в С проблемы равенства. Действительно, элемент д группы С равен 1 тогда и только тогда, когда д сопряжён с 1. Обратное утверждение в общем случае неверно. Существуют конечно определённые группы, в которых проблема равенства разрешима, а проблема сопряжённости неразрешима. Первые примеры групп с неразрешимой проблемой сопряжённости, некоторые из которых имеют разрешимую проблему равенства, построены в [23].
3. Проблема изоморфизма. Определить по двум представлениям конечно определённых групп С и Н, изоморфны эти группы или нет.
Неразрешимость проблемы изоморфизма в классе конечно определённых групп установлена С. И. Адяном [24].
Отметим ещё одну проблему, которая хотя и не была явно сформулирована Деном, но впоследствии стала одной из основных.
4. Проблема вхождения. Определить для произвольного элемента д данной конечно определённой группы С и произвольной её конечно порождённой подгруппы Н, принадлежит д подгруппе Н или нет.
Проблему вхождения часто называют обобщённой проблемой равенства. Очевидно, что её разрешимость влечет разрешимость проблемы равенства, равносильной про-
блеме вхождения в тривиальную подгруппу. Выделяют также проблему вхождения в фиксированную конечно порождённую подгруппу.
Известные результаты и открытые проблемы алгоритмического характера в теории групп освещены в обзорах [25-27].
В некоторых важных классах групп классические алгоритмические проблемы разрешимы. Например, все они разрешимы в классах свободных и конечно порождённых абелевых групп. Многие проблемы разрешимы в классах нильпотентных и полициклических групп. Имеются важные результаты о разрешимости алгоритмических проблем в матричных группах. Большое внимание уделено разработке практических алгоритмов решения алгоритмических проблем в группах (см. по этому поводу монографии [28, 29] и обзорную статью [30]).
Таким образом, первоначально при постановке алгоритмических проблем рассматривались только конечно определённые группы, элементы которых записываются в виде групповых слов. Впоследствии класс групп, для которых ставятся алгоритмические проблемы, был расширен как за счёт включения в него рекурсивно определённых групп, в которых множество порождающих элементов конечно, а множество определяющих соотношений может быть бесконечным рекурсивно перечислимым множеством, так и за счёт конечно порождённых подгрупп каких-нибудь известных хорошо заданных групп. Например, группа может быть задана своим конечным порождающим множеством в матричной группе над конструктивным полем или более общо — над кольцом. Группа может также быть задана как конструктивный объект в смысле теории моделей. Она может определяться и другими эффективными способами.
Класс конечно порождённых матричных групп над конструктивными кольцами представляет особый интерес. Проблема равенства в таких группах, очевидно, разрешима. Однако другие проблемы даже в достаточно просто устроенных матричных группах могут быть неразрешимыми.
Одним из самых известных является пример К. А. Михайловой матричной группы с неразрешимой проблемой вхождения, описанный в работе [31]. Эта группа есть прямое произведение О = Г2 х Г2 двух копий свободной группы ранга 2. Она допускает точное представление матрицами порядка 4 над кольцом целых чисел Z. Опишем одно из возможных таких представлений. Хорошо известно (см., например, [32, 33]), что представление (оно называется представлением Санова) группы Г2 матрицами порядка 2 над Z, заданное на порождающих элементах х\,х2 группы Г2 следующим отображением, точное:
Точное представление группы О матрицами 4-го порядка соответствует схеме
согласно которой первая копия группы Г2 представляется верхней левой клеткой, а вторая — нижней правой (остальные матричные элементы в представлении множителей группы О, как у единичной матрицы).
Неразрешимость проблемы вхождения в группе О основывается на существовании 2-порождённой конечно определённой группы с неразрешимой проблемой равенства. Пусть такая группа К задана представлением Р(К) = (х1, х2 | Т\,... , тт). Рассмотрим
в группе G подгруппу H, порождённую элементами вида f1 = (x\,x\), f2 = (x2,x2), hi = (ri, 1) для i = 1,... ,m. Легко показать, что элемент д = (д', 1) принадлежит H тогда и только тогда, когда д' принадлежит нормальной подгруппе R = нз(гi,... , rm) группы F2. Неразрешимость проблемы равенства в группе K = F2/R влечет неразрешимость проблемы вхождения в подгруппу H группы G.
2. Неразрешимые и трудноразрешимые алгоритмические проблемы как основа для построения криптографических систем и протоколов
Классические алгоритмические проблемы Дена уже неоднократно предлагались в качестве основы для построения на группах криптографических примитивов, систем и протоколов. Традиционно наибольшее внимание привлекает в этой связи проблема сопряжённости. В уже упоминавшейся работе М. Аншеля и др. [4] основой крипто-стойкости протокола служит трудноразрешимость проблемы сопряжённости в группах кос Артина. Заметим, что проблема сопряжённости в них разрешима. Это установлено в работе Гарсайда [34]. Тем не менее, так как эффективный алгоритм для её решения до сих пор не найден, эта задача продолжает считаться трудноразрешимой (см. публикации [19, 35, 36]). Проблема равенства фигурирует в работах [37-39]; проблема вхождения — в работе [18]. Этот список — только малая часть работ, обсуждающих использование алгоритмических проблем в криптографии.
2.1. Проблемы поиска
Абсолютное большинство работ в криптографии, основанной на группах, в которых рассматриваются трудноразрешимые и неразрешимые проблемы, связано с решением так называемых проблем поиска (англ. вариант — search problems). Например, если в основе криптографического примитива лежит проблема сопряжённости, то обычно, как это происходит, например, в протоколе Аншель — Аншеля— Голдфельда, известно, что данные элементы или наборы элементов, если речь идёт о наборах, сопряжены. Задача заключается в эффективном нахождении сопрягающего элемента. В общих чертах, если алгоритмическая проблема ставится для объекта O относительно свойства P, то проблема поиска выясняет в случае, если O обладает свойством P, доказательство, или ещё говорят — свидетельство этого, справедливость которого легко проверить. Например, если известно, что элемент f группы G принадлежит подгруппе H, порождённой элементами h\,...,hk, то требуется найти запись f в виде группового слова от этих элементов. Для проблемы равенства, аналогично, требуется найти выражение слова u = u(x\,...,xn) от порождающих элементов xi,...,xn свободной группы Fn, записывающего тривиальный элемент группы G = Fn/R, где R = нз(г1,... , rm) —его выражение в виде (3). Это, конечно, можно сделать простым перебором, но сейчас речь идёт о реальных вычислениях, когда такой перебор уже не может рассматриваться как эффективный.
Если алгоритмическая проблема, взятая за основу криптографического примитива, не допускает полиномиального алгоритма, то не существует также полиномиального ограничения длины входа от длины наблюдаемого выхода, значит, нельзя организовать полиномиальный перебор возможных входов, основываясь на такой оценке. Если же основная алгоритмическая проблема неразрешима, то невозможно вообще дать какую-либо оценку длины входа, зная длину выхода. В этом случае неприменим метод «грубой силы», то есть полного перебора.
Это рассуждение носит, конечно, самый общий характер. В теории сложности подобные вопросы получают строгое обоснование. Этому в основном посвящена монография [2].
3. О сложности алгоритмических проблем и соответствующих им проблем поиска
Современная теория сложности зародилась в 70-е годы XX столетия. Для нас важное значение имеет прежде всего понятие временной сложности. Действительно, криптография, основанная на группах, как, впрочем, и всякая другая область, ориентированная на практическое использование, должна заботиться о реальном времени вычислений в разрабатываемых ею протоколах. Значит, нам небезразлично, сколь долго будет работать алгоритм. В то же время при практическом использовании разрабатываемых протоколов различные входящие в них параметры, в том числе ключи, выбираются случайным образом. Значит, необходимо заботиться не только о сложности в худшем случае, когда проблему нельзя эффективно решить при каких-то специфических данных, но и о сложности, проявляющейся при случайном выборе данных. Здесь разрабатываются два основных подхода, связанные с определением понятий сложности в среднем и генерической сложности. Перейдём к общему схематическому описанию, отсылая за деталями к монографиям [1, 2, 40], сборнику [41] и статьям [42-45].
Итак, рассматриваем три основных вида сложности:
— сложность по худшему случаю;
— сложность в среднем;
— генерическую сложность.
О классическом понятии сложности по худшему случаю см., например, монографию [40]. Класс сложности С определяется спецификацией модели вычислений (для нас это многоленточная машина Тьюринга), типом вычислений (то есть использованием либо детерминированной, либо вероятностной машины Тьюринга), а также ресурсами, объём которых необходимо контролировать (обычно это время работы алгоритма, пространство, занимаемое данными, или же то и другое). Данные спецификации позволяют определить функцию сложности f (п), где п — размер входа, оценивающую объём необходимых ресурсов для вычисления соответствующего ему выхода. Мы не приводим точного определения, замечая только, что оно позволяет говорить о линейной, полиномиальной или экспоненциальной сложности алгоритма. Как правило, считается, что линейные, квадратичные и в иных случаях полиномиальные для малых степеней алгоритмы достаточно быстры, а экспоненциальные медленны. Конечно, это все относительно и требует конкретизации в каждом отдельном случае.
Кратко остановимся на понятии сложности в среднем. Для её определения необходимо, чтобы на пространстве всех возможных входов была задана функция распределения вероятностей или хотя бы какая-нибудь аддитивная неотрицательная функция. При её задании сложность в среднем чаще всего оценивается математическим ожиданием объёма ресурсов, необходимым для работы алгоритма на случайно выбранном входе. Опять же можно говорить о линейной, полиномиальной и экспоненциальной сложности в среднем. На конечных множествах, как правило, задают равномерную функцию распределения. В бесконечном случае вопрос о задании такой функции становится более тонким. Например, задача определения «случайного» элемента группы рассматривалась многократно. Даже для конечных групп этот вопрос решается далеко не очевидным путём. Действительно, что считать случайным выбором? Уже давно стало понятным, что при учёте алгебраической структуры группы её элементы как бы становятся «неравноправными» (см. по этому поводу [46]).
В работе [47] предложен следующий возможный общий подход к построению обсуждаемого распределения на бесконечной конечно порождённой группе. Пусть груп-
г
па О наделена функцией натуральнозначной длины / : О — N такой, что множество & всех элементов д группы О длины /(д) = г для любого натурального числа г конечно. Считаем также, что &0 = {1}. Функция / в конкретных случаях может называться функцией размера, сложности и т. п. Множество &г естественно называть сферой радиуса г. Аналогичным образом определяется шар Вг радиуса г, состоящий из всех элементов д группы О, для которых /(д) ^ г. Затем берётся одна из функций распределения f : N и {0} —У К, определённая на множестве натуральных чисел с нулем. Например, это может быть функция Пуассона, биномиального или экспоненциального распределения. Предполагается только её невырожденность, т. е. что для любого г Е N выполняется f (г) = 0. Для задания функции распределения вероятностей р : О — [0,1] для любого г полагаем р(&г) = f (г). Далее для любого д € &г полагаем р(д) = (г), т. е. все элементы сферы &г считаются равновероятными. Это определяет функцию распределения вероятностей на всей группе О, что, в свою очередь, даёт возможность говорить о сложности в среднем алгоритма.
Обычно в качестве значения /(д) для элемента д конечно порождённой группы О с фиксированным конечным множеством X порождающих элементов берётся длина кратчайшей записи элемента д в виде группового слова от этих порождающих. Расстоянием ^(д, f) между элементами д и f группы О считается значение /(gf-1). Группа О таким образом превращается в метрическое пространство, изоморфное графу Кэли, соответствующему выбранной системе порождающих элементов. Данная метрика называется словарной; длина элемента относительно неё есть его расстояние от 1.
Понятие сложности вычислений в среднем относительно возможных практических приложений в криптографии, основанной на группах, обладает рядом недостатков. Во-первых, возникает вопрос адекватного выбора функции распределения f : N и {0} — [0,1]. Во-вторых, алгоритм может оказаться таким, что он работает чрезвычайно долго только на малой доле возможных входов, а на остальных входах он достаточно быстр. Усреднённое время его работы будет в этом случае не показательным, так как при случайном выборе «плохие» входы будут встречаться крайне редко. Хочется привести в этой связи аналогию с симплекс-методом. В работе [48] показано, что «плохие» входы для него очень специфичны, поэтому их пренебрежимо мало. Это объясняет тот факт, что на практике симплекс-метод вполне хорошо себя зарекомендовал; он широко используется, в то время как знаменитый полиномиальный алгоритм Хачияна [49] имеет в основном теоретическое значение. Более точно, А. М. Вершик и П. В. Спорышев в [50] и независимо С. Смейл в [51] показали, что симплекс-алгоритм работает с линейной сложностью на множестве полной меры.
По описанным выше причинам представляется особенно важным понятие генери-ческой сложности. Для его введения необходимо, чтобы на множестве всех входов была определена мера со значениями в [0,1]. Это не обязательно должна быть функция распределения вероятностей. Генерическим называется множество полной меры, дополнение к которому имеет меру 0. Работа [45] представляет точное определение генерической сложности. В ней же установлено, что для широкого класса конечно порождённых групп классические алгоритмические проблемы равенства, сопряжённости и вхождения имеют линейную сложность при их ограничении на некоторое генериче-ское подмножество (см. также работу [52]).
Перейдём к определениям. Рассмотрим множество всех слов (включая пустое слово) X* в конечном алфавите Е, состоящем не менее чем из двух букв. Это множество является свободным моноидом со множеством свободных порождающих Е. Так как на элементах Е* естественно определено понятие длины, можно ввести для любого неот-
рицательного целого числа г понятия сферы §г и шара Вг радиуса г, как это объяснено выше. Очевидно, что эти множества конечны и непусты.
Пусть V — произвольное подмножество моноида £*. Относительной плотностью множества V в сфере §г называется отношение
- (V ) = ™ • (4)
где | • | означает число элементов.
Аналогично вводится понятие относительной плотности множества V в шаре Вг:
IV П Вг|
Рвг ^) = |В | . (5)
Будем использовать для определения асимптотической плотности функцию (5), хотя совершенно аналогично можно дать определение, основываясь на функции (4).
Определение 1. Асимптотической плотностью подмножества V моноида £* называется верхний предел
)=итРвг (V). (6)
Если в (6) существует предел, то он обозначается через /5(V) и называется строгой асимптотической плотностью множества V. В этом случае нас интересует скорость сходимости к пределу р^) последовательности {рВг. Будем говорить, что сходимость последовательности экспоненциально быстрая, если существуют числа 0 ^ а < 1 и С ^ 0, такие, что для любого г имеет место оценка
|р^) - рвг (V)| ^ Саг.
Определение 2. Подмножество V множества £* называется генерическим, если р^) = 1, и строго генерическим, если сходимость рВг (V) р^) экспоненциально быстрая.
Если V — генерическое множество, то дополнение к нему V' = £* \ V называется пренебрежимым. В этом случае р^') = 0.
Определения 1 и 2 легко распространяются на случай, когда вместо множества £*
рассматривается множество (£*)к наборов из к элементов этого множества для к ^ 2.
к
Длиной набора д = ($1,... , дк) считаем сумму длин его компонент: /(д) = ^ /(дг).
г=1
Можно использовать также другое определение, согласно которому
/(д) = тах{/(дг) : г = 1,... , к}.
Часто алгоритмические проблемы в группах трактуют как подмножества вида Д С (£*)к для некоторого алфавита £ и натурального числа к. Например, если в качестве £ взять множество символов, обозначающих порождающие элементы группы О и формальные обратные к ним, то элементы моноида £* могут рассматриваться как групповые слова от порождающих элементов группы О. Рассмотрим подмножество Д1(О) С £*, определяющее в группе О тривиальный элемент. Проблема равенства в группе О — это вопрос о принадлежности произвольного слова и Е £* подмножеству Д1(О). Проблема сопряжённости на этом языке записывается как Д (О) С (£*)2 и состоит из таких пар (и,^) слов в алфавите £, которые определяют сопряженные
в группе С элементы. Проблема вхождения относительно подгруппы Н, порождённой элементами к1,... , кк-1, имеет вид (С) С , = {(и, к1,... , кк-1)}, где и определяет элемент подгруппы Н. При этом подгруппа Н считается фиксированной. Можно считать также, что фиксировано множество {к1,... , к^-1} порождающих её элементов. В этом случае на вход работы алгоритма должно подаваться слово и. Если рассматривать проблему вхождения в группе С, то элементы к1,... ,к^-1 уже не должны считаться фиксированными. При этом, поскольку число к в общем случае не ограничено, проблему вхождения необходимо рассматривать как подмножество бесконечной степени
Аналогичным образом можно записать широкий круг алгоритмических проблем относительно конечно порождённых групп.
Определение 3. Алгоритм А решает алгоритмическую проблему Д С с ге-нерической сложностью С, если существует генерическое подмножество V С (£*)к, такое, что на любом входе из V алгоритм А работает со сложностью С. Если множество V можно выбрать строго генерическим, то говорят, что алгоритм А решает проблему Д со строго генерической сложностью С.
Обращаем внимание на тот факт, что алгоритм А может быть частично определённым, то есть он может оказаться неопределённым на некоторых входах, которые можно включить в дополнение V' генерического множества V из определения 3. Может так получиться, что проблема Д в целом на группе С алгоритмически неразрешима, а в то же время она генерически разрешима с приемлемой сложностью С. Опыт показывает, что это случается довольно часто и для широкого круга алгоритмических проблем (см. по этому поводу [53, 54]). Опять же можно привести аналогию с симплекс-методом из линейного программирования, который на обсуждаемом языке оказывается генерически быстрым.
В практических приложениях выбор данных осуществляется, как правило, случайным образом. Если генерическая сложность какого-либо алгоритма незначительна, то алгоритм практически всегда применим и достаточно быстр, и может быть использован в практических приложениях.
4. Диофантова криптография
Диофантовым уравнением от п переменных называется выражение вида
¿«1,...,<п) = 0, (7)
где ^(^1,... , <п) — многочлен с целыми коэффициентами от обозначенных независимых коммутирующих переменных. Множество всех таких многочленов составляет кольцо Лп = ... , £п]. Кольцо Лт при т ^ п естественно вложено в кольцо Лп. Объединение всех таких колец обозначим через Л = ... , £п,...].
На Втором математическом конгрессе, состоявшемся в 1900 г. в Париже, выдающийся математик Д. Гильберт изложил свои знаменитые 23 математические проблемы для математиков XX столетия. Впоследствии их стали называть Проблемами Гильберта. Среди этих проблем присутствовала 10-я Проблема о существовании эффективной процедуры, определяющей за конечное число шагов, имеет ли произвольное диофантово уравнение целочисленные корни. Говоря современным языком, 10-ю Проблему Гильберта можно перефразировать следующим образом: существует ли алгоритм, определяющий по произвольному диофантову уравнению (7) его разрешимость в целых числах.
Алгоритмическая неразрешимость 10-й Проблемы Гильберта установлена Ю. В. Матиясевичем в работах [14, 15]. Тем самым им были успешно завершены усилия многих математиков, из которых наиболее весомый вклад в решение проблемы внесли Д. Робинсон, М. Девис и Х. Путнам.
Вернемся к криптографии. Обычно криптографическая система основывается на трудноразрешимой математической проблеме, часто теоретико-числового характера. Приведём список наиболее популярных проблем такого сорта и покажем, что с каждой из таких проблем можно связать диофантово уравнение таким образом, что любое решение этого уравнения даёт возможность эффективно выписать решение соответствующей проблемы и наоборот, решение проблемы приводит к эффективному решению соответствующего диофантова уравнения. Так как любое конечное множество диофантовых уравнений, более того, любое множество диофантовых уравнений от ограниченного числа переменных, которое, как известно из теоремы Гильберта, эквивалентно своей конечной подсистеме, равносильно одному диофантову уравнению, которое легко получается из левых частей уравнений вида (7), если взять квадраты этих левых частей и приравнять их сумму к 0, то можно эффективно сопоставлять любому конечному множеству проблем, о которых говорилось выше, одну равносильную им проблему — о разрешимости в целых числах полученного диофантова уравнения.
Приведённое рассуждение показывает, что диофантов язык является универсальным в определённом смысле. Он может быть применён для криптографических функций многих известных систем шифрования, в том числе для функции шифрования системы RSA, функции дискретного логарифма и т. п. Перечислим некоторые из упомянутых проблем и покажем, как записать соответствующие им системы диофантовых уравнений.
1. Разложение на множители. Для данного составного числа n найти натуральные числа p, q ^ 2, такие, что n = p • q.
Во многих приложениях p и q — различные нечётные простые числа. Пусть
Z(2) = {n = pq : p, q различные нечётные простые числа}.
Так как любое натуральное число, согласно теореме Лагранжа, допускает представление в виде суммы квадратов четырёх неотрицательных целых чисел, проблема разложения на множители числа n G Z(2), да и любого нечётного составного числа, равносильна разрешимости в целых числах диофантова уравнения
(Cl2 + С22 + Сз2 + С42 + 3)(Z2 + Ce2 + С72 + Cs2 + 3) = n.
Проблема разложения на множители изучается уже сотни лет. Разрабатываются различные методы разложения, такие, как метод квадратичного решета и метод, использующий эллиптические кривые. Имеются впечатляющие разложения больших составных чисел, осуществлённые с помощью мощных параллельных вычислений. Однако до сих пор не найден эффективный алгоритм для её решения в целом. Это даёт основание считать, что проблема действительно трудна.
2. Проблема расшифрования в RSA. Пусть n = pq G Z(2). Кольцо вычетов Zn используется в системе шифрования RSA в качестве платформы шифрования. Мультипликативная группа Zn кольца Zn имеет порядок ^(n) = (p — 1)(q — 1), где ^(n) обозначает функцию Эйлера. Предполагается, что натуральное число e, взаимно простое с <^(n), выбрано как ключ шифрования. Проблема расшифрования заключается в нахождении вычета x G Zn, кодирующего исходный текст, по его зашифрованному
виду c = xe mod n. Эта проблема равносильна разрешимости диофантова уравнения xe = c + ny относительно неизвестных x и y.
Проблема расшифрования относительно системы RSA изучается последние три десятка лет, но эффективный алгоритм для её решения пока не найден.
3. Проблема квадратичного вычета. Пусть n = pq G Z(2). Для произвольного вычета a G Zn определить, существует ли вычет x G Zn, такой, что справедливо сравнение x2 = a(modn).
Проблема квадратичного вычета равносильна разрешимости диофантова уравнения x = a + ny.
Проблема квадратичного вычета лежит в основе системы шифрования Гольдвас-сер — Микали, на ней базируется семантическая секретность систем Накаче — Штерна и Бекалоха.
Вычисление квадратичного корня по модулю числа n G Z(2) при знании разложения n = pq осуществляется за полиномиальное время. В общем случае проблема так же трудна, как и проблема разложения n на множители.
4. Дискретный логарифм в простом конечном поле. Пусть p — простое число, тогда Zp — простое конечное поле характеристики p. Мультипликативная группа Zp циклическая. Пусть g — порождающий элемент этой группы. Дискретным логарифмом элемента f G Zp называется число x, для которого gx = f (modp).
Число x определяется по модулю (p — 1) — порядка группы Zp. Проблемой дискретного логарифма
в поле Zp называется вопрос о вычислении x по случайно выбранному элементу f ; g считается известным. Пишут x = logg (f ) и называют его дискретным логарифмом элемента f по основанию g. Для однозначности вычисления x накладывается дополнительное ограничение 0 ^ x ^ p — 2. Проблема дискретного логарифма в простом конечном поле Zp равносильна разрешимости экспоненциального диофантова уравнения
gx = f + py. (8)
Проблема дискретного логарифма может рассматриваться для любого конечного поля, где также может быть записана эквивалентным экспоненциальным диофанто-вым уравнением. Здесь мы не говорим об этом более подробно.
Из результатов Ю. В. Матиясевича [14, 15] следует, что множество E всех решений x,y уравнения (8) является диофантовым. В общем случае диофантовым называется множество наборов a = (ai,... , a^) целых чисел, для которого существует диофантов многочлен d(Zi,... , Cfc, К,... , кп), такой, что набор целых чисел a = (a1,..., a^) принадлежит множеству E в том и только в том случае, если найдутся целые значения b1,... , bn для к1,... , кп, такие, что d(a1,... , ak, b1,... , bn) = 0, то есть соответствующее диофантово уравнение разрешимо в целых числах. По теореме Матиясевича любое рекурсивно перечислимое множество E наборов из k целых чисел является диофантовым множеством. Существование такой характеризации рекурсивно перечислимых множеств даёт ещё большее основание говорить о диофантовом языке как об универсальном и рассматривать его в качестве средства построения криптографических систем и протоколов. О явном виде диофантова уравнения, равносильного уравнению вида (8), см. в [55, 56].
Трудность вычисления дискретного логарифма в произвольном случае лежит в основе многочисленного семейства систем шифрования и протоколов, таких, как система ЭльГамаля, протоколы Масси — Омуры и Диффи — Хеллмана, стандарты цифровой подписи DSS и ГОСТ Р 34.10-94, основанные на базовом протоколе ЭльГамаля, и т.д.
Есть ещё одно важное обстоятельство, говорящее в пользу использования неразрешимости 10-й Проблемы Гильберта в качестве основы для построения криптографических примитивов, систем и протоколов. Как недавно показал А. Н. Рыбалов [59], 10-я Проблема Гильберта остаётся неразрешимой на любом строго генерическом множестве диофантовых уравнений.
Каждый диофантов многочлен d(Zi,... , Zk) может рассматриваться как функция из Zk в Z. Ю. В. Матиясевич [14, 15] доказал, что существует такой диофантов многочлен do(Zi,... , Zk), что не существует алгоритма нахождения решения в целых числах уже в классе уравнений вида d0((1,... , Zk) = c, где c Е Z. Таким образом можно определить функцию Zk ^ Z, которая может рассматриваться в качестве кандидата на одностороннюю функцию. Действительно, значение данного диофантова многочлена вычисляется за полиномиальное время, в то время как не существует полиномиального ограничения на нахождение аргумента по значению функции d0(Z1,..., Zk).
Односторонней называется функция, эффективно вычислимая за полиномиальное время на детерминированной машине Тьюринга, для которой не существует вероятностной машины Тьюринга, вычисляющей за полиномиальное время по значению функции один из соответствующих этому значению аргументов с существенной вероятностью. Формального определения здесь не приводим, тем более что часто в определении присутствуют дополнительные требования (см. по этому поводу [57]).
Односторонние функции являются неотъемлемой частью криптографических систем и протоколов. Теоретически их существование ещё не доказано. В то же время ряд функций, которые претендуют на то, чтобы считаться односторонними, широко используются в криптографии. Нам представляется, что диофантовы функции дают широкие возможности для построения возможно односторонних функций, тем более что, как показано выше, ряд кандидатов на роль односторонних функций могут трактоваться как диофантовы.
С. Ю. Ерофеев в работе [58] рассмотрел различные варианты построения не только возможно односторонних, но и возможно двушагово односторонних функций. Двуша-гово односторонней называется композиция двух односторонних функций, которая сама является односторонней. Более того, по значению композиции и известному аргументу второй из функций аргумент самой композиции не является эффективно вычислимым. Необходимость построения таких функций объясняется тем, что в ряде предлагаемых протоколов, например в протоколе аутентификации с нулевым разглашением из [13], наличия обычных односторонних функций недостаточно.
5. Свободные метабелевы группы и проблема эндоморфной сводимости
Этот раздел связан с базовыми понятиями теории групп (о них см., например, [32, 33] и другие книги, излагающие основы теории групп). Элементы теории групповых многообразий см., например, в [10].
5.1. Свободные метабелевы группы
Напомним, что для произвольного натурального числа n через Fn обозначается свободная группа ранга n. Её фактор-группа по коммутанту An = Fn/F'n является свободной абелевой группой ранга n, а фактор-группа по второму коммутанту Mn = Fn/FП — свободной метабелевой группой ранга n. При этом второй коммутант G" определяется как коммутант от коммутанта (G')'. Он также является нормальной подгруппой группы G. Фактор-группа G/G" по второму коммутанту является метабелевой группой. В общем случае метабелевой называется группа, в которой существует цепочка
нормальных подгрупп
1 ^ A ^ G (9)
с абелевыми факторами. Другими словами, в группе G есть абелева нормальная подгруппа A, фактор-группа по которой G/A также абелева. Легко проверяется, что группа G метабелева в том и только в том случае, если её коммутант G' абелев. В определении (9) коммутант G' играет роль A.
Заметим, что фактор-группа Mra/M^ также изоморфна свободной абелевой группе An .
Зафиксируем канонические гомоморфизмы п'п : Fra^Ara, п" : Fra^Mra, пп : Mra^Ara. Если (/i,..., /n) — базис, то есть множество свободных порождающих группы Fn, то (ai,... , an) = (/1F^,... , ) — соответствующий базис группы An и (x1,... , xn) = = (/iF",..., /„F") — базис группы Mra. Имеем также (ai,... , ara) = (пга(xi),... , пга(xra)).
Группы An и Mn являются свободными группами многообразия A всех абелевых групп и многообразия A2 всех метабелевых групп соответственно. Любое отображение базиса группы A в произвольную абелеву группу A и любое отображение базиса группы Mn в произвольную метабелеву группу M однозначно продолжается до гомоморфизма An ^ A и Mn ^ M соответственно.
Перейдём к описанию структуры свободной метабелевой группы Mn. Как уже отмечалось, фактор-группа Mn/M^ изоморфна свободной абелевой группе An. Это означает, что любой элемент группы Mn однозначно представим в виде
п
g = П xkiu, (10)
i=i
где fcj G Z для i = 1,... , n; элемент u = u(g) принадлежит коммутанту M^. Чтобы получить из (10) нормальную форму записи элемента g, достаточно построить такую форму для элемента u.
Так как M^ — нормальная абелева подгруппа группы Mn, её можно рассматривать как модуль над групповым кольцом ZAn. Групповая операция в этом модуле — это умножение в группе Mn. Действие элемента a G An на элемент v G M' определяется следующим образом. Берём произвольный прообраз а элемента a в группе Mn относительно канонического гомоморфизма пп и полагаем
va = va. (11)
Так как все возможные прообразы a отличаются друг от друга на элементы из M^, сопряжение в (11) не зависит от выбора а. Следовательно, приведённое определение корректно. Продолжение действия на групповое кольцо ZA осуществляется по линейности, а именно: для любого набора элементов bj G An и любого набора целых чисел /j G Z (j = 1,..., p) полагаем
E jbj p
v=i =n(vbj )j, (12)
j=i
причём правая часть в (12) не зависит от порядка сомножителей, что обеспечивает корректность определения.
Коммутант M ' более естественно рассматривать как модуль над ZA по следующим причинам. Как подгруппа, M' является свободной абелевой группой, ранг которой бесконечен. Следовательно, такое представление не является конечным. Как
модуль, МП конечно порождён. В качестве его порождающих элементов можно взять набор коммутаторов вида
ву = [хг, ху] для г > ]; г, = 1,... , п. (13)
Покажем, как произвольное слово V = ^(х1,... , хП), записывающее элемент коммутанта М^, представляется через порождающие модуля (13). Сначала переставляем влево все вхождения х^1, пользуясь формулами
хх г хх 1 [^Сг, ^С 1 ] хх 1 хх г, ^х — ^х 1 [^С — , 1 ] 'х 1 'х — [^Сг, 1 ] г 1 — , 'х г — [^С г, — ] 'х — 'х г
- . хх ] а1 хх 1 хх . ху 1 хх 1 --1 хх 1 ] хх 1 ^^ 1 - • хх -1 ] а 1 ^^ 1 1
г ^ •X' 1J •X' 1 «лу г ^ •X' г •X' 1 ^«Х' г ) ^ 1 J 1 г г ^ 1J 1 г *
Возникающие при этом коммутаторы ву = [хг,х1] передвигаются вправо согласно формуле [хг, х1]/ = / [хг, х1]^ , справедливой при любом г = 2,... , п и любом / € Мп. После того как будут переставлены все вхождения х^1, произойдёт сокращение этих степеней и таких вхождений уже не будет. Продолжим процесс переписки, переводя влево х± , и т. д. В результате получим выражение вида
V = П в** (14)
г>3,
г,3 = 1 ,...,п
для некоторых элементов ау группового кольца ZAra.
При I < £ считаем, что вц обозначает коммутатор [хг, х4] = [х4,хг]— 1 = в—1. Модуль М^ не является свободным. Относительно порождающих (13) все его определяющие соотношения следуют из следующих соотношений Якоби:
ват чт чг—1 = 1. (15)
Ввиду этих соотношений форма (14) записи элемента V не является однозначной. Для получения однозначной (нормальной) формы записи элемента V € М^ воспользуемся следующими соображениями. Для любых т < п будем считать группу Ат естественно вложенной подгруппой группы .
Утверждение 1. Любой элемент коммутанта М^п однозначно представим в виде
V = П в^', (16)
г>3,
г,3 = 1 ,...,п
где ау € для г > ]; г, ] = 1,..., п.
Доказательство. Пусть элемент V записан в форме (14). Покажем сначала, как можно исключить в этой записи элементы а± для г > 2 из показателя модульного порождающего в21. Начинаем с исключения а± . Достаточно рассмотреть случай, когда в показателе стоит элемент группы вида а^к, где к не зависит от а3. Пусть к > 0. Тогда а^к = (а3 — 1)а^—1к + а^ — 1к. Отсюда и из соотношений (15) получаем равенство
«кн _ «к- 1 н —1)«к- 1 н — (аз—1)«к- 1Н
в21 = в23 в31 в32 .
Далее продолжаем процесс указанным способом до полного исключения а§.
Пусть к < 0. Равенства (15) остаются справедливыми, если в них заменить х3 и а3
соответственно на х3 1 и на а3 1. Следовательно, можем исключить из рассматривае-к
мого показателя ак, как это делалось выше, а затем использовать равенства
1
[х 3 ,хг] = [х3 ,хг] «3 для г = 1, 2.
Подобным образом исключим из показателя элемента е21 все элементы вида а^1 для г = 3,..., п. Оставшийся показатель принадлежит групповому кольцу ZA2. Далее исключаем подобным образом а^1 для г ^ 4 из показателей степеней при е31 и е32. В конце концов получим запись элемента V в форме (16). Докажем, что полученная запись единственная. Сначала применим к (16) гомоморфизм специализации группы Мп, определённый на базисных элементах как ж, м- ж, для г = 1,2 и ж М- 1 для ] ^ 3. Образом элемента V будет е^21. Так как все соотношения в модуле Мп следуют из соотношений Якоби, подмодуль, порождённый в М^ любым из элементов е^, свободен. Значит, показатель а21 определяется однозначно.
Далее рассматриваем элемент V = е-]"21 V и применяем к нему гомоморфизм специализации, определенный отображением ж, М ж, для г =1, 2, 3, и ж М 1 для ] ^ 4. Образом элемента V будет е^З1 е^!2. Так как все соотношения в модуле М^ следуют из соотношений Якоби, подмодуль, порождённый в М^ набором элементов е^1,... ,е^г_1, является свободным на этих порождающих. Значит, показатели а31 и а32 определяются по элементу V однозначно. Продолжая доказательство подобным образом, установим однозначность записи (16). ■
Группа Мп допускает также точное представление матрицами над полем. Оно получается из следующего знаменитого точного матричного представления, известного как вложение Магнуса. Относительно этого представления см., например, монографию [60].
Пусть Тп обозначает свободный модуль ранга п над групповым кольцом ZAn с базисом ¿1,... , ¿п. Рассмотрим группу матриц М(Ап, Тп) вида
а аи
,= 1 01
С17)
где а € Ап, а, € для г = 1,..., п.
Группа М(Ап,Тп) является прямым сплетением группы Ап на себя, то есть М(Ап, Тп) = Ап ? Ап. Относительно определения и свойств конструкции сплетения групп см., например, [32]. Легко проверяется, что группа М(Ап,Тп) метабелева. Все матрицы вида (17) с 1 в левом верхнем углу образуют в ней абелеву нормальную подгруппу N фактор-группа по которой изоморфна группе Ап. Группа N является модулем над групповым кольцом с базисом ¿1,..., ¿п. Можно заметить, что модульная операция индуцируется сопряжениями элементами группы М(Ап,Тп) аналогично тому, как это объяснялось выше относительно модуля М^.
Вложение Магнуса группы Мп в группу М(Ап, Тп) определяется следующим отображением базиса:
^ : ж, М ^ ¿1 ^ для г = 1,... , п. (18)
Вложение Магнуса также позволяет ввести нормальную форму элементов группы Мп как матриц вида (18). Важно отметить для этого, что матрица вида (17) принадлежит образу ^(Мп) тогда и только тогда, когда выполнено равенство
п
а - 1 = Е а, (а, - 1). (19)
,=1
Для того чтобы считать группу М(Ап,Тп) матричной над полем, возьмем поле частных Е группового кольца и его чисто трансцендентное расширение
Е = ... , ¿п). Тогда группа М(Ап,Тп) оказывается подгруппой полной матричной группы ОЬ2 (Е).
Вложение Магнуса и его обобщения широко используются в теории групп для доказательства важных утверждений не только о свободных метабелевых группах, но и о группах из широкого класса групп вида Д/Д', то есть фактор-групп по коммутантам нормальных подгрупп свободных групп Д. Имеется прямая связь с другим важным понятием теории групп — свободными дифференцированиями Фокса (см., например, монографию [60]).
Например, с помощью вложения Магнуса легко доказать, что моноид ХЛ порождённый в группе Мп множеством свободных порождающих Хп = {х1,... , хп}, свободен. Это позволяет, например, записывать элементами этого моноида слова в произвольном алфавите из п букв. Можно использовать вместо ХП его автоморфную копию или произвести еще какие-нибудь операции, позволяющие скрыть вид слов. Это даёт возможности для построения криптографических примитивов, а затем на их основе систем и протоколов.
Есть ещё ряд обстоятельств, говорящих в пользу групп Мп как возможных платформ для криптографических систем. Во-первых, в группе Мп при любом п проблема равенства разрешима за полиномиальное время. Более точно, в [61] показано, что проблема равенства в группе Мп решается за время 0(пт 1с^2 т), где т — длина слова. Там же указан соответствующий алгоритм. В то же время близкая по постановке алгоритмическая проблема вычисления геодезической длины элемента, по которой для данного слова группы Мп нужно найти длину его кратчайшей записи от элементов базиса, является КР-полной. В [62] установлено, что проблема сопряжённости в группе Мп решается за время 0(пт8), где т обозначает сумму длин двух слов, для которых проверяется сопряжённость записываемых ими элементов группы Мп. Доказательство в [62] конструктивно, что позволяет дать точно такую же оценку времени решения соответствующей проблемы поиска сопряжённого элемента. Приведённые здесь результаты говорят о том, что можно эффективно работать с элементами групп Мп, их нормальными формами и сопряжёнными элементами. Известны также [63] эффективные алгоритмы, решающие в группах Мп проблему вхождения.
Важно также отметить, что группа Мп при п ^ 2 имеет экспоненциальный рост. Это означает, что функция роста количества элементов длины ^ г относительно словарной метрики группы Мп экспоненциальна. Значит, если рассматривать группу Мп при п ^ 2 в качестве источника параметров, ключей и т. п., соответствующее пространство будет достаточно обширно, чтобы его нельзя было атаковать методом полного перебора.
В заключение отметим, что классические алгоритмические проблемы равенства, сопряжённости и вхождения разрешимы в любой конечно порождённой метабелевой группе. Проблема равенства решена Е. И. Тимошенко [64]. Разработанный им алгоритм, сводящий проблему к решению системы линейных уравнений над групповым кольцом ZAn свободной абелевой группы, вполне пригоден для практического использования. Проблема сопряжённости решена Г. А. Носковым [65], но представленный им алгоритм довольно сложен. Он опирается на структурную теорию коммутативных колец и, по-видимому, в такой форме вряд ли может использоваться практически. В работе [66] описан алгоритм, решающий в конечно порождённой метабелевой группе более общую, чем проблема сопряжённости, проблему скрученной сопряжённости. По представлению автора, такой более общий подход даёт возможность его практического использования, по крайней мере, на генерическом множестве. Проблема вхож-
дения решена Н. С. Романовским [63]. На практичность она не исследована, но, по-видимому, может быть реализована для такой цели. Разрешимы и многие другие алгоритмические проблемы [67] (см. соответствующий обзор в [25]). Правда, с точки зрения теории сложности общий случай ещё исследован недостаточно. В классе всех конечно порождённых метабелевых групп разрешима проблема изоморфизма данной свободной метабелевой группе Mn [68]. Разрешимость проблемы изоморфизма в этом классе остается открытым вопросом (см. по этому поводу [69]).
5.2. Уравнения в группах
Итак, классические алгоритмические проблемы в свободных метабелевых группах разрешимы. Однако некоторые другие естественные по своей постановке алгоритмические проблемы в этих группах неразрешимы. Первые такие примеры указаны автором в [11, 12]. Это алгоритмические проблемы разрешимости произвольного уравнения в группе Mn при n ^ 2 и разрешимость проблемы эндоморфной сводимости в группе Mn достаточно большого ранга n ^ По. Для постановки этих проблем и объяснения их неразрешимости необходимо провести специальную подготовку, к которой мы сейчас переходим.
Пусть G — группа. Нижним центральным рядом группы G называется убывающая последовательность нормальных подгрупп
G = yig ^ 72G ^ ...YkG ^ ..., (20)
в которой Yi+1 G = [YiG, G] —подгруппа, порождённая всеми коммутаторами вида [g,/], где g Е YiG, / Е G. Ряд (20) называется центральным, так как любой его фактор YiG/Yi+1G лежит в центре фактора G/Yi+1G. Группа G называется нильпо-тентной, если для некоторого i в ней Yi+1G = 1. Наименьшее число i с этим свойством называется ступенью нильпотентности группы G. Считается, что тривиальная группа имеет ступень нильпотентности 0, нетривиальная абелева группа — ступень нильпотентности 1 и т. д.
Выпишем известные (см., например, [32]) коммутаторные тождества, справедливые в любой группе G:
[xy,z] = [y,z ]x[x,z] = [[y,z],x]-1 [y,z][x,zL
[x-1,z] = [x,z]-1 [[x,z],x-1], (21)
[z,x-1] = [[x,z],x-1]-1[x,z].
Одним из следствий тождеств (21) является следующая относительная дистрибутивность:
i
[gk1 ,...,gkl ] = [g1,...,gi]i=iki (mod Yl+1 G), (22)
где g1,... , gi —произвольные элементы группы G, а k1,... , ki —целые числа.
Предполагаем, что в левой части стоит простой коммутатор, т. е. коммутатор вида [... [[a1, а2], а3],..., а], в котором скобки стоят слева направо. Такие коммутаторы ещё называют левонормированными. Однако равенство (22) остаётся верным при любой расстановке скобок, важно только, чтобы все операции с символами были коммутаторными.
Известно [10, 32], что в метабелевых группах выполняется тождество
[/, h,g1,g2 ,...,gl] = [/, h,gCT(1), ... ,gCT(l) L
где а — произвольная перестановка символов 1,...,/.
Для свободных порождающих х1,... ,хп группы Мп определяются базисные коммутаторы — простые коммутаторы от элементов базиса х1,... ,хп вида
[хгх , хг2 , хгз , . . . , xíl], (23)
где I ^ 2 называется весом коммутатора, и выполняются неравенства г1 > г2; г2 ^ га ^ ... ^ гг. Сами порождающие х1,...,хп также считаются базисными коммутаторами веса 1. Известно [70, 71], что образы базисных коммутаторов веса I относительно канонического гомоморфизма Мп ^ О/7^+1Мп образуют базис свободной абелевой группы 7»Мп/7г+1Мп.
Упорядочим все базисные коммутаторы группы Мп по возрастанию весов. Продолжим этот частичный порядок до полного, упорядочив между собой базисные коммутаторы одного веса произвольным образом. Пусть с^ ... , сь, £ = ¿(г) —полный список всех базисных коммутаторов веса не больше чем г в заданном порядке. Обычно считают, что с, = х, для ] = 1,... , п, то есть что порядок на порождающих элементах как базисных коммутаторах веса 1 соответствует порядку на индексах. Тогда любой элемент группы Мп при п ^ 2 для любого г ^ 1 однозначно записывается в виде
ь к
д = П с/ (mod7i+1Mn) для некоторых к, € Ъ. (24)
,=1
Таким образом, по модулю 7»+1Мп элементы группы Мп кодируются наборами целых чисел (к1,...,кь), £ = ¿(г). Компоненты набора будем называть координатами элемента д по модулю 7г+1Мп. Легко видеть, что координаты при различных г соответствуют друг другу в очевидном смысле.
Любое отображение группы Мп на себя, рассматриваемое по модулю 7»+1Мп, определяет отображение ^ и наоборот. Можно ввести в рассмотрение свободную ме-табелеву нильпотентную ступени г + 1 группу Мп,^ = Мп/7^+1Мп и говорить о нормальной форме её элементов, соответствующей (24), её отображениях и т.п. Группа Мп,^ является свободной группой ранга п многообразия всех метабелевых нильпотентных ступени ^ г групп, которое есть пересечение многообразия А2 всех метабелевых групп и многообразия N всех нильпотентных групп ступени ^ г.
Пусть два элемента д и / группы Мп записаны в виде (24), причем элемент д имеет координаты (к1,... , ), а элемент / — координаты (д1,... , Тогда существуют многочлены р, = р,(^1,... , О,'), к1,... , кь(,)) для = 1,... , ¿, такие, что координаты (г1,... , гь) произведения Н = д/ вычисляются по формулам
Г," = р (къ ... , , ,... , (25)
Напомним, что ¿(^) обозначает количество всех базисных коммутаторов веса не больше чем
Аналогично, существуют многочлены и, (^1,... , С*) для = 1,... , ¿, вычисляющие по координатам элемента д координаты обратного к нему элемента д-1. Теория базисных коммутаторов введена в рассмотрение Ф. Холлом более 50 лет назад и получила широкое применение в теории групп (см. лекции Ф. Холла [70] и монографию [71]).
Важно отметить, что в рассматриваемом случае групповые операции переписываются через диофантовы функции. Это позволяет переходить от групповых уравнений к диофантовым. Вопрос о разрешимости группового уравнения таким образом сводится к решению соответствующего диофантова уравнения. Здесь также проявляется универсальность диофантова языка. Рассмотрим этот вопрос более подробно.
Уравнением в группе О (ещё говорят «над группой О»), или групповым уравнением, называется выражение вида
т = ,..., zr) = 1, (26)
где т — групповое слово от неизвестных г1,..., и элементов группы О. Если ввести в рассмотрение свободную группу Д с базисом {г1,... , zr,...}, то т может рассматриваться как элемент свободного произведения О[г1,..., zr,...] = Д * О. Решением уравнения (26) называется набор элементов д1,...,дг группы О, для которого т($1,...,дг) = 1. Решению д1,...,дг соответствует гомоморфизм ^ : О[г1,..., zr,...] М О, при котором элементы группы О отображаются сами на себя, на группе Д гомоморфизм определяется своими значениями zг М- дг при г = 1,... , г, и произвольными значениями остальных порождающих zj• для ] ^ г +1. Наоборот, каждому гомоморфизму ^ группы О^,... , zr,...] в группу О, тождественному на элементах группы О, отвечает решение дг = (г = 1,...,г). Уравнение (26) называется разрешимым,
если для него существует хотя бы одно решение, и неразрешимым в противном случае. Соответственно ставится следующая алгоритмическая проблема.
Проблема разрешимости уравнений. Разрешимо ли произвольное уравнение (26) в данной группе О.
Проблема разрешимости уравнений может ставиться также для класса групп С — вопрос о существовании алгоритма, который по произвольной группе О из данного класса С и произвольному уравнению (26) определяет его разрешимость в О. Можно рассматривать более широкую проблему разрешимости систем уравнений в группе или в классе групп. Можно, напротив, ограничивать класс рассматриваемых уравнений. Например, брать уравнения от ограниченного числа переменных или уравнения специального вида. Важным классом являются так называемые бескоэффициентные уравнения вида
,...^г ) = /, (27)
где левая часть не зависит от элементов группы О (коэффициентов), а в правой части стоит элемент / группы О.
Для любого натурального числа г сопоставим уравнению (26) относительное уравнение
т^,...^) = 1(тсё. 7г+1О), (28)
для которого естественно определяется понятие разрешимости. Ясно, что разрешимость уравнения (26) влечет разрешимость уравнения (28) для любого г. Обратное утверждение в общем случае неверно. Разрешимость уравнения (28) в группе О равносильно разрешимости его гомоморфного образа в группе О/7г+1О. Под гомоморфным образом понимается уравнение, полученное из исходного уравнения заменой всех вхождений элементов из О на их канонические гомоморфные образы в фактор-группе О/7г+1О.
Итак, разрешимость относительных уравнений в группе равносильна разрешимости уравнений в фактор-группе. Выше рассмотрены относительные уравнения по модулю членов нижнего центрального ряда 7г+1 О группы О. Однако ясно, что можно брать относительные уравнения по модулю любой нормальной подгруппы N группы О и связывать с ними уравнения в фактор-группе О/Ж
Свободные метабелевы группы обладают так называемым свойством эллиптичности, или конечности ширины вербальных подгрупп, которое позволяет, в частности, относительным уравнениям (28) в группе О = Мп сопоставлять равносильные им
уравнения в самой группе Mn. Напомним, что вербальной подгруппой v(G) группы G, соответствующей групповому слову v = v(zi,...,zr), называется подгруппа, порождённая всеми значениями v(g1,...,gr) слова v в группе G. Подгруппа v(G) имеет конечную ширину l = width(v(G)), если любой элемент u G v(G) представим как произведение не более l значений слова v или обратного к нему v-1 в группе G, и l — минимальное число с этим свойством. Если такого числа l не существует, то говорят, что подгруппа v(G) имеет бесконечную ширину.
Известно [72] (доказательство можно найти также в [73]), что любая вербальная подгруппа свободной метабелевой группы Mn при любом n имеет конечную ширину. Следовательно, любой член нижнего центрального ряда 7jMn имеет конечную ширину ln,i = width(7iMra) относительно слова v = vi(z1,..., Zj) = [z1, z2,..., Zj]. Более точно, в работе [74] показано, что ln,2 = [n/2] при n ^ 2 и ln i = n при i ^ 3. Это означает, что если взять слово
= П [zj,1, zj,2 , . . . , zj,i)][zj,1, ^jj, . . . , 1 j=1
от независимых переменных zjk (j = 1,... , ln,j; k = 1,... , i; t =1, 2), то любой элемент u G 7гМга представляется как значение этого слова в группе Mn. Значит, уравнение
U = П [zj,1 , , . . . , Zj 1 j)][zj, 1), Zj',2 , . . . , ] j=1
разрешимо в группе Mn тогда и только тогда, когда элемент u принадлежит подгруппе 7»Мга. Отсюда получаем, что относительное уравнение (28) разрешимо в группе Mn тогда и только тогда, когда в Mn разрешимо уравнение
w(z1,... )Vn,i = 1.
Разрешимость относительного бескоэффициентного уравнения (27) равносильна разрешимости бескоэффициентного уравнения
w(z1,... ,zr)Vn,i = f.
Рассмотрим относительное уравнение
w(z1,...,zr) = 1(mod 7i+1G). (29)
Перепишем в нормальной форме (24) все константы, входящие в запись (29), и
t а ■
все неизвестные z1,... , zr, полагая = П c^ (modYi+1), с неизвестными показателя-
j=1 j
ми степеней Zfcj (k = 1,... , r; j = 1,... , t), где t = t(i). Другими словами, запишем константы и неизвестные в координатной форме. Затем приведём левую часть уравнения к нормальному виду (24), используя многочлены (25). Решению уравнения (29) соответствует тривиальная нормальная форма. Значит, все показатели полученной нормальной формы должны равняться нулю. Разрешимость уравнения (29) сводится таким образом к разрешимости системы из t = t(i) диофантовых уравнений. В свою очередь, любая конечная система диофантовых уравнений равносильна одному дио-фантову уравнению.
Равносильность относительных и обычных уравнений в группе Мп позволяет получать те же системы диофантовых уравнений и для уравнений в группе Мп.
Остаётся установить, что класс получающихся диофантовых уравнений достаточно широк с точки зрения его алгоритмической разрешимости, а именно, что этот класс алгоритмически неразрешим. Это сделано в работах автора [11, 12]. А именно, в [12] показано, что по любому диофантову уравнению (7) можно явно указать такое групповое слово ... , ), не зависящее от констант, и такой элемент f группы Мп для произвольного п ^ 2, что уравнение (27) разрешимо в группе Мп тогда и только тогда, когда диофантово уравнение (7) разрешимо в целых числах. Более того, можно зафиксировать левую часть уравнения (27), а элемент f выбирать из фиксированного смежного класса по циклической подгруппе гр(Л,) группы Мп. Отсюда и из неразрешимости 10-й Проблемы Гильберта следует неразрешимость проблемы разрешимости уравнений в любой свободной метабелевой нециклической группе. Более того, эта проблема неразрешима уже для класса бескоэффициентных уравнений с фиксированной левой частью, правая часть которых берется из фиксированного смежного класса по циклической подгруппе, как это объяснено выше.
Перейдем теперь к проблеме эндоморфной сводимости. Для произвольной группы О она ставится следующим образом.
Проблема эндоморфной сводимости. Определить по произвольным элементам д и f группы О, является ли элемент f эндоморфным образом элемента д при каком-нибудь эндоморфизме группы О.
Если рассмотреть свободную метабелеву группу М бесконечного счётного ранга с базисом {х1,... , жг,...}, то неразрешимость проблемы эндоморфной сводимости в ней вытекает из неразрешимости проблемы разрешимости бескоэффициентных уравнений в М2. Действительно, для произвольных элементов д = д(ж1,...,жг) и f = f(ж1,...,жг) группы М элемент f является эндоморфным образом элемента д тогда и только тогда, когда он является таковым, если рассматривать группу Мг с базисом {х1,... , жг}. В свою очередь, это равносильно разрешимости в Мг уравнения
д^,...,^) = ^
Как отмечено выше, эта проблема неразрешима уже в группе М2. Число неизвестных также можно ограничить, поскольку известно [75], что 10-я Проблема Гильберта неразрешима уже для класса диофантовых уравнений от 9 переменных. Значит, для достаточно большого г проблема эндоморфной сводимости в группе Мг алгоритмически неразрешима.
Есть несколько возможностей построения диофантовых функций на свободных ме-табелевых группах. Произвольный эндоморфизм ^ группы Мп однозначно определяется своими значениями на элементах базиса. Можно вести рассуждения по модулю 7г+1Мга. Тогда этим значениям ^(ж^) для г = 1,..., п взаимно однозначно соответствуют наборы целых чисел из (24). Наоборот, любой набор из п таких наборов определяет некоторый эндоморфизм группы Мп, рассматриваемый по модулю 7г+1Мга. Эндоморфизм, в свою очередь, является, с одной стороны, отображением группы Мп в себя, с другой стороны, если его рассматривать по модулю 7»+1Мга, может считаться отображением множества Zí в себя. Это отображение в свете существования диофантовых функций (25) является диофантовым отображением. Семейство таких отображений, среди которых, как известно, есть такие, что проблема нахождения для них прообразов по данному значению алгоритмически неразрешима, даёт богатую возможность
построения функций, претендующих на роль односторонних. Другие возможности связаны с рассмотрением других нормальных форм элементов группы Mn, о которых говорилось выше. В следующей работе мы приведём детали подобных построений.
ЛИТЕРАТУРА
1. Myasnikov A., Shpilrain V., and Ushakov A. Group-based cryptography. (Advances courses in Math., CRM, Barselona). Basel, Berlin, New York: Birkhauser Verlag, 2008. 183 p.
2. Myasnikov A., Shpilrain V., and Ushakov A. Non-commutative cryptography and complexity of group-theoretic problems. (Amer. Math. Soc. Surveys and Monographs). Providence, RI: Amer. Math. Soc., 2011. 385 p.
3. www.grouptheory.info/PersonalPages/Shpilrain,Vladimir/CryptologyePrintArchive
4. AnshelI., AnshelM., and Goldfeld D. An algebraic method for public-key cryptography // Math. Res. Lett. 1999. V. 6. P. 287-291.
5. Марков А. А. Основы алгебраической теории кос // Труды Матем. ин-та АН СССР. 1945. Т. 16. С. 3-54.
6. Dehornoy P. Braids and self-distributivity. (Progress in Math. 192). Basel, Berlin, New York: Birkhauser Verlag, 2000. 623 p.
7. Лин В. Я. Косы Артина и связанные с ними группы и пространства // Итоги науки и техн. Алгебра. Геометрия. Топология. Т. 17. М.: ВИНИТИ, 1983. С. 159-227.
8. Dehornoy P. Braid-based cryptography // Group theory, statistics and cryptography. Contemp. Math. V.360. Providence, RI: Amer. Math. Soc., 2004. P. 5-33.
9. Mahlburg K. An overview of braid group cryptography. 2004. www.math.wisc.edu/~boston/ mahlburg.pdf
10. Нейман Х. Многообразия групп. М.: Мир, 1974. 264 с.
11. Романьков В. А. О неразрешимости проблемы эндоморфной сводимости в свободных нильпотентных группах и в свободных кольцах // Алгебра и логика. 1977. Т. 16. №4. С.457-471.
12. Романьков В. А. Об уравнениях в свободных метабелевых группах // Сиб. матем. ж. 1979. Т. 40. №3. С. 671-673.
13. Grigoriev D. and Shpilrain V. Zero-knowledge autentification schemes from actions on graphs, groups and rings // Ann. Pure Appl. Logic. 2010. V. 162. P. 194-200.
14. Матиясевич Ю. В. Диофантовость перечислимых множеств // Докл. АН СССР. 1970. Т. 191. №2. С. 279-282.
15. Матиясевич Ю. В. Диофантово представление перечислимых предикатов // Изв. АН СССР. Сер. матем. 1971. Т. 35. №1. С. 3-30.
16. Матиясевич Ю. В. Десятая проблема Гильберта. М.: Наука, 1993. 223 с.
17. Shpilrain V. and Zapata G. Using decision problems in public key cryptography // Groups. Complexity. Cryptology. 2009. V. 1. P. 33-40.
18. Shpilrain V. and Zapata G. Using the subgroup membership problem in public key cryptography // Contemp. Math. V. 418. Providence, RI: Amer. Math. Soc., 2006. P. 169-179.
19. Shpilrain V. and Zapata G. Combinatorial group theory and public key cryptography // Applicable Algebra in Engineering Communication and Computing. 2006. V. 17. P. 291-302.
20. Kurt Y. A new key exchange primitive based on the triple decomposition problem // Preprint: http://eprint.iacr.org/2006/378
21. Birget J.-C., Magliveras S., and Sramka M. On public-key cryptosystems based on combinatorial group theory // Tatra Mountains Math. Publ. 2006. V. 33. P. 137-148.
22. Новиков П. С. Об алгоритмической неразрешимости проблемы тождества слов в теории групп // Труды Матем. ин-та АН СССР. 1955. Т. 44. С. 3-143.
23. Новиков П. С. Неразрешимость проблемы сопряженности в теории групп // Изв. АН СССР. Сер. матем. 1954. Т. 18. №6. С. 485-524.
24. Адян С. И. Неразрешимость некоторых алгоритмических проблем в теории групп // Труды Моск. матем. общества. 1957. Т. 6. С. 231-298.
25. Ремесленников В. Н., Романьков В. А. Теоретико-модельные и алгоритмические вопросы теории групп // Итоги науки и техн. Алгебра. Геометрия. Топология. Т. 21. М.: ВИНИТИ, 1983. С. 3-79.
26. Адян С. И., Дурнев В. Г. Алгоритмические проблемы для групп и полугрупп // Успехи матем. наук. 2000. Т. 55. С. 3-94.
27. Miller III C. F. Decision problems for groups — survey and reflections // Algorithms and Classification in Combinatorial Group Theory. Berlin, Heidelberg, New York: Springer Verlag, 1992. P. 1-60.
28. Sims C. C. Computation with finitely presented groups. Cambridge: Cambridge Univ. Press, 1994. 604 p.
29. HoltD.F., EickB., and O'Brien E. A. Handbook of computational group theory. London: Chapman & Hall/CRC, 2005. 414 p.
30. Detinko A., Eick B., and Flannery D. Computing with matrix groups // London Math. Soc. Lect. Notes Ser. 2011. V.387. P. 256-270.
31. Михайлова К. А. Проблема вхождения для прямых произведений групп // Докл. АН СССР. 1958. Т. 119. С. 1103-1105.
32. Каргаполов М. И., Мерзляков Ю. И. Основы теории групп. М.: Лань, 2009. 288 с.
33. Курош А. Г. Теория групп. М.: Физматгиз, 2008. 808 с.
34. Garside F. A. The braid group and other groups // Quart. J. Math. 1969. V. 20. No. 78. P. 235-254.
35. Gebhardt V. Conjugacy search in braid groups from a braid-based cryptography point of view // Applicable Algebra in Engineering Communication and Computing. 2006. V. 17. P. 219-238.
36. Gebhardt V. A new approach to the conjugacy problem in Garside groups //J. Algebra. 2005. V.292. P. 282-302.
37. Petrides G. Cryptoanalisis of the public key cryptosystem based on the word problem on the Grigorchuk groups // LNCS. 2003. V. 2898. P. 234-244.
38. Magyarik M. R. and Wagner N. P. A public key cryptosystem based on the word problem // LNCS. 1985. V. 196. P. 19-36.
39. Fine B., Habeeb M., Kahrobaei D., and Rosenberger G. Survey and open problems in non-commutative cryptography // JP J. Algebra, Number Theory and Applications. 2011. V. 21. P. 1-40.
40. Papadimitriou C. Computation complexity. Boston: Addison-Wesley, 1994. 523 p.
41. Computational complexity theory / eds. S. Rudich and A. Wigderson. Amer. Math. Soc. Institute for Advanced Study, IAS/Park City Math. Series. V. 10. Providence, RI: Amer. Math. Soc., 2004. 389 p.
42. Gurevich Y. Average case comleteness //J. Comput. Syst. Sci. 1991. V. 42. P. 346-398.
43. Levin L. Average case complete problems // SIAM J. Comput. 1986. V. 15. P. 285-286.
44. Kapovich I., Myasnikov A., Shupp P., and Shpilrain V. Average-case complexity and decision problems in group theory // Adv. Math. 2005. V. 190. P. 343-359.
45. Kapovich I., Myasnikov A., Shupp P., and Shpilrain V. Generic-case complexity, decision problems in group theory and random walks //J. Algebra. 2003. V. 264. P. 665-694.
46. Celler F., Leedham-Green C. R., Murray S. H., et al. Generating random elements of a finite group // Comm. Algebra. 1995. V.23. No.3. P. 4931-4948.
47. BorovikA., Myasnikov A., and Shpilrain V. Measuring sets in infinite groups // Contemp. Math. V. 298. Providence, RI: Amer. Math. Soc., 2002. P. 21-42.
48. Klee V. and Minty G. How good is the simplex algorithm? // Inequalities. Proc. Third. Symp., Univ. California. California: Academic Press, 1972. P. 159-175.
49. Хачиян Л. А. Полиномиальный алгоритм в линейном программировании // Докл. АН СССР. 1979. Т. 244. №5. С. 1093-1096.
50. Вершик А. М., Спорышев П. В. Ограничение среднего числа шагов в симплекс-методе и проблемы асимптотической интегральной геометрии // Докл. АН СССР. Т. 271. №5. С. 1044-1048.
51. Smale S. On the average number of steps of the simplex method of linear programming // Math. Programming. 1983. V. 27. P. 241-262.
52. Gilman R., Myasnikov A. G., Miasnikov A. D., and Ushakov A. Report on generic case complexity // Вестник Омского университета. Спец. вып.: Комбинаторные методы алгебры и сложность вычислений. 2007. С. 103-110.
53. Cook S. A. and Mitchell D. G. Finding hard instances of the satisfiability problem: A survey // Satisfiability problem: Theory and Applications. V. 35. Providence, RI: Amer. Math. Soc., 1997. P. 1-17.
54. Kellerer H., Pferschy U., and Pisinger D. Knapsack Problems. Berlin, New York: Springer Verlag, 2004. 546 p.
55. Ерофеев С.Ю. Диофантовость дискретного логарифма // Прикладная дискретная математика. Приложение. 2011. №4. С. 31-32.
56. Ерофеев С. Ю. Диофантовость дискретного логарифма // Вестник Омского университета. 2010. №4. С. 13-15.
57. Goldreich O. Foundations of cryptography. Cambridge: Cambridge Univ. Press., 2001. V1. 451 p.; 2004. V.2. 798 p.
58. Ерофеев С. Ю. Схемы построения двушагово односторонних функций // Вестник Омского университета. 2011. №4. С. 15-18.
59. Рыбалов А. Н. О генерической неразрешимости десятой проблемы Гильберта // Вестник Омского университета. 2011. №4. С. 19-22.
60. Тимошенко Е. И. Эндоморфизмы и универсальные теории разрешимых групп. Новосибирск: Изд-во НГТУ, 2011. 327 с.
61. Myasnikov A., Roman'kov V., Ushakov A., and VershikA. The word and geodesic problems in free solvable groups // Trans. Amer. Math. Soc. 2010. V.362. P. 4655-4682.
62. Vassileva S. Polynomial time conjugacy in wreath products and free solvable groups // Groups. Complexity. Cryptology. 2011. V. 3. P. 105-120.
63. Романовский Н. С. О некоторых алгоритмических проблемах для разрешимых групп // Алгебра и логика. 1974. Т. 13. №1. С. 26-34.
64. Тимошенко Е. И. Алгоритмические проблемы для метабелевых групп // Алгебра и логика. 1973. Т. 12. №2. С. 232-240.
65. Носков Г. А. О сопряженности в метабелевых группах // Математические заметки. 1982. Т. 31. №4. С. 495-507.
66. Вентура Э., Романьков В. А. Проблема скрученной сопряженности для эндоморфизмов метабелевых групп // Алгебра и логика. 2009. Т. 48. №2. С. 157-173.
67. Baumslag G., Cannonito F., and Robinson D. J. S. The algorithmic theory of finitely generated metabelian groups // Trans. Amer. Math. Soc. 1994. V. 344. P. 629-648.
68. Groves J. R. J. and Miller III C. F. Recognizing free metabelian groups // Illinois J. Math. 1986. V.30. No. 2. P. 246-254.
69. Baumslag G., Mikhailov R., and Orr K. E. A new look at finitely generated metabelian groups // arXiv math. Group Theory. 2012. No. 1203.5431. 17 p.
70. Hall P. Nilpotent groups // Canad. Math. Cong. Summer Sem. Vankuver: University of Alberta, 1957. P. 12-30.
71. Холл М. Теория групп. М.: ИЛ, 1962. 467 с.
72. Stroud P. Ph. D. Thesis. Cambridge, 1966. 121 p.
73. Segal D. Words: notes on verbal width in groups // London Math. Soc. Lect. Notes. V. 361. Cambridge: Cambridge Univ. Press, 2009. 215 p.
74. Алламбергенов Х. С., Романьков В. А. Произведения коммутаторов в группах // Докл. АН Уз. ССР. 1984. Т. 4. С. 14-15.
75. Jones J. Universal diophantine equation //J. Symbolic Logic. 1982. V. 47. No. 3. P. 549-571.