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

Дискретный логарифм

Дискретное логарифмирование (DLOG) – задача обращения функции g x в некоторой конечной мультипликативной группе G .

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

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

Решение задачи дискретного логарифмирования состоит в нахождении некоторого целого неотрицательного числа x , удовлетворяющего уравнению (1). Если оно разрешимо, у него должно быть хотя бы одно натуральное решение, не превышающее порядок группы. Это сразу даёт грубую оценку сложности алгоритма поиска решений сверху - алгоритм полного перебора нашел бы решение за число шагов, не выше порядка данной группы.

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

Пример

Проще всего рассмотреть задачу дискретного логарифмирования в кольце вычетов по модулю простого числа.

Пусть задано сравнение

Будем решать задачу методом перебора. Выпишем таблицу всех степеней числа 3. Каждый раз мы вычисляем остаток от деления на 17 (например, 3 3 ≡27 - остаток от деления на 17 равен 10).

3 1 ≡ 3 3 2 ≡ 9 3 3 ≡ 10 3 4 ≡ 13 3 5 ≡ 5 3 6 ≡ 15 3 7 ≡ 11 3 8 ≡ 16
3 9 ≡ 14 3 10 ≡ 8 3 11 ≡ 7 3 12 ≡ 4 3 13 ≡ 12 3 14 ≡ 2 3 15 ≡ 6 3 16 ≡ 1

Теперь легко увидеть, что решением рассматриваемого сравнения является x=4 , поскольку 3 4 ≡13.

На практике модуль обычно является достаточно большим числом, и метод перебора является слишком медленным, поэтому возникает потребность в более быстрых алгоритмах.

Алгоритмы решения

В произвольной мультипликативной группе

Разрешимости и решению задачи дискретного логарифмирования в произвольной конечной абелевой группе посвящена статья BuchmannJ., Jacobson M.J., Teske E. On some computational problems in finite abelian groups . В алгоритме используется таблица, состоящая из пар элементов и выполняется умножений. Данный алгоритм медленный и не пригоден для практического использования. Для конкретных групп существуют свои, более эффективные, алгоритмы.

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

Классическими криптографическими схемами, базирующимися на сложности задачи дискретного логарифмирования, являются схема выработки общего ключа Диффи-Хеллмана , схема электронной подписи Эль-Гамаля , криптосистема Мэсси-Омуры для передачи сообщений.

Ссылки

  • Василенко О. Н. Теоретико-числовые алгоритмы в криптографии . - Москва: МЦНМО , 2003. - 328 с. - ISBN 5-94057-103-4
  • Коблиц Н. Курс теории чисел и криптографии . - Москва: ТВПб, 2001. - 254 с. - ISBN 5-85484-014-6
  • Odlyzko A. M. Discrete logarithms in finite fields and their cryptographic significance // LNCS . - 1984. - Т. 209. - С. 224-316.
  • Buchmann J., Jacobson M.J., Teske E. On some computational problems in finite abelian groups // Mathematics of Computation . - 1997. - Т. 66. - № 220. - С. 1663-1687.
  • Статья Дискретное логарифмирование на сайте Научная сеть
  • Обзор методов вычисления дискретного логарифма (на английском)
  • Нечаев В.И. К вопросу о сложности детерминированного алгоритма для дискретного логарифма // Математические заметки . - 1994. - В. 2. - Т. 55. - С. 91-101.

Wikimedia Foundation . 2010 .

Смотреть что такое "Дискретный логарифм" в других словарях:

    дискретный логарифм - В группе два элемента d; g таковы, что имеется целое число r, удовлетворяющее условию gr = d; r называется дискретным логарифмом d по основанию g. Тематики информационные технологии в целом EN discrete logarithm … Справочник технического переводчика

    Алгоритм Полига Хеллмана (также называемый алгоритм Сильвера Полига Хеллмана) детерминированный алгоритм дискретного логарифмирования в кольце вычетов по модулю простого числа. Одной из особенностью алгоритма является то,… … Википедия

    - (англ. Baby step giant step; также называемый алгоритм больших и малых шагов) в теории групп, детерминированный алгоритм дискретного логарифмирования в кольце вычетов по модулю простого числа. Для модулей специального вида данный… … Википедия

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

