Ссылка на статью:
// Математика и математическое моделирование. 2018. №6. С. 88-111.
Б01:10.24108/шаШш.0618.0000151
Представлена в редакцию: 04.11.2018
© НП «нэикон» ХДК 519.40
Асимметричная схема передачи секретного ключа по открытому каналу в к-детерминированных группах с условиями С(3)-Т(6)
Безверхний Н. В.1'*, Никитина М. В.2 *nbezv@maii.ru
1МГТУ им. Н.Э. Баумана, Москва, Россия; Российская корпорация средств связи, Москва, Россия
Статья посвящена построению односторонней функции в группах с условиями малого сокращения С(3)-Т(6) и разработке схемы формирования секретного ключа при обмене информацией по открытому каналу связи. Описаны алгоритмы непосредственного построения ключей и несанкционированного восстановления секретной информации по открытым данным. оценивается сложность решения обеих задач. Доказано, что прямая задача имеет линейную, а обратная — экспоненциальную сложность. Сложность алгоритмов оценивается в терминах числа областей групповых диаграмм. В статье используются геометрические методы комбинаторной теории групп и, в частности, теории групп с условиями малого сокращения С(3)—Т(6).
Ключевые слова: группа; копредставление; групповая диаграмма; проблема равенства
Введение
В комбинаторной теории групп для задания группы О используют так называемые ко-представления: О = (X; Я). Здесь X — конечный алфавит, соответствующий множеству образующих группы О и содержащий вместе с каждым символом х его инверсию х-1, а Я — конечное множество слов в указанном алфавите — определяющие соотношения. Множество Я содержит все циклические перестановки и инверсии своих элементов: вместе со словом ху... г множество Я содержит слово г-1... у-1х-1. Множество слов, замкнутое относительно инверсий и циклических перестановок элементов называют симметризованным.
При таком задании группы ее элементам соответствуют классы эквивалентных слов. В каждом таком классе слов бесконечно много. Ниже определяется понятие несократимого представителя класса эквивалентных слов и приводится алгоритм построения несократимого представителя, дается оценка его сложности.
В статье используются геометрические методы комбинаторной теории групп, а именно, метод диаграмм над группами, базирующийся на лемме Ван Кампена [1, 2, 3], в соответствии
Математика h Математическое
моделирование
Сетевое научное издание http://mathmelpub.ru ISSN 2412-5911
с которой слово представляет нейтральный элемент группы тогда и только тогда, когда существует односвязная диаграмма с граничной меткой, равной этому слову.
С точки зрения приложений решенная здесь задача представляет интерес при построении односторонних функций, использующихся в криптографии при обмене информацией по открытому каналу связи. А именно, предлагается схема передачи информации по открытому каналу, с помощью которой строится секретный ключ. Приводятся оценки сложности как прямого алгоритма построения ключа, так и обратного, то есть несанкционированного восстановления секретного ключа по известной открытой информации.
Большой интерес представляют такие алгоритмы, для которых сложность последней операции превышает полиномиальную. Построенный в данной работе алгоритм обладает указанным свойством.
В дальнейшем мы будем использовать следующие обозначения: u = v — слово u графически равно слову v; u = v — слово u эквивалентно слову v, т.е. равно ему в группе G; |u| — длина слова u.
1. Диаграммы над группами
Допустим, что группа G имеет копредставление G = (X ; R).
Пусть E2 — евклидова плоскость. Для S Ç E2 через dS обозначена граница множества S, через S — его топологическое замыкание. Вершина — это некоторая точка из E2. Ребро — ограниченное подмножество из E2, гомеоморфное открытому единичному интервалу. Область — ограниченное множество, гомеоморфное открытому единичному кругу. Карта M — конечный набор попарно непересекающихся вершин, ребер и областей, удовлетворяющих следующим условиям:
1) если e — ребро из M, то имеются вершины а и b (не обязательно различные), такие, что e = e U {а} U {b};
2) граница dD каждой области D из M связна, причем для некоторых ребер ei, .. ., en из M имеем dD = e1 U ... U en.
Буква M будет использоваться также для обозначения теоретико-множественного объединения вершин, ребер и областей соответствующей диаграммы. Если e = e U {а} U {b}, то говорят, что а и b — концы ребра e. Замкнутое ребро — это ребро e вместе с его концами.
Если e — ориентированное ребро, v1 — начальная вершина этого ребра, а v2 — конечная вершина, то ребро, обратное к ребру e, обозначается через e-1 и направлено от v2 к v1.
Путь — это последовательность ориентированных замкнутых ребер e1, .. ., en, такая, что начальная вершина ребра ei+1 — это конечная вершина ребра e*, 1 < i < n — 1. Концы пути — это начальная вершина ребра e1 и конечная вершина ребра en.
Замкнутый путь, или цикл, — это такой путь, в котором начальная вершина ребра e1 является конечной вершиной ребра en.
Путь называется приведенным, если он не содержит последовательной пары ребер вида ee-1. Приведенный путь e1... en называется простым, если при i = j начальные вершины ребер ej и ej различны.
Если Б — область в карте М, то любой цикл минимальной длины, включающий в себя все ребра из дБ, в котором все ребра ориентированы в соответствии с ориентацией границы области Б, то есть по часовой стрелке, и при обходе всех этих ребер область остается справа, называется граничным циклом этой области.
Если карта М связна и односвязна, то граничный цикл для М — это ориентированный против часовой стрелки цикл а минимальной длины, содержащий все ребра границы дМ и не имеющий самопересечений в том смысле, что если вг и вг+1 — последовательные ребра цикла а, такие, что вг оканчивается вершиной V, то в-1 и вг+1 — соседние ребра в циклически упорядоченном множестве ребер карты М с началом V. Такое правило обхода карты гарантирует, что если М имеет вид восьмерки, то есть предтавляет собой пару касающихся внешним образом кругов, то при обходе границы карта всегда будет оставаться слева.
Диаграммой над группой С = (X; Л), или Л-диаграммой, называется ориентированная карта М вместе с функцией метки сопоставляющей каждому ориентированному ребру в карты М метку <^(в) — слово из образующих таким образом, что если в — ориентированное ребро из М, а в-1 —противоположным образом ориентированное ребро, то ^(в-1) = ^(в)-1. При этом метка граничного цикла любой области Б из М графически равна некоторому определяющему соотношению из Л: ^(дБ) = г € Л.
2. Группы с условиями малого сокращения
Рассмотрим группу с копредставлением С = (X; Л). Ниже всегда считаем множество Л симметризованным. Предположим, что г1 и г2 — различные элементы из Л, такие, что г1 = Ьс1 и г2 = Ьс2. В этом случае элемент Ь называется куском относительно множества Л. Таким образом, кусок — это общее начало двух различных определяющих соотношений.
Предположения о малом сокращении состоят в том, что куски — относительно малые части элементов из Л. Метрическое условие С'(А), где А — действительное число из интервала (0; 1), означает следующее: если г € Л, г = Ьс, где Ь — кусок, то |Ь| < А|г|.
Тесно связанным с приведенным является неметрическое условие С(р), где р — некоторое натуральное число. Условие С(р) состоит в том, что никакой элемент из Л не является произведением менее чем р кусков.
Сформулируем условие Т(д). Пусть 3 < Л < д. Предположим, что г1,.. ., г^ — элементы из Л, такие, что последовательные элементы гг, гг+1 не являются взаимно обратными. Тогда по крайней мере одно из произведений г1г2, ..., г^-1г^, г^г1 приведено.
Пусть М — произвольная диаграмма над Б. Допустим, что Б1 и Б2 — области из М с общим ребром в С дБ1 П дБ2. Пусть в^1 и $2в-1 — граничные циклы областей Б1 и Б2 соответственно. Положим = /1 и <^($2) = /2. Пара областей (Б1,Б2) называется сократимой, если /2 = /-1. Диаграмма М называется приведенной, если она не содержит сократимых пар областей.
Пусть M — некоторая карта. Граничной вершиной в M, соответственно, граничным ребром в M мы будем называть вершину, ребро из dM. Граничной областью карты M называется такая область D из M, что dD П dM = 0. Таким образом, если D — граничная область карты M, то dD П dM не обязано содержать некоторое ребро, но может состоять из одной и более вершин. Вершина, ребро или область карты M, не являющиеся граничными, называются внутренними.
Если v — вершина карты M, то d(v) — степень вершины v, равная числу ребер инцидентных вершине v. Если оба конца некоторого ребра e совпадают с v, мы считаем e дважды. Если D — область из M, то d(D) — степень области D определяется как число ребер в граничном цикле для D. Символ i(D) обозначает число внутренних ребер из dD, причем ребро, встречающееся в граничном цикле для D дважды, считается два раза.
Плодотворным оказывается использование геометрической интерпретации условий C(p) и T(q), сформулированной в следующей теореме.
Теорема 1 ([2]). Пусть R — симметризованное множество слов, M — приведенная R-диаграмма.
Если множество R удовлетворяет условию C(k), то каждая область D из M, такая, что dD П dM не содержит ребер, имеет степень d(D) > k. При этом метка любого внутреннего ребра является куском.
Если множество R удовлетворяет условию T (m), то каждая внутренняя вершина v карты M имеет степень d(v) > m.
Класс групп с условиями C(3)-T(6) обладает замечательным свойством, отличающим его от других классов типа C(p)-T(q): в группах с условиями T(q) при q > 4 все куски имеют единичную длину [4].
Далее приведем два важных понятия: R-и R-сокращения. С их помощью будет определен несократимый представитель класса эквивалентных слов, о котором говорилось во введении.
Будем говорить, что в слове w есть R-сокращение [5, 6, 7], если существует элемент r G R такой, что:
1) r = Г1Г2;
2) w = w1w2w3;
3) ri = w2;
4) слово r2 либо пусто, либо является куском;
5) слова w1r-1, r-1w3 несократимы в свободной группе.
При замене слова w равным ему в группе G словом w1r-1w3 будем говорить, что в w выполнено R-сокращение. R-сокращение в слове w, являющемся степенью некоторого слова v: w = vs, является длинным, если |w21 > |v|. Если же |w2| < |v|, то R-сокращение называется коротким.
Пример. Рассмотрим группу G = (X; R), где X = (a, b, c}, а R = (abc, acb}. Пусть имеется также слово w = abb. Используя определяющее соотношение r1 = abc, заменяем в
слове т подслово аЬ куском с-1. Получаем т = с-1Ь. Таким образом, мы выполнили в слове т короткое Л-сокращение.
Пусть теперь у нас есть слово т = V2, где V = асЬ, т.е. т = асЬасЬ. Используя определяющее соотношение г2 = асЬ, заменяем первое вхождение асЬ в т пустым словом. В данном случае мы выполнили длинное Л-сокращение в слове т, так как |асЬ| = | V |. Если в любой циклической перестановке слова т нет Л-сокращений, то слово т называется циклически Л-несократимым.
Понятие Л-сокращения определим с помощью диаграмм. Также дадим геометрическое определение Л-сокращения. Для этого нам понадобятся понятия полосы и дэновской области.
Рассмотрим диаграмму М. Область Б С М называется дэновской [8], если дБ П дМ — последовательная часть границы дМ, т.е. дБ П дМ = р — подпуть в граничных циклах области Б и диаграммы М; ¿(Б) € {0,1}.
к
Полосой [8] в диаграмме М называется поддиаграмма П = и Бг со следующими свой-
г=1
ствами:
• дБг П дМ = рг — последовательная часть границы дМ при всех г = 1, ..., к;
• дП П дМ = р — последовательная часть границы дМ;
• если к = 3, то ¿(Б1) = г(Б2) = г(Б3) = 2, причем соседние области имеют общее ребро, а все три области полосы имеют общую вершину;
• если к > 3, к = 2/ + 1, то ¿(Б1) = ¿(Б2) = г(Б2г) = г(Би+1) = 2, г(Бз) = ¿(Б5) = ... ... = г(Би_з) = ¿(Б21-1) = 3, ¿(Б4) = ¿(Бб) = ... = ¿(Б21-4) = ¿(Б21-2) = 2;
• дБг П дБг+1 — ребро (г = 1, ..., к — 1).
Пусть П — полоса в диаграмме М. Граничным словом области Бг С П называется метка пути дБг П дМ, прочитанная в соответствии с ориентацией области Бг. Граничным словом полосы П называется метка пути дП П дМ, прочитанная в направлении, противоположном ориентации границы дМ. Аналогично определяется граничное слово дэновской области.
Будем говорить, что в слове V есть Л-сокращение, если существует связная односвязная диаграмма М над группой С = (X; Л), в которой существует дэновская область, граничное слово которой является подсловом в V. В слове V есть Л-сокращение, если существует связная односвязная диаграмма М над копредставлением С = (X; Л), в которой существует полоса П, граничное слово которой является подсловом в V.
Для любого циклически несократимого в свободной группе слова т, не равного единице в группе С, существует циклически Л, Л-несократимое слово то, сопряженное с т в С.
Действительно, из определений следует, что в результате Л, Л-сокращения длина слова строго уменьшается. Поэтому, записав произвольное слово т на окружности С и выполнив в его циклических перестановках все возможные Л, Л-сокращения, получим непустое слово т0, в циклических перестановках которого нет Л, Л-сокращений. Пустым слово т0 быть не может, поскольку исходное слово т представляло в группе С элемент, не равный единице.
3. Схема открытого распределения ключей в группах с условием С(3)-Т(6)
В симметричных криптосистемах для шифрования и расшифрования используется один и тот же ключ. Таким образом, необходимым условием использования симметричных криптосистем является получение пользователями общего секретного ключа. При этом доступ к ключу потенциального злоумышленника должен быть исключен.
Целью данной работы является разработка асимметричной схемы передачи секретного ключа по открытому каналу, основанной на проблеме слов в группах, копредставление которых удовлетворяет условиям С(3)—Т(6).
Был разработан следующий протокол получения секретного ключа.
Участники процесса: 1) абонент А, 2) абонент В, 3) противник Е.
открытая информация:
1) группа О = (X; Я), копредставление которой удовлетворяет условиям С(3)— Т(6);
2) слово п в алфавите X, представляющее некоторый элемент группы О.
Алгоритм получения секретного ключа абонентом А.
1) Абонент А выбирает произвольное целое число к, отличное от нуля, (закрытый ключ 1) и произвольное слово у а в алфавите X (закрытый ключ 2). Далее абонент А вычисляет открытый ключ К = пкуа и отправляет его абоненту В.
2) Абонент В умножает К на п1 слева и на п-1 справа и передает А полученный открытый ключ К1 = пк+1 уап-1.
3) Абонент А умножает К1 на п-к слева и на пк справа и получает секретный ключ К = п)1 уАпк-1.
Алгоритм получения секретного ключа абонентом В.
1) Абонент В выбирает произвольное целое число /, отличное от нуля, (закрытый ключ 3) и произвольное слово в алфавите X (закрытый ключ 4). Далее абонент В вычисляет открытый ключ К2 = и отправляет его абоненту А.
2) Абонент А умножает К2 на УАПк слева и передает В полученный открытый ключ
К = уАпк+1 .
3) Абонент В умножает К2 на у-1^-21 справа и на п1 слева и получает секретный ключ К2' = п1 уАпк-1 = К'(.
При этом к слову п предъявляются следующие требования:
1) п =1 в группе О;
2) слово п должно представлять в группе О элемент бесконечного порядка.
Необходимость выполнения первого требования очевидна, так как если п = 1 в группе
О, то все его степени пп =1 в О, и тогда в качестве открытого ключа будут использоваться закрытые ключи (уа и ), что недопустимо.
Второе требование также является необходимым, поскольку если п представляет элемент конечного порядка, то противнику нужно будет найти не к и /, а остатки от деления к и I
на порядок р слова п, что является гораздо более простой задачей. Заметим, что алгоритм нахождения порядка слова п описан в статьях [9], [10]. Ниже будет предложен алгоритм построения слова п, в соответствии с которым требование 2) бесконечности порядка будет выполняться автоматически.
От группы О, используемой для шифрования, требуется только выполнение условий С (3)—Т (6).
Следует отметить, что если информация о группе О и слове п не является общеизвестной, а выбирается, например, абонентом А, то абонент А отправляет абоненту В в качестве открытого ключа К1, О, п.
4. Односторонняя функция для получения открытого ключа
Структура слов, используемых в качестве пересылаемых открытых ключей такова, что позволяет идентифицировать входящие в их состав структурные элементы, в том числе и секретные, основываясь только на знании общего вида слова.
Например, для нахождения подслова уа и степени к в составе слова УАпк противнику достаточно знать, что данное слово состоит из случайного слова, к которому справа присоединена степень некоторого известного всем слова. Согласно общепринятым допущениям, используемым при построении криптосистем, подобные сведения у противника Е имеются. В результате возникает необходимость сокрытия структурных элементов слов, используемых в качестве открытых ключей.
В настоящей работе используется схема получения открытого ключа с помощью односторонних функций. Протокол получения открытого ключа включает преобразования, обратные к Я- и Я3-сокращениям. Данные преобразования определяются следующим образом.
Будем говорить, что в слове п есть Я-удлинение, если существует элемент г € Я, такой, что:
1) г = Г1Г2;
2) п = п1п2п3;
3) Г1 = п>;
4) слово г1 является куском.
В случае замены слова п равным ему в группе О словом п1г-1п3 будем говорить, что в п выполнено Я-удлинение.
Будем говорить, что в слове п есть Я 3-удлинение, если существуют элементы г1, г2, г3 € Я, такие, что:
1) п = гпг12г13;
2) г2 = г21г22г23;
3) г3 = г31г32г33;
4) п = п1п2п3п4;
5) г13 = п-1;
6) гз2 = w-1;
7) Г23 = r-1;
8) r22 = г-з1;
9) слова r11, r12, r13, r21, r22, r23, w2, w3 являются кусками.
В случае замены слова w равным ему в группе G словом w1r11r21r31w4 будем говорить, что в w выполнено R3-удлинение.
Перед тем, как перейти к подробному описанию процедуры получения открытого ключа, отметим следующую ее особенность, связанную с вхождением в его состав случайного слова. Указанное случайное слово может оказаться таким, что в открытом ключе можно будет провести такое количество свободных, R- и R-сокращений, что длина открытого ключа существенно уменьшиться. Это приведет к упрощению задачи противника за счет снижения верхней границы числа вариантов при подборе открытого ключа.
Действительно, если открытый ключ, представляющий собой переработанное описанным ниже способом слово K, имеет большую длину, то это может означать, что либо степень слова w велика при малой длине слова v, либо наоборот, степень слова w мала, но слово v имеет большую длину. А возможен и третий вариант, когда и степень большая, и длина слова v. Если же открытый ключ имеет маленькую длину, то и вариантов для перебора различный комбинаций типа (n, v), где n — неизвестный показатель степени, а v — неизвестное слово, становится значительно меньше.
Для того чтобы предотвратить нежелательные сокращения в слове wn, в качестве него выбираем внешнюю граничную метку однослойной кольцевой диаграммы M, с границей dM = a U т. При этом все области в M имеют в точности по два внутренних ребра, одну вершину либо на a, либо на т, а области с единственной вершиной на a чередуются с областями, имеющими единственную вершину на т. Такую кольцевую диаграмму будем называть (2, 2)-слоем, или 1-слойной кольцевой диаграммой типа (2, 2). Легко проверить, что граничные метки такой диаграммы R, R-несократимы.
Заметим, что в соответствии со сказанным в пункте 3, необходимо гарантировать бесконечность порядка слова w. Это требование выполняется, поскольку конечность порядка w означала бы, в соответствии с леммой Ван Кампена [2], существование односвязной диаграммы с меткой wp, на границу которой можно наклеить (2, 2)-слой, что невозможно, так как метка (2, 2)-слоя R, R-несократима, а приведенная односвязная диаграмма над (C(3)-T(6))-группой должна содержать полосы или дэновские области [8], т.е. ее граничная метка должна быть R- или R-сократимой.
Итак, процедура получения открытого ключа на основе некоторого слова включает два последовательных этапа.
Этап 1. Генерация однослойной кольцевой диаграммы с (2, 2)-слоем, на внешней границе которого читается слово ô = wn. Следующая лемма гарантирует возможность построения периодического (2, 2)-слоя.
Лемма 1. Для любого копредставления G = (X; R) с условиями C(3)-T(6) существует кольцевая периодическая 1-слойная диаграмма типа (2, 2).
Доказательство. Будем считать, что уже построена 1-слойная дисковая диаграмма M, имеющая форму прямоугольника, в котором две противоположные стороны обозначены а и т, а все области имеют по одной вершине на а или т и по ребру на т или а, соответственно, или наоборот. При этом области первого и второго типов строго чередуются при движении вдоль сторон а, т. Две оставшиеся стороны прямоугольника имеют метки a, b G X.
Для периодичности необходима возможность склейки такого прямоугольника в 1-слой-ную кольцевую диаграмму. Последнее можно сделать, добавив соотношений abc, bac к множеству R и образующий c к X. Полученное таким образом новое соотношение определяет область, замыкающую (2, 2)-слой в кольцо. Может оказаться, что такая область уже существует, и тогда описанные преобразования копредставления (X ; R) не понадобятся.
Важно, что описанное преобразование не меняет свойство копредставления C(3), так как слово ab не становится куском после преобразования, иначе в R слово, необходимое для зацикливания слоя, существовало и до преобразовния.
Что касается условия T(6), то построение диаграммы с вершиной, имеющей внутреннюю степень меньше 6, из областей с метками abc, bac невозможно: проверка тривиальная.
Тем не менее, сохранить условие T(6) удается не всегда. Представим себе, что 6 определяющих соотношений ri, .. ., позволяют построить односвязную диаграмму M6, в которой 6 областей с граничными метками r1, ..., r6 имеют единственную общую вершину A: dMe (A) = 6. При этом области занумерованы в порядке следования при обходе вершины A против часовой стрелки: D1, . .., D6.
Возможна следующая ситуация: ^(dD1) = axy, ^(dD2) = x-1bz. После введения в множество R нового соотношения r = abc, можно вырезать из M6 области D1, D2 и вклеить на их место область D : ^(dD) = abc. В результате получим приведенную диаграмму M5, в которой d(A) = 5, что противоречит условию T(6).
Таким образом, введение в множество R нового соотношения не решает задачу зацикливания (2, 2)-слоя.
Покажем, что при построении (2, 2)-слоя можно устроить его зацикливание. Представим его в виде двух отрезков а и т на параллельных прямых, между которыми вклеиваются треугольные области, причем, первая слева область D1 имеет на верхнем отрезке а ребро, а на нижнем т — только вершину, а вторая область D2 наоборот: на а только вершину, а на т — ребро, и так далее при движении вдоль отрезков а и т области с ребром на т и вершиной на а чередуются с областями с ребром на а и вершиной на т.
Обозначим метки областей с нечетными номерами через ^(dD2fc+1 ) = a2k+1b2k+1 a-fc1+2. Тогда метки областей с четными номерами равны ^(dD2k+2) = a2k+2a-1+3c2fc+2. Уточним, что метки b2k+1 являются подсловами слова <^(а), а метки c2k+2 — слова <^(т), метки b... имеют только нечетные номера, а метки c... — только четные.
Здесь мы временно, в рамках доказательства данной леммы, ориентируем границу диаграммы по часовой стрелке.
Поскольку множества X, Л образующих и определяющих соотношений конечны, то при некоторых к, /, к < / метка а2к+1 совпадет с меткой а21+1, и тогда вместо области Б21+1 с меткой ^(дБ21+1) = а21+1Ь21+1а-1+2 можно будет использовать область Б2к+1, к которой приклеить Б2к+2, и так далее до Б21, после которой снова вернуться к Б2к+1. Так строится циклический (2, 2)-слой, который можно замкнуть в 1-слойную кольцевую диаграмму.
Заметим, что при построении односторонней функции в рамках данной статьи представляет интерес работа со словами т большой длины. Возможно, расстояние от области Б21+1 до области Б2к+1 не достаточно велико. Тогда можно воспользоваться к-детерминированно-стью группы С и продолжить построение 1-слойной диаграммы, приклеив к области Б2к+1 не Б21+2, а любую другую из оставшихся к — 2 областей с буквой а21+1 в граничной метке. Повторяем такие подмены до тех пор, пока не будет построено достаточно длинное слово.
Лемма доказана. Теорема доказана.
Этап 2. Маскирующие преобразования слова:
2.1) вставка между к-й и (к + 1)-й позициями тривиального слова х^-1, где хг € X выбирается случайным образом;
2.2) Л-удлинение в к-й позиции;
2.3) свободное сокращение в к-й позиции, если такое сокращение возможно;
2.4) вставка между к-й и (к + 1)-й позициями определяющего слова гг € Л, которое выбирается случайным образом;
2.5) Л3-удлинение в к-й позиции, если такое удлинение возможно.
Уточним некоторые детали реализации предложенной схемы.
1. Тип преобразования и позиция к в слове 5 выбираются случайным образом.
2. Преобразования применяются к отдельному вхождению слова т в 5.
3. Число преобразований в каждом вхождении т в 5 представляет собой случайное число из отрезка [0, 5|т|; 2|т|]. Данный диапазон был выбран на основании экспериментальных данных и обеспечивает до 100% модифицированных вхождений слова т в 5, а также достаточную (на основании визуальной оценки) вариабельность этих вхождений. Число преобразований в остальных частях открытого ключа (т.е. подсловах VA, vв) составляет 21Vа|, 2^в| для каждого вхождения слова VA, vв в 5.
Сформулируем требования, предъявляемые к процедуре получения открытого ключа. Пусть процедура принимает на вход некоторое слово 5 и возвращает слово е. Требуется, чтобы:
1) е = 5 в группе С;
2) е = 5 в свободной группе;
3) для любого подслова вида тп в 5 такого, что 5 = 71тп72 для некоторых 71 и 72, не существует такого т1, т1 = т в группе С, что е = 71 и>П72 для некоторых 71 и 72;
4) не должно существовать простого алгоритма, который позволял бы по е найти 5 или секретные ключи.
Покажем, что описанная выше процедура получения открытого ключа удовлетворяет указанным требованиям.
Требование 1 выполняется, так как ни одно из преобразований из 1)-5) не приводит к нарушению равенства слов в группе С.
Рассмотрим требование 2. Поскольку каждое из преобразований 1)-5) переводит данное слово 5 в слово 51, не равное ему графически, то нарушение требования 2 может наблюдаться в двух случаях: 1) когда исходное слово не подвергалось преобразованиям, 2) когда подверглось парам взаимно обратных преобразований. (Примером, иллюстрирующим случай 2), является вставка между к-й и (к + 1)-й позициями тривиального слова хгх-1 с последующим свободным сокращением в (к + 1)-й и (к + 2)-й позициях полученного слова.)
Вероятность реализации случая 1) можно минимизировать за счет увеличения общего числа преобразований. Снижение частоты возникновения случая 2) достигается, в частности, за счет случайного выбора позиции в слове 5, которое подвергается преобразованию.
Кроме того, снижению частоты последовательности взаимно обратных преобразований 3), 1) способствует случайный выбор тривиального слова для вставки. Так, например, если множество X содержит пх символов (и соответственно пх обратных к ним) и в некоторой позиции слова 5 было произведено свободное сокращение с образованием слова 51 длины п, то вероятность обратного преобразования с учетом случайного выбора позиции для модификации и случайного выбора пары хгх-1 составляет 1 /(п2пх) (вставка в начало и конец слова 51 считается одним и тем же преобразованием). И конечно можно производить нечетное число преобразований и таким образом исключить принципиальную возможность реализации случая 2).
Условие 3 выполняется за счет того, что преобразования применяются к каждому вхождению т в 5. При этом вид преобразований и позиция в слове т выбираются случайно, вследствие чего ситуация, при которой во всех п вхождениях т в V будут произведены одинаковые преобразования, является маловероятной.
Для того чтобы определить, выполняется ли условие 4, проанализируем возможные действия противника Е. Требования 2 и 3 гарантируют, что противник не имеет возможности узнать секретные слова и степени, исходя из вида открытых ключей и их произведений.
Таким образом, единственным возможным вариантом действий Е является поиск секретных ключей посредством перебора. В процессе сравнения открытого ключа со словом-кандидатом противник производит преобразования, которые использовались при синтезе открытого ключа, ограничиваясь при этом теми из них, которые приводят к уменьшению длины слова: это свободные сокращения, Л-сокращения и Л3-сокращения.
В процессе синтеза открытого ключа преобразования, обратные указанным, проводились случайным образом, т.е. их последовательность и локализация неизвестны Е. В результате
велика вероятность того, что противник произведет сокращения не там, где были до этого сделаны удлинения, в результате чего, приведение слова к несократимому виду потребует большего количества операций, по сравнению с оптимальной стратегией, в точности соответствующей выполнению преобразований, обратных тем, что выполнялись абонентами А и В при построении сообщений.
Не зная заранее секретные значения п, V, противник проверяет равенство слов в группе для произвольных значений п', У, которые он перебирает по определенной схеме. Во-первых, каждая такая проверка оказывается достаточно трудоемкой процедурой, во-вторых, число таких проверок тоже велико и определяется длиной секретного слова V и величиной показателя степени п. Оценка сложности процедуры восстановления значений п, V по открытому ключу будет дана ниже. Но начнем с оценки сложности прямой процедуры построения открытого ключа.
5. Оценка сложности получения открытого ключа
Верхняя оценка сложности получения открытого ключа может быть получена на основании трудоемкости наиболее сложной операции. Под трудоемкостью Тк операции к будем понимать количество сравнений букв, необходимых для проведения преобразования.
Начнем с оценки трудоемкости этапа 2 получения открытого ключа.
Очевидно, что наименее трудоемкими являются преобразования 1) и 4), которые не требуют проведения сравнения букв. Таким образом, считаем, что Т1 = Т4 = 0(1).
Следующим по трудоемкости является преобразование 3) — свободное сокращение. Данная операция требует не более двух сравнений: чтобы узнать, есть ли в к-й позиции свободное сокращение, нужно сравнить Xk с Xk_1 и Xk с Xk+1. Следовательно, Т3 также есть 0(1).
Оценим трудоемкость операции 2) — Я-удлинения. Напомним, что в группах с условиями С(р)—Т(д) при д > 4 все куски имеют единичную длину. Учитывая этот факт, а также то, что множество Я симметризовано, получим, что поиск требуемого куска достаточно провести среди начальных символов определяющих соотношений.
Так как в Я имеется как минимум два определяющих соотношения, имеющих общее начало, согласно определению куска, то в худшем случае для получения подходящего определяющего соотношения потребуется — 1 сравнений, где — мощность множества Я. Таким образом, трудоемкость операции Я-удлинения составит (пд — 1).
Наиболее трудоемким является преобразование 5) — Я3--удлинение. В процессе Я-удлинения ищутся два однобуквенных совпадения (трудоемкость при этом составит (пд — 1) + (пд — 1) = 2(пд — 1)) и одно двухбуквенное. Поскольку каждое двухбуквенное начало встречается в Я не более одного раза, суммарная трудоемкость Я3 -удлинения равна Т5 = 2(пд — 1) + 2пд = 4пд — 2 при наличии в Я соотношения с соответствующим двухбу-квенным началом.
Возникает проблема существования двухбуквенного начала в слове из множества R. Как мы видели в доказательстве леммы 1, искусственное добавление к множеству R пары определяющих соотношений abc, bac и новых образующих c, с-1 к множеству X не нарушает свойства C(3) копредставления G = (X, R), но может привести к нарушению условия T(6). Значит, надо искать тройку областей, образующих полосу, которую можно использовать для -йз-удлинения данного слова в выбранной позиции. В случае неудачи заменять _й3-удлинение R-удлинением.
Таким образом, наиболее трудоемкой операцией в общем случае является R3 -удлинение, поэтому в дальнейшем трудоемкость будет оцениваться количеством построенных полос.
Теперь мы в состоянии дать верхнюю оценку трудоемкости этапа 2 процедуры получения открытого ключа. Подсчитаем число преобразований, которым подвергается исходное слово 8 G {wkVA,Wk+lVAW-l,WlVB, vAwk+lvB}.
Слово 8 состоит из подслов вида wni и подслов v G {va, vB}. Количество модификаций в каждом подслове w G 8 не превосходит 2|w|, а в каждом подслове v составляет в точности 2|v|. Для удобства будем использовать такие слова v, что |v| = (n2 — 1)|w|, для некоторого n2 G N.
Верхняя оценка T(2) трудоемкости этапа 2 получения открытого ключа получается, если полагать, что все преобразования, производимые в слове K, являются R3 -удлинениями. Пусть слово 8 длины n содержит n1 подслов w и длина подслова v в 8 ограничена сверху числом n2|w|. Тогда трудоемкость этапа 2 получения открытого ключа не превосходит величины
T(2) = (2|w|ni + 2n2|w|)T5 = 2(ni + n2)|w|(4nR — 2) = 2n(4nB — 2).
Теперь оценим сложность получения (2, 2)-слоя, на границе которого читается слово 8, |8| = n (этап 1 получения открытого ключа).
Заметим, что построение (2, 2)-слоя, исходя из заранее выбранных слов w, v G {vA, vB}, при фиксированном множестве определяющих соотношений R может оказаться затруднительным и даже невозможным, например, если слово w является меткой границы однослойной кольцевой диаграммы, в которой присутствуют 2-пары и 3-пары областей. (Области образуют 2-пару, если они имеют одно общее внутреннее ребро, по одному ребру на внешнем участке а границы 1-слойной диаграммы и единственную вершину на внутреннем участке границы т. Аналогично определяется 3-пара с той лишь разницей, что на участке а вместо ребер — вершина, а на т вместо вершины — ребра.) Легко проверить, что такая кольцевая диаграмма не может быть объединена по одному из двух граничных циклов с кольцевой диаграммой типа (2, 2) в приведенную 2-слойную кольцевую диаграмму.
Поэтому порядок действий выбираем обратный: вместо того, чтобы по выбранному слову w строить (2, 2)-слой, одна из меток которого совпадает с w или его степенью, начинаем с построения самого периодического (2, 2)-слоя, а слово w получаем автоматически как одну из его меток <^(а) или <^(т).
Процедура построения (2, 2)-слоя может быть реализована при выполнении следующих условий.
Группа О с копредставлением (X; Я) называется детерминированной, если каждый символ множества X входит ровно в два определяющих соотношения из Я. Если же каждый символ из X входит ровно в к определяющих соотношений из Я, то группу О будем называть детерминированной степени к, или к-детерминированной. В случае, если каждый символ из X входит не менее, чем в к соотношений из Я, группу О будем называть детерминированной степени не меньше, чем к. Ясно, что при к = 2 детерминированная группа степени к оказывается просто детерминированной.
Очевидно, что в детерминированной группе существует единственный (2, 2)-слой, и он является периодическим в следующем смысле: при увеличении длины слоя области в нем начинают повторяться. Интересно, что отказ от свойства (2, 2) отменяет и единственность, и периодичность слоя. Теряется и свобода выбора как слова п, так и секретного ключа V, что сводит к нулю попытку построить одностороннюю функцию с использоанием таких групп.
Далее предполагаем, что группа является детерминированной степени не меньше к при к > 3. Наращиваем слой очередной областью, выбирая случайным образом одно из не менее, чем (к — 1) соотношений.
После формирования периода слоя, соответствующего основанию степени пП1, что гарантировано леммой 1, повторяем этот период п1 раз и снова случайным образом формируем «хвост» (2, 2)-слоя, который будет соответствовать слову V € {уа, }. Тем самым построение слова 5 закончено. Надо отметить, что число периодических (2, 2)-слоев с периодом длины ^ в к-детерминированной группе равно (к — 1)5. Значит, при большой длине слов п, V запас слов оказывется достаточно велик, чтобы с ним можно было работать, не опасаясь того, что противник разработает базу исходных ключей и по ней сформирует все возможные открытые ключи. Кроме того, следует учесть, что длина слова V может быть сколь угодно большой.
Использование (2, 2)-слоев для формирования слова п целесообразно применить и для формирования секретного ключа V. Саму процедуру построения слова V на базе «хвоста» (2, 2)-слоя, построенного для слова пп, и ее целесообразность обсудим ниже (см. лемму 2). Перед этим рассмотрим модификациию схемы получения общего секретного ключа. Причина для такой модификации следующая.
Рассмотрим этап 2 процесса получения общего секретного ключа абонентом А. Напомним, что в ходе данного этапа абонент В получает от А открытый ключ К1 = пкуа и передает А открытый ключ К1 = пк+1 уап-1 .
После умножения пкуа на п-1 справа В требуется продолжить (2, 2)-слой с граничной меткой пкуа до (2, 2)-слоя с граничной меткой пкуап-1, чтобы гарантировать Я, Я-несокра-тимость преобразуемого слова. Однако это может быть сопряжено с определенными трудностями, поскольку перед отправкой абоненту В абонент А модифицировал слово К1 = пкуа с помощью преобразований 1)—5). Описанное затруднение можно устранить, если вместо
К1 = ткVа абонент А будет передавать В открытый ключ К1 = ткVAW. После внесения соответствующих изменений схема получения общего секретного ключа абонентом А примет следующий вид.
1. Абонент А выбирает произвольное, кроме нуля, целое число к — закрытый ключ 1, произвольное слово VA в алфавите X — закрытый ключ 2. Далее А вычисляет открытый ключ К1 = ткVAW и отправляет его абоненту В.
2. Абонент В умножает К1 на т1 слева и на т-1-1 справа и передает А полученный открытый ключ К1 = тк+^Ат-1.
3. Абонент А умножает К1 на т-к слева и на тк справа и получает секретный ключ к = т1 vAwk_1.
Схема получения секретного ключа абонентом В остается неизменной.
Лемма 2. Для любого копредставления С = (X; Л) с условиями С(3)-Т(6) и любой периодической кольцевой диаграммы М типа (2, 2) над этим копредставлением с границей дМ = а и т и граничными метками <^(а) = тп, <^(т) = (ип) существует односвязная 1-слойная диаграмма N над (X; Л), содержащая сколь угодно много областей, которую можно вставить в М, разрезав последнюю по любому ребру с вершинами на внутреннем и внешнем граничных циклах. При этом полученная кольцевая 1-слойная диаграмма будет приведенной, ее граничные метки будут циклически Л, Л-несократимыми.
Доказательство. Напомним, что диаграмма является приведенной, если в ней нет сократимых пар областей. Таким образом, утверждается, что после вставки диаграммы N в диаграмму М полученная диаграмма М и N не будет содержать сократимых пар областей.
Построение кольцевой 1-слойной периодической диаграммы М с граничными циклами а, т, граничной меткой <^(а) = тп будем считать законченным, в соответствии с леммой 1.
Для работы модифицированной схемы обмена ключами надо гарантировать возможность удлинения 1-слойной односвязной диаграммы типа (2, 2), которая является результатом разрезания соответствующей кольцевой 1-слойной диаграммы, и построения так называемого <<хвоста>>, соответствующего слову V — секретному ключу. Длина слова V не ограничена, поэтому надо научиться строить «хвост» сколь угодно большой длины.
Кроме того, модифицированная схема обмена ключами предполагает возможность склеивания удлиненной «хвостом» N односвязной диаграммы с граничной меткой <^(а) = в 1-слойную кольцевую диаграмму М и N с сохранением свойства Л, Л-несократимости граничных меток. Приступим к реализации алгоритма построения «хвоста» N.
Представим разрезанную диаграмму М в виде прямоугольника с границей а и т и а и в, где <^(а) = тп, <^(т) = ип, т — внутренняя граница кольцевой диаграммы М, а а, в — копии ребра диаграммы М, по которому был сделан разрез.
Пусть ребро а входит в граничный цикл области Б1, ребро в — области Бт, а П а = 0, а П т = 0, в П а = 0, в П т = 0, причем из периодичности кольцевой диаграммы М следует,
что область имеет ребро на а и только вершину на т, а область — наоборот, и т кратно п.
Построение диаграммы N выглядит следующим образом. Выбирая случайным образом соотношения из множества Я, строим (2, 2)-слой N.
Первый шаг. Начинаем с соотношения гт+1 = <^(в)-1г^1+1. Здесь <^(в) € X — метка ребра в в граничном цикле области (границы областей ориентированы по часовой стрелке), гт+1 — слово в алфавите X, соотношение гт+1 используем как метку области Вт+1 с вершиной на т и ребром 7т+1 на а. Третье ребро области Вт+1 обозначим вт+1.
Второй шаг. Случайным образом выбираем соотношение гт+2 = ^(вт+О-1^+2 — граничную метку области Вт+2 с вершиной на а и ребром 5т+2 на т. Третье ребро этой области обозначим вт+2.
Третий и последующие шаги повторяют первый и второй попеременно: шаги с нечетными номерами генерируют область с ребром на а, а с четными — с ребром на т. Этот процесс построения «хвоста» N можно продолжать сколь угодно долго. Действительно, каждая буква, то есть метка ребра вт+«, является куском, значит, входит в граничные циклы хотя бы двух областей, образующих несократимую пару. Но наша цель — замкнуть кольцевую диаграмму М и N, сохранив Я, Я-несократимость ее граничных меток.
В некоторый случайный момент принимаем решение о прекращении наращивания «хвоста» N. Теперь задача ставится следующим образом: как можно скорее замкнуть кольцо М и N с сохранением Я, Я-несократимости граничных меток. Для этого начинаем искать в Я слово, с помощью которого сформируется область с ребром на т и вершиной на а, д^епй = веп^веп^+15еп^, где ^(веп^+1) = ^(а)-1 = <^(в). Последнее условие гарантирует возможность склейки построенной диаграммы в кольцо.
Если на некотором шаге случайный выбор падает на слово г1 = и расположение
области в диаграмме совпадает с расположением В1, то есть ребро на а и вершина на т, то кольцо замкнулось.
Иначе продолжаем случайное блуждание по множеству слов Я, отслеживая области с четными номерами. Если на очередном шаге будет выбрана область с ребром 5Г на т такая, что ^(вг) = ^(в*-1) при нечетном £ < т, то кольцо можно замкнуть, склеив по ребрам вг и в*-1. При этом степень слова п может уменьшиться, но, благодаря периодичности диаграммы М, этот недостаток построенного кольца легко компенсировать вставкой недостающего числа областей, соответствующих слову с меткой п. Выполняя такую вставку, мы предполагаем, что ребро вг-1 имеет наименьший номер £ — 1 среди всех ребер в М, по которым возможна указанная выше склейка.
Может оказаться, что ребро вг-ъ позволяющее сделать склейку кольца, принадлежит области С N. Этот случай сложнее предыдущего. Покажем, как в этой ситуации строится кольцевая диаграмма с несократимыми метками.
Надо считать, что <^(вг-2) = <^(вг-1), так как иначе склейку можно было бы сделать с помощью ребер в*-2> вг-1. Склеиваем область с копией области по ребрам вг, вг-ь
Получаем пару областей, имеющих на а только вершину, а на продолжении т — по ребру. Далее склеиваем по ребру в*-2 область Б4-1 (точнее, ее копию)с копией области Б4-2. И так далее до тех пор, пока не дойдем до области (копии) Б1+1, где диаграмма М состоит из областей Б1, ..., Бг.
По построению «хвоста» N области Б1, Б1+1 различные. Значит, можно приклеить копию области Б1 к области Б1+1 (копии) по ребру вг, не получив при этом сократимую пару. Значит, кольцо замыкается. Две замыкающие области Б1, Бг+1 имеют по ребру на а.
Построенная кольцевая диаграмма имеет циклически Л, Л-несократимые граничные метки, что следует из ее структуры: области с ребрами на а и т строго чередуются за исключением двух пар областей: (Б1 и копия Бг+1) и (Бг и копия Б4+1). В первой паре обе области имеют ребра на а, во второй паре обе области имеют ребра на т. Легко проверить (доказательство приводится в работах [6, 7, 11, 8]), что на граничные циклы такой кольцевой диаграммы нельза наклеить ни полосу, ни дэновскую область. Теорема доказана.
Таким образом, построение однослойной кольцевой диаграммы с Л, Л-несократимой
граничной меткой <^(а) в процессе обмена общим секретным ключом имеет место в двух
кг
случаях: для открытых ключей ткVA и т vв.
Трудоемкость построение кольцевой диаграммы складывается из трудоемкости построения диаграммы с граничной меткой т и диаграммы с граничной меткой V € ^а }. В первом случае надо сослаться на алгоритм построения периодической кольцевой однослойной диаграммы типа (2, 2), приведенный в доказательстве леммы 1. Во втором случае используется алгоритм построения «хвоста» из леммы 2. Оценим сложность этих алгоритмов.
Обе процедуры сначала строят диаграмму без учета ее зацикливания, и лишь в некоторый момент, когда принимается решение о том, что построенное слово — метка участка а построенной диаграммы, имеет достаточно большую длину, начинается поиск области, позволяющей замкнуть построенную однослойную диаграмму в кольцо.
Трудоемкость первого этапа оценить легко: для построения слоя с граничной меткой участка а длины |<^(а)| < |т| понадобится не более (|т| — 1)пв сравнений символов. То же верно и для первого этапа построения «хвоста» с граничной меткой, не превышающей по длине ^а|: понадобится не более (| V | — 1)пв сравнений символов. В итоге первые этапы используют не более (|т| — 1)пв + (|V| — 1)пв < п ■ пв — 2пв сравнений символов, т.е. для этапа 1 имеем
Т(1) = О(п).
С учетом этой оценки вместе с
Т(2) = (2Ит + 2п2М)Т5 = 2(п1 + п2)М(4пв — 2) = 2п(4пв — 2) для суммарной трудоемкости Т получения открытого ключа получаем оценку
Т = О(п).
6. Получение закрытых ключей противником и оценка сложности
Для синтеза общего секретного ключа пгУАпк-1 противник Е должен использовать не менее двух из четырех доступных ему открытых ключей пкуа , пк+1 уа п-1, п1 , пк+1ув. При этом он может использовать как сами ключи, так и их произведения. Тем не менее, в любом случае такое слово будет содержать некоторую степень п, а также некоторое случайное слово. Поэтому без ограничения общности будем полагать, что действия противника состоят в получении к и уа из пкуа или и I из .
Рассмотрим получение к и уа из открытого ключа пкуа. Далее будем обозначать открытый ключ, с которым работает противник, через е, а слово, которое синтезирует Е в процессе перебора — пту, |V | = п.
Противник осуществляет поиск закрытых ключей посредством перебора: имея сведения об общей структуре открытого ключа, Е синтезирует слово вида и варьирует значения параметров (т, у), пока не получит верное в О равенство = е.
Возможность, получения последнего равенства за конечное число шагов вытекает из разрешимости проблемы равенства слов в группах, удовлетворяющих условиям С(3)— Т(6).
Собственно проверка равенства слов основывается на утверждении о том, что единственным циклически Я, Я-несократимым словом, равным единице в группе О, является пустое слово. Для проверки равенства птуе-1 = 1 строится кольцеая Я-диаграмма с граничной меткой птуе-1 и в ней проводятся Я, Я-сокращения. При этом получается либо Я, Я-несо-кратимое слово — метка внутренней границы сформированной в процессе Я, Я-сокращений кольцевой диаграммы, либо пустое слово, что означает следующее. Построена односвязная диаграмма с граничной меткой птуе-1. Следовательно, птуе-1 = 1. Секретные ключи (т, у) найдены.
Оценим трудоемкость описанной процедуры получения закрытых ключей. Для этого, во-первых, требуется дать верхнюю оценку количества пар (т, у), которые будут использованы в процессе перебора, а во-вторых, оценить трудоемкость Я, Я-сокращений, проводимых для каждой пары (т, у).
В качестве верхней оценки будем использовать |пту| < |е|. Получить нижнюю оценку длины не удается, поэтому будем считать, что противник рассматривает значения т, начиная с 1, и для каждого фиксированного значения перебирает все слова у, начиная с пустого слова, шаг за шагом увеличивая их длину на единицу до того момента, пока не будет нарушено соотношение |пту| < |е|. Понятно, что этим перебор может и не закончиться, но оценка сложности будет дана.
Оценим количество пар (т, у), удовлетворяющих указанному соотношению для фиксированного |е|. Получаем, что т пробегает целые значения от 1 до [|е|/|п|] (при V = 1). При каждом фиксированном т в качестве V используются всевозможные слова длины от 0 до [|е| — т|п|]; при этом количество слов длины к составляет (2пх)к. В результате общее
количество пар (т, V) при фиксированном т равно
к1(т) (9_ )к1(т)
п(т) = £ (2пхГ = 2пх¡^---= М(2пх)к1(т) - 1),
2пх - 1
где
А^(т) = [|е| — т|и|, к2 х
пх — 1
Таким образом, общее количество пар (т, V) составит
N
п(т,«) = Е п (т), N
т=0
откуда
N N
им
п(т,„) = Е Ч(2пх)к1(т) — 1) = к2 Е ((2пх)И-тН — 1) > М2пх)И
т=0 т=0
Значит, = 0(п|е|), где п = 2пж.
Для каждой фиксированной пары (т, V) противнику требуется провести К, Д-сокраще-ния в диаграмме равенства слов е, Оценим трудоемкость этих сокращений, измеренную в количестве областей диаграмм. Число областей в односвязной диаграмме называют площадью диаграммы. В соответствии с известной теоремой о площади, верной для диаграмм над копредставлениями с условиями С(р)-Т(д), (р, д) е {(3, 6), (4, 4), (6, 3)}, площадь такой диаграммы ограничена квадратичной функцией длины границы диаграммы [2]. Значит, с учетом числа пар (т,^) можно оценить сложность восстановления секретных ключей произведением 0(пп) на п2, что не вносит принципиальной разницы по сравнению с экспоненциальной зависимостью числа пар (т, V) от п, где п — длина входного слова е. Итак, сложность восстановления секретных ключей растет как показательная функция п"+2.
е
Заключение
Подводя итог, скажем, что разработанная схема обмена секретными ключами по открытому каналу связи вместе с достоинством, состоящим в значительной сложности несанкционированного восстановления секретных ключей, не лишена и недостатков. Основная проблема — найти способ применения данной схемы на практике: секретные ключи, полученные по открытому каналу, представляют один элемент группы О = (X; Д), но являются в общем случае разными словами в алфавите X. Если бы группа была конечной, то можно было бы задать действие полученного общего ключа на элементы группы, получив представление подстановками. А с такой информацией уже можно строить шифры. Для бесконечной группы вопрос остается открытым.
Одним из путей решения этой проблемы является следующий. Вычислять единый представитель сформированного секретного ключа, определив его как слово, кратчайшее в лексикографическом смысле. Такой представитель единственный и предоставляет возможность дальнейшей работы обоим абонентам.
Список литературы
1. Магнус В., Каррас А., Солитэр Д. Комбинаторная теория групп: пер. с англ.. М.: Наука, 1974.456 с. [Magnus W., Karrass A., SolitarD. Combinatorial group theory. N.Y. : Interscience Publ., 1966. 444 p.].
2. Линдон Р.К., Шупп П. Комбинаторная теория групп: пер. с англ. М.: Мир, 1980. 447 с. [Lyndon R.C., Schupp P.E. Combinatorial group theory. B.; N.Y.: Springer, 1977. 339 p.].
3. Ольшанский А.Ю. Геометрия определяющих соотношений в группах. М: Наука, 1989. 446 с.
4. Gersten S.M., Short H.B. Small cancellation theory and automatic groups // Inventiones mathematicae. 1990. Vol. 102, no. 1. Pp. 305-334. DOI: 10.1007/BF01233430
5. Безверхний Н.В. Разрешимость проблемы вхождения в циклическую подгруппу в группах с условием C(6) // Фундаментальная и прикладная математика. 1999. Т. 5, №1. С. 39-46.
6. Безверхний Н.В. Нормальные формы для элементов бесконечного порядка в группах с условием C(3)-T(6) // Изв. Тульского гос. ун-та. Естественные науки. 2010. Вып. 1. С. 6-25.
7. Безверхний Н.В. Проблема сопряженного вхождения в циклическую подгруппу в группах с условием C(3)-T(6) // Дискретная математика. 2012. Т. 24, вып. 4. С. 27-46.
8. Безверхний В.Н. О нормализаторах элементов в C(p)-T(д)-группах // Алгоритмические проблемы теории групп и полугрупп: Межвуз. сб. науч. тр. Тула: Изд-во Тул. гос. педагогич. ун-та им. Л.Н.Толстого, 1994. С. 4-58.
9. Безверхний Н.В. О кручении и разрешимости проблемы вхождения в циклическую подгруппу в группах с условием C(6) // Деп. ВИНИТИ 1995. №2033-В95.
10. Bogley W.A., Pride S.J. Aspherical relative presentations // Proc. of the Edinburg Math. Soc. 1992. Vol. 35, no. 1. Pp. 1-39. DOI: 10.1017/S0013091500005290
11. Безверхний Н.В. Односторонние функции и композиция проблем сопряженности и дискретного логарифмирования в C(3)-T(6)-группах // Математика и математическое моделирование. 2015. №5. С. 43-63 DOI: 10.7463/mathm.0515.0820675
12. Безверхний Н.В., Чернышёва О.А. Односторонние функции, основанные на проблеме дискретного логарифмирования в группах с условиями C(3)-T(6) // Наука и образование. МГТУ им. Н.Э. Баумана. Электрон. журн. 2014. №10. С. 70-101. DOI: 10.7463/1014.0729483
13. Безверхний В.Н., Паршикова Е.В. Решение проблемы вхождения в циклическую подгруппу в группах с условиями C(4)-T(4) // Алгоритмические проблемы теории групп и полугрупп: Межвуз. сб. науч. тр. Тула: Изд-во Тул. гос. педагогич. ун-та им. Л.Н. Толстого, 2001. С. 120-139.
14. Глухов М.М. К анализу некоторых систем открытого распределения ключей, основанных на неабелевых группах // Математические вопросы криптографии. 2010. T. 1, №4. С. 5-22.
15. ПаршиковаЕ.В. Проблема слабой степенной сопряженности в группах с условием C(4)-T(4) // Алгоритмические проблемы теории групп и полугрупп: Межвуз. сб. науч. тр. Тула: Изд-во Тул. гос. педагогич. ун-та им. Л.Н. Толстого, 2001. С. 179-184.
16. Shor P.W. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer // SIAM J. on Computing. 1997. Vol.26, no. 5. Pp. 1484-1509. DOI: 10.1137/S0097539795293172
17. Anshel I., Anshel 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
18. Ko K.H., Lee S.J., Cheon J.H., Han J.W., Kang J.-S., Park C. New public-key cryptosystem using braid groups // Advances in Cryptology — CRYPTO 2000: 20th Annual Intern. Cryptology Conf. (Santa Barbara, CA, USA, August 20-24, 2000): Proc. B.; Hdbl.: Springer, 2000. Pp. 166-183. DOI: 10.1007/3-540-44598-6.10
19. Yamamura A. Public-key cryptosystems using the modular group // Public-key cryptography: PKC 1998: 1st Intern. Workshop on practice and theory in public key cryptography (Pacifico Yokohama, Japan, February 5-6, 1998): Proc. B.; Hdbl.: Springer, 1998. Pp. 203-216. DOI: 10.1007/BFb0054026
20. Yamamura A. A functional cryptosystem using a group action // Information security and privacy: 4th Australasian Conf. on Information Security and Privacy: ACISP 1999 (Wollongong,NSW, Australia, April 7-9,1999): Proc. B.; Hdbl.: Springer, 1999. Pp. 314-325. DOI: 10.1007/3-540-48970-3,26
21. Paeng S.H., HaK.C., Kim J.H., Chee S., ParkC. New public key cryptosystem using finite non abelian groups // Advances in cryptology - CRYPTO 2001: 21st Annual Intern. Cryptology Conf. (Santa Barbara, CA, USA, August 19-23, 2001): Proc. B.; Hdbl.: Springer, 2001. Pp. 470-485. DOI: 10.1007/3-540-44647-8,28
22. Paeng S.H., Kwon D., Ha K.-Ch., Kim J.H. Improved public key cryptosystem using finite non abelian groups. Cryptology ePrint Archive: Report 2001/066. Режим доступа: http://eprint.iacr.org/2001/066, (дата обращения 15.12.2018).
23. Sakalauskas E., Tvarijonas P., Raulinaitis A. Key agreement protocol (KAP) using conjugacy and discrete logarithm problems in group representation level // Informatica. 2007. Vol. 18, no. 1. Pp. 115-124.
24. Новиков П.С. Об алгоритмической неразрешимости проблемы тождества словв теории групп // Тр. Матем. ин-та АН СССР. 1955. Т. 44. С. 1-444.
Mathematics i Mathematical Modelling
http://mathmelpub.ru ISSN 2412-5911
Asymmetric Secret Key Transfer Scheme over an Open Channel in k-Deterministic Groups with the Conditions C(3)-T(6)
1 it
Bezverkhniy N. V.1' , Nikitina M. V.2 * nbezv@mail.ru
:Bauman Moscow State Technical University, Russia; 2Russian Telecommunications Corporation, Moscow, Russia
Keywords: group; presentation; group diagram; equality problem
The article solves a problem of developing a scheme to provide a secret key exchange over an open communication channel. The basic idea of creating such a scheme is well known. It is based on a concept of the one-way function. This refers to the functions whose values are calculated much easier than the inverse function values.
When developing the one-way functions a recognition algorithm of words equality in groups with conditions of small cancellation C(3)-T(6) is used. In this case, the group is represented by a set of its generating and determining relations. All the work to accomplish development of algorithms and evaluate their complexity is carried out using the group diagrams of equality. The existence of such diagrams is proved in the well-known van Campen lemma. The paper result is the following.
The proposed scheme for the exchange of secret keys has the following properties. Direct algorithms have a linear complexity, and a complexity of the inverse algorithms is exponential. It should be noted that the algorithms complexity was estimated by the areas of the corresponding group diagrams, which are determined by the number of areas they include. The constructed secret key represents some element of a pre-selected group with conditions C(3)-T(6). It can be represented in an infinite number of ways by words in the alphabet from the generators of the group. Thus, the remaining obstacle to the practical application of the key exchange scheme developed is the ambiguity of the secret key record. Finding a common representative as the lexicographically shortest word in the class of equal words turns out to be too difficult. Thus, this question remains open. Although the task of exchanging secret keys itself can be formally considered as solved.
References
1. Magnus W., Karrass A., SolitarD. Combinatorial group theory. N.Y.: IntersciencePubl., 1966.
444 p. (Russ. ed.: Magnus W., Karras A., Solitar D. Kombinatornaia teoriia grupp. Moscow:
NaukaPubl., 1974. 455 p.).
Mathematics and Mathematical Modeling, 2018, no. 6, pp. 88-111.
DOI: 10.24108/mathm.0618.0000151
Received: 04.11.2018
© NEICON
2. Lyndon R.C., Schupp P.E. Combinatorial group theory. B.; N.Y.: Springer, 1977. 339 p. (Russ. ed.: Lyndon R.C., Schupp P.E. Kombinatornaia teoriia grupp. Moscow: Mir publ., 1980. 447 p.).
3. Olshanskij A.Yu. Geometriia opredeliayushchikh sootnoshenij v gruppakh [Geometry of defining relations in groups]. Moscow: Nauka Publ., 1989. 446 p. (in Russian).
4. Gersten S.M., Short H.B. Small cancellation theory and automatic groups. Inventiones mathe-maticae, 1990, vol. 102, no. 1, pp. 305-334. DOI: 10.1007/BF01233430
5. Bezverkhnii N.V. On the solvability of the general word problem for a cyclic subgroup of a group with the condition C(6). Fundamental'naia iprikladnaia matematika [Fundamental and Applied Mathematics], 1999, vol. 5, no. 1, pp. 39-46 (in Russian).
6. Bezverkhnii N.V. Normal forms for elements of infinite order in groups with conditions C (3)-T (6). Izvestiia Tulskogo gosudarstvennogo universiteta. Estestvennye nauki [Proc. of the Tula State Univ. Natural science], 2010, no. 1, pp. 6-25 (in Russian).
7. Bezverkhnii N.V. The power conjugacy search problem in a cyclic subgroup in groups with condition C (3)-T (6). Discrete Mathematics and Applications, 2012, Vol. 22, no. 5-6, pp. 521544. DOI: 10.1515/dma-2012-036
8. Bezverkhnii V.N. O normalizatorakh elementov v C(p)-T(q)-gruppakh [On normalizers of elements in C(p)-T(q) groups]. Algoritmicheskie problemy teorii grupp i polugrupp [Algorithmic problems of group theory and semigroups]. Tula: Tula State Pedagogical Univ. Publ., 1994. Pp. 4-58 (in Russian).
9. Bezverkhnii N.V. O kruchenii i o razreshimosti problemy vkhozhdeniia v tsiklicheskuyu pod-gruppu v gruppakh s usloviem C(6) [On torsion o and solvability of the problem of entering into cyclic subgroup in groups with condition C(6)]. Dep. VINITI 1995. No. 2033-B95 (in Russian).
10. Bogley W.A., Pride S.J. Aspherical relative presentations. Proc. of the Edinburg Math. Soc., 1992, vol. 35, no. 1, pp. 1-39. DOI: 10.1017/S0013091500005290
11. Bezverkhnii N.V. One-way functions and composition of conjugacy and discrete logarithm problems in the small cancellation groups. Matematika i matematicheskoe mod-elirovanie [Mathematics & Mathematical Modelling], 2015, no. 5, pp. 43-63. DOI: 10.7463/mathm.0515.0820675 (in Russian)
12. Bezverkhnii N.V., Chernysheva O.A. One-way functions based on the discrete logarithm problem in the groups meeting conditions C(3)-T(6). Nauka i obrazovanie MGTU im N.E. Baumana [Science and Education of the Bauman MSTU], 2014, no. 10, pp. 70-101. DOI: 10.7463/1014.0729483 (in Russian)
13. Bezverkhnii V.N., Parshikova E.V. Reshenie problem vkhozhdeniia v tsiklicheskuyu pod-gruppu v gruppakh s usloviem C(4)-T(4) [The solution of the problem of entering the cyclic subgroup in groups with conditions C (4)-T (4)]. Algoritmicheskie problemy teorii grupp ipoly-grupp [Algorithmic problems of group and semigroup theory]. Tula: Tula State Pedagogical Univ. Publ., 2001. Pp. 120-139 (in Russian).
14. Glukhov M.M. On the analysis of some public key distribution systems based on non-abelian groups. Matematicheskie voprosy kriptografii [Mathematical Problems of Cryptography], 2010, vol. 1, no. 4, pp. 5-22 (in Russian).
15. ParshikovaE.V. Problema slaboj stepennoj sopriazhennosti v gruppakh s usloviem C(4)-T(4) [The problem of weak power conjugacy in groups with condition C (4)-T (4)]. Algoritmicheskie problemy teorii grupp i polygrupp [Algorithmic problems of group theory and semigroups]. Tula: Tula State Pedagogical Univ. Publ., 2001. Pp. 179-184 (in Russian).
16. Shor P.W. Polynomial-time algorithms for prime factorization and discrete logarithms on a quantum computer. SIAM J. on Computing, 1997, vol.26, no. 5, pp. 1484-1509. DOI: 10.1137/S0097539795293172
17. Anshel I., Anshel 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
18. Ko K.H., Lee S.J., Cheon J.H., Han J.W., Kang J.-S., Park C. New public-key cryptosystem using braid groups. Advances in Cryptology — CRYPTO 2000: 20th Annual Intern. Cryptology Conf. (Santa Barbara, CA, USA, August 20-24, 2000): Proc. B.; Hdbl.: Springer, 2000. Pp. 166-183. DOI: 10.1007/3-540-44598-6-10
19. Yamamura A. Public-key cryptosystems using the modular group. Public-key cryptography: PKC 1998: 1st Intern. Workshop on practice and theory in public key cryptography (Pacifico Yokohama, Japan, February 5-6, 1998): Proc. B.; Hdbl.: Springer, 1998. Pp. 203-216. DOI: 10.1007/BFb0054026
20. Yamamura A. A functional cryptosystem using a group action. Information security and privacy: 4th Australasian Conf. on Information Security and Privacy: ACISP 1999 (Wollongong, NSW, Australia, April 7-9, 1999): Proc. B.; Hdbl.: Springer, 1999. Pp. 314-325. DOI: 10.1007/3-540-48970-3-26
21. Paeng S.H., Ha K.C., Kim J.H., Chee S., Park C. New public key cryptosystem using finite non abelian groups // Advances in cryptology - CRYPTO 2001: 21st Annual Intern. Cryptology Conf. (Santa Barbara, CA, USA, August 19-23, 2001): Proc. B.; Hdbl.: Springer, 2001. Pp. 470-485. DOI: 10.1007/3-540-44647-8-28
22. Paeng S.H., Kwon D., Ha K.-Ch., Kim J.H. Improved public key cryptosystem using finite non abelian groups. Cryptology ePrint Archive: Report 2001/066. Available at: http://eprint.iacr.org/2001/066, accessed 15.12.2018.
23. Sakalauskas E., Tvarijonas P., Raulinaitis A. Key agreement protocol (KAP) using conjugacy and discrete logarithm problems in group representation level. Informatica, 2007, vol. 18, no. 1,pp. 115-124.
24. Novikov P.S. On the algorithmic unsolvability of the word problem in group theory. Trudy Matematicheskogo instituta AN SSSR [Proc. of the Mathematical Institute of the Academy of Sciences of USSR], 1955, vol. 44, pp. 1-144 (in Russian).