Научная статья на тему 'О ГЕНЕРИЧЕСКОЙ СЛОЖНОСТИ ПРОБЛЕМЫ ВЫЧИСЛЕНИЯ ФУНКЦИИ ЭЙЛЕРА'

О ГЕНЕРИЧЕСКОЙ СЛОЖНОСТИ ПРОБЛЕМЫ ВЫЧИСЛЕНИЯ ФУНКЦИИ ЭЙЛЕРА Текст научной статьи по специальности «Математика»

CC BY
5
1
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
генерическая сложность / функция Эйлера / generic complexity / Euler function

Аннотация научной статьи по математике, автор научной работы — Рыбалов Александр Николаевич

Изучается генерическая сложность проблемы вычисления функции Эйлера, имеющей важное значение для современной криптографии. Например, на предположении о её трудноразрешимости основывается криптостойкость знаменитой системы шифрования с открытым ключом RSA. Доказывается, что при условии трудноразрешимости этой проблемы в худшем случае и Р = ВРР для её решения не существует полиномиального сильно генерического алгоритма. Для сильно генерического полиномиального алгоритма нет эффективного метода случайной генерации входов, на которых этот алгоритм не может решить проблему. Таким образом, этот результат обосновывает применение проблемы вычисления функции Эйлера в криптографии с открытым ключом. Для доказательства теоремы используется метод генерической амплификации, который позволяет строить генерически трудные проблемы из проблем, трудных в худшем случае. Основной идеей этого метода является объединение эквивалентных входов в достаточно большие множества. Эквивалентность входов означает, что рассматриваемая проблема на них решается одинаково.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ON THE GENERIC COMPLEXITY OF THE PROBLEM OF COMPUTING THE EULER FUNCTION

We study the generic complexity of the problem of the Euler function computation. This problem has important applications in modern cryptography. For example, the cryptographic strength of the famous public key encryption system RSA is based on the assumption of its hardness. We prove that under the condition of worst-case hardness and P = BPP there is no polynomial strongly generic algorithm for this problem. For a strongly generic polynomial algorithm, there is no efficient method for random generation of inputs on which the algorithm cannot solve the problem. Thus, this result justifies the application of the problem of computing the Euler function in public key cryptography. To prove this theorem, we use the method of generic amplification, which allows us to construct generically hard problems from the problems that are hard in the classical sense. The main feature of this method is the cloning technique, which combines the input data of a problem into sufficiently large sets of equivalent input data. Equivalence is understood in the sense that the problem is solved in a similar way for them.

Текст научной работы на тему «О ГЕНЕРИЧЕСКОЙ СЛОЖНОСТИ ПРОБЛЕМЫ ВЫЧИСЛЕНИЯ ФУНКЦИИ ЭЙЛЕРА»

2024 Математические основы информатики и программирования № 65

МАТЕМАТИЧЕСКИЕ ОСНОВЫ ИНФОРМАТИКИ И ПРОГРАММИРОВАНИЯ

УДК 510.52 DOI 10.17223/20710410/65/6

О ГЕНЕРИЧЕСКОЙ СЛОЖНОСТИ ПРОБЛЕМЫ ВЫЧИСЛЕНИЯ ФУНКЦИИ ЭЙЛЕРА1

А. Н. Рыбалов

Институт математики им. С. Л. Соболева СО РАН, г. Ом,ск, Россия E-mail: [email protected]

Изучается генерическая сложность проблемы вычисления функции Эйлера, имеющей важное значение для современной криптографии. Например, на предположении о её трудноразрешимости основывается криптостойкость знаменитой системы шифрования с открытым ключом RSA. Доказывается, что при условии трудноразрешимости этой проблемы в худшем случае и Р = ВРР для её решения не существует полиномиального сильно генерического алгоритма. Для сильно генерического полиномиального алгоритма нет эффективного метода случайной генерации входов, на которых этот алгоритм не может решить проблему. Таким образом, этот результат обосновывает применение проблемы вычисления функции Эйлера в криптографии с открытым ключом. Для доказательства теоремы используется метод генерической амплификации, который позволяет строить ге-нерически трудные проблемы из проблем, трудных в худшем случае. Основной идеей этого метода является объединение эквивалентных входов в достаточно большие множества. Эквивалентность входов означает, что рассматриваемая проблема на них решается одинаково.

Ключевые слова: генерическая сложность, функция Эйлера.

ON THE GENERIC COMPLEXITY OF THE PROBLEM OF COMPUTING THE EULER FUNCTION

A. N. Rybalov