Замечания.

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

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

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

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

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

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

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

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

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

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

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

(1.2)

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

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

(1.3)

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

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

, (1.5)

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

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

Итак, перед нами степени двойки. Если взять число из нижней строчки, то можно легко найти степень, в которую придется возвести двойку, чтобы получилось это число. Например, чтобы получить 16, надо два возвести в четвертую степень. А чтобы получить 64, надо два возвести в шестую степень. Это видно из таблицы.

А теперь - собственно, определение логарифма:

Логарифм по основанию a от аргумента x - это степень, в которую надо возвести число a , чтобы получить число x .

Обозначение: log a x = b , где a - основание, x - аргумент, b - собственно, чему равен логарифм.

Например, 2 3 = 8 ⇒ log 2 8 = 3 (логарифм по основанию 2 от числа 8 равен трем, поскольку 2 3 = 8). С тем же успехом log 2 64 = 6 , поскольку 2 6 = 64 .

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

2 1 2 2 2 3 2 4 2 5 2 6
2 4 8 16 32 64
log 2 2 = 1 log 2 4 = 2 log 2 8 = 3 log 2 16 = 4 log 2 32 = 5 log 2 64 = 6

К сожалению, далеко не все логарифмы считаются так легко. Например, попробуйте найти log 2 5 . Числа 5 нет в таблице, но логика подсказывает, что логарифм будет лежать где-то на отрезке . Потому что 2 2 < 5 < 2 3 , а чем больше степень двойки, тем больше получится число.

Такие числа называются иррациональными: цифры после запятой можно писать до бесконечности, и они никогда не повторяются. Если логарифм получается иррациональным, его лучше так и оставить: log 2 5 , log 3 8 , log 5 100 .

Важно понимать, что логарифм - это выражение с двумя переменными (основание и аргумент). Многие на первых порах путают, где находится основание, а где - аргумент. Чтобы избежать досадных недоразумений, просто взгляните на картинку:

Перед нами - не что иное как определение логарифма. Вспомните: логарифм - это степень , в которую надо возвести основание, чтобы получить аргумент. Именно основание возводится в степень - на картинке оно выделено красным. Получается, что основание всегда находится внизу! Это замечательное правило я рассказываю своим ученикам на первом же занятии - и никакой путаницы не возникает.

С определением разобрались - осталось научиться считать логарифмы, т.е. избавляться от знака «log». Для начала отметим, что из определения следует два важных факта:

  1. Аргумент и основание всегда должны быть больше нуля. Это следует из определения степени рациональным показателем, к которому сводится определение логарифма.
  2. Основание должно быть отличным от единицы, поскольку единица в любой степени все равно остается единицей. Из-за этого вопрос «в какую степень надо возвести единицу, чтобы получить двойку» лишен смысла. Нет такой степени!

Такие ограничения называются областью допустимых значений (ОДЗ). Получается, что ОДЗ логарифма выглядит так: log a x = b ⇒ x > 0 , a > 0 , a ≠ 1 .

Заметьте, что никаких ограничений на число b (значение логарифма) не накладывается. Например, логарифм вполне может быть отрицательным: log 2 0,5 = −1 , т.к. 0,5 = 2 −1 .

Впрочем, сейчас мы рассматриваем лишь числовые выражения, где знать ОДЗ логарифма не требуется. Все ограничения уже учтены составителями задач. Но когда пойдут логарифмические уравнения и неравенства, требования ОДЗ станут обязательными. Ведь в основании и аргументе могут стоять весьма неслабые конструкции, которые совсем необязательно соответствуют приведенным выше ограничениям.

Теперь рассмотрим общую схему вычисления логарифмов. Она состоит из трех шагов:

  1. Представить основание a и аргумент x в виде степени с минимально возможным основанием, большим единицы. Попутно лучше избавиться от десятичных дробей;
  2. Решить относительно переменной b уравнение: x = a b ;
  3. Полученное число b будет ответом.

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

