- •Предисловие
- •Тестирование чисел на простоту и построение больших простых чисел
- •Введение
- •Элементарные методы проверки простоты чисел
- •Тесты на простоту для чисел специального вида
- •Алгоритм Миллера
- •Вероятностные тесты на простоту
- •Современные методы проверки простоты чисел
- •Заключение. Детерминированный полиномиальный алгоритм проверки простоты чисел
- •Факторизация целых чисел с экспоненциальной сложностью
- •Введение. Метод Ферма
- •101.21.2(P-1)-метод Полларда
- •Алгоритм Ленстры
- •101.21.2(P+1)-метод Уильямса и его обобщения
- •Методы Шэнкса
- •Прочие методы. Заключение
- •Факторизация целых чисел с субэкспоненциальной сложностью
- •Введение
- •Метод Диксона. Дополнительные стратегии
- •Квадратичное решето
- •Алгоритмы решета числового поля
- •Заключение
- •Алгоритм Ленстры для факторизации целых чисел с помощью эллиптических кривых
- •Вычисление порядка группы точек эллиптической кривой над конечным полем
- •Тестирование чисел на простоту с помощью эллиптических кривых
- •Заключение
- •Алгоритмы дискретного логарифмирования
- •Введение. Детерминированные методы
- •Дискретное логарифмирование в полях Галуа
- •Дискретное логарифмирование и решето числового поля
- •Частное Ферма и дискретное логарифмирование по составному модулю
- •Заключение
- •Факторизация многочленов над конечными полями
- •Введение. Вероятностный алгоритм решения алгебраических уравнений в конечных полях
- •Решение квадратных уравнений
- •Алгоритм Берлекэмпа
- •Некоторые другие усовершенствования алгоритма Берлекэмпа
- •Заключение
- •Приведенные базисы решеток и их приложения
- •Введение. Решетки и базисы
- •LLL-приведенный базис и его свойства
- •Алгоритм построения LLL-приведенного базиса решетки
- •Некоторые приложения LLL-алгоритма
- •Заключение
- •Введение
- •LLL-алгоритм факторизации: разложение по простому модулю
- •LLL-алгоритм факторизации: использование решеток
- •LLL-алгоритм факторизации: подъем разложения
- •LLL-алгоритм факторизации: полное описание
- •Практичный алгоритм факторизации
- •Факторизация многочленов с использованием приближенных вычислений
- •Заключение
- •Введение. Дискретное преобразование Фурье и его свойства
- •Заключение
- •Целочисленная арифметика многократной точности
- •Введение. Сложение и вычитание
- •Умножение
- •Деление
- •Решение систем линейных уравнений над конечными полями
- •Введение
- •Решение систем линейных уравнений в целых числах
- •Гауссово и структурированное гауссово исключение
- •Алгоритм Ланцоша
- •Алгоритм Видемана
- •Другие методы. Заключение
160 |
Гл. 5. Алгоритмы дискретного логарифмирования |
Замечание |
5.40. Для произвольного приводимого многочлена |
F(x) Z/pZ [x] также можно описать аналогичный алгоритм проверки разрешимости в случае, когда все кратности неприводимых делителей F(x) невелики.
§ 5.7. Заключение
Из более старых работ по дискретному логарифмированию читатель может обратить внимание на [130; 291; 131].
Из обзоров по дискретному логарифмированию мы можем рекомендовать [210; 176; 83; 209].
Вработе [48] содержится великолепный обзор по сложности тео- ретико-числовых алгоритмов, включая задачу дискретного логарифмирования.
Вопросам получения оценок сложности в задаче дискретного логарифмирования посвящены работы [35; 34; 223; 174; 254; 255; 147].
Вчастности, в работе [147] оценивается снизу порядок линейной ре-
куррентной последовательности uj, обладающей тем свойством, что loga j ≡ uj (mod p) для всех номеров j из некоторого промежутка.
Вработе [268] содержится обзор алгоритмов дискретного логарифмирования в произвольной группе G со сложностью O(|G|1/2) групповых операций. См. также [201].
Работа [128] посвящена параллельному вычислению дискретных логарифмов.
Вработе [82] рассматриваются вопросы дискретного логарифмирования в произвольной конечной абелевой группе G, а также алгоритмы нахождения порядка элемента и определения структуры G. Доказана, в частности, следующая теорема.
Теорема 5.41. Имеется |
алгоритм, который для заданных |
g, d G, d = 1, определяет, |
принадлежит ли d подгруппе g , |
и если да, то находит logg d. Если x = |g | при d √g и x = log√g d |
|||||||||
при d g , то алгоритм выполняет не более 6 |
x |
+ log2 |
√ |
x |
|
||||
умножений в G. Он использует таблицу из не более чем 2 |
|
x |
|
||||||
|
|
√ |
|
}. Общее число обращений к таблице |
|||||
пар (h, r) G × {1, . . . , 2 |
x |
||||||||
√ |
|
|
|
|
|
||||
не превосходит 4 |
x |
. |
|
|
|
В работе [251] получена оценка для наименьшего первообразного корня a по простому модулю p. В предположении расширенной гипотезы Римана
a = O(r4 (log r + 1)4 (log p)2),
§ 5.7. Заключение |
161 |
где r — число различных простых делителей p − 1.
В различных криптографических схемах используются пары простых чисел q и p, где p = 2q + 1. В частности, для тестирования алгоритмов дискретного логарифмирования по простому модулю p обычно используют такие пары. В этом случае первообразный корень по модулю p можно определить с помощью следующей теоремы, см. [42, с. 168—170].
Теорема 5.42. Пусть p, q — простые числа.
1)Если q = 4n + 1, p = 2q + 1, то 2 является первообразным корнем по модулю p.
2)Если q = 4n + 3, p = 2q + 1, то −2 является первообразным корнем по модулю p.
Доказательство. Для того, чтобы число a являлось первообразным корнем по модулю p, необходима и достаточна неразрешимость
уравнений
|
|
|
|
|
x2 ≡ a (mod p), xq ≡ a (mod p). |
|
|
|||
|
Пусть |
q = 4n + 1, тогда p = 8n + 3. |
В |
этом |
случае уравнение |
|||||
x ≡ |
|
|
4n+1 |
|
p |
|
−8n+2 |
|
||
2 |
|
2 (mod p) |
неразрешимо, так как |
2 |
|
= 1. Предположим, что |
||||
|
|
|
|
|||||||
уравнение x |
|
≡ 2 (mod p) разрешимо. Тогда x |
|
≡ 4 (mod 8n + 3). |
Отсюда по малой теореме Ферма получим, что 4 ≡ 1 (mod p). Так как p > 3, то это невозможно.
Пусть q = 4n + 3, p = 8n + 7. Уравнение x2 |
≡ −2 (mod p) неразре- |
||||||||||||||||
шимо, поскольку |
|
|
p p |
− |
|
|
− |
|
|
||||||||
|
|
|
p |
|
p−1 |
|
|
||||||||||
|
|
|
|
−2 |
= |
−1 |
|
2 |
= ( 1) 2 |
= 1. |
|
|
|||||
|
|
|
|
|
|
|
|
||||||||||
Предположим, |
что |
уравнение |
x |
4n+3 |
≡ − |
2 |
(mod ) |
разрешимо. То |
- |
||||||||
гда x |
8n+6 |
≡ 4 |
(mod |
|
p), |
и мы |
|
|
|
|
p |
|
|||||
|
|
|
получаем |
противоречие аналогично |
предыдущему случаю.
11 О. Н. Василенко