ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА
2015 Вычислительные методы в дискретной математике №2(28)
ВЫЧИСЛИТЕЛЬНЫЕ МЕТОДЫ В ДИСКРЕТНОЙ МАТЕМАТИКЕ
УДК 512.54.05+519.712.4
О СЛОЖНОСТИ ЗАДАЧИ ДИСКРЕТНОГО ЛОГАРИФМИРОВАНИЯ В ИНТЕРВАЛЕ В ГРУППЕ С ЭФФЕКТИВНЫМ ИНВЕРТИРОВАНИЕМ
М. В. Николаев
Московский государственный университет им. М. В. Ломоносова, г. Москва, Россия
Задача дискретного логарифмирования в интервале заключается в поиске для заданной конечной группы G = (P) (с аддитивной записью операции) и заданных P,Q е G, N < |G| — 1 такого значения n, что Q = nP, n е {-N/2,..., N/2}. Одним из наиболее эффективных методов решения данной задачи является алгоритм Годри —Шоста. В 2010 г. С. Гэлбрейт и Р. Рупраи представили усовершенствованную версию алгоритма для групп с эффективным инвертированием. Оценка средней трудоёмкости решения задачи составила (1,36 + o(1))\/N групповых операций в G при N ^ те. В настоящей работе приводится новая модификация алгоритма Годри — Шоста для решения задачи дискретного логарифмирования в интервале в группе с эффективным инвертированием и получена оценка средней трудоёмкости, составляющая (1 + е)^/nN/2 групповых операций в G.
Ключевые слова: задача дискретного логарифмирования в интервале, алгоритм Годри — Шоста.
DOI 10.17223/20710410/28/10
ON THE COMPLEXITY OF DISCRETE LOGARITHM PROBLEM IN AN INTERVAL IN A FINITE CYCLIC GROUP WITH EFFICIENT INVERSION
M. V. Nikolaev
Lomonosov Moscow State University, Moscow, Russia
E-mail: [email protected]
Discrete logarithm problem in an interval in a finite group G = (P) consists in solving the equation Q = nP with respect to n е {—N/2,..., N/2} for the specified P, Q е G and 0 <N< |G| — 1. If the group G has an inversion, which may be computed significantly faster than the group operation, then, similarly to the solution of the classical discrete logarithm, we may speed up the algorithm. In 2010, S. Galbraith and R. Ruprai proposed an algorithm solving this problem with the average complexity (1,36 + o(1))\/N group operations in G where N ^ те. We show that the average complexity of the algorithm for finding the solution of the discrete logarithm problem in interval equals (1 + е)д/nN/2 group operations.
Keywords: discrete logarithm problem in interval, Gaudry — Schost algorithm.
Приведём постановки задач.
Определение 1. Задача дискретного логарифмирования.
Дано: группа G = (P), Q Е G.
Найти: n Е {0,..., |G| — 1}, такое, что Q = nP.
Определение 2. Задача дискретного логарифмирования в интервале.
Дано: группа G = (P), Q Е G, N Е N, 2|N, N < |G| — 1, Q = nP для некоторого (неизвестного) n Е { — N/2,..., N/2}.
Найти: n.
В настоящее время в общем случае одним из наиболее эффективным алгоритмом решения задачи дискретного логарифмирования в интервале является алгоритм Год-ри — Шоста [1]. Основная идея алгоритма может быть сформулирована следующим образом. Сначала выбираются так называемые «домашнее» (tame) и «дикое» (wild) множества:
T = { — N/2,..., N/2}, W = {—N/2 + n,..., N/2 + n}, затем параллельно вычисляются псевдослучайные последовательности
XiP, xi Е T, i = 1, 2,..., (1)
Q + zjP, (n + zj) Е W, j = 1, 2,... (2)
до тех пор, пока в них не найдутся два одинаковых элемента
Xfc P = Q + ziP, (3)
откуда находим n = xk — zi.
Средняя трудоёмкость алгоритма Годри — Шоста и его различных модификаций, измеряемая количеством групповых операций в G, равна по порядку величины среднему значению количества элементов последовательностей, вычисляемых до появления совпадающих элементов, в предположении, что значения n, Xi и zj выбираются случайно равновероятно и независимо из соответствующих множеств. Это среднее значение может быть получено с использованием следующего результата Гэлбрэйта и Холмса, являющегося обобщением парадокса дней рождения.
Теорема 1 [2, Theorem 1]. Предположим, что выполнены следующие условия.
1) Имеется C различных цветов шаров, C > 1. Шар, выбранный под номером k,
с вероятностью rk,c имеет цвет с (независимо от предыдущих выбранных шага
ров); для любого c = 1,... , C существует pc = lim n-1 Y1 r'kc и p1 ^ p2 ^ ■ ■ ■ ^
ra^ fc=i
n
^ pC > 0. Пусть bn,c = pc — n-1 rfc,c и существует константа K, такая, что для
k= 1
любого c = 1,... , C, n> 1 выполняется неравенство |bn,c| ^ K/n.
2) Имеется N' Е N различных урн. Если k-й шар имеет цвет с, то он попадает в урну с номером i с вероятностью qc,i(N/) независимо от предыдущих выбранных цветов и размещений шаров. Существует такое d > 0, не зависящее от N/ и с, что 0 ^ qc,i ^ d/N/ для любых с = 1,... , C и i =1,..., N/. Существуют такие константы а,^ > 0, что |{i Е {1,...,N/} : q1,i,q2,i ^ ^/N/}| ^ aN'.
Тогда математическое ожидание числа Zn шаров, размещенных до первого появления двух шаров разных цветов в одной урне, равно
m(z^=^iArN1+O(N ,1/4)-
где
С / С / N'
АМ' = Е Рс Е РС' Е Яе^с' ,г
е=1 \С' = 1,С=С' \»=1
и константа в О зависит от С, ре, К, а, но не зависит от N' и де^.
Для оптимизации методов поиска решения задачи дискретного логарифмирования часто используют наличие у исходной группы классов эквивалентности, как это делается, например, в работах [3, 4]. Но в случае задачи дискретного логарифмирования в интервале подойдут только классы эквивалентности, все элементы которых лежат в том же интервале, что и решение задачи. Итак, предположим теперь, что группа О обладает эффективно вычислимой операцией ^ взятия обратного элемента, т. е. время, необходимое для вычисления обратного элемента, существенно меньше времени, необходимого для выполнения одной групповой операции. Тогда группа О распадается на непересекающиеся классы эквивалентности (орбиты) относительно действия и подобно тому, как это делается в [4] для классической задачи дискретного логарифмирования, можно ускорить алгоритм, если искать не совпадающие элементы последовательностей (1) и (2), а совпадающие классы эквивалентности этих элементов. Действительно, в этом случае вместо равенства (3) имеем равенство
Р) = Q + г1Р
для некоторого 5, откуда Q = ((- 1)5хк — )Р, т.е. п = (—1)5хк — .
Примером такой группы с эффективным инвертированием является группа точек эллиптической кривой у2 = х3 + Ах + В над конечным простым полем из р > 3 элементов. Действительно, <^(х,у) = (х, —у), т.е. ^(аР) = — аР, и класс эквивалентности точки аР относительно действия группы (<^) состоит из аР и аР). Каждому такому классу эквивалентности соответствует множество С (а) = {а, —а}.
В [5] для этого случая предложена соответствующая модификация алгоритма Год-ри — Шоста, имеющая при N ^ то трудоёмкость (1,36 + о(1))\/Ж групповых операций. Для получения этого результата использовались «домашнее» множество
Т = {С(а) : —N/2 ^ а ^ N/2},
а также «дикое» множество
W = {С(п + а) : —N/4 ^ а ^ N/4}.
Используя описанный автоморфизм получим, что множество «представителей» для каждого класса С (а) € Т равно Т = {а : 0 ^ а ^ N/2}.
На рис. 1 изображены «дикое» множество, множество Т0 — объединение классов из множества Т, а также пересечение и = W П Т, где W = {(п + а) : —N/4 ^ а ^ N/4}.
Следующая теорема конструктивно доказывает возможность дальнейшего улучшения оценки средней трудоёмкости решения задачи дискретного логарифмирования в интервале для группы с эффективным инвертированием.
Теорема 2. Пусть О — циклическая группа с эффективным инвертированием, пусть также 2^. Тогда для любого е > 0 существует такой алгоритм решения задачи дискретного логарифмирования в интервале в группе О, что при случайном равновероятном выборе п его средняя трудоёмкость не превосходит (1 + е)^/^N/2 + 1/4) групповых операций, где N ^ то. (Здесь запись О£ означает, что константа под символом О зависит от е.)
Тп И/
И/
Л Ь ^ Ш Ш й
То Г
N _ N п N N
2 4 4 2
Рис. 1
Доказательство. Определим «домашнее» множество Т и множество Т представителей классов Т
Т = (О(а) : -N/2 ^ а ^ N/2}, Т = (0,..., N/2}
(в работах [5, 6] такое множество называется фундаментальной областью «домашнего» множества). Обозначим Т0 объединение классов из множества Т. Для регулирования размера «дикого» множества W введём параметр т:
WT = (О(п + а) : ^N/4 ^ а ^ тN/4},
тогда Ж, = (а : ^N/4 + п ^ а ^ тN/4 + п} и |Жт| = 2 ^N/4] + 1.
Как и в алгоритме Годри — Шоста, будем параллельно вычислять последовательности точек
X Р, х е ТТ, г = 1, 2,..., (4)
Я + ^Р, г,- е Жт, з = 1,2,... (5)
до тех пор, пока в них не найдутся две точки из одного класса эквивалентности, после чего находим решение задачи, как показано ранее. При этом предполагается, что значения х и г^ выбираются случайно равновероятно и независимо из соответствующих множеств.
Очевидно, что средняя трудоёмкость, выраженная в количестве групповых операций, не превосходит математического ожидания суммарного числа ZN/ значений х и (п + г^), выбираемых до появления значений хк и (п + г\), таких, что О(хк) = О(п! + г\).
Условное математическое ожидание М^^/ |(п)) случайной величины ZN/ при фиксированном п найдём с помощью теоремы 1, как это делается в [7]. Тогда в обозначениях теоремы О =_2; шары цвета 1 —элементы множества Т, а шары цвета 2 — элементы множества Жт. Вычисление последовательностей (4) и (5) происходит параллельно, поэтому можно считать, что гкд = гк,2 = 1/2 для всех к = 1, 2,..., откуда Р! = Р2 = 1/2. Множество урн в нашем случае —это Т и Жт, и шар а попадает в урну О (а). Ясно, что Nf = О^). В целях упрощения записи далее величины о^) при N — то опускаются. Тогда имеем
'2/^ если г е Т, = 1 п
0 в противном случае.
С учётом последнего равенства и утверждения теоремы 1 нас интересуют значения только для г е Т П Жт. Поскольку каждый класс О (а) содержит не более двух элементов, Т П Жт разбивается на два непересекающихся подмножества , з = 1, 2, таких, что в каждый класс из и попадает ровно з элементов из Жт, т. е. = з/|Жт|, г е и.
Из двух последних равенств получаем
1 1 2
. . - 1 2 IUI
' = 2 ' 2 ■ 2 ■ N Ц = ^
~ /ПN |ЖГ |
где и = Wт П Т0, и по теореме 1 М(2М |(п)) = \ ————.
V 2|и 1
Следуя работам [5, 6], положим п = х^2, | х | ^ 1. Оценим мощность множества и в зависимости от значения х.
1) п € В1 = {(xN) : |х| ^ 1 — т/2} (рис.2). Вероятность события п € В1 равна (1 — т/2). В этом случае множество Wт полностью содержится в Т0, т.е.
|Жт |/|и | = 1.
Л WT
To W
N 2
N 2
Рис. 2
2) п € В2 = {(xN) : |х| > 1 — т/2} (рис. 3). Вероятность события п € В2 равна т/2. В этом случае можно сделать оценку |/|и| ^ 2.
Т
N
2
Wг
То
г/У
г N
т
N
2
Рис. 3
Теперь можем оценить математическое ожидание: M(Zn) = (l - 2) M(ZN' |n G Bi) + 2M(ZN |n G £2) ^ (l - 2) V^N/2 + 2 V^N =
= (i + i^2^ )ynNT2.
Тогда при т — 0 получаем утверждение теоремы. ■
ЛИТЕРАТУРА
1. Gaudry P. and Schost E. A low-memory parallel version of Matsuo, Chao and Tsujii's algorithm // LNCS. 2004. V.3076. P. 208-222.
2. Galbraith S. D. and Holmes M. A non-uniform birthday problem with applications to discrete logarithms // Discr. Appl. Math. 2012. V. 160. No. 10-11. P. 1547-1560. eprint.iacr.org/ 2010/616
3. Gallant R., Lambert R, and Vanstone S. Faster point multiplication on elliptic curves with efficient endomorphisms // CRYPT0'2001. LNCS. 2001. V.2139. P. 190-200.
4. Wiener M.J. and Zuccherato R. J. Faster attacks on elliptic curve cryptosystems // LNCS. 1999. V. 1556. P. 190-200.
5. Galbraith S. D. and Ruprai R. S. Using equivalence classes to accelerate solving the Discrete Logarithm Problem in a short interval // LNCS. 2010. V. 6056. P. 368-383. eprint.iacr. org/ 2010/615
6. Liu W. Improved algorithms for the 2-dimensional discrete logarithm problem with equivalence classes. MSc Thesis, University of Auckland, 2010. http://www.math.auckland.ac.nz/ ~sgal018/Wei-Liu-MSc.pdf
7. Николаев М. В., Матюхин Д. В. О сложности двумерной задачи дискретного логарифмирования в конечной циклической группе с эффективным автоморфизмом порядка 6 // Дискретная математика. 2013. Т. 25. №4. С. 54-65.
REFERENCES
1. Gaudry P. and Schost E. A low-memory parallel version of Matsuo, Chao and Tsujii's algorithm. LNCS, 2004, vol.3076, pp. 208-222.
2. Galbraith S. D. and Holmes M. A non-uniform birthday problem with applications to discrete logarithms. Discr. Appl. Math., 2012, vol.160, no. 10-11, pp. 1547-1560. eprint.iacr.org/ 2010/616
3. Gallant R., Lambert R., and Vanstone S. Faster point multiplication on elliptic curves with efficient endomorphisms. CRYPT0'2001. LNCS, 2001, vol.2139, pp. 190-200.
4. Wiener M. J. and Zuccherato R. J. Faster attacks on elliptic curve cryptosystems. LNCS, 1999, vol. 1556, pp. 190-200.
5. Galbraith S. D. and Ruprai R. S. Using equivalence classes to accelerate solving the Discrete Logarithm Problem in a short interval. LNCS, 2010, vol.6056, pp. 368-383. eprint.iacr. org/2010/615
6. Liu W. Improved algorithms for the 2-dimensional discrete logarithm problem with equivalence classes. MSc Thesis, University of Auckland, 2010. http://www.math.auckland.ac.nz/ ~sgal018/Wei-Liu-MSc.pdf
7. Nikolaev M. V. and Matyukhin D. V. On the complexity of two-dimensional discrete logarithm problem in a finite cyclic group with effective automorphism of order 6. Discr. Math. Appl., 2013, vol. 23, iss. 3-4, pp. 313-326.