Посмотрим, как работает эта схема на конкретных примерах:

Задача. Вычислите логарифм: log 5 25

  1. Представим основание и аргумент как степень пятерки: 5 = 5 1 ; 25 = 5 2 ;
  2. Составим и решим уравнение:
    log 5 25 = b ⇒ (5 1) b = 5 2 ⇒ 5 b = 5 2 ⇒ b = 2 ;

  3. Получили ответ: 2.

Задача. Вычислите логарифм:

Задача. Вычислите логарифм: log 4 64

  1. Представим основание и аргумент как степень двойки: 4 = 2 2 ; 64 = 2 6 ;
  2. Составим и решим уравнение:
    log 4 64 = b ⇒ (2 2) b = 2 6 ⇒ 2 2b = 2 6 ⇒ 2b = 6 ⇒ b = 3 ;
  3. Получили ответ: 3.

Задача. Вычислите логарифм: log 16 1

  1. Представим основание и аргумент как степень двойки: 16 = 2 4 ; 1 = 2 0 ;
  2. Составим и решим уравнение:
    log 16 1 = b ⇒ (2 4) b = 2 0 ⇒ 2 4b = 2 0 ⇒ 4b = 0 ⇒ b = 0 ;
  3. Получили ответ: 0.

Задача. Вычислите логарифм: log 7 14

  1. Представим основание и аргумент как степень семерки: 7 = 7 1 ; 14 в виде степени семерки не представляется, поскольку 7 1 < 14 < 7 2 ;
  2. Из предыдущего пункта следует, что логарифм не считается;
  3. Ответ - без изменений: log 7 14.

Небольшое замечание к последнему примеру. Как убедиться, что число не является точной степенью другого числа? Очень просто - достаточно разложить его на простые множители. Если в разложении есть хотя бы два различных множителя, число не является точной степенью.

Задача. Выясните, являются ли точными степенями числа: 8; 48; 81; 35; 14 .

8 = 2 · 2 · 2 = 2 3 - точная степень, т.к. множитель всего один;
48 = 6 · 8 = 3 · 2 · 2 · 2 · 2 = 3 · 2 4 - не является точной степенью, поскольку есть два множителя: 3 и 2;
81 = 9 · 9 = 3 · 3 · 3 · 3 = 3 4 - точная степень;
35 = 7 · 5 - снова не является точной степенью;
14 = 7 · 2 - опять не точная степень;

Заметим также, что сами простые числа всегда являются точными степенями самих себя.

Десятичный логарифм

Некоторые логарифмы встречаются настолько часто, что имеют специальное название и обозначение.

Десятичный логарифм от аргумента x - это логарифм по основанию 10, т.е. степень, в которую надо возвести число 10, чтобы получить число x . Обозначение: lg x .

Например, lg 10 = 1; lg 100 = 2; lg 1000 = 3 - и т.д.

Отныне, когда в учебнике встречается фраза типа «Найдите lg 0,01», знайте: это не опечатка. Это десятичный логарифм. Впрочем, если вам непривычно такое обозначение, его всегда можно переписать:
lg x = log 10 x

Все, что верно для обычных логарифмов, верно и для десятичных.

Натуральный логарифм

Существует еще один логарифм, который имеет собственное обозначение. В некотором смысле, он даже более важен, чем десятичный. Речь идет о натуральном логарифме.

Натуральный логарифм от аргумента x - это логарифм по основанию e , т.е. степень, в которую надо возвести число e , чтобы получить число x . Обозначение: ln x .

Многие спросят: что еще за число e ? Это иррациональное число, его точное значение найти и записать невозможно. Приведу лишь первые его цифры:
e = 2,718281828459...

Не будем углубляться, что это за число и зачем нужно. Просто помните, что e - основание натурального логарифма:
ln x = log e x

Таким образом, ln e = 1 ; ln e 2 = 2 ; ln e 16 = 16 - и т.д. С другой стороны, ln 2 - иррациональное число. Вообще, натуральный логарифм любого рационального числа иррационален. Кроме, разумеется, единицы: ln 1 = 0.

Для натуральных логарифмов справедливы все правила, которые верны для обычных логарифмов.

Самые часто задаваемые вопросы

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

Какие виды оплаты вы принимаете? Ответ Вы можете оплатить документ во время получения на руки у курьера, после того, как проверите правильность заполнения и качество исполнения диплома. Также это можно сделать в офисе почтовых компаний, предлагающих услуги наложенного платежа.
Все условия доставки и оплаты документов расписаны в разделе «Оплата и доставка». Также готовы выслушать Ваши предложения по условиям доставки и оплаты за документ.

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

Могу я заказать диплом любого ВУЗа? Ответ В целом, да. Мы работаем в этой сфере почти 12 лет. За это время сформировалась практически полная база выдаваемых документов почти всех ВУЗов страны и за разные года выдачи. Все, что Вам нужно – выбрать ВУЗ, специальность, документ, и заполнить форму заказа.

Что делать при обнаружении в документе опечаток и ошибок? Ответ Получая документ у нашего курьера или в почтовой компании, мы рекомендуем тщательно проверить все детали. Если будет обнаружена опечатка, ошибка или неточность, Вы имеете право не забирать диплом, при этом нужно указать обнаруженные недочеты лично курьеру или в письменном виде, отправив письмо на электронную почту.
В кратчайшие сроки мы исправим документ и повторно отправим на указанный адрес. Разумеется, пересылка будет оплачена нашей компанией.
Чтобы избежать подобных недоразумений, перед тем, как заполнять оригинальный бланк, мы отправляем на почту заказчику макет будущего документа, для проверки и утверждения окончательного варианта. Перед отправкой документа курьером или почтой мы также делаем дополнительное фото и видео (в т. ч. в ультрафиолетовом свечении), чтобы Вы имели наглядное представление о том, что получите в итоге.

Что нужно сделать, чтобы заказать диплом в вашей компании? Ответ Для заказа документа (аттестата, диплома, академической справки и др.) необходимо заполнить онлайн-форму заказа на нашем сайте или сообщить свою электронную почту, чтобы мы выслали вам бланк анкеты, который нужно заполнить и отправить обратно нам.
Если вы не знаете, что указать в каком-либо поле формы заказа/анкеты, оставьте их незаполненными. Всю недостающую информацию мы потому уточним в телефонном режиме.

Последние отзывы

Валентина:

Вы спасли нашего сына от увольнения! Дело в том что недоучившись в институте, сын пошел в армию. А вернувшись, восстанавливаться не захотел. Работал без диплома. Но недавно начали увольнять всех, кто не имеет «корочки. Поэтому решили обратиться к вам и не пожалели! Теперь спокойно работает и ничего не боится! Спасибо!



План:

    Введение
  • 1 Постановка задачи
  • 2 Пример
  • 3 Алгоритмы решения
    • 3.1 В произвольной мультипликативной группе
    • 3.2 В кольце вычетов по простому модулю
      • 3.2.1 Алгоритмы с экспоненциальной сложностью
      • 3.2.2 Субэкспоненциальные алгоритмы
    • 3.3 В произвольном конечном поле
    • 3.4 В группе точек на эллиптической кривой
  • 4 Вычислительная сложность и приложения в криптографии

Введение

Дискретное логарифмирование (DLOG) – задача обращения функции g x в некоторой конечной мультипликативной группе G .

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

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


1. Постановка задачи

Пусть в некоторой конечной мультипликативной абелевой группе G задано уравнение

Решение задачи дискретного логарифмирования состоит в нахождении некоторого целого неотрицательного числа x , удовлетворяющего уравнению (1). Если оно разрешимо, у него должно быть хотя бы одно натуральное решение, не превышающее порядок группы. Это сразу даёт грубую оценку сложности алгоритма поиска решений сверху - алгоритм полного перебора нашел бы решение за число шагов не выше порядка данной группы.

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