Sobolev Institute of Mathematics, Omsk, Russia

We study the generic complexity of the problem of the Euler function computation. This problem has important applications in modern cryptography. For example, the cryptographic strength of the famous public key encryption system RSA is based on the assumption of its hardness. We prove that under the condition of worst-case hardness and P = BPP there is no polynomial strongly generic algorithm for this problem. For a strongly generic polynomial algorithm, there is no efficient method for random generation of inputs on which the algorithm cannot solve the problem. Thus, this result justifies the application of the problem of computing the Euler function in public key cryptography. To prove this theorem, we use the method of generic amplification,

1Работа поддержана грантом Российского научного фонда №22-11-20019.

which allows us to construct generically hard problems from the problems that are hard in the classical sense. The main feature of this method is the cloning technique, which combines the input data of a problem into sufficiently large sets of equivalent input data. Equivalence is understood in the sense that the problem is solved in a similar way for them.

Keywords: generic complexity, Euler function.

Введение

В современной криптографии интересны такие алгоритмические проблемы, которые, являясь (гипотетически) трудными в классическом смысле, остаются трудными и в генерическом смысле [1], т, е, для почти всех входов. Это объясняется тем, что при случайной генерации ключей в криптографическом алгоритме происходит генерация входа некоторой трудной алгоритмической проблемы, лежащей в основе криптоетой-кости алгоритма. Если проблема легкоразрешима почти всегда, то для почти всех таких входов её можно будет быстро решить и ключи почти всегда будут нестойкими, Поэтому проблема должна быть трудной для почти всех входов. Например, таким поведением обладают классические алгоритмические проблемы криптографии: распознавания квадратичных вычетов [2], дискретного логарифма [3], извлечения корня в группах вычетов [4],

Функция Эйлера ф(х), равная количеству натуральных чисел, меньших x и взаимно простых с x, играет важную роль в современной криптографии. Для её вычисления до сих пор неизвестно эффективных (полиномиальных) алгоритмов [5]. Этот факт, среди прочего, используется для обоснования стойкости знаменитого алгоритма шифрования с открытым ключом ES А [6]. Проблема вычисления функции Эйлера тесно связана с известной проблемой факторизации (разложения на множители) целых чисел: если бы существовал полиномиальный алгоритм для проблемы факторизации, то его можно было бы использовать для эффективного вычисления функции Эйлера, Однако для проблемы факторизации также неизвестно эффективных алгоритмов [5].

В данной работе изучается генерическая сложность проблемы вычисления функции Эйлера, Доказывается, что при условии трудноразрешимоети этой проблемы в худшем случае и Р = ВРР для неё не существует полиномиального сильно гене-ричеекого алгоритма. Для сильно генерического полиномиального алгоритма нет эффективного метода случайной генерации входов, на которых этот алгоритм не может решить проблему. Таким образом, этот результат обосновывает применение проблемы вычисления функции Эйлера в криптографии с открытым ключом. Здесь класс ВРР состоит из проблем, разрешимых за полиномиальное время на вероятностных машинах Тьюринга, Считается, что класс ВРР совпадает с классом Р, то есть любой полиномиальный вероятностный алгоритм можно эффективно дерандомизировать, построив

полиномиальный алгоритм, не использующий генератор случайных чисел и решаю-

=

веские основания в его пользу [7].

1. Предварительные сведения

В данной работе множеством входов для алгоритмов является множество натуральных чисел N записанных в двоичной форме. Под размером size(x) натурального x

Для подмножества Б С N определим последовательность относительных плотностей

> = щ = 1-23—

где N — множество натуральных чисел размера щ Бп = Б П Здесь для любого конечного множества через |А| обозначено число его элементов. Легко проверить, что |Нп| = 2п-1.

Б

р(Б) = Иш рп (Б).

п

Б р(Б) = 1

ли р(Б) = 0, Назовём множество Б сильно пренебрежимым, если последовательность рп(Б) экспоненциально быстро сходится к нулю, т.е. существуют константы а, О < а < 1 и С > 0 такие, что для л юбого щ

Рп(Б) < Сап

Множество Б называется сильно генермнескгш, если его дополнение N \ Б сильно пренебрежимо.

Алгоритм А : N ^ N и {?} называется (сильно) генерическим, если:

1) А останавливается на всех входах из N

2) множество {х € N : А(х) = ?} является (сильно) генерическим, Генерический алгоритм А вычисляет функцию / : N ^ N если для всех х € N

(А(х) = ?) ^ (А(х) = /(х)).

