Наука и Образование
МГТУ им. Н.Э. Баумана
Сетевое научное издание
ISSN 1994-0448
Наука и Образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2014. № 10. С. 70-101.
Б01: 10.7463/1014.0729483
Представлена в редакцию: 29.06.2014 Исправлена: 06.10.2014
© МГТУ им. Н.Э. Баумана
ХДК 519.40
Односторонние функции, основанные на проблеме дискретного логарифмирования в группах с условиями С(3)-Т(6)
Безверхний Н. В.1'*, Чернышева О. А.1
[email protected] 1МГТУ им. Н.Э. Баумана, Москва, Россия
В данной работе рассматривается возможность создания схемы открытого распределения ключей в группах, копредставление которых удовлетворяет условиям С(3)-Т(6). При этом используются следующие алгоритмы: алгоритм, решающий проблему вхождения в циклическую подгруппу, известную также как проблема дискретного логарифмирования, и алгоритм, решающий проблему равенства слов в данном классе групп. Исследование проводится с использованием геометрических методов комбинаторной теории групп (метода диаграмм над группами). Нашей задачей было построить одностороннюю функцию на группе с условиями малого сокращения С(3)-Т(6) и сравнить сложность её вычисления со сложностью вычисления обратной функции. Исследования показывают, что процедура вычисления обратной функции имеет полиномиальную сложность.
Ключевые слова: односторонняя функция, условия малого сокращения, диаграмма над группой, проблема вхождения в циклическую подгруппу.
Введение
В данной работе исследуется возможность построения односторонней функции, основанной на разрешимости алгебраической проблемы вхождения в циклическую подгруппу, известной также как проблема дискретного логарифмирования, и проблеме равенства слов в группах, удовлетворяющих условиям малого сокращения С(3)-Т(6). Наличие такой функции позволяет говорить о соответствующей схеме открытого распределения ключей. Результаты данного исследования указывают на невозможность построения криптостойкой системы с использованием указанных алгоритмов в данном классе групп.
Исследования проводятся с использованием геометрических методов комбинаторной теории групп, а именно, метода диаграмм над группами, базирующегося на следующих двух утверждениях [1, 2, 3]. Первое — лемма Ван Кампена, утверждающая, что слово равно единице в группе тогда и только тогда, когда существует односвязная диаграмма с граничной меткой, равной этому слову. Второе — лемма о сопряженных элементах группы, утвержда-
ющая, что слова и и V представляют сопряженные элементы данной группы тогда и только тогда, когда существует кольцевая диаграмма с граничными метками, равными и и V 1.
При обмене информацией по открытому каналу используют односторонние функции, прямое вычисление которых должно быть гораздо менее сложным, чем вычисление обратной функции. Нашей задачей было построить одностороннюю функцию на группе с условиями малого сокращения С(3)-Т(6) и сравнить сложность ее вычисления со сложностью вычисления обратной функции.
Как уже говорилось, в данной статье построение односторонней функции базируется на проблеме дискретного логарифмирования в группах с условиями С(3)-Т(6). Надо отметить, что после доказательства в 1997 г. в работе [15] полиномиальной сложности задачи дискретного логарифмирования в мультипликативных группах конечных полей и колец вычетов при ее решении на квантовом компьютере появилась серия исследований по отысканию других сложных математических проблем, которые можно было бы использовать для построения асимметричных криптосистем. При этом мы не встречаем работ, использующих группы с условиями малого сокращения С(р)-Т(д).
Так в 1998-2001 гг. в работах [16, 17, 18, 19] были рассмотрены системы открытого распределения ключей, основанные на проблеме сопряженности в некоммутативных группах: матричных группах и группах кос.
В 2001 г. вышли работы [20, 21], в которых за основу была взята проблема дискретного логарифмирования в группах внутренних автоморфизмов полупрямых произведений групп БЬ(2, Zр) и Zp, СЬ(2, Zр) и Zv.
В 2007 г. в работе [22] была предложена схема, основанная на композиции двух проблем теории групп: проблемы сопряженности и проблемы дискретного логарифмирования.
Более подробную информацию и анализ криптосистем, предложенных в перечисленных работах, можно найти в статье [10].
В дальнейшем мы будем использовать следующие основные обозначения.
т1 = т2 — слово т1 графически равно слову т2;
т1 = т2 — слово т1 равно слову т2;
|т| — длина слова т;
дБ — граница области Б;
дМ — граница карты М;
¿(V) — степень вершины V;
¿(Б) — степень области Б;
1(Б) — число внутренних ребер области Б;
Ем ¿(V) — сумма степеней всех вершин карты М;
Ем ¿(Б) — сумма степеней всех областей карты М;
ЕМ — суммирование по граничным вершинам или областям карты М;
ЕМ — суммирование по внутренним вершинам или областям карты М.
1. Основные понятия комбинаторной теории групп
Образующие элементы и определяющие соотношения. Если дано отображение а символов а, Ь, с, ... в группу С, причем а (а) = д, а(Ь) = Л, а (с) = к, . .., то мы говорим, что (относительно а) а определяет д, Ь определяет Л, с определяет к, .. ., а-1 определяет д-1, Ь-1 определяет Л-1, с-1 определяет к-1, ...
Далее, слово Ж = /1... /п в символах а, Ь, с, . .. определяет элемент д1д2 ... дп, где / определяет д^. Этот элемент обозначают Ш(д, Л, к,...). Пустое слово определяет нейтральный элемент 1 из С. Если слова и и V определяют элементы р и д группы С, то и-1 определяет р-1 и V-1 определяет д-1.
Если каждый элемент группы С определяется некоторым словом в символах а, Ь, ..., то символы а, Ь, . .. называются порождающими или образующими символами (относительно отображения а) группы С, а элементы д, Л, к, .. . — порождающими или образующими элементами группы С.
Если слово Р(а, Ь, с,...) определяет нейтральный элемент 1 группы С, то говорят, что Р(а, Ь, с,...) равно единице в С. Равенство
Р(а, Ь, с,...) = 5(а, Ь, с,...)
называется соотношением, если слово -1 равно единице в С.
Пустое слово и слова аа-1, а-1а, ЬЬ-1, Ь-1Ь, сс-1, с-1с,. .. равны единице в любой группе; их называют тривиально равными единице или тривиальными словами.
Пусть слова Р, ф, Р, . .. равны единице в группе С. Будем говорить, что слово Ж выводимо из слов Р, ф, Р, ..., если Ж можно преобразовать в пустое слово за конечное число шагов, каждый из которых состоит в выполнении одной из следующих операций:
1) вставка одного из слов Р, Р-1, ф, ф-1, Р, Р-1, ... или одного из слов, тривиально равных единице, либо между любыми двумя соседними символами из Ж, либо перед Ж, либо после Ж;
2) вычеркивание из слова Ж части (отрезка) слова Ж, совпадающей с одним из слов Р, Р-1, ф, ф-1, Р, Р-1, . .. или словом, тривиально равным единице.
Всякое слово Ж, выводимое из единичных слов Р, ф, Р, ..., само является единичным, т.е. представляет единичный элемент группы.
Если каждое единичное слово выводимо из единичных слов Р, ф, Р,..., то множество Р, ф, Р,. .. называется множеством определяющих слов группы С относительно порождающих а, Ь, с, . ... Если Р, ф, Р, ... — множество определяющих слов группы С относительно порождающих а, Ь, с, ..., то выражение вида С = (X; Р) называется копредставлением группы С.
Копредставление называется конечно порожденным, если число образующих в нем конечно. Если конечно порожденное копредставление содержит конечное число определяющих слов, то мы называем его конечно определенным.
Каждая группа С обладает копредставлением, которое можно получить, вводя свой порождающий символ для каждого элемента группы С и выбирая в качестве множества определяющих слов все слова в этих образующих, равные единице в С.
Построение группы по образующим и определяющим словам. Слова Ш1 и Ш2 в символах а, Ь, с,.. . называются эквивалентными (Ш ~ Ш2), если Ш1 можно преобразовать в Ш2 за конечное число шагов, каждый из которых состоит в выполнении одной из следующих операций:
1) вставка одного из слов Р, Р-1, Q, Q-1, К, Я-1, ... или одного из слов, тривиально равных единице, либо между любыми двумя соседними символами из Ш, либо перед Ш, либо после Ш.
2) вычеркивание из слова Ш части (отрезка) слова Ш, совпадающей с одним из слов Р, Р-1, Q, Q-1, Я, К-1, .... или словом, тривиально равным единице.
Класс эквивалентности всех слов в символах а, Ь, с, ..., эквивалентных слову Ш, будем обозначать через {Ш}, а слово Ш или любое другое слово, содержащееся в {Ш}, будем называть представителем класса {Ш}.
Умножение классов эквивалентности определяется посредством равенства { Ш1} ■{ Ш2 } = {Ш1Ш2}.
Множество С классов эквивалентности, определяемых отношением ~ на множестве всех слов в символах а, Ь, с,..., является группой относительно умножения, определенного выше. Более того, относительно отображения, которое а переводит {а}, Ь — в {Ь} и т.д. группа С имеет представление (а, Ь, с, ...; Р(а, Ь,с,...), Q(a, Ь,с,...), Я(а, Ь,с,...), ...).
Таким образом, каждому элементу группы соответствует единственный класс эквивалентных слов. Поэтому возникает проблема: представляют ли два данных слова один и тот же элемент группы, или эквивалентны ли два данных слова. Эта проблема называется проблемой равенства или проблемой слов.
Если группы С' и С имеют одно и то же представление, то они изоморфны.
Всякое формальное выражение, имеющее вид представления, на самом деле является представлением некоторой группы.
Таким образом, каждая группа имеет представление, а каждое представление определяет единственную группу.
Следует отметить, что различные представления могут определять одну группу, но не существует алгоритма, определяющего, так ли это для двух заданных представлений. Этому вопросу посвящена проблема изоморфизма групп.
Фундаментальные проблемы Дэна. Выше были сформулированы две алгоритмические проблемы: равенства и изоморфизма. Они относятся к числу фундаментальных проблем Дэна. Пусть группа С определена посредством заданного представления. К фундаментальным проблемам Дэна относят следующие алгоритмические проблемы:
1) проблема слов — для произвольного слова Ж в алфавите образующих группы С выяснить за конечное число шагов, определяет ли Ж единичный элемент в С;
2) проблема сопряженности — для двух произвольных слов и Ж2 в алфавите образующих С распознать за конечное число шагов, определяют ли и Ж2 сопряженные элементы группы С;
3) проблема изоморфизма — для произвольной группы С', определенной посредством другого представления, выяснить за конечное число шагов, изоморфна ли С' группе С.
Проблема слов была решена для многих классов представлений того или иного специального вида, например, для представлений, в которых есть не более одного определяющего слова (группы с одним соотношением); для представлений, которые конечно порождены и в которых для каждой пары порождающих символов а и Ь среди определяющих соотношений содержится соотношение аЬ = Ьа (абелевы группы); для представлений, в которых каждая пара определяющих слов имеет весьма малое по сравнению с их длинами общее подслово (группы с малыми сокращениями).
Тем не менее существуют конечные представления, для которых проблему слов решить нельзя, т.е. не существует алгоритма, распознающего за конечное число шагов по произвольному слову Ж этого представления, определяет ли Ж единичный элемент. Таким образом, нет процедуры для решения проблемы слов, которая работала бы для каждого представления, или в классе всех групп [4].
Проблема сопряженности еще более трудна, чем проблема слов. В самом деле, сопряженность слова Ж2 пустому слову есть не что иное, как равенство слова Ж2 пустому слову Ж1, поэтому решение проблемы сопряженности дает, в частности, решение проблемы слов. Таким образом, в классах групп с разрешимой проблемой сопряженности разрешима и проблема слов.
Проблема изоморфизма является наиболее трудной из трех проблем Дэна. Обычно ограничиваются рассмотрением представлений для С и С' из некоторого специального класса. В частности, проблема изоморфизма может быть разрешима в следующих случаях: если представления для С и С' не содержат определяющих слов; если представление для С и С' конечно определены и каждое содержит соотношение вида аЬ = Ьа для любой пары своих порождающих символов; если одно из представлений не содержит определяющих слов, а другое имеет единственное определяющее слово.
Граф группы. Графом или одномерным комплексом называют множество из элементов двух типов, называемых вершинами и ребрами, которые удовлетворяют следующим постулатам:
1) каждому ребру Е однозначно сопоставлена упорядоченная пара вершин Р, Р' (не обязательно различных), называемых граничными вершинами Е, при этом вершина Р называется начальной вершиной ребра Е, а Р' — конечной;
2) каждому ребру Е сопоставлено единственное ребро Е-1 отличное от Е (называемое обратным для Е), такое, что (Е-1)-1 = Е;
3) если Е начинается в Р и заканчивается в Р', то Е-1 начинается в Р' и заканчивается в Р.
Следует отметить, что в графе вершины Р и Р' могут оказаться соответственно началом (концом) нескольких различных ребер.
В случае, когда граф состоит из одной вершины, являющейся началом и концом всех ребер, граф называется сингулярным.
Два графа Г и Г* называются изоморфными, если существует взаимно однозначное отображение Т вершин и ребер графа Г на вершины и ребра графа Г* соответственно, при котором сохраняются отношения «быть начальной вершиной», «быть конечной вершиной», «быть обратным для».
Любые два сингулярных графа с одинаковым числом ребер изоморфны. Через Бп обозначается сингулярный граф с 2п ребрами: вь е-1, в2, е-1, ..., вп, в--1.
Определим теперь граф Г группы С, заданной на некотором фиксированном множестве образующих aV. В качестве вершин графа Г возьмем элементы группы С.
Ребро графа Г определяется его начальной и конечной вершинами, цветом (т.е. соответствующим ему образующим) и ориентацией (т.е. указанием, в какую сторону относительно его начальной вершины направлена стрелка). Таким образом, ребро полностью определяется тройкой (д1,д2; аV), где д1 и д2 (д2 = д1 ■ аV) — начало и конец ребра соответственно, а„ — соответствующий ему образующий, а е = ±1 характеризует его ориентацию.
Рассмотрим несколько необходимых условий, при которых граф Г будет изоморфен графу группы. Граф группы является связным. Действительно, всякий элемент д Е С определяется произведением д = аЦ аЦ ■ ■ ■ а^. Если д^ = аЦ аЦ ■ ■ ■ аЦ и Е^ = (д^_1,д^; аЦ), то путь Е1Е2 ... Ег связывает 1 с д. Поэтому граф Г, изоморфный графу группы, должен быть связным.
Граф группы имеет раскрашенные и ориентированные ребра; следовательно, граф Г должен допускать возможность раскраски и ориентации ребер. Чтобы сделать это свойство точным, используем сингулярные графы.
Сингулярный граф Бп с 2п ребрами в1, в-1, в2, в-1, . .., вп, в-1 является простейшим примером графа, ребра которого могут быть раскрашены в п цветов и ориентированы. Именно, вV интерпретируется как положительно ориентированное ребро некоторого цвета, а в-1 — как отрицательно ориентированное ребро того же цвета. Вообще граф может быть «раскрашен п цветами и ориентирован», если ассоциировать с каждым из его ребер некоторое ребро вп. Это приводит к следующему определению.
Раскраска в п цветов и ориентация графа Г есть отображение М его ребер в ребра Бп при следующих условиях:
1) для каждой вершины Р Е Г ребра Г, инцидентные Р, взаимно-однозначно отображаются на все ребра из £п;
2) М(Е-1) = (М(Е))-1 для каждого ребра Е е Г.
Первое из этих условие говорит о том, что любой вершине Р из Г инцидентно одно ребро каждого цвета и направления, а второе условие — что цвет Е-1 тот же, что у Е, а его ориентация противоположна.
Очевидно, что граф группы, порожденной п образующими а1, а2,.. ., ап имеет раскраску и ориентацию, а именно, отображение ребер (дм,дл; а^) в вV. Однако не каждый граф, допускающий раскраску и ориентацию, является графом группы.
Если М — раскраска и ориентация графа Г и п = Е1... Ег есть путь в Г, то полагаем М(п) = М(Е1)... М(Ег) и будем говорить, что путь п покрывает путь М(п).
Раскраска и ориентация М графа Г называется правильной, если для любых двух путей п и п' из Г, таких, что М (п) = М (п'), путь п замкнут тогда и только тогда, когда замкнут путь п'.
Пусть Г — связный граф с правильной раскраской в п цветов и ориентацией М. Тогда Г изоморфен графу некоторой группы С с п образующими а1,..., ап. Слова Ш^) в алфавите а1 , . . . , ап взаимно однозначно соответствуют путям в Г с началом в некоторой фиксированной вершине Ро при отображении Ж^) ^ п, где п покрывает Ж^). Единичными словами С являются те слова Р^), которые соответствуют замкнутым путям в Г.
Задача о построении графа группы С по представлению С = (а, Ь, с, ...; Р, ф, Р, ...), очевидно, эквивалентна проблеме слов для этого представления.
Диаграммы над группами. Допустим, что группа С имеет представление С = (X; Р). Пусть Р = (X; ) — свободная группа с базисом X (она не имеет других соотношений, кроме тривиальных), и N — нормальное замыкание множества Р в Р (т.е. подгруппа группы Р, порожденная элементами /г/-1, где / е Р, г е Р). Тогда С = .
Элемент т из Р представляет единицу в фактор-группе С тогда и только тогда, когда т е N. Далее, т е N тогда и только тогда, когда в свободной группе Р он является произведением элементов, сопряженных с элементами множества Р±1: т = с1 • • • сп, где с = МгГги-1, гг или гг-1 лежат в Р. С каждым таким произведением мы свяжем некоторую диаграмму на евклидовой плоскости, содержащую всю существенную информацию о произведении с1 • • • сп.
Пусть Е2 — евклидова плоскость. Если Б С Е2, то через обозначена граница множества 5, через Б — его топологическое замыкание, а через —Б — множество Е2 — Б. Вершина — это некоторая точка в Е2. Ребро — ограниченное подмножество в Е2, гомеоморф-ное открытому единичному интервалу. Область — ограниченное множество, гомеоморфное открытому единичному кругу. Карта М — конечный набор попарно непересекающихся вершин, ребер и областей, удовлетворяющих следующим условиям:
1) если е — ребро из М, то имеются вершины а и Ь (не обязательно различные), такие, что е = е и {а} и {Ь};
2) граница дБ каждой области Б из М связна, причем для некоторых ребер е1, .. ., еп из М имеем дБ = е1 и ... и еп.
Буква М будет использоваться также для обозначения теоретико-множественного объединения своих вершин, ребер и областей. Граница для М будет обозначаться символом дМ. Если е = е и {а} и {Ь}, то говорят, что а и Ь — концы ребра е. Замкнутое ребро — это ребро е вместе с его концами.
Ребро можно направить в любую сторону. Если е — ориентированное ребро, идущее от концевой точки v1 к концевой точке v2, то v1 — начальная вершина этого ребра, а v2 — конечная вершина. Противоположным образом ориентированное ребро, обратное к ребру е, обозначается через е-1 и идет от v2 к v1.
Путь — это последовательность ориентированных замкнутых ребер е1, .. ., еп, такая, что начальная вершина ребра ег+1 — это конечная вершина ребра ег, 1 < г < п — 1. Концы пути — это начальная вершина ребра е1 и конечная вершина ребра еп.
Замкнутый путь, или цикл, — это такой путь, в котором начальная вершина ребра е1 является конечной вершиной ребра еп.
Путь называется приведенным, если он не содержит последовательной пары ребер вида ее-1. Приведенный путь е1.. .еп называется простым, если при г = ] начальные точки ребер ег и е^ различны.
Если Б — область из М с данной ориентацией, то любой цикл минимальной длины, включающий в себя все ребра из дБ, в котором все ребра ориентированы в соответствии с ориентацией области Б, называется граничным циклом этой области. Если М связна и односвязна, то граничный цикл для М — это цикл а минимальной длины, содержащий все ребра из границы для М и не имеющий самопересечений в том смысле, что если ег и ег+1 — последовательные ребра цикла а, такие, что ег оканчивается вершиной V, то е-1 и ег+1 — соседние ребра в циклически упорядоченном множестве без ребер карты М, начинающихся вершиной V.
Диаграммой над группой Б называется ориентированная карта М вместе с функцией Ф, сопоставляющей каждому ориентированному ребру е карты М метку у(е) из Б таким образом, что если е — ориентированное ребро из М, а е-1 — противоположным образом ориентированное ребро, то у(е-1) = ф(е)-1.
Если а — путь в М, а = е1.. .ек, то положим у(а) = ф(е{)... у(ек). Если Б — область из М, то ее меткой называется элемент <р(а), где а — граничный цикл области Б.
Пусть Б — свободная группа с данным базисом. С каждой конечной последовательностью (с1,..., сп) нетривиальных элементов свободной группы Б можно связать диаграмму М(с..., сп), являющуюся ориентированной картой с функцией метки <р со значениями в Б, удовлетворяющей следующим условиям:
1) если е — ребро из М, то у(е) = 1;
2) М связна и односвязна с выделенной вершиной О на дМ, при этом существует граничный цикл е1.. .ег карты М, начинающийся в О и такой, что у(е]) ... у(ег) = с1... сп;
3) если Б — произвольная область из М и е1... е^- — произвольный граничный цикл этой области, то ^(е1)... ^(е^) — циклически приведенная перестановка некоторого сг.
Теорема 1 ([2]). Если Р — свободная группа, то для произвольной последовательности с1, . .., сп, п > 0, нетривиальных элементов из Р существует диаграмма М(с1,..., сп), удовлетворяющая условиям 1 -3.
Теорема 2 ([2]). Пусть М — связная односвязная диаграмма с областями Б1, . .., Бт. Допустим, что а — граничный цикл для М, начинающийся в вершине е дМ, и пусть т = <^(а). Тогда существуют метки гг областей и элементы и из Р, 1 < I < т, такие, что
т = («1Г1 и-1) • • • (итГтит1).
Подмножество Р свободной группы Р называется симметризованным, если все элементы из Р приведены и из г е Р следует, что все циклические перестановки элементов г±1 также лежат в Р.
Пусть Р — симметризованное подмножество элементов группы Р. Диаграмма М называется Р-диаграммой, если для любого граничного цикла 5 любой области Б из М имеем
р(5) е Р.
Пусть Р — симметризованное подмножество свободной группы Р и N — нормальное замыкание в Р множества Р. Если т — произвольный элемент из Р, то т е N тогда и только тогда, когда существует связная односвязная Р-диаграмма М, такая, что метка на границе карты М равна т.
2. Группы с условиями малого сокращения
Диаграммы над группами с условиями С(р)-Т(д). Предположим, что г1 и г2 —
различные элементы из Р, такие, что г1 = Ьс1 и г2 = Ьс2. В этом случае элемент Ь называется куском относительно множества Р.
Предположения о малом сокращении состоят в том, что куски — относительно малые части элементов из Р. Обычное условие имеет метрический вид С'(А), где Л — положительное действительное число. Условие С'(А) означает, что если г е Р, г = Ьс, где Ь — кусок, то |Ь| < А|г|.
Тесно связанным с приведенным является неметрическое условие С(р), где р - некоторое натуральное число. Оно означает, что никакой элемент из Р не является произведением менее чем р кусков.
Условие Т(д) означает следующее. Пусть 3 < Л < д. Предположим, что г1, .. ., г^ — элементы из Р, такие, что последовательные элементы гг, гг+1 не являются взаимно обратными. Тогда по крайней мере одно из произведений г1г2, . .., г^-1г^, г^г1 является приведенным.
Пусть Р — симметризованное подмножество свободной группы Р. Последовательность с1 , . . . , сп элементов, сопряженных с элементами множества Р, называется минимальной
R-последовательностью, если произведение w = ci • • • cn не может быть записано как произведение менее чем n сопряженный с элементами из R.
Пусть M — произвольная диаграмма над F. Допустим, что D1 и D2 - области из M с общим ребром e Ç dD1 П dD2. Пусть ei1 и $2e-1 — граничные циклы областей D1 и D2 соответственно. Положим ) = f1 и <^(i2) = /2. Диаграмма M называется приведенной, если всегда /2 = /-1.
Теорема 3. [2] Диаграмма M минимальной R-последовательности приведена.
Пусть M — некоторая карта. Граничной вершиной (соответственно граничным ребром) мы будем называть вершину (ребро) из dM. Граничной областью карты M называется такая область D из M, что dD U dM = 0. Таким образом, если D — граничная область карты M, то dD U dM не обязано содержать некоторое ребро, но может состоять из одной и более вершин. Вершина, ребро или область карты M, не являющиеся граничными, называются внутренними.
Пусть v — вершина карты M. Степень d(v) вершины v — это число ориентированных ребер с начальной вершиной v. Если оба конца некоторого ребра e совпадают с v, мы считаем e дважды. Если D — область из M, то степень d(D) области D есть число ребер в граничном цикле для D. Символ i(D) обозначает число внутренних ребер из D, причем снова ребро, встречающееся в граничном цикле для D дважды, считается два раза.
Следующая лемма дает геометрическую интерпретацию условий C(p) и T(q).
Теорема 4 ([2]). Пусть R — симметризованное множество элементов свободной группы F и M — приведенная R-диаграмма. Тогда верны следующие утверждения:
1) если R удовлетворяет условию C(k), то каждая область D из M, такая, что dD U dM не содержит ребер, имеет степень d(D) > k;
2) если R удовлетворяет условию T (m), то каждая внутренняя вершина v карты M имеет степень d(v) > m.
Пусть p и q — такие натуральные числа, что 1/p + 1/q = 1/2. Хорошо известно, что единственными парами такого вида являются (3, 6), (4,4) и (6, 3). Если M — непустая карта, все внутренние вершины которой имеют степень не менее p, а все области имеют степень не менее q, то она будет называться [p, q]-картой. Если M — непустая карта, все внутренние вершины которой имеют степень не менее p, а все внутренние области имеют степень не менее p, то она будет называться (p, q)-картой.
Знаки суммирования будут означать суммирование по вершинам или областям карты M. Так, d(v) есть сумма степеней всех вершин карты M, а d(D) — сумма степеней всех областей карты M. Обозначение * будет употребляться для суммирования по граничным вершинам или областям, а ° — суммирование по внутренним областям или вершинам. Таким образом, * d(v) — сумма степеней всех граничных вершин карты M, а ° d(D) — сумма степеней всех внутренних областей. В случае необходимости будет добавляться индекс, именующий карту, о которой идет речь.
Пусть М — произвольная карта. Тогда V будет означать число вершин карты М. Число неориентированных ребер карты М будет обозначаться буквой Е, а число областей этой карты — буквой Б. Символ V* обозначает число граничных вершин карты М, Б* — число граничных областей и Е* — число граничных ребер с учетом кратности. Если М связна и односвязна, то Е* — число ребер в граничном цикле для М. Чтобы получить Е* в общем случае, нужно сложить числа ребер в циклах, необходимых для описания границы карты М.
При исследовании диаграмм над группами с условиями С(р)-Т(д) полезной оказывается следующая формула кривизны. Полагаем, что натуральные числа р и д связаны равенством 1/р +1/д =1/2.
Теорема 5 ([2]). Если М — односвязная [р, д] -карта, содержащая не менее двух вершин,
то
М
р + 2 — ¿(V) д
> р.
'м
Если М - односвязная (д, р)-карта, содержащая более чем одну область, то
м
р + 2 — г(Б) д
> р.
Теорема 6 ([2]). Если М — [р,д]-карта, каждая компонента которой является либо односвязной, либо кольцевой, то
ЕМ < р ЕМ [р — ¿((V)] (1)
У
и
УМ < I ЕМ [р — ¿(V)] (2)
Обозначим через М1 подкарту карты М, получающуюся вычеркиванием всех изолированных вершин. Пусть М — произвольная карта. Граничный слой карты М состоит из всех граничных вершин, ребер, содержащих граничные вершины, и граничных областей карты М.
Для [р, д]-карты М введем обозначение
°(М ) = ЕМ [р — ¿(V)].
Теорема 7 (о площади [2]). Если М1 — односвязная [р, д]-карта, то
Vм < да(М)2. р2
Если М — односвязная (д,р)-карта, то
БМ < д (:ЕМ[р — г(Б)]
2
Теорема 8 ([2]). Пусть F — конечно порожденная свободная группа, R — конечное симметризованное множество элементов группы F и N — нормальное замыкание множества R. Если R удовлетворяет либо условию C(6), либо условиям C(4) и T(4), либо условиям C(3) и T(6), то проблема равенства слов в группе F/N алгоритмически разрешима.
Говорят, что в группе G = (X ; R) разрешима проблема вхождения в циклическую подгруппу, если для любык слов w и v в алфавите X можно вымснить, существует ли такое число n G Z, что слова wn и v представляют один и тот же элемент группы G.
Теорема 9 ([2]). Пусть F — конечно порожденная свободная группа, R — конечное симметризованное множество элементов группы F и N — нормальное замыкание множества R. Если R удовлетворяет либо условию C(6), либо условиям C(4) и T(4), либо условиям C(3) и T(6), то проблема вхождения в циклическую подгруппу в группе G = F/N алгоритмически разрешима. При этом целое число n, для которого выполняется равенство слов wn и v в группе G, может быть вычислено.
Тем самым, в указанный классах групп разрешима проблема дискретного логарифмирования.
В этой статье рассматривается один из трех упомянутый классов групп с условиями C(p)-T(q), а именно, класс C(3)-T(6), поскольку работа с ним оказывается проще, чем в двух других. Это обыясняется тем, что любой кусок в таком классе имеет единичную длину, что и доказано ниже.
Сокращения в (C(3)-T(6))-группах. В группах с условиями C(p)-T(q) длина произвольного куска может быть отлична от единицы. Но если q > 4, то все куски имеют единичную длину [14].
Действительно, предположим, что r1 = abr^, r2 = abr2 — различные определяющие соотношения, где a, b, r1, r2 — непустые слова в алфавите X, и рассмотрим слова из R, обратные к r1, r2, а также их циклические перестановки: u1 = br^a, u2 = a-1 (r2)-1b-1, u3 = br^a, u4 = a-1(r2)-1b-1. Последовательность u1, u2, u3, u4, u1 противоречит условию T(6). Значит, общее начало ab двух определяющих соотношений из R имеет единичную длину.
Будем говорить, что в слове w есть R-сокращение [5, 6, 7], если существует элемент r G R, такой, что:
1) r = r1r2,
2) w = w1w2w3,
3) r1 = w2,
4) слово r2 либо пусто, либо является куском,
5) слова w1r-1, r-1w3 несократимы в свободной группе.
В случае замены слова w равным ему в группе G словом w1r-1 w3 будем говорить, что в w выполнено R-сокращение. R-сокращение в слове w, являющемся степенью некоторого
слова v: w = vs, называется длинным, если |w2| > |v|. Если же |w2| < |v|, то R-сокращение называется коротким.
Если не требуется перечисления всех образующих и определяющих слов, будем писать X = {x1,... xn} и R = {r1,..., rm}, подразумевая при этом, что в X содержатся также x-1, ..., x-1, а в R — все циклические перестановки и инверсии ri, . .., rm.
Пусть у нас имеется группа G = (X; R), где X = {a,b,c}, а R = {abc,acb}. Пусть имеется также слово w = abb. Используя определяющее соотношение r1 = abc, заменяем в слове w подслово ab куском c-1. Получаем w = c-1b. Таким образом, мы выполнили в слове w короткое R-сокращение.
Пусть теперь у нас есть слово w = v2, где v = acb, то есть w = acbacb. Используя определяющее соотношение r2 = acb, заменяем первое вхождение acb в w пустым словом. В данном случае мы выполнили в слове w длинное R-сокращение, так как |acb| = |v|. Если в любой циклической перестановке слова w нет R-сокращений, то слово w называется циклически R-несократимым.
Определим понятие R-сокращения с использованием диаграмм. Также дадим геометрическое определение R-сокращения. Для этого рассмотрим следующие понятия.
Рассмотрим диаграмму M. Область D С M называется дэновской [8], если:
1) 3D П дМ — последовательная часть границы дМ (т.е. 3D П dM = p — подпуть в граничных циклах области D и диаграммы M);
2) i(D) е {0, 1}.
fc
Полосой [8] в диаграмме M называется поддиаграмма П = |J Di со свойствами:
i=1
1) 3Di П 3M = p — последовательная часть границы 3M;
2) 3П П 3M = p — последовательная часть границы 3M;
3) если k = 3, то i(D1) = i(D2) = i(D3) = 2, причем соседние области имеют общее ребро, а все три области полосы имеют общую вершину;
4) если k> 3, k = 2l + 1, то i(D1) = iD) = iD) = iDi+1) = 2, i(D3) = i(D5) = ... = i(D2i-3) = i(D2i-1) = 3, i(D4) = i(De) = i(D2i-4) = i(D2i-2) = 2;
5) 3Di П 3Di+1, i = 1, ..., k — 1, — ребро.
Пусть П — полоса в диаграмме M. Граничным словом области Di С П называется метка пути 3Di П 3M, прочитанная в соответствии с ориентацией области Di. Граничным словом полосы П называется метка пути дП П 3M, прочитанная в направлении, противоположном ориентации границы 3M. Аналогично определяется граничное слово дэновской области.
Будем говорить, что в слове v есть R-сокращение, если существует связная односвязная диаграмма M над копредставлением G = reprXR, в которой существует дэновская область, граничное слово которой является подсловом в v. В слове v есть R-сокращение, если существует связная односвязная диаграмма M над копредставлением G = (X; R), в которой существует полоса П, граничное слово которой является подсловом в v.
Для любого слова т, циклически несократимого в свободной группе и не равного единице в группе С, существует циклически Р-несократимое и Р-несократимое слово т0, сопряженное с т в С.
Действительно, из определений Р-и Ре -сокращений следует, что в результате такого сокращения длина слова строго уменьшается. Поэтому, записав произвольное слово т на окружности С и выполняя в его циклических перестановках Р- и Р-сокращения, получим либо пустое слово, что невозможно, поскольку т = 1 в С, либо непустое слово т0, в циклических перестановках которого нет Р- и Ре -сокращений.
3. Основные понятия криптографии
Можно выделить два разных подхода к защите конфиденциальной информации: ограничение доступа и шифрование. При использовании первого подхода информация не изменяется, а затрудняется доступ к ней, например, требуется знание паролей. При шифровании информация изменяется с использованием известного только законным пользователям способа. Доступ к зашифрованной информации, как правило, не ограничивается.
Криптографическая система (криптосистема, или шифр) состоит в преобразовании сообщения М, которое называется открытым текстом, с помощью шифровальной схемы таким образом, что только законный получатель может обратить это преобразование и восстановить сообщение.
Шифровальная схема обращается к функции шифрования Е, которой кроме открытого текста М требуется также шифровальный ключ К, являющийся параметром, специфическим для каждого преобразования. Функция шифрования определяется алгоритмом, и результат процесса шифрования Е (К, М) = С называется шифрованным текстом или криптограммой. Текст С предается по незащищенному каналу, где противник может рассматривать его, запоминать, работать с ним и заменить его на С'.
Для создания системы обмена конфиденциальной информацией выбирается класс криптоалгоритмов. Обычно полагают, что класс криптоалгоритмов известен и задачей вскрытия системы обмена конфиденциальной информацией является нахождение ключа.
При проведении криптоанализа могут быть выполнены некоторые условия:
1) канал связи доступен;
2) класс криптоалгоритмов известен;
3) фрагмент открытого сообщения и соответствующая ему часть закрытого сообщения известны;
4) по произвольному сообщению можно получить соответствующее ему закрытое сообщение.
Система обмена конфиденциальной информацией называется криптостойкой, если при выполнении всех перечисленных допущений не существует эффективного алгоритма ее вскрытия.
Симметричные криптосистемы. В классической криптографии имеется два основных преобразования открытого текста сообщений вместе с их комбинациями:
1) транспозиции, или перестановки, переупорядочивают группу символов в соответствии с некоторым правилом, не меняя их, т.е. если сообщение М составлено из т блоков, М = В1В2 ... Вт, где каждый блок Вг содержит п символов Вг = Ьг,1Ьг,2 ... Ьг,п, % = 1, 2, ..., т, то шифрованный текст — это С = С1С2 ... Ст, где Сг = Ьг,п(1)Ьг,п(2)... Ьг,п(п) для каждого % =1, 2, ..., т, а п — фиксированная перестановка целых чисел 1, 2, . .., п.
2) подстановки замещают символы открытого текста соответствующими символами из алфавита шифрованного текста (ключ задает отображение), т.е. если сообщение — это М = а1а2 ... ап, то шифрованный текст С = ¡1(а1)^(а2)... /п(ап) определяется с помощью п отображений из алфавита открытого текста в алфавит шифрованного текста.
3) Комбинация транспозиций и подстановок дает шифр подстановки/перестановки.
Асимметричные криптосистемы. Понятия криптосистемы открытого ключа было впервые введено Диффи и Хеллманом в 1976 г.
В традиционной (симметричной) криптографии каждая из переписывающихся сторон должна иметь копию общего секретного ключа, что создает сложнейшую проблему управления ключами. В асимметричных криптосистемах используются два ключа: открытый и секретный.
Открытый ключ может быть опубликован в справочнике наряду с именем пользователя. В результате любой желающий может зашифровать с его помощью свое письмо и послать закрытую информацию владельцу соответствующего секретного ключа.
Чтобы такая система имела право на существование, должен найтись простой метод, позволяющий получать процедуры Е и Б друг из друга. Желательно, чтобы процедуры Е и Б обладали следующими свойствами:
1) если М — открытый текст сообщения, то Е и Б должны быть такими, что Б[Е(М)] = М, т.е. расшифровка зашифрованного текста М дает М.
2) как Е, так и Б могут быть легко вычислены;
3) знание Е не приводит к легкому способу вычисления Б;
4) для каждого сообщения М должно быть Е[Б(М)] = М (это полезно для реализации подписей).
Криптосистемы с открытым ключом основаны на понятии односторонней функции. Если для любого х имеет место соотношение f (д(х)) = х, то функцию д(х) называют обратной функции f (х) и обозначают через f -1(х). Сложность алгоритма вычисления значения f (х) по значению х будем называть сложностью функции f (х). Функция f (х) называется односторонней, если ее сложность существенно меньше сложности обратной ей функции f-1 (х).
Стоит отметить, что в настоящее время не существует функций, односторонность которых доказана.
Односторонние функции. Хорошо известным источником односторонних функций является задача факторизации больших чисел. Это сложная вычислительная задача. Для оценки сложности алгоритма, по которому целое число N может быть разложено на простые множители, часто используют функцию (а, в) = ехр(в(lnN)a(lnlnN)1-а). Если такой алгоритм имеет сложность O(LN(0, в)), то он является полиномиальным. Однако при сложности алгоритма O(LN (1,в)) на его реализацию потребуется уже экспоненциальное время. Таким образом, скорость роста функции LN(а, в) при 0 < а < 1 больше полиномиальной и меньше экспоненциальной. Поэтому про алгоритм со сложностью O(LN(а, в)) при 0 < а < 1 говорят, что он является субэкспоненциальным.
Сложные задачи, связанные с факторизацией (дано число N = pq, но не известен ни один из его простых делителей):
• факторизация — найти делители p и q числа N = pq;
• задача RSA — даны числа C и E, последнее из которых удовлетворяет соотношению НОД(Е, (p — 1)(q — 1)) = 1. Требуется найти такое число m, что mE = C(modN);
• тест на квадратичный вычет — определить, является ли заданное число A полным квадратом по модулю N;
• извлечение квадратных корней по заданному модулю — по данному числу A, удовлетворяющему условию A = x2(modN), вычислить x.
Другой класс односторонних функций связан с дискретным логарифмированием.
Пусть G — конечная абелева группа. Проблема вычисления дискретных логарифмов (ПДЛ) состоит в определении целого числа x, которое при данных A, B G G удовлетворяет соотношению Ax = B.
Для некоторых групп задача ПДЛ довольна проста. Однако, например, в мультипликативной группе конечного поля наилучший из известных алгоритмов решения ПДЛ — это метод квадратичного решета в числовом поле. Сложность вычисления дискретных логарифмов в этом случае оценивается как LN(1/3, c), где c — некоторая константа, зависящая от типа поля.
Для групп, подобных эллиптической кривой, задача дискретного логарифмирования еще более трудна. Сложность алгоритма, реализующего наилучший из доступных в настоящее время методов вычисления дискретных логарифмов, экспоненциальна.
Задачи, связанные с ПДЛ (дана конечная абелева группа G и ее элемент A):
• задача Диффи — Хеллмана — для заданных элементов A G G, B = Ax и C = Ay вычислить D = Axy ;
• проблема выбора Диффи — Хеллмана — для заданных элементов A G G, B = Ax, C = Ay и D = Az требуется определить, является ли z произведением x • y.
Пример протокола открытого распределения ключей. В статье [10] рассматриваются криптосистемы открытого распределения ключей, основанные на композиции двух проблем теории групп: проблемы сопряженности в некоммутативной группе и проблемы дискретного
логарифмирования в ее циклической подгруппе. Разрешимость некоторых из этих проблем в группах с условиями С(р)-Т(д) доказана в работах [5, 6, 7, 9]
В предлагаемых системах для построения общего ключа абоненты А и В выбирают общую неабелеву группу С и ее элемент д достаточно большого простого порядка.
Протокол получения общего ключа выглядит следующим образом.
1. Абонент А выбирает случайно элемент Х1 € С с условием Х^_д = дХ1 и число х1 €
— поле классов вычетов по простому модулю р, элементы которого отождествляются
с числами 0, 1, ..., р — 1), затем вычисляет элемент У1 = Х1дХ1 Х-1 и отправляет его абоненту В.
2. Абонент В выбирает случайно элемент Х2 € С с условием Х2д = дХ2 и число х2 € вычисляет элемент У2 = Х2дХ2Х-1 и отправляет его абоненту А.
3. Абонент А вычисляет К1 = (Х1У2Х-1)Х1 = Х1Х2дХ2Х1Х-1Х-1.
4. Абонент В вычисляет К2 = (Х2У1Х-1)Х2 = Х2Х1дХ1Х2Х-1 Х-1.
Если Х1 и Х2 выбраны так, что Х1Х2 = Х2Х1, то К1 = К2 = К, и К есть общий ключ абонентов А и В.
При выполнении этого протокола возникает техническая проблема выбора коммутирующих между собой и не коммутирующих с д элементов Х1, Х2. Эта проблема преодолевается путем выбора Х1, Х2 степенями одного и того же элемента Н. Тогда вместо случайного выбора Х1, Х2 абоненты А и В выбирают соответственно случайные натуральные числа у1, у2, меньшие порядка элемента Н, и в качестве Х1, Х2 используют соответственно элементы НУ1, НУ2 группы С. При этом элемент Н и числа у1, у2 выбираются так, чтобы Н имел достаточно большой простой порядок, а элементы НУ1, НУ2 не коммутировали с д. Общим секретным ключом будет НУ1+У2дХ1Х2Н~(У1+У2).
4. Схема открытого распределения ключей в группах с условием С(3)-Т(6)
В данной работе рассматривается возможность создания схемы открытого распределения ключей в группах, копредставление которых удовлетворяет условиям С(3)-Т(6). Таким образом, задача заключается в разработке процедуры получения общего секретного ключа с использованием открытого канала связи. Далее этот ключ может использоваться в системах симметричного шифрования.
Участники процесса:
1. Абонент А;
2. Абонент В;
3. Противник Е.
Открытая информация:
1. Группа С = твртХЕ, копредставление которой удовлетворяет условиям С(3)-Т(6).
2. Слово и>, представляющее некоторый элемент в С.
Алгоритм получения секретного ключа:
1. Абонент А выбирает произвольное целое число п е Ъ \ {0} (закрытый ключ), вычисляет открытый ключ К1 = тп и отправляет его абоненту В.
2. Абонент В выбирает произвольное целое число т е Ъ \ {0} (закрытый ключ), вычисляет открытый ключ К2 = тт и отправляет его абоненту А.
3. Абонент А вычисляет секретный ключ К1 = (К2)п = (тт)п.
4. Абонент В вычисляет секретный ключ К2 = (К1)т = (тп)т.
5. В группе С слова К1 и К2 равны и представляют элемент группы С с представителем
тпт = К.
Таким образом, К - общий секретный ключ.
Следует отметить, что если информация о С и т не является общеизвестной, а выбирается, например, абонентом А, то абонент А отправляет абоненту В в качестве открытого ключа К1, С и т.
Задача противника - получить секретный ключ К. Для этого необходимо определить один из закрытых ключей: п или т. Будем считать, что противник пытается вычислить п. Очевидно, что если |т| = р, а |К1| = д, то п = д/р. Таким образом, значение закрытого ключа легко вычисляется по открытому ключу. Поэтому наша задача — провести преобразование тп таким образом, чтобы п нельзя было легко вычислить, т.е. нужно заменить тп некоторым словом V, которое равно тп в группе С. В этом и будет состоять вычисление односторонней функции.
Односторонняя функция для получения открытого ключа. По аналогии с Р- и Р-сокращениями определим следующие понятия. Будем говорить, что в слове т есть Р-удлине-ние, если существует такой элемент г е Р, что:
1) г = г1г2;
2) т = т1т2т3;
3) г1 =
4) слово г1 является куском;
В случае замены слова т равным ему в группе С словом т1г-1т3 будем говорить, что в т выполнено Р-удлинение. Другими словами, если при Р-сокращении подслово исходного слова заменяется буквой, то при Р-удлинении буква исходного слова заменяется подсло-вом определяющего соотношения. И здесь мы пользуемся отмеченным выше свойством представлений с условием Т(д) при д > 4: любая буква является куском. Поэтому существует не меньше двух определяющих соотношений, с помощью которых можно выполнить Р-удлинение в любой букве данного слова.
Будем говорить, что в слове т есть Р3 -удлинение, если существуют такие элементы г1, г2, г3 е Р, что:
1) п = гпг12г1з;
2) г2 = г21г22г23;
3) Гз = Г31Г32Г33;
4) w = w1w2w3w4;
5) Г13 = w-1;
6) Г32 = w-1;
7) Г23 = r-21;
8) Г22 = r-31;
9) слова r12, r13, r22, r23, r32, r33, w2, w3 являются кусками;
В случае замены слова w равным ему в группе G словом w1r11r21r31w4 будем говорить, что в w выполнено R3-удлинение.
Очевидно, что обратным преобразованием к R-удлинению будет R-сокращение, а к R3-удлинению - R-сокращение с построением полосы из 3-х областей.
Для получения открытого ключа K1 была предложена следующая функция F (w, n). На вход F(w, n) подается слово w и закрытый ключ n. Если n < 0, то F(w, n) = F(w-1, |n|). Функция F(w,n) возвращает слово v = wn, при этом в каждом вхождении слова w в v проводятся следующие преобразования:
1) вставка между k-й и (к + 1)-й позициями тривиального слова XiX-1, где Xi Е X выбирается случайным образом;
2) R-удлинение в k-й позиции;
3) свободное сокращение в k-й и (к + 1)-й позициях, если такое сокращение возможно;
4) R-сокращение в позициях от к до к + j, j = | r | — 2, где r Е R — определяющее соотношение, которое используется для сокращения, если такое сокращение возможно; если же такое сокращение провести невозможно, то выполняется преобразование 5;
5) вставка между k-й и (к + 1)-й позициями определяющего слова ri Е R, которое выбирается случайным образом;
6) R3-удлинение в k-й и (к + 1)-й позициях, если такое удлинение возможно.
Заметим, что можно было добавить еще два преобразования: R-сокращение и R-удлинение с помощью к соотношений при к > 3, в отличие от преобразования 6, в котором к = 3. Но это сильно усложнило бы и вычисление прямой функции.
Количество преобразований, их вид, а также позиция к в слове w выбираются случайным образом. Чтобы сделать процесс еще менее детерминированным, будем при каждом преобразовании использовать случайную перестановку множества R.
Ясно, что преобразования 1, 2 и 5 можно выполнить всегда. Причем, количество различных преобразований 1 равно числу образующих в X, количество различных преобразований 5 равно числу определяющих соотношений в R (вместе с циклическими перестановками и инверсиями). Так как любая буква в слове — это кусок, то существует, как минимум, два определяющих соотношения, которые можно использовать для R-удлинения в любой позиции слова w.
Понятно, что функция F(w, n) должна удовлетворять следующим условиям:
1) на выходе должно получаться слово v = wn в свободной группе;
2) слово V должно быть таким, что V = и>п, т.е. слово V не должно представлять собой степень п некоторого слова т1, где т1 = т в группе С;
3) слово V должно быть равно слову тп в группе С;
4) не должно существовать простого алгоритма, который позволял бы по V вычислить п или привести V к слову тп, по которому уже легко определить п.
Условие 1, очевидно, выполняется, так как преобразования 1-4, 6 выбираются с равной вероятностью, а вероятность того, что возможны три из них равна единице. К тому же преобразования применяются ко всем вхождениям т в V. Поэтому вероятность того, что во всех вхождениях т в V будет произведено одно и более преобразований, зависит от их возможного количества. Для того, чтобы сделать случайным изменение длины каждого вхождения т в V, количество р преобразований в каждом т было решено также сделать случайным числом (в данной работе рассматривалась функция с р е [0.5|т|, 2|т|]; как показали эксперименты, этого значения достаточно для выполнения условий 1 и 2).
Условие 2 также выполняется, так как в силу того, что вид преобразований, их количество в каждом т и, главное, позиция в слове т, где каждое преобразование выполняется, выбираются случайно, то ситуация, при которой во всех п вхождениях т в V будут произведены одинаковые преобразования, практически невозможна.
Условие 3 выполняется, так как ни одно преобразование из 1 - 6 не приводит к нарушению равенства слова V слову тп в группе С.
Чтобы определить, выполняется ли условие 4, проанализируем возможные действия противника. Понятно, что, так как длина каждого вхождения т в V меняется случайно и, следовательно, |V| не зависит от |т|, то п по V определить нельзя. Значит, единственное, что может сделать противник — попытаться восстановить слово тп из V.
Пусть противник знает слово т и слово V = тп. Чтобы получить слово тп из слова V, необходимо провести преобразования, обратные тем, которые проводит функция Р(т,п): свободные сокращения, Р-сокращения и Р3-сокращения (т.е. Р-сокращения с построением полосы из трех областей). Так как прямые преобразования проводятся случайным образом, противник вынужден провести все указанные выше сокращения в слове V. Но в самом слове т могут быть данные сокращения, поэтому целесообразно сначала привести т к несократимому виду Итак, у противника имеется слово т1 = т, в котором нет указанных сокращений. Его задача — получить слово и>п из слова V. Для этого он в слове V проводит указанные три типа сокращений. Но так как Р(т, п) меняет слово случайно, а противник проводит сокращения слева направо по длине слова, то велика вероятность того, что сокращения будут произведены не там, где до этого были сделаны удлинения (стоит отметить, что в данном случае свободные и Р-сокращения, которые делает функция Р(т, п), не играют роли) и тп не будет восстановлено.
Оценка сложности ^(эд, п). Оценим сложность процедуры получения открытого ключа. Так как Р(т, п) включает в себя операции, различные по сложности, определим
сначала наиболее сложную операцию и по ней оценим сверху сложность Б(т,п). Сложность операции в данном случае будем измерять в количестве сравнений букв, необходимых для проведения преобразования.
Наименее сложными являются преобразования 1 и 5, которые не требуют проведения сравнения букв. Таким образом, считаем, что Т1 = Т5 = 0(1).
Следующим по сложности идет преобразование 3 (свободное сокращение). Данная операция требует не более двух сравнений: чтобы узнать, есть ли в к-й позиции свободное сокращение, нужно сравнить хк+1 с х-1 и хк-1 с х-1. Следовательно, Т3 = 0(1).
Сложность операции 2 (Я-удлинение) зависит от количества пп элементов в Я и требует на каждом этапе поиска подходящего определяющего соотношения одного сравнения. Так как в Я имеется как минимум два определяющих соотношения, имеющих общее начало (в виде одной буквы), то в худшем случае необходимое определяющее соотношение будет найдено на (пп — 1)-м этапе поиска. Следовательно, для Я-удлинения Т2 = 1 • (пп — 1). (Следует отметить, что здесь, как и во всей работе, предполагается линейная процедура поиска.)
Наиболее сложными являются преобразования 4 (Я-сокращение) и 6 (Я3--удлинение). Преобразование 6 заключается в поиске трех определяющих соотношений (следовательно, имеется зависимость от пп), для двух из которых проводится сравнение одной буквы, для третьего — двух букв. Так как в Я имеется как минимум два определяющих соотношения, начинающихся на одну букву, а каждое двухбуквенное начало встречается в Я только один раз, то Т6 = 1 • (пп — 1) + 1 • (пп — 1) + 2 • пп = 3 • пп — 2.
Сложность Я-сокращения оценивается как Т4 = (пгтах — 1) • пп, где п^х = тах |г|.
тЕп
В дальнейшем сложность будет оцениваться в количестве построенных областей.
Итак, пусть функция Б(т,п) производит в каждом вхождении т в тп в среднем р преобразований. Тогда всего преобразований в слове тп будет р' = пр, где р меняется от 0.5|т| до 2|т|. Будем считать, что все преобразования — Я-сокращения. Тогда оценка сверху для сложности Б(т,п) составляет Т,0 = 2|т|п. Так как считаем, что |т| ^ п, получаем Т,0 = 0(п). Таким образом, сложность получения открытого ключа К1 линейно зависит от закрытого ключа п.
Получение закрытого ключа п противником. Противник получает по открытому каналу слово V = Б(т,п) и слово т. Чтобы узнать закрытый ключ, ему нужно решить уравнение относительно п: тп = V в группе С или, что то же самое, wnv~1 = 1 в группе С. Для этого противник должен последовательно возводить т в степень к, где к = 1,п (будем считать, что п > 0) и решать проблему равенства слов в группе С.
Для решения проблемы равенства слов в группах с условием С(3)-Т(6) используются процедуры циклических Я, Я-сокращений: единственным циклически Я, Я-несократимым словом, равным единице в группе С, является пустое слово [8]. Таким образом, после выполнения во всех циклических перестановках произвольного слова х всех Я, Я-сокращений
получается либо циклически Я, Я-несократимое слово х1 (здесь |х11 > 1) при х = 1 в С, либо пустое слово, если х = 1 в группе С.
Следовательно, противник, выполняя в слове ткV-1 все циклические Я, Я-сокращения, будет получать непустые циклически Я, Я-несократимые слова пока к = п; когда к станет равно п он получит единицу.
Получение оценки для п. Чтобы оценить сложность вычисления секретного ключа п, получим оценку сверху для п. Рассмотрим методику получения верхней оценки числа п с использованием вероятностных методов.
Оценка сверху получается исходя из следующего предположения: считаем, что вероятность того, что |V| > |тп| гораздо больше вероятности |V| < |тп|. Докажем это, оценив вероятность следующих событий:
• под действием функции Б(т,п) при %-м преобразовании в к-й позиции произошло удлинение слова;
• под действием функции Б(т,п) при %-м преобразовании в к-й позиции произошло сокращение слова;
• под действием функции Б(т, п) при %-м преобразовании в к-й позиции длина слова не уменьшилась.
Среди шести преобразований, выполняемых функцией Б(т,п), имеется два преобразования сокращения и четыре преобразования удлинения. Выбор между пятью преобразованиями происходит с равной вероятностью.
Вероятность возможности Я-удлинения равна вероятности возможности вставки тривиального слова и равна 1. Поэтому вероятности преобразований 1 и 2 в к-й позиции составляют, соответственно,
1 1 1 1 р1 = 5 ^ и р2 = 5 ^ 1 = 5.
Не будем оценивать вероятность возможности провести в к-й позиции Я3-удлинение. Заметим только, что при преобразовании 6 длина слова либо увеличивается, либо не изменяется. Считаем, что р6 = -.
5
Чтобы в к-й позиции произошло свободное сокращение, нужно, чтобы выполнялось хотя бы одно из двух равенств: хк+1 = х-1 или хк-1 = х-1. Если |Х| = пХ, то число возможных различных двухбуквенных сочетаний в позициях к и к +1 составляет пХ, из которых пХ сочетаний вида х^х-1. Заметим, что к может быть равно |т| или 1, т.е. в этом случае хк — последняя или первая буква в слове. Таким образом, вероятность возможности свободного сокращения в позициях к и к + 1 равна вероятности возможности свободного сокращения в позициях к — 1 и к и составляет
пХ 1
р =
пХ + пх пх + 1
Вероятность свободного сокращения в k-й позиции составляет
2
p3
1
2p • 7
5 5(nx + 1)
Оценим вероятность возможности R-сокращения в k-й позиции. Пусть |X| = nx, |R| = nR. Для простоты будем считать, что для всех r G R справедливо |г^| = 3. Для R-со-кращения необходимо выполнение следующего условия: (3r G R)(r = r^2 Л xk+1 = ri). Число различных двухбуквенных сочетаний (с учетом возможности k = |w|) составляет nX + nx, число двухбуквенных сочетаний, в которых возможно провести R-сокращение, равно nR. Следовательно, вероятность возможности R-сокращения в k-й позиции составляет
p
nR
Пусть теперь |r^| = s + 1. Тогда
p=
nX + nx '
nR
nX + nX-1 + ... + Пх '
Следует отметить, что при росте s числитель растет линейно (так как R содержит все циклические перестановка каждого r^-го определяющего соотношения), а знаменатель — экспоненциально. Таким образом, при увеличении длины определяющих соотношений уменьшается вероятность возможности выполнить R-сокращение в k-й позиции.
Таким образом, максимальная вероятность R-сокращения в k-й позиции составляет
1
p4
nR
5 П
1
+ пП™™-2 + ... + nx
где nrmin = min |r|.
Если R-сокращение невозможно, то в k-й позиции выполняется преобразование 5. Таким образом, минимальная вероятность вставки определяющего соотношения между и xk+1 составляет
p5 = 1 f1 - n ■-1
5 \ пП™ 1
nR
nrmin 2
+ пП™
+ ... + Пх
Обозначим через Р^ол вероятность того, что |т'| < |т|, через Р1опё вероятность того, что |т'| > |т|, а через Р10пё+С0п81 вероятность |т'| > |т|; здесь т — исходное слово, т' — слово т после ¿-го преобразования. Тогда
р = + + == (3__nR
long 1 2 5 5 ^ пП™-1 + nnrmin-2 + ... + nx,
Plong+const = Plong + p6 + — p^ = 1 —
nR
2
12
Pshort = p3 + p4 = ~ I -—Г +
пП™ 1 + пП™ 2 + ... + nx nx + 1 /
nR
5 y nx + 1 пП™ 1 + пП™ 2 + ... + nx
Рассмотрим пример группы G = (X ; R), для которой
X = |а, b, c, a-1, b-1, c-1},
R = \cab,, bca, abc, b-1a-1c-1, a-1c-1b-1, c-1b-1a-1 ,
bac, cba, acb, c-1a-1b-1, a-1b-1c-1, b-1c-1a-1^.
Подсчитаем Piong+const и Pshort:
_1 f 12 2 \ 31 1 f 2 12 \ 4
Plong+const = К ( 5 — a.2 \ a — 7Г~Г~\ I = QË, Pshort = " ' ~ ■ - +
5\ 62 + 6 6 + 1) 35' 5 \6 + 1 62 + 6) 35'
Видно, что вероятность события Б(т, п) = V > тп гораздо больше, чем Б(т, п) = V < тп. Поэтому за оценку сверху можно принять
М
птах 1 Т.
| т|
Таким образом, для нахождения секретного ключа п надо проверять равенства в группе С для всех к = 1, птах вида: ткV-1 = 1.
Теперь можно оценить сложность восстановления секретного ключа п по открытой информации, включающей в себя значения т и V. Но отложим решение этой задачи до следующего пункта, а пока попытаемся получить оценки числа п другим способом. Будем анализировать диаграммы равенства слов в группе С с условиями С(3)-Т(6).
Воспользуемся следующим результатом из [7].
Теорема 10. Если в приведенной односвязной Я-диаграмме М с границей дМ = а и т слова а) и р(т) Я-, Я-несократимы, то существует константа С > 0, для которой
Иа)|< СИт)|, Ит)|< СЫа)1
В статье [6] приводится алгоритм построения нормальной формы слова т, сопряженной в группе С с т£,е € {1, 2}, такой, что все степени слова Я-, Я-несократимыми.
Сравнивая длины слов тп и тЩ, замечаем, что из несократимости последнего следует, что |тп| > |тп|, поскольку, как говорилось выше, при выполнении Я-, Я-сокращений длина слова строго уменьшается. Если же окажется, что слово тп несократимо, то к нему применимы неравенства, аналогичные приводимым ниже для т^Щ.
Действительно, в статье [7] доказано, что если Я-, Я-несократимые слова и, V сопряжены
в (С(3)-Т(6))-группе С, то М < |V| < 9|и|.
9
Итак, в группе С выполнены соотношения тЩ ~ тп = V, где V получено прямым вычислением односторонней функции. Заменим слово V равным ему в группе С несократимым словом V!:). Тогда существует число С, для которого выполнены следующие неравенства:
К| < СЫ < СМ
откуда
п < СМ < СМ
|то| |то| '
Сказанное выше позволяет записать и обратные неравенства:
С>«1 > Ы п > &
Таким образом,
I V, 1 С 1 V» |
С | то | | то |
Заметим, что в приведенных здесь оценках предполагается, что | тп | = п|т0|.
Сложность получения п. Сложность будем измерять количеством не дэновских, а просто областей: это позволит учитывать сложность Р-сокращений.
Зная границы, в которых заключено число п, проверяем в группе С равенства
и>к = v0, к е
Ы СЫ
С |то|' |то|
По теореме о площади число областей в диаграмме равенства тк = v0 не превышает О((к|т0| + | v01)2). Легко проверить, что суммирование таких оценок в указанных выше пределах для к приводит к верхней оценке сложности порядка О(^0|3).
Таким образом, сложность получения закрытого ключа п оценивается сверху полиномиальной функцией от п: Тп = 0(п3).
Заметим, что эта оценка не изменится, если учесть сложность приведения слов т, V к несократимому виду т0, v0, соответственно, поскольку эта процедура в соответствии с теоремой о площади оценивается квадратичной функцией длины исходных слов т и V.
Требования к группе С и слову эд. Предполагается, что слово т выбрано случайным образом. Оно не должно удовлетворять требованиям свободной или Р-, Р-несократимости. Однако все же два требования к нему предъявляются:
• т =1 в группе С;
• слово т должно представлять в группе С элемент бесконечного порядка.
Необходимость выполнения первого требования очевидна, так как если т = 1 в группе С, то тп =1 в С при всех п. Значит, единичными будут как открытые ключи К1 и К2, так и секретный ключ К.
Второе требование также является необходимым, поскольку если т представляет элемент конечного порядка, то =1 для некоторого р. Следовательно, противнику нужно будет найти не п, а остаток от деления п на р, что является гораздо более простой задачей, если учесть, что само р может быть найдено следующим образом.
В статьях [12, 13] доказано, что слово т в алфавите Х тогда и только тогда представляет элемент конечного порядка в группе С с условиями С (3)-Т (6), когда т = Vя ив множестве Я существует определяющее соотношение вида г = иь, причем слова и, V сопряжены в С. Следовательно, нужно либо организовать проверку конечности порядка т, либо потребовать, чтобы в Я не было определяющих соотношений, которые представлены в виде степени какого-либо слова, что предпочтительнее.
Мы считаем, что группа С, используемая для шифрования, должна удовлетворять только условиям С(3)-Т(6). Однако, хотелось бы работать в таких группах, которые были бы оптимальны с точки зрения криптостойкости системы. Поэтому проанализируем, как ко-представление группы влияет на следующие факторы:
• сложность получения открытого ключа;
• стойкость открытого ключа к обратным преобразованиям;
• длина открытого ключа;
• сложность взлома системы, измеренная в количестве областей;
• временная сложность вскрытия системы.
Любая группа полностью определяется своим копредставлением (Х; Я). Поэтому параметры группы, которые могут влиять на перечисленные факторы, — это мощность алфавита |Х|, количество определяющих соотношений в симметризованном множестве |Я| и длина определяющих соотношений |г^|. Нужно отметить, что между этими параметрами существует связь. Так, от |Х| зависит либо |Я|, либо |г^|, так как каждый элемент х € Х должен встречаться в определяющих соотношениях как минимум два раза. Количество определяющих соотношений зависит от их длины, так как |Я| включает в себя все циклические перестановки определяющих слов. Поэтому будем рассматривать влияние только |Я| и |г^|, считая, что данные два параметра зависят от | Х| .
Временная сложность получения открытого ключа возрастает как с увеличением |Я|, так и с увеличением |г^|, поскольку возрастает временная сложность Я-сокращений и Я3-удли-нений. При этом сложность, измеренная в областях, не меняется.
Длина открытого ключа увеличивается при увеличении |г^|, так как при Я-удлинении, И3 -удлинении и вставке определяющего соотношения слово т получает большее приращение. Данный факт положительно влияет на криптостойкость алгоритма, но затрудняет дальнейшее использование такого ключа. Увеличение |Я| на данный фактор влияет неоднозначно: с одной стороны, увеличивается вероятность Я3-удлинения, с другой стороны, также увеличивается вероятность Я-сокращения.
Криптостойкость открытого ключа к обратным преобразованиям характеризуется вероятностью того, что после свободных сокращений, Я- и Я3-сокращений ключ не будет представлять тп (что позволило бы противнику избежать процедуры решения проблемы слов при взломе). На данный фактор положительно влияет | Я| .
Сложнее оценить влияние |г | на сложность вскрытия системы (криптостойкость алгоритма). Так, сложность получения п имеет верхнюю оценку, полиномиально зависящую
от длины открытого ключа, которая возрастает при возрастании | г |. Временная сложность построение самих областей также увеличивается при возрастании |г^|. В то же время, сложность, измеренная в областях, при увеличении |г^| может уменьшаться, так как за одно Р- и Р-сокращение слово будет сокращаться на большее число букв.
Сложность ^-сокращений достигает максимума, когда | г^ | = 3 для всех г е Р, так как именно в этом случае каждая полоса сокращает слово ровно на одну букву.
Заключение
Оценка временной сложности носит субъективный характер. Понятно, что временная сложность вскрытия будет зависеть как от производительности вычислительной системы, так и от эффективности применяемых алгоритмов. В данной работе мы ограничились оценкой сложности, выраженной в количестве областей.
Был определен общий вид схемы открытого распределения ключей, основанной на проблеме равенства слов в группах с условиями С(3)-Т(6). Для этой схемы была предложена процедура генерирования открытого ключа, характеризующаяся линейной сложностью. Также была получена оценка криптостойкости алгоритма получения секретного ключа и исследовано влияние различных факторов на данный параметр.
Исследования показывают, что задача, на которой основана разработанная схема, имеет полиномиальную сложность решения. Поэтому криптостойкость такой системы недостаточна для обеспечения необходимого уровня защиты информации. Однако, надежность можно повысить, комбинируя проблему слов с другими алгебраическими проблемами: вхождения в циклическую подгруппу, сопряженности.
Список литературы
1. Магнус В., Каррас А., Солитэр Д. Комбинаторная теория групп: пер. с англ. М.: Наука, 1974. 456 с.
2. Линдон Р., Шупп П. Комбинаторная теория групп: пер. с англ. М.: Мир, 1980. 448 с.
3. Ольшанский А.Ю. Геометрия определяющих соотношений в группах. М.: Наука, 1989. 448 с.
4. Новиков П.С. Об алгоритмической неразрешимости проблемы тождества слов в теории групп // Тр. Математического ин-та АН СССР. 1955. Т. 44. С. 1-144.
5. Безверхний Н.В. Разрешимость проблемы вхождения в циклическую подгруппу в группах с условием С(6) // Фундаментальная и прикладная математика. 1999. Т. 5, №1. С. 39-46.
6. Безверхний Н.В. Нормальные формы для элементов бесконечного порядка в группах с условиями С(3)-Т(6) //Известия ТулГУ Естественные науки. 2010. Вып. 1. С. 6-25.
7. Безверхний Н.В. Проблема сопряженного вхождения в циклическую подгруппу в группах с условиями C(3)-T(6) // Дискретная математика. 2012. Т. 24, вып. 4. С. 27-46.
8. Безверхний В.Н. О нормализаторах элементов в (C(p)-T(д))-группах // Алгоритмические проблемы теории групп и полугрупп: межвуз. сб. науч. трудов. Тула: Изд-во ТГПУ им. Л.Н. Толстого, 1994. С. 4-58.
9. Безверхний В.Н., Паршикова Е.В. Решение проблемы вхождения в циклическую подгруппу в группах с условиями C(4)-T(4) // Алгоритмические проблемы теории групп и полугрупп: межвуз. сб. науч. трудов. Тула: изд-во ТГПУ им. Л.Н. Толстого. 2001. С. 120-139.
10. Глухов М.М. К анализу некоторых систем открытого распределения ключей, основанных на неабелевых группах // Математические вопросы криптографии. 2010. T. 1, №4. С. 5-22.
11. Паршикова Е.В. Проблема слабой степенной сопряженности в группах с условием C(4)-T(4) // Алгоритмические проблемы теории групп и полугрупп: межвуз. сб. науч. трудов. Тула: Изд-во ТГПУ им. Л.Н. Толстого, 2001. С. 179-185.
12. Безверхний Н.В. О кручении о и разрешимости проблемы вхождения в циклическую подгруппу в группах с условием C(6) //М., 1995. Деп. в ВИНИТИ, №2033-В95.
13. Bogley W.A., Pride S.J. Aspherical relative presentations // Proc. of Edinburg Math. Soc. Ser. 2. 1992. Vol. 35, no. 1. P. 1-39. DOI: 10.1017/S0013091500005290
14. Gersten Sh., Short H.B. Small cancellation theory and automatic groups // Inventiones Mathematicae. 1990. Vol. 102, iss. 1. P. 305-334. DOI: 10.1007/BF01233430
15. Shor P.W. Polynomial-time algorithm for prime factorization and discrete logarithms on quantum computer // SIAM Journal on Computing. 1997. Vol.26, no. 5. P. 1484-1509. DOI: 10.1137/S0097539795293172
16. An algebraic method for public key cryptography // Mathematical Research Letters. 1999. Vol. 6, no. 3. P. 287-291. DOI: 10.4310/MRL.1999.v6.n3.a3
17. Ko K.H., Lee S.J., Cheon J.H., Han J.W., Kang J., Park C. New Public-Key Cryptosystem Using Braid Groups // In: Advances in Cryptology — CRYPTO 2000. Springer Berlin Heidelberg, 2000. P. 166-183. (Ser. Lecture Notes in Computer Science; vol. 1880). DOI: 10.1007/3-540-44598-6,10
18. Yamamura A. Public-key cryptosystems using the modular group // In: Public Key Cryptography. Springer Berlin Heidelberg, 1998. P. 203-216. (Ser. Lecture Notes in Computer Science; vol. 1431). DOI: 10.1007/BFb0054026
19. Yamamura A. A Functional Cryptosystem Using a Group Action // In: Information Security and Privacy. Springer Berlin Heidelberg, 1999. P. 314-325. (Ser. Lecture Notes in Computer Science; vol. 1587). DOI: 10.1007/3-540-48970-3_26
20. Paeng S.-H., Ha K.-C., Kim J.H., Chee S., Park C. New Public Key Cryptosystem Using Finite Non Abelian Groups // In: Advances in Cryptology — CRYPTO 2001. Springer Berlin Heidelberg, 2001. P. 470-485. (Ser. Lecture Notes in Computer Science; vol.2139). DOI: 10.1007/3-540-44647-8-28
21. Paeng S.-H., Kwon D., Ha K.-C., Kim J.H. Improved public key cryptosystem using non abelian groups. Cryptology ePrint Archive: Report 2001/066. Available at: http://eprint.iacr.org/2001/066, accessed 01.09.2014.
22. Sakalauskas E., Tvarijonas P., Raulinaitis A. Key agreement protocol (KAP) using conjugacy and discrete logarithms problems in group representation level // Informatica. 2007. Vol. 18, no. 1. P. 115-124.
Science and Education of the Bauman MSTU, 2014, no. 10, pp. 70-101.
DOI: 10.7463/1014.0729483
Received: 29.06.2014
Revised: 06.10.2014
© Bauman Moscow State Technical University
One-way functions based on the discrete logarithm problem in the groups meeting conditions C(3)-T(6)
1 it 1 Bezverkhniy N. V. ' , Chernisheva O. A. * [email protected]
1Bauman Moscow State Technical University, Moscow, Russia
Keywords: one-way functions, small cancellation conditions, diagrams in groups, membership problem for cyclic subgroups.
In this work we are consider a possibility to create schemes of open key distribution in the groups meeting conditions C(3)-T(6). Our constructions use the following algorithms.
1. The algorithm that solves the membership problem for cyclic subgroups, also known as the discrete logarithm problem.
2. The algorithm that solves the word problem in this class of groups.
Our approach is based on the geometric methods of combinatorial group theory (the method of diagrams in groups).
In a cryptographic scheme based on the open key distribution one-way functions are used, i.e. functions direct calculation of which must be much easier than that of the inverse one. Our task was to construct a one-way function using groups with small cancelation conditions C(3)-T(6) and to compare the calculation complexity of this function with the calculation complexity of its inverse.
P.W. Shor has shown in the paper that there exists a polynomial algorithm that can be implemented in a quantum computer to solve the discrete logarithm problem in the groups of units of finite fields and the rings of congruences mod n. This stimulated a series of investigations trying to find alternative complicated mathematical problems that can be used for construction of new asymmetric cryptosystems. For example, open key distribution systems based on the conjugacy problem in matrix groups and the braid groups were proposed.
In the other papers the constructions used the discrete logarithm problem in the groups of inner automorphisms of semi-direct products of SL(2, Z) and Zp and GL(2, Zp) and Zp. groups. The paper of E. Sakalauskas, P. Tvarijonas, A. Raulinaitis proposed a scheme that uses a composition of two problems of group theory, namely the conjugacy problem and the discrete logarithm problem.
Science ^Education
of the Bauman MSTU
Our results show that the scheme that we propose is of polynomial complexity. Therefore its security is not sufficient for further applications in communications. However the security can be improved through combining the word problem with other algebraic problems such as the problem of the membership in the cyclic subgroups and the conjugacy problem.
References
1. Magnus W., Karras A., Solitar D. Combinatorial Group Theory: Presentations of Groups in Terms of Generators and Relations. John Wiley and Sons, Inc., New York-London-Sydney, 1966. 444 p. (Russ. ed.: Magnus W., Karras A., Solitar D. Kombinatornaja teorija grupp. Moscow, NaukaPubl., 1974. 456 p.).
2. Lyndon R., Schupp P. Combinatorial group theory. Springer-Verlag, Berlin, 1977. (Russ. ed.: Lyndon R., Schupp P. Kombinatornaja teorija grupp. Moscow, Mir Publ., 1980. 448 p.).
3. Ol'shanskii A.Iu. Geometriia opredeliaiushchikh sootnoshenii v gruppakh [The geometry of dening relations in groups]. Moscow, Nauka Publ., 1989. 448 p. (in Russian).
4. Novikov P.S. On the algorithmic unsolvability of word identity problem in group theory. Tr. Matematicheskogo in-ta AN SSSR [Proc. of Mathematical Institute of the USSR Academy of Sciences], 1955, vol. 44, pp. 1-144. (in Russian).
5. Bezverkhnij N.V. On the solvability of the general word problem for a cyclic subgroup of a group with condition C(6). Fundamental'naia iprikladnaia matematika, 1999, vol. 5, no. 1, pp. 39-46. (in Russian).
6. Bezverhnij N.V. Normal forms for elements of infinite order in group with C (3)-T (6) condition. Izvestija TulGU. Estestvennye nauki, 2010, iss. 1, pp. 6-25. (in Russian).
7. Bezverhnij N.V. The power conjugacy search problem in a cyclic subgroup in groups with the condition C(3)-T(6). Diskretnaja matematika, 2012, vol.24, iss.4, pp. 27-46. (English Translation: Discrete Mathematics and Applications, 2012, vol.22, iss. 5-6, pp. 521-544. DOI: 10.1515/dma-2012-036).
8. Bezverhnij V.N. On normalizers of elements in C(p)-T(q)-groups. Algoritmicheskie problemy teorii grupp i polugrupp: mezhvuz. sb. nauch. trudov [Algorithmic problems of the theory of groups and semigroups: interuniversity collection of scientific papers]. Tula, Tolstoi TSPU Publ., 1994, pp. 4-58. (in Russian).
9. Bezverhnij V.N., Parshikova E.V. The solution of problems of integration in a cyclic subgroup of a group with condition C(4)-T(4). Algoritmicheskie problemy teorii grupp i polugrupp: mezhvuz. sb. nauch. trudov [Algorithmic problems of the theory of groups and semigroups: interuniversity collection of scientific papers]. Tula, Tolstoi TSPUPubl., 2001, pp. 120-139. (in Russian).
10. Glukhov M.M. An analysis of some key distribution public systems based on non-abelian groups. Matematicheskie voprosy kriptografii, 2010, vol. 1, no. 4, pp. 5-22. (in Russian).
11. Parshikova E.V. The problem of weak power conjugacy in groups with condition C (4)-T (4). Algoritmicheskieproblemy teorii grupp ipolugrupp: mezhvuz. sb. nauch. trudov [Algorithmic problems of the theory of groups and semigroups: interuniversity collection of scientific papers]. Tula, Tolstoi TSPUPubl., 2001, pp. 179-185. (in Russian).
12. Bezverhnij N.V. O kruchenii i o razreshimostiproblemy vhozhdenija v ciklicheskujupodgruppu v gruppah s usloviem C (6) [On torsion and solvability of the general word problem for a cyclic subgroup of a group with condition C(6)]. Moscow, 1995. Dep. VINITI no. 2033-V95. (in Russian).
13. Bogley W.A., Pride S.J. Aspherical relative presentations. Proc. of EdinburgMath. Soc. Ser. 2. 1992, vol. 35, no. 1, pp. 1-39. DOI: 10.1017/S0013091500005290
14. Gersten Sh., Short H.B. Small cancellation theory and automatic groups. Inventiones Mathe-maticae, 1990, vol. 102, iss. 1, pp. 305-334. DOI: 10.1007/BF01233430
15. Shor P.W. Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer. SIAM Journal on Computing, 1997, vol. 26, no. 5, pp. 1484-1509. DOI: 10.1137/S0097539795293172
16. Anshel I., Anshtl M., Goldfeld D. An algebraic method for public key cryptography. Mathematical Research Letters, 1999, vol. 6, no. 3, pp. 287-291. DOI: 10.4310/MRL.1999.v6.n3.a3
17. Ko K.H., Lee S.J., Cheon J.H., Han J.W., Kang J., Park C. New Public-Key Cryptosystem Using Braid Groups. In: Advances in Cryptology — CRYPTO 2000. Springer Berlin Heidelberg, 2000, pp. 166-183. (Ser. Lecture Notes in Computer Science; vol. 1880). DOI: 10.1007/3-540-44598-6,10
18. Yamamura A. Public-key cryptosystems using the modular group. In: Public Key Cryptography. Springer Berlin Heidelberg, 1998, pp. 203-216. (Ser. Lecture Notes in Computer Science; vol. 1431). DOI: 10.1007/BFb0054026
19. Yamamura A. A Functional Cryptosystem Using a Group Action. In: Information Security and Privacy. Springer Berlin Heidelberg, 1999, pp. 314-325. (Ser. Lecture Notes in Computer Science; vol. 1587). DOI: 10.1007/3-540-48970-3_26
20. Paeng S.-H., Ha K.-C., Kim J.H., Chee S., Park C. New Public Key Cryptosystem Using Finite Non Abelian Groups. In: Advances in Cryptology — CRYPTO 2001. Springer Berlin Heidelberg, 2001, pp. 470-485. (Ser. Lecture Notes in Computer Science; vol.2139). DOI: 10.1007/3-540-44647-8,28
21. Paeng S.-H., Kwon D., Ha K.-C., Kim J.H. Improved public key cryptosystem using non abelian groups. Cryptology ePrint Archive: Report 2001/066. Available at: http://eprint.iacr.org/2001/066, accessed 01.09.2014.
22. Sakalauskas E., Tvarijonas P., Raulinaitis A. Key agreement protocol (KAP) using conjugacy and discrete logarithms problems in group representation level. Informatica, 2007, vol. 18, no. 1,pp. 115-124.