2012 Теоретические основы прикладной дискретной математики №3(17)
УДК 512.62
О ПОСТРОЕНИИ ВОЗМОЖНО ОДНОСТОРОННИХ ФУНКЦИЙ НА ОСНОВЕ АЛГОРИТМИЧЕСКОЙ НЕРАЗРЕШИМОСТИ ПРОБЛЕМЫ ЭНДОМОРФНОЙ СВОДИМОСТИ В ГРУППАХ
С. Ю. Ерофеев, В. А. Романьков Омский государственный университет им. Ф. М. Достоевского, г. Омск, Россия E-mail: stepan.erofeev@gmail.com, romankov48@mail.ru
Рассматривается схема построения возможно односторонней функции в группе с разрешимой проблемой равенства и неразрешимой проблемой эндоморфной сводимости. Анализируются предпосылки криптографической стойкости предлагаемой схемы. В качестве приложения предлагается схема аутентификации с нулевым разглашением пользователей в системе. Отмечается, что для её криптостойкости требуется неразрешимость более сильной проблемы двукратной эндоморфной сводимости.
Введение
Работа относится к «криптографии, основанной на группах» (group-based cryptography),— современному направлению, возникшему на рубеже XX и XXI столетий. Основными объектами в нём являются абстрактные бесконечные группы, а основной целью — построение на этих группах криптографических схем и протоколов. Исследования ведутся методами теории групп, теории сложности и теории вычислений.
Современное состояние полученных в этой области результатов отражено в монографиях [1, 2] (см. также обзор второго автора [3]).
Основной целью настоящей работы является представление конструкции возможно односторонней функции на основе алгоритмической неразрешимости проблемы эндоморфной сводимости в группах.
Односторонние (в другой терминологии однонаправленные) функции являются неотъемлемой частью криптографических схем и протоколов. Теоретически их существование при формальном определении до сих пор не установлено. В то же время односторонние функции являются основным инструментом во многих разделах и приложениях криптографии, в частности, они применяются в электронных подписях, протоколах аутентификации, алгоритмах генерации псевдослучайных последовательностей и т. п. Конечно, используемые с указанной целью функции можно назвать только возможно односторонними.
Относительно общей теории односторонних функций см. монографии [4-6]. В работах Л. A. Левина [7, 8] приведена универсальная функция, которая автоматически является односторонней, если существует хотя бы одна формально односторонняя функция. Такие функции названы полными односторонними функциями. Для их построения Л. А. Левин использовал нумерацию всех машин Тьюринга [7] и комбинаторный тайлинг [8]. Отсюда видно, что такое построение имеет чисто теоретическое значение. В работе А. А. Кожевникова и С. И. Николенко [9] приведены другие примеры полных односторонних функций.
В данной работе предлагается новый кандидат на роль односторонней функции. В качестве платформы для неё рассматривается бесконечная группа с разрешимой
проблемой равенства и неразрешимой проблемой эндоморфной сводимости. Конкретное предложение — свободная метабелева группа Мп достаточно большого ранга п.
Теоретическая база в данном случае была заложена в работе В. А. Романькова [10], где доказана неразрешимость проблемы эндоморфной сводимости в свободных мета-белевых группах достаточно большого ранга. Заметим, что разрешимость проблемы равенства в свободных метабелевых группах ко времени появления работы [10] была не только хорошо известна, но уже существовали вполне эффективные с практической точки зрения алгоритмы её решения.
Более точно, В. А. Романьков в работах [10, 11] ввёл в рассмотрение интерпретацию диофантовых уравнений в свободных нильпотентных группах ступени ^ 9 и в свободных метабелевых группах достаточно большого ранга, позволяющую перенести алгоритмическую неразрешимость 10-й Проблемы Гильберта, установленную Ю. В. Матиясевичем в [12, 13] (см. также [14]), на алгоритмическую неразрешимость проблемы эндоморфной сводимости в рассматриваемых группах. Оценка на ранг следовала из результатов Матиясевича.
В работе [3] дан обзор исследований по криптографии, основанной на группах. Объяснены возможности использования неразрешимых и трудноразрешимых алгоритмических проблем теории групп в качестве основы для построения криптографических схем и протоколов. Об этих возможностях и их реализациях см. также [1, 2, 15-19].
В работе [3] введено понятие диофантовой криптографии. Показана универсальность диофантова языка, позволяющая записывать на нём функции многих известных схем и протоколов криптографии. Подчёркнута объединяющая роль диофантовой криптографии. Описаны её возможности, вытекающие из неразрешимости 10-й Проблемы Гильберта. Данная работа также основана на представленном в [3] материале. Более того, в [3] подробно обоснованы достоинства свободных метабелевых групп как платформ для построения криптографических схем и протоколов, что также лежит в основе предлагаемой конкретной реализации протокола аутентификации с нулевым разглашением.
1. Односторонние функции
Неформально односторонней называется функция /, значение у = / (х) которой легко вычислимо по аргументу х, а обращение, то есть вычисление по данному у хотя бы одного аргумента х1, такого, что у = /(х;), является трудной задачей.
Обычно первое из этих условий трактуется как существование детерминированного алгоритма, вычисляющего по аргументу (входу) х значение у = /(х) за время (количество шагов), не превышающее р(|х|), где р(-) —некоторый полином, |х| —размер входа.
Второе условие, то есть трудность обращения, означает, что любой вероятностный алгоритм, полиномиальный по |у|, вычисляет х1 с условием у = /(х;) с пренебрежимо малой вероятностью.
В первом томе монографии О. Голдрейха [4] даны следующие определения.
Определение 1 (сильно односторонняя функция). Функция / : {0,1}* ^ {0,1}* называется сильно односторонней, если выполнены следующие требования:
а) существует детерминированный полиномиальный по времени алгоритм А, вычисляющий по аргументу х значение у = /(х);
б) для любого вероятностного полиномиального по времени алгоритма В, любого полинома р(-) и всех достаточно больших натуральных чисел п выполняется неравен-
ство
Рг [В(/(К,), 1п) ё /-1(/(К,)] <^1).
где ип означает случайную величину, равномерно распределенную на {0,1}п. Заметим, что алгоритму предписан размер его выхода. Это объясняется тем, что размер аргумента х может не вычисляться как полиномиальная функция от |у|. В [4] приводится пример, когда в качестве значения функции /(х) берется |х|. Заметим, однако, что в данном примере вход х' с условием у = / (х') находится очевидным образом и может быть записан с использованием компрессии полиномиально от | у|. Это показывает, что определение 1, возможно, нуждается в коррекции. Алгоритмы с компрессионной записью получили в настоящее время существенное развитие в теории вычислений и в теории групп; см. по этому поводу [20 - 22].
Определение 2 (слабо односторонняя функция). Функция / : {0,1}* ^ {0,1}* называется слабо односторонней, если выполнены следующие требования:
а) = а) из определения 1;
б) существует полином р(-), такой, что для любого вероятностного полиномиального по времени алгоритма В и всех достаточно больших натуральных чисел п выполняется неравенство
Рг [В(/(Цп), 1п) ё /-1(/(Цп)] >^1,.
В [4] доказано, что существование слабо односторонней функции влечет существование сильно односторонней функции.
Приведённые определения связаны с бинарным представлением аргументов и значений функций. Для задания возможно односторонней функции, определённой на группе, можно использовать следующие соображения. Во-первых, на конечно порождённой группе О с фиксированным множеством порождающих элементов можно задать словарную метрику, согласно которой расстояние |д| от элемента д до 1 (его длина) равна наименьшей длине группового слова от фиксированного множества порождающих элементов группы, записывающего элемент д. Расстояние между элементами д и / определяется как |д/-1|. Метрика позволяет естественным образом определить сферы §г и шары Вг радиуса г, которые дадут стратификацию множества элементов группы. Определения 1 и 2 переписываются следующим образом.
Определение 1' (сильно односторонняя функция). Функция ^ : О ^ О называется сильно односторонней, если выполнены следующие требования:
а) существует детерминированный полиномиальный по времени алгоритм А, вычисляющий по аргументу д значение / = <^(д);
б) для любого вероятностного полиномиального по времени алгоритма В, любого полинома р(-) и всех достаточно больших натуральных чисел п выполняется неравенство
Рг [В(^(Цп),Вп) ё ^_1(^(Цп)] < рП),
где ип означает случайную величину, равномерно распределенную на Вп. Как и раньше, алгоритму предписан размер его выхода.
Определение 2' (слабо односторонняя функция). Функция ^ : О ^ О называется слабо односторонней, если выполнены следующие требования:
а) = а) из определения 1' ;
б) существует полином p(-), такой, что для любого вероятностного полиномиального по времени алгоритма B и всех достаточно больших натуральных чисел n выполняется неравенство
Pr [B(p(U„),Bn) £ ^-1(^(U„)] > p(L•
Во многих случаях приведённые определения сводятся к определениям 1 и 2 кодированием элементов группы бинарными последовательностями.
Известными кандидатами на роль односторонних являются следующие функции.
Степенная функция
f : x I—> c = xe mod n, (1)
определённая на кольце Zn вычетов по модулю n, где n = pq — произведение больших различных (секретных) простых чисел. Для её обратимости требуется взаимная простота показателя e со значением функции Эйлера <^(n) = (p — 1)(q — 1).
Задача обращения функции (1) равносильна нахождению решения диофантова уравнения
c = Cl + nZ2
относительно переменных Ci, C2, или, что равносильно, задаче обращения диофантовой функции
d(Ci,Z2) = Cl + nZ2.
Функция (1) используется в качестве функции шифрования в системе RSA и в качестве цифровой подписи на основе RSA. Эта функция фигурирует также в ряде других схем, базирующихся на сложности задачи разложения чисел на множители.
Показательная функция
g : x I—► (2)
определённая на кольце целых чисел Z со значениями в конечном поле Fq порядка q, где g — порождающий элемент мультипликативной (циклической) группы F*. Криптостойкость её основана на трудности вычисления дискретного логарифма в конечных полях.
Её обращение равносильно обращению некоторой диофантовой функции d(Ci, • • •, Cfc)• Это следует из результатов Ю.В. Матиясевича [12, 13].
В случае простого конечного поля Fp = Zp характеристики p явный вид полинома d(Cb • • • , Cfc) можно найти в [23, 24].
Функция (2) используется, например, в системе шифрования Эль Гамаля, известных протоколах Диффи — Хеллмана, Масси — Омуры, базовом протоколе Эль Гамаля цифровой подписи и других схемах (см. по этому поводу [25, 26]).
Два приведённых выше примера криптографических функций являются частными случаями диофантовых функций. Диофантова криптография, относительно которой см. [3], позволяет не только использовать универсальный диофантов язык для представления многих известных криптографических функций, но также играть объединяющую роль для этих функций, записывая системы соответствующих им диофантовых уравнений. При этом появляется дополнительная возможность комбинирования и преобразования переменных.
2. 10-я Проблема Гильберта и проблема эндоморфной сводимости 2.1. 10-я П р облема Гильберта
Диофантовым называется полином d(Zi,... , Cfc) с целыми коэффициентами от независимых коммутирующих переменных Zi,... , Cfc.
Уравнение вида
d(Ci,...,Ck ) = 0 (3)
называется диофантовым уравнением. Ю. В. Матиясевич в работе [12] (полное доказательство в [13], см. также [14]) установил неразрешимость 10-й Проблемы Гильберта, тем самым завершив усилия ряда математиков, в частности Д. Робинсон, М. Дэвиса и Х. Патнэма. А именно, он доказал, что не существует алгоритма, определяющего по произвольному диофантову уравнению (3), обладает ли оно решением в целых числах. Данный результат часто называют неразрешимостью 10-й Проблемы Гильберта. Более того, Ю. В. Матиясевич заметил, что существует фиксированный диофантов полином do(Ci,... , Cfc), такой, что алгоритмически неразрешима проблема существования решений в целых числах в классе диофантовых уравнений вида
do (Ci,..., Cfc) = С, (4)
где с — произвольное целое число.
В работе Ю. В. Матиясевича и Д. Робинсон [27] неразрешимость 10-й Проблемы
Гильберта установлена для класса уравнений от 13 переменных, в докладе Ю. В. Ма-
тиясевича [28] было объявлено, что количество переменных может быть уменьшено до 9. Эта оценка изложена со всеми деталями в работе Д. Джонса [29].
Функция do(Ci,... , Cfc) может рассматриваться в качестве кандидата на роль односторонней функции. Действительно, любое её значение вычислимо за полиномиальное время от |Ci| +... + |Ck |. В то же время из-за неразрешимости 10-й Проблемы Гильберта нельзя указать полиномиальный по времени алгоритм, вычисляющий аргумент этой функции с заданным значением.
2.2. Проблема эндоморфной сводимости
Будем говорить, что в эффективно заданной группе G разрешима проблема эндоморфной сводимости, если существует алгоритм, решающий для любой пары элементов g и f группы G, является ли f образом элемента g для какого-либо эндоморфизма € End G или нет.
Эффективность задания группы G, способы записи её элементов и способы задания эндоморфизмов могут быть разными. Подробно об этом говорится в работе [3]. В классическом случае группа G предполагается конечно определённой и задаётся своим представлением через конечные множества порождающих элементов и определяющих соотношений вида
P(G) = (хь ... ,Xn|ri = 1,... ,rm =1),
где ri,..., rm — групповые слова от xi,..., xn, называемые определяющими словами.
Это означает, что группа G есть фактор-группа Fn/R свободной группы ранга n с базисом {xi,... , xn} по нормальному замыканию R = нз(г^ ... , rm), то есть по наименьшей нормальной подгруппе свободной группы , содержащей определяющие слова ri,... , rm. Группа G является каноническим гомоморфным образом группы относительно гомоморфизма g М gR. Ядром этого гомоморфизма является R. Группа G порождается элементами y = x^R для i = 1,... , n. Обычно эти элементы обозначают
так же, как их прообразы — через £ (г = 1,..., п). Элементы группы О записываются, вообще говоря, неоднозначно, как групповые слова от порождающих. Эндоморфизм задается отображением порождающих £ м для г = 1,... , п. Не всякое такое отображение определяет эндоморфизм. Необходимым и достаточным условием для такого определения является проверка того, что значения определяющих слов после подстановки вместо порождающих элементов их образов равны 1 в группе О. Если группа О свободна с базисом {х1,... , хп}, то есть множество определяющих соотношений пусто, или свободна в некотором многообразии С групп (свободная абелева, нильпотентная, метабелева и т. д.), то любое отображение порождающих элементов однозначно продолжается до эндоморфизма группы. Относительно многообразий групп см. монографию Х. Нейман [30].
Легко показать, что проблема эндоморфной сводимости разрешима для любой конечно порождённой абелевой группы. Из разрешимости уравнений в свободной группе при любом п, доказанной Г. С. Маканиным [31], следует разрешимость проблемы эндоморфной сводимости в группе ^га. В то же время найдены достаточно просто задаваемые группы, в которых проблема эндоморфной сводимости оказалась неразрешимой. Среди них свободные метабелевы группы Мп достаточно большого ранга п. Перейдём к описанию этого результата работы [10] (см. также [3]).
Свободная метабелева группа Мп ранга п определяется как фактор-группа свободной группы ранга п по второму коммутанту ^. Она является свободной группой многообразия всех метабелевых групп А2. Для свободных порождающих ж1,...,жга группы Мп определяются базисные коммутаторы —коммутаторы от элементов базиса х1,...,вида [... [[х^,£¿2],£¿3],... ,£гг], где I ^ 2 называется весом коммутатора и выполняются неравенства г1 > г2; г2 ^ г3 ^ ... ^ ц. Сами порождающие х1,... , также считаются базисными коммутаторами веса 1. В базисных коммутаторах скобки стоят слева направо. Коммутаторы с такой расстановкой скобок называются левонормированными или простыми. Для них внутренние скобки обычно не указываются.
Известно [32, 33], что образы базисных коммутаторов веса г относительно канонического гомоморфизма Мп м Мп/7^+1Мп образуют базис свободной абелевой группы 7гМга/7г+1Мга. Здесь 7^Мп означает член нижнего центрального ряда группы Мп с номером г. Для произвольной группы О по определению 71О = О, 72О = О1 (коммутант) и для любого г ^ 3 полагается 7^О = [7^-1О, О]. Напомним, что для произвольных подмножеств А и В группы О выражение [А, В] означает взаимный коммутант этих подмножеств, то есть подгруппу, порождённую в О всеми коммутаторами вида [а,Ь], где а € А, Ь € В. Группа О называется нильпотентной, если для некоторого г имеем 7^О = 1. Наименьшее г с этим свойством называется ступенью нильпотентности группы О. Тривиальная группа имеет по определению ступень нильпотентности 0, нетривиальная абелева группа — ступень 1 и т. д. Для более детальной информации см. [30, 32-35].
Упорядочим все базисные коммутаторы группы Мп по возрастанию весов. Продолжим этот частичный порядок до полного, упорядочив между собой базисные коммутаторы одного веса произвольным образом. Пусть С1,... , с* (£ = ¿(г)) —полный список всех базисных коммутаторов веса не больше чем г в заданном порядке. Обычно считают, что с^- = £ для = 1,... , п, то есть что порядок на порождающих элементах как базисных коммутаторах веса 1 соответствует порядку на индексах. Тогда любой
элемент группы Мп при п ^ 2 для любого г ^ 1 однозначно записывается в виде
* к■
д = П с/ (mod7i+1M„) для некоторых к7- € Ъ.
.7 = 1
Таким образом по модулю 7г+1Мга элементы группы Мп кодируются наборами целых чисел (к1,... , к*), где £ = ¿(г). Компоненты набора будем называть координатами элемента д по модулю 7г+1Мга. Легко видеть, что координаты при различных г соответствуют друг другу в очевидном смысле.
Возьмём множество диофантовых уравнений вида (4). Считаем левую часть произвольным полиномом. Построим по такому уравнению пару элементов группы Мк+2. Элемент д строится следующим образом. Пусть наибольшая степень мономов в записи левой части (4) равна т. Полагаем в = т, если т ^ 4, и в = 6, если т ^ 3. Выделим два базисных элемента х1 и х2. Каждой переменной сопоставим элемент базиса ж^+2. Пусть моном £{1 ... Ск" входит в каноническую запись полинома ¿0(Съ ... , С/) с коэффициентом Ь. Сопоставим ему степень базисного коммутатора веса в + 2 вида
[£2, £1, £2,. . . , £2, £з,. . . , £з,. . . , £к,. . . , £к]Ь,
где порождающий £ для ] = 3,... , к + 2 имеет /7-2 вхождений, ж1 —одно вхождение, ж2 имеет в — ¿1 — ... — // — 1 вхождение. Обозначим через V (¿0) произведение всех полученных степеней базисных коммутаторов веса в + 2 (по одному для каждого монома). Определим первый из элементов как
д = [£2,£1,£1,£2^ (¿о).
Второй элемент определим как
f = f (с) = [£2,£1,£1,£2][£2,£1,£2,. . . ,£2]с, (5)
где базисный коммутатор Н = [ж2, £1, ж2,... , ж2] второго множителя имеет вес в + 2.
В [10] доказано, что если элемент f является эндоморфным образом элемента д в группе Мк+2 по модулю 7з+3 Мк+2 для некоторого эндоморфизма ^ : Мк+2 м Мк+2, то
^(^¿) = £ (mod 72Мк+2) для г = 1, 2. (6)
И если
^(ят,- ) = жaJ-2 ж2,-2 (mod 72Мк+2) для ^ = 3,...,к + 2, (7)
то ^1 = в1,... ,Ск = вк является решением диофантова уравнения (4). Таким образом, если бы существовал алгоритм, решающий проблему эндоморфной сводимости фиксированного элемента д группы Мк+2 к элементу f = f (с) для произвольного целого числа с по модулю 7«+3Мк+2, то существовал бы алгоритм, решающий проблему существования решения у уравнений вида (4). Как мы отмечали выше, такого алгоритма нет. Значит, проблема эндоморфной сводимости в группе Мк+2 по модулю 7«+3Мк+2 алгоритмически неразрешима. Наоборот, по любому решению ^1 = в1,...,Ск = вк уравнения (4) определяется эндоморфизм ^ со свойством (6), соответствующий отображению (7) для а = 0 (^ = 1,... , к). В свою очередь, в [10] (см. также [3]) показано,
что проблема эндоморфной сводимости по модулю 7з+3Мк+2 сводится к проблеме эн-
доморфной сводимости в группе Мг для некоторого г = к + 2+ рк+2,з+3, откуда следует её неразрешимость в группе М^ при любом г' ^ г. Объясним это более подробно.
Указанные выше построения возможны для произвольного диофантова уравнения ¿(Съ... , Ск) = с. Если построить элемент д = д(й), где й — многочлен из левой части уравнения, то элемент f = f (с) является эндоморфным образом элемента д тогда и только тогда, когда данное диофантово уравнение разрешимо в целых числах. Это называется интерпретацией диофантовых уравнений в свободных метабелевых группах. Легко видеть, что эндоморфная сводимость элемента д к элементу f (с) в группе Мк+2 по модулю 7«+3Мк+2 записывается в форме группового уравнения вида
д(У1,У2,...,Ук+2) = f (с) (т^ Т«+3^Мк+2), (8)
где в левой части порождающие £1,£2,... ,£к+2 заменены на соответствующие неизвестные у1, у2,... , Ук+2. В правой части стоит произведение базисного коммутатора [£2,£1,£1 ,£2] на степень с фиксированного базисного коммутатора Н = Н(£1 ,£2) веса в + 2 из (5), то есть элемент фиксированного смежного класса по циклической подгруппе гр(Н).
Известно [36], что любая вербальная подгруппа группы Мп, в частности любая подгруппа 7гМга, для произвольного п имеет конечную вербальную ширину. Это означает, что для любой пары натуральных чисел п, г существует слово ип,г = ипД^,... , ),
такое, что любой элемент подгруппы 7^Мга является значением этого слова. Точный вид слова ига,г указан, например, в [3]. Поэтому уравнение (8) разрешимо в группе Мк+2 тогда и только тогда, когда в группе Мк+2 разрешимо уравнение
д(У1,У2,...,Ук+2)ик+2,5+3(^1 , . . . , ^Рк+2,в+3 ) = f (с). (9)
В свою очередь, алгоритмическая неразрешимость уравнений вида (9) означает неразрешимость проблемы эндоморфной сводимости в группе Мг, где г = к + 2 + +Рк+2,«+3. Очевидно, что проблема эндоморфной сводимости будет неразрешима и для любого большего чем г ранга.
3. Общая схема построения односторонних функций на основе неразрешимости проблемы эндоморфной сводимости
Пусть О — эффективно заданная группа, в которой разрешима проблема равенства и неразрешима проблема эндоморфной сводимости. Допустим, что нам необходимо построить на группе О одностороннюю функцию со значением также в О. Как правило, эффективно заданные группы конечно порождены. Поэтому предполагаем, что в О существует конечное порождающее множество = {£1,... ,£„}. Произвольный элемент д группы О записывается как групповое слово д = д(£1,..., ) от фикси-
рованных порождающих элементов. Каждый эндоморфизм ^ : О м О однозначно определяется своими значениями на элементах порождающего множества Хп. Если <^(£г) = Нг для г = 1,... , п, то значением элемента д = д(£1,... , £п) будет элемент р(д) = д(Н1,... , Нп). Однако не любое отображение ^ м О продолжается до эндоморфизма в общем случае. Поэтому представляется перспективным выбирать в качестве группы О свободную группу конечного ранга некоторого многообразия групп £. Тогда любое отображение ^ м О, где — базис группы О (т. е. множество свободных порождающих группы О в многообразии £), однозначно определяет эндоморфизм ^ : О м О. Для его задания достаточно определить образы базисных элементов, записав их в виде групповых слов от этих элементов. Ещё лучше, если в группе О есть нормальная форма записи элементов. Тогда эндоморфизм можно задать, записывая образы базисных элементов в этой нормальной форме. В работе [3] отмечено, что свободные метабелевы группы отвечают описанным требованиям.
Определим функцию ^ : G ^ G, сопоставляющую элементам группы, записанным в нормальной форме, нормальные формы их значений относительно эндоморфизма <^. Для эффективности соответствующих вычислений необходимо, чтобы в группе G существовал эффективный алгоритм записи элемента в нормальной форме по его представлению в виде группового слова от порождающих элементов или в каком-то другом виде, отвечающем эффективности задания группы G. Необходима также эффективная процедура вычисления нормальных форм обратного элемента и произведения элементов. Если группа G удовлетворяет этим требованиям, то получаем эффективно вычислимую функцию, определённую на множестве нормальных форм элементов группы G со значениями в этом же множестве. Если определить для элементов группы G некоторую функцию длины, например ввести на ней словарную метрику, то не существует полиномиального алгоритма, ограничивающего длину прообраза по длине образа для данной функции. Более того, никакая рекурсивная функция не даст такого ограничения. Не существует и других эффективных процедур, сводящих решение задачи поиска аргумента по значению функции к ограниченному полному перебору.
При этом, однако, возникает существенный вопрос об обращении функции на генерическом множестве значений. Возможно ли найти генерическое подмножество в множестве всех значений функции относительно естественной меры на этом множестве, на котором проблема поиска решается эффективно? Этот вопрос требует специального исследования в каждом конкретном случае (см. по этому поводу обзор [3] или более детальное изложение в [1, 2, 37]).
Рассмотрим элемент g = g(x^x2,... , ж&+2), построенный выше. Определим образ элемента g относительно эндоморфизма ^, фиксирующего ж1 и ж2 и отображающего Xj для j = 3,... , k + 2 в для некоторых целых чисел в1,... , . В результате получим
по модулю Ys+3Mk+2 элемент ^(g) = f (ж1,ж2)с. Можно считать, что определена функция g : Zk ^ Z по правилу (в1,... ,вк) ^ с. Эту функцию можно рассматривать как возможно одностороннюю. Её полиномиальная вычислимость очевидна. В то же время из-за неразрешимости проблемы эндоморфной сводимости элемента g к элементу вида f (ж1,ж2)с не существует полиномиального по времени алгоритма, вычисляющего по с набор (в1,... ,вк).
Отсюда можно вывести следующее общее заключение. Если бы длины значений <^(xj) = h для i = 1,...,n, соответствующие эндоморфизму <£, переводящему g в f = f (с), можно было оценить сверху полиномиальными функциями от с, то проблема эндоморфной сводимости g к f в группе Mfc+2 была бы разрешимой. Поскольку это не так, подобной оценки не существует. Это приводит к невозможности переборного решения проблемы.
Относительно возможной эффективной обратимости рассматриваемой функции на генерическом множестве значений заметим, что в работе А. Н. Рыбалова [38] доказано, что 10-я Проблема Гильберта остается алгоритмически неразрешимой на любом строго генерическом множестве диофантовых уравнений.
4. Протокол аутентификации
Впервые идея использования рассматриваемой схемы для построения протокола аутентификации на платформе группы с разрешимой проблемой равенства и неразрешимой проблемой эндоморфной сводимости была высказана В. А. Романьковым в докладе на семинаре в Graduate Center City University of New York в 2007 г. Впоследствии идея была описана в работе Д. Григорьева и В. Шпильрайна [39]. Авторы опирались на результаты В. А. Романькова из [3, 10].
В общих чертах протокол выглядит следующим образом.
У с т а н о в к а. Выбирается бесконечная эффективно заданная группа О с разрешимой проблемой равенства и неразрешимой проблемой эндоморфной сводимости. Абонент А фиксирует публичный элемент д и секретный эндоморфизм <^, вычисляет и публикует образ f = <^(д). Элементы д и f выбираются таким образом, чтобы проблема эндоморфной сводимости для пары (д, f) была трудна. Это означает, что по f трудно вычислить эндоморфизм <^, переводящий д в f.
А л г о р и т м а у т е н т и ф и к а ц и и.
1) В качестве сессионного ключа выбирается эндоморфизм (в работе [39] автоморфизм) 0, вычисляется элемент V = 0^) и передается в систему С, в которой осуществляется аутентификация пользователя А.
2) Система С с равной вероятностью выбирает случайный бит и отсылает его А.
3) Если А получает 0, то он просто публикует 0, а С проверяет, что действительно V — образ f относительно 0. Если А получает 1, то он вычисляет композицию X = <^0, передает её С, который проверяет справедливость равенства V = х(д).
Схема выглядит как протокол аутентификации с нулевым разглашением, аналогичный известному протоколу Фиата — Шамира (см., например, [25, 26]). Однако для её криптостойкости необходимо выполнение ряда дополнительных условий. Во-первых, необходимо, чтобы существовал фигурирующий в протоколе элемент д, проблема вхождения в множество эндоморфных образов которого алгоритмически неразрешима. Как объяснялось выше, это возможно, если в качестве группы О выбрать свободную метабелеву группу Мп достаточно большого ранга п. В этом случае элемент f можно брать случайным образом из фиксированного смежного класса по циклической подгруппе гр(Н), полагая f = f (с) в соответствии с (4). Но далее аналогичные условия должны быть выполнены для пары элементов f, V. Результаты работы [10] уже не позволяют считать, что проблема вхождения в множество эндоморфных образов элемента f алгоритмически неразрешима. Но даже если бы это было так, приведённых условий все равно оказалось бы недостаточно.
Для разрешения этой ситуации можно ввести определение группы с неразрешимой двукратной проблемой эндоморфной сводимости, а именно можно доказать, что в свободной метабелевой группе Мп достаточно большого ранга можно выбрать элемент д, элемент Ь, циклическую подгруппу гр(Н), элемент и и конечно порождённую абелеву группу А таким образом, что для любой пары элементов (д^), где f € Ьгр(Н), и любой пары элементов (^ V), где V € иА, одновременно алгоритмически неразрешимы проблемы эндоморфной сводимости. Более того, знание эндоморфизма х, такого, что х(д) = V, не позволяет эффективно находить ни эндоморфизм <^, такой, что ^(д) = f, ни эндоморфизм 0, такой, что 0^) = V. Наоборот, знание эндоморфизма 0, такого, что 0^) = V, не позволяет восстановить ни <^, ни X. Легко видеть, что эти условия являются необходимыми в обеспечении криптостойкости приведённого алгоритма.
Соответствующие построения проводятся эффективно. Они также основываются на неразрешимости 10-й Проблемы Гильберта и интерпретации диофантовых уравнений в свободных метабелевых группах.
Заметим также, что близкой по теме проблеме построения двукратной возможно односторонней функции посвящена работа первого автора [40]. Отсюда видно, что создание криптографических приложений, основанных на проблемах теории групп, имеет обратное влияние на развитие самой теории групп. Постановка алгоритмических проблем приобретает новые формы. Отметим в этой связи возросший интерес
к проблемам поиска. Вопросы теории сложности становятся все более актуальными и также приобретают новые формы. Достаточно ещё раз упомянуть понятие генерической сложности проблемы, возникшее главным образом при исследовании практических алгоритмов.
ЛИТЕРАТУРА
1. Myasnikov A., Shpilrain V., and Ushakov A. Group-based cryptography. (Advances courses in Math., CRM, Barselona). Basel, Berlin, New York: Birkhauser Verlag, 2008. 183 p.
2. Myasnikov A., Shpilrain V., and Ushakov A. Non-commutative cryptography and complexity of group-theoretic problems. (Amer. Math. Soc. Surveys and Monographs). Providence, RI: Amer. Math. Soc., 2011. 385 p.
3. Романьков В. А. Диофантова криптография на бесконечных группах // Прикладная дискретная математика. 2012. №2. С. 15-42.
4. Goldreich O. Foundations of cryptography. Cambridge: Cambridge Univ. Press, 2001. V. 1. 451 p.; 2004. V.2. 798 p.
5. Goldwasser S. and Bellare M. Lecture Notes on Cryptography. Cambridge: MIT, 2008.
6. Sipser M. Introduction to the theory of computation. PWS Publishing, 1997. 416 p.
7. Levin L. A. One-way Functions and Pseudorandom Generators // Combinatorica. 1987. V. 7. No. 4. P. 357-363.
8. Левин Л. А. Односторонние функции // Проблемы передачи информации. 2003. T. 39. №1. C. 103-117.
9. Кожевников А. А., Николенко С. И. О полных односторонних функциях // Проблемы передачи информации. 2009. T.45. №2. C. 101-118.
10. Романьков В. А. Об уравнениях в свободных метабелевых группах // Сибирский математический журнал. 1979. T.20. №3. С. 671-673.
11. Романьков В. А. О неразрешимости проблемы эндоморфной сводимости в свободных нильпотентных группах и в свободных кольцах // Алгебра и логика. 1977. Т. 16. №4. С.457-471.
12. Матиясевич Ю. В. Диофантовость перечислимых множеств // Докл. АН СССР. 1970. Т. 191. №2. С. 279-282.
13. Матиясевич Ю. В. Диофантово представление перечислимых предикатов // Изв. АН СССР. Сер. матем. 1971. №35. С. 3-30.
14. Матиясевич Ю. В. Десятая проблема Гильберта. М.: Наука, 1993. 223 с.
15. Shpilrain V. and Zapata G. Using decision problems in public key cryptography // Groups. Complexity. Cryptology. 2009. V. 1. P. 33-40.
16. Shpilrain V. and Zapata G. Using the subgroup membership problem in public key cryptography // Contemp. Math. V. 418. Providence, RI: Amer. Math. Soc., 2006. P. 169-179.
17. Shpilrain V. and Zapata G. Combinatorial group theory and public key cryptography // Applicab. Alg. Eng. Comm. Comp. 2006. V. 17. P. 291-302.
18. Kurt Y. A new key exchange primitive based on the triple decomposition problem // Preprint: http://eprint.iacr.org/2006/378
19. Birget J.-C., Magliveras S., and Sramka M. On public-key cryptosystems based on combinatorial group theory // Tatra Mount. Math. Publ. 2006. V. 33. P. 137-148.
20. Lohrey M. Word problems on compressed words // Automata, Languages and Programming. LNCS. 2004. V. 3142. P. 906-918.
21. Lohrey M. and Schleimer S. Efficient computation in groups via compression // LNCS. 2007. V. 4649. P. 249-258.
22. Scheimer S. Polynomial-time word problems // Comment. Math. Helv. 2008. V. 83. No. 4. P. 741-765.
23. Ерофеев С. Ю. Диофантовость дискретного логарифма // Прикладная дискретная математика. Приложение. 2011. №4. С. 31-32.
24. Ерофеев С. Ю. Диофантовость дискретного логарифма // Вестник Омского университета. 2010. №4. С. 13-15.
25. Menezes A. J., van Oorschot P. C., and Vanstone S. A. Handbook of Applied Cryptography. CRC Press, 1996. 816 p.
26. Романьков В. А. Введение в криптографию. Курс лекций. М.: Форум, 2012. 240 с.
27. Matijasevich Y. V. and Robinson J. Reduction of an arbitrary diophantine equation to one in 13 unknowns // Acta Arithmetica. 1975. V. 27. P. 521-553.
28. Matijasevich Y. V. Some purely mathematical results inspired by mathematical logic // Proc. Fifth Intern. Congr. Logic, Methodology and Philos. of Sci.(London, Ont.). Dordrecht, Reidel, Holland. 1977. P. 121-127.
29. Jones J. Universal diophantine equation // J. Symbolic Logic. 1982. V. 47. No. 3. P. 549-571.
30. Нейман Х. Многообразия групп. М.: Мир, 1974. 264 с.
31. Маканин Г. С. Уравнения в свободной группе // Изв. АН СССР. Сер. матем. 1982. T. 46. №6. C. 1199-1273.
32. Hall P. Nilpotent groups // Canad. Math. Cong. Summer Sem. Vankuver: University of Alberta, 1957. P. 12-30.
33. Холл М. Теория групп. М.: ИЛ, 1962. 467 с.
34. Каргаполов М. И., Мерзляков Ю. И. Основы теории групп. М.: Лань, 2009. 288 с.
35. Курош А. Г. Теория групп. М.: Физматгиз, 2008. 808 с.
36. Segal D. Words: notes on verbal width in groups // London Math. Soc. Lect. Notes. Cambridge: Cambridge Univ. Press, 2009. V. 361. 215 p.
37. Kapovich I., Myasnikov A., Shupp P., and Shpilrain V. Generic-case complexity, decision problems in group theory and random walks // J. Algebra. 2003. V. 264. P. 665-694.
38. Рыбалов А. Н. О генерической неразрешимости десятой проблемы Гильберта // Вестник Омского университета. 2011. №4. С. 19-22.
39. Grigoriev D. and Shpilrain V. Zero-knowledge autentification schemes from actions on graphs, groups and rings // Ann. Pure Appl. Logic. 2010. V. 162. P. 194-200.
40. Ерофеев С. Ю. Схемы построения двушагово односторонних функций // Вестник Омского университета. 2011. №4. С. 15-18.