Имеется существенное различие между генерически разрешимыми проблемами и сильно генерически разрешимыми проблемами. Для сильно генерпческого полиномиального алгоритма нет эффективного метода случайной генерации входов, на которых

Б

на некотором разрешимом за полиномиальное время генерическом множестве С С N для которого

[Сл^п! _ щ -1 П^^ = щ .

Таким образом, С — генерическое, но не сильно генерическое множество. Теперь хоть и Б

получить «плохой» вход, на котором генерический алгоритм не работает. Полиномиальный алгоритм для генерации плохих входов следующий:

хщ

2) если х € С, повторить шаг 1, иначе закончить.

Действительно, вероятность получить только хорошие входы за щ2 раундов равна

Щ - 1 ^ ((1-1- 1 1 ^ е-п

щщ

Поэтому с вероятностью, очень близкой к 1, будет получен плохой вход, С другой стороны, легко видеть, что если проблема разрешима на сильно генерическом множестве, то такой алгоритм генерации потребует экспоненциального числа раундов и

будет неэффективным. Для приложений к криптографии это означает, что просто генеричеекая легкоразрешимоеть проблемы не делает эту проблему бесполезной для создания на ее основе криптосистемы, так как для неё существует эффективная процедура генерации трудных входов, В то же время сильно генерически легкоразрешимые проблемы в этом смысле бесполезны для криптографии.

Напомним некоторые понятия классической теории сложности вычислений [8]. Время работы ¿м (х) машины Тьюринга М на входе х Е М —это число шагов машины от начала работы до остановки. Машина Тьюринга М полиномиальна, если существует полином р(п), такой, что для любого х Е N имеет место ¿м(х) < р^ге(х)). Класс Р состоит из подмножеств N распознаваемых полиномиальными машинами Тьюринга, Вероятностная машина Тьюринга — это машина Тьюринга, в программе которой допускаются пары недетерминированных правил, которые одновременно применимы в данной ситуации, В процессе работы такой машины с вероятностью 1/2 выбирается первое правило и с вероятностью 1/2 —второе.

Время работы ¿м (х, т) вероятностной машины Тьюринга на входе х зависит от вычислительного пути (последовательности выполненных команд) т. Вероятностная машина Тьюринга М называется полиномиальной, если существует полином р(п), такой, что для любого х и для любого вычислительного пути т машины М па х имеет место ¿м(х, т) < р^ге(х)).

Обозначим через Рг[М(х) = у] вероятность того, что машина М на входе х выдаёт ответ у, Вероятностная машина М вычисляет функцию f : N — N если для любого х Е N имеет место

(/(х) = у) ^ Рг[М(х) = у] > 2/3.

Проблема распознавания множества Б С N принадлежит классу ВРР, если существует

М

скую функцию множества Б:

I 1, если х Е Б,

Хз(х) = <

10, если х Е Б.

Вероятностные машины Тьюринга формализуют понятие алгоритма, использующего генератор случайных чисел. Класс ВРР — это класс проблем, эффективно решаемых такими вероятностными алгоритмами,

2. Функция Эйлера

Функция Эйлера ф(х) для любого натурального числа х возвращает количество

хх

ху

ф(ху) = ф(х)ф(у), Если х = р^1 ...Р^пТ — ^^^^^^ение числа х по степеням простых, то

ф(х) = (рк1 - Рк1-1) . . . (РЙТ - Рт -1) = х (1 - Р-) ... (1 - ) . (1)

V р1 ' V рт /

В частности, ф(р) = р - 1 для любого про сто го р.

Формула (1) показывает связь проблемы вычисления функции Эйлера с известной проблемой факторизации (разложения на множители) целых чисел: если бы существовал полиномиальный алгоритм для проблемы факторизации, то его можно было бы использовать для эффективного вычисления функции Эйлера, Однако до сих пор для этих двух проблем неизвестно полиномиальных алгоритмов [5].

Лемма 1. Существует полиномиальный алгоритм, который для любого натурального числа ж и любого простого р, такого, что р те делит я, по входу (ж,р, ф(жр)) находит значение ф(ж).

Доказательство. Из свойства мультипликативности функции Эйлера следует, что ф(жр) = (р — 1)ф(ж), Таким образом, искомый полиномиальный алгоритм работает следующим образом: на вход ему подаются числа я Р и ф(жр); алгоритм делит ф(жр) па р — 1 и находит значение ф(ж), Это делается за полиномиальное от размеров чисел ж, р и ф(жр) время, ■

Для произвольного натурального числа а размера п определим множество

