Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Решенные билеты.doc
Скачиваний:
99
Добавлен:
26.05.2014
Размер:
1.72 Mб
Скачать

Вычисление дискретного логарифма

Определение. Пусть G = < G; •, 1 > - конечная группа, а и b -элементы группы G; r = ordb. Натуральное число l называют дискретнымлогарифмом элемента а при основании b, если

(1.1)

Замечания.

а) В качестве группы G избираем мультипликативную группу из ненулевых элементов конечного поля Fr

б) Если q = р - простое число и b - первообразный корень по модулю р, то число l, определяемое условием (1.1), называют индексом числа а при основании b по модулю р.

в) Вместо термина "дискретный логарифм элемента а при основании b" употребляют также термин " индекс элемента а при основании b".

Обозначение. indba - дискретный логарифм элемента а при основании b. (Группа G обычно подразумевается из контекста.)

Задача определения дискретного логарифма элемента конечной группы может быть легко решена, если порядок группы не слишком велик и для этой группы составлена таблица индексов. При отыскании логарифма положительного действительного числа, если нет таблицы логарифмов или она недоступна, можно воспользоваться методом последовательного приближения. Он состоит в следующем. На каждом шаге применения этого метода интервал границ значения арифметического логарифма сужают вдвое. Так продолжая, легко определить значение этого логарифма с любой заранее объявленной точностью. Успех применения этого метода основан на использовании свойств неравенств. Ничего подобного нет в конечном поле. Точнее говоря, в конечном поле нельзя построить метод вычисления дискретного логарифма, подобный методу последовательного приближения. В самом деле, в конечном поле нельзя определить антисимметричное, транзитивное, связное бинарное отношение, согласованное с какой-нибудь операцией.

Алгоритм перебора - метод, который хотя бы теоретически может всегда привести к успеху. Он состоит в следующем. Пусть b -примитивный элемент данного конечного поля и a - другой какой-нибудь элемент того же поля. Чтобы найти indba, начиная, например, с п = 0, сравниваем элемент а с элементом bn, если a = bn, то indba = п, в противном случае находим bп+1 = bnb и опять сравниваем элемент а с элементом bп+1 и т.д. Если число элементов поля 2100 или больше, то количество операций (умножений), необходимое для вычисления дискретною логарифма произвольного элемента конечного поля в приемлемое время, чрезвычайно велико и находится за пределами возможностей современных вычислительных машин.

Алгоритм согласования

Теорема 1. Пусть t, r - натуральные числа, r2 t . Для любого целого l можно указать целые числа х и у такие, что

Доказательство. Можем предполагать, что. Полагаем

Имеем

С другой стороны.

поэтому

или

Теорема 2. Пусть G = < G, , 1 > -конечная группа; а и b элементы группы G; t = ord b;

(1.2)

Тогда число l можно найти, выполнив не более чем операции умножения на элементы группыG.

Доказательство. Полагаем . Рассмотрим ряды

(1.3)

(1.4)

Если разрешимо относительно l, представим l ввиде

Так как t = ord b, то b' = bxr+y = а в том и только в том случае, когда

, (1.5)

т.е. когда найдется элемент ряда (1.3), который совпадет с каким-нибудь членом ряда (1.4).

Нетрудно сосчитать число операций, позволяющих установить равенство (1.2). При вычислении элементов ряда (1.3) потребуется выполнить не более r-2 умножений. Для вычисления в силу следующей леммы

Соседние файлы в предмете Криптография