2. Пример

Проще всего рассмотреть задачу дискретного логарифмирования в кольце вычетов по модулю простого числа.

Пусть задано сравнение

Будем решать задачу методом перебора. Выпишем таблицу всех степеней числа 3. Каждый раз мы вычисляем остаток от деления на 17 (например, 3 3 ≡27 - остаток от деления на 17 равен 10).

Теперь легко увидеть, что решением рассматриваемого сравнения является x=4 , поскольку 3 4 ≡13.

На практике модуль обычно является достаточно большим числом, и метод перебора является слишком медленным, поэтому возникает потребность в более быстрых алгоритмах.


3. Алгоритмы решения

3.1. В произвольной мультипликативной группе

Разрешимости и решению задачи дискретного логарифмирования в произвольной конечной абелевой группе посвящена статья J. Buchmann, M. J. Jacobson и E. Teske. В алгоритме используется таблица, состоящая из пар элементов и выполняется умножений. Данный алгоритм медленный и не пригоден для практического использования. Для конкретных групп существуют свои, более эффективные, алгоритмы.


3.2. В кольце вычетов по простому модулю

Рассмотрим уравнение

где p - простое, b не делится на p . Если a является образующим элементом группы , то уравнение (2) имеет решение при любых b . Такие числа a называются ещё первообразными корнями, и их количество равно φ(p − 1) , где φ - функция Эйлера. Решение уравнения (2) можно находить по формуле:

Однако, сложность вычисления по этой формуле хуже, чем сложность перебора.

Следующий алгоритм имеет сложность

Алгоритм

Конец алгоритма

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


3.2.1. Алгоритмы с экспоненциальной сложностью


3.2.2. Субэкспоненциальные алгоритмы

Данные алгоритмы имеют сложность арифметических операций, где и - некоторые константы. Эффективность алгоритма во многом зависит от близости c к 1 и d - к 0.

Наилучшими параметрами в оценке сложности на данный момент является , .

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


3.3. В произвольном конечном поле

Задача рассматривается в поле GF(q) , где q = p n , p - простое.


3.4. В группе точек на эллиптической кривой

Рассматривается группа точек эллиптической кривой над конечным полем. В данной группе определена операция сложения двух точек. Тогда m P - это . Решением задачи дискретного логарифмирования на эллиптической кривой является нахождение такого натурального числа m , что

для заданных точек P и A .

До 1990 года не существовало алгоритмов дискретного логарифмирования, учитывающих особенностей строения группы точек эллиптической кривой. Впоследствии, Менезес (Alfred J. Menezes), Окамото (Tatsuaki Okamoto) и Венстон (Scott A. Vanstone) предложили алгоритм, использующий спаривание Вейля. Для эллиптической кривой, определённой над полем G F (q ) , данный алгоритм сводит задачу дискретного логарифмирования к аналогичной задаче в поле G F (q k ) . Однако, данное сведение полезно, только если степень k мала. Это условие выполняется, в основном, для суперсингулярных эллиптических кривых. В остальных случаях подобное сведение практически никогда не приводит к субэкспоненциальным алгоритмам.


4. Вычислительная сложность и приложения в криптографии

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

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

Последние материалы раздела:

Английский с носителем языка по skype Занятия английским по скайпу с носителем
Английский с носителем языка по skype Занятия английским по скайпу с носителем

Вы могли слышать о таком замечательном сайте для языкового обмена, как SharedTalk. К сожалению, он закрылся, но его создатель возродил проект в...

Исследовательская работа
Исследовательская работа " Кристаллы" Что называется кристаллом

КРИСТАЛЛЫ И КРИСТАЛЛОГРАФИЯ Кристаллом (от греч. krystallos - "прозрачный лед") вначале называли прозрачный кварц (горный хрусталь),...

«Морские» идиомы на английском языке
«Морские» идиомы на английском языке

“Попридержи коней!” – редкий случай, когда английская идиома переводится на русский слово в слово. Английские идиомы – это интересная,...