$(а) = {ра : р — простое, мге(р) = п2}.

Лемма 2. Для любого достаточно большого а имеет место

№)| > 1

|N„2+ra| n22n+1-Доказательство. Оценим снизу число |S(а)|, Заметим, что

|S(а)| = n(2n) - n(2n2-1), (2)

где функция n(x) определяет число простых чисел, не превосходящих x, Из асимптотического закона распределения простых чисел следует, что для достаточно больших x имеют место оценки

0,9 ■ loge ■ Х < n(x) < 1,1 ■ log e ■ X , log x log x

log x x

yn2

2n2 _ _ , 2n2-1 , /1,8 1,1

n2 ' ° n2 — 1 ° V n2 n2 — 1

n2 — 1

|S(а)| > 0,9 ■ loge ■ ^ — 1,1 ■ loge ■ = loge ■ 2n -1 ( ^ — ) >

n2 Л( 1,8 1,2 \ 0,6 ■ log e ■ 2n2-1 2

> loge ■ 2n -1 — = 0-->

n2 n2 n2 n2

Так как |Nn2+n| = 2n2+n 1, получаем

|S(а)| > 2n2-2 _ 1

|Мга2+га| п2 ■ 2п +п-1 п22га+1'

Лемма 2 доказана, ■

Лемма 3. Полиномиальный алгоритм для вычисления функции Эйлера ф(ж) существует тогда и только тогда, когда существует полиномиальный алгоритм для распознавания множества ЕЕ = {(ж, к) : ф(ж) ^ к ^ ж}.

Доказательство. Пусть существует полиномиальный алгоритм для вычисления функции Эйлера, Тогда для того, чтобы определить, принадлежит ли пара (ж, к) множеству ЕЕ, надо просто вычислить значение ф(ж) и сравнить его с к.

Обратно, пусть существует полиномиальный алгоритм А для распознавания множества ЕЕ. Тогда доя вычисления значения ф(ж) нужно действовать следующим образом:

1) L := 1, R := х - 1;

2) C :=[(L + R)/2];

3) если (x, C) G EF, то R := C, иначе L := C;

4) если L = R, то вернуться на шаг 2, иначе перейти на шаг 5;

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

5) выдать ф(х) = R,

[x] x

уточняются границы L ^ ф(х) ^ R до тех пор, пока отрезок [L, R] не «схлопнется» в точку и мы не получим точное значение ф(х), Так как длина отрезка на каждой итерации делится пополам, число итераций ограничено значением [log х] — размером числа х. Поэтому алгоритм полиномиален, ■

Теорема 1. Если существует сильно генерический полиномиальный алгоритм, вычисляющий функцию Эйлера, то существует вероятностный полиномиальный алгоритм, вычисляющий функцию Эйлера на всём множестве входов.

Доказательство. Пусть существует сильно генерический полиномиальный алгоритм А, вычисляющий функцию Эйлера, Построим по А вероятностный полиномиальный алгоритм В, вычисляющий функцию Эйлера на всём множестве входов. На натуральном числе а размера п алгоритм В работает следующим образом:

1) Повторяет 4п2 раз шаги 2-9,

2) Генерирует случайно равновероятно натуральное нечётное число - размера п2,

3) С помощью полиномиального алгоритма Агравала - Каяла - Саксены [9] про-

р

р

5) Возвращается на шаг 2,

6) Если за 4п2 шагов не получено простое число, то останавливается и выдаёт ответ О,

А ар

8) Если А(ар) = ф(ар), то, по лемме 1, находит за полиномиальное время значение

а

9) Если А(ар) = ?, то выдаёт ответ О,

В

на шаге 8, а на шагах 6 и 9 — неправильный. Нужно доказать, что вероятность того,

1/3

п2

р

число не получается за один раунд, равна

Здесь верхняя оценка получается аналогично доказательству леммы 2, Вероятность того, что простое число не получится за все 4п2 раундов, не превосходит

3. Основной результат

1

п(2п) - п(2"2-1) 2n2-2

---- < 1--

2™2-1 n2 • 2™2-1

ап

значит, размер числа ap равен п2 + п. Вероятность того, что А(ар) = ?, не больше

|{х Е N : А(х) = ?}га2+га| = |{х Е N : А(х) = ?}га2+га| ^^

|Б(а)| |N^2 +п| |Б(a)| .

По лемме 2

|N"2+"| < п22п+1

|БИ <п2 .

Так как множество {х Е N : А(х) = ?} сильно пренебрежимое, то существует константа а > 0, такая, что

|{х Е N : А(х) = ?}„2+„| < 1

|Nn2+n | 2а(п2 +"■)

п

n22"+1 n2 < G,15

2«(ra2+ra) 2a(n2+n)-n—1 n

G,15 + G,15 < 1/3. ■

Теорема 2. Если для вычисления функции Эйлера не существует полиномиаль-

=

полиномиального алгоритма.

Доказательство. Пусть существует сильно генерический алгоритм, вычисляющий функцию Эйлера, Тогда, по теореме 1, существует вероятностный полиномиальный алгоритм, вычисляющий её на всём множестве входов. Этот же алгоритм решает проблему распознавания множества EF, которая, по лемме 3, полиномиально эквивалентна проблеме вычисления функции Эйлера, Таким образом, проблема EF лежит

=

вычисления функции Эйлера существует полиномиальный алгоритм. Противоречие, ■

ЛИТЕРАТУРА

1. KapovichL, Miasnikov A., Schupp P., and Shpilrain V. Generic-case complexity, decision problems in group theory and random walks //J. Algebra. 2003. V. 264. No. 2. P. 665-694.

2. Рыбалов A. H. О генерической сложности проблемы распознавания квадратичных вычетов // Прикладная дискретная математика. 2015. №2 (28). С. 54-58.

3. Рыбалов А. Н. О генерической сложности проблемы дискретного логарифма // Прикладная дискретная математика. 2016. №3 (33). С.93-97.

4. Рыбалов А. Н. О генерической сложности проблемы извлечения корня в группах вычетов // Прикладная дискретная математика. 2017. №38. С. 95-100.

5. Adleman L. M. and McCurley К. S. Open problems in number theoretic complexity, II // LNCS. 1994. V. 877. P. 291-322.

6. Rivest R., Shamir A., and Adleman L. A method for obtaining digital signatures and public-key cryptosvstems I ! Commun. ACM. 1978. V. 21. Iss. 2. P. 120-126.

7. Impagliazzo R. and WigdersonA. p = BPP unless E has subexponential circuits: Derandomizing the XOR Lemma 11 Proc. 29th STOC. El Paso, ACM, 1997. P. 220-229.

8. Вялый M., Китаев А., Шепь А. Классические и квантовые вычисления. М.: МЦНМО, ЧеРо. 1999. 192 с.

9. Agrawal M., KayalN., and Saxena N. PRIMES is in P // Ann. Math. 2004. V. 160. No. 2. P. 781-793.

REFERENCES

1. KapovichL, Miasnikov A., Schupp P., and Shpilrain V. Generic-case complexity, decision problems in group theory and random walks. J. Algebra, 2003, vol.264, no. 2, pp. 665-694.

2. Rybalov A. N. O genericheskov slozhnosti problemv raspoznavaniva kvadratichnvkh vvchetov [On generic complexity of the quadratic residuositv problem]. Prikladnava Diskretnava Matematika, 2015, no. 2 (28), pp. 54-58. (in Russian)

3. Rybalov A.N. O genericheskov slozhnosti problemv diskretnogo logarifma [On generic complexity of the discrete logarithm problem]. Prikladnava Diskretnava Matematika, 2016, no.3 (33), pp.93-97. (in Russian)

4. Rybalov A.N. O genericheskov slozhnosti problemv izvlecheniva kornva v gruppakh vvchetov [On generic complexity of the problem of finding roots in groups of residues]. Prikladnava Diskretnava Matematika, 2017, no. 38, pp. 95-100. (in Russian)

5. Adleman L. M. and McCurley K. S. Open problems in number theoretic complexity, II. LNCS, 1994, vol.877, pp. 291-322.

6. Rivest R., Shamir A., and Adleman L. A method for obtaining digital signatures and public-key cryptosvstems. Commun. ACM, 1978, vol.21, iss. 2, pp. 120-126.

7. Impagliazzo R. and Wigderson A. p = BPP unless E has subexponential circuits: Derandomizing the XOR Lemma. Proc. 29th STOC, El Paso, ACM, 1997, pp. 220-229.

8. Vyalyy M., Kitaev A., and Shen'A. Klassicheskie i kvantovve vvchisleniva [Classical and Quantum Computations]. Moscow, MCCME, CheRo, 1999. 192p. (in Russian)

9. AgrawalM., KayalN., and Saxena N. PRIMES is in P. Ann. Math., 2004, vol.160, no. 2, pp.781-793.

i Надоели баннеры? Вы всегда можете отключить рекламу.