Jump to content

Подсчет точек на эллиптических кривых

Важным аспектом изучения эллиптических кривых является разработка эффективных способов подсчета точек на кривой . Для этого существовало несколько подходов, и разработанные алгоритмы оказались полезными инструментами при изучении различных областей, таких как теория чисел , а в последнее время и в криптографии и аутентификации цифровой подписи (см. Криптография на эллиптических кривых и DSA на эллиптических кривых ). В то время как в теории чисел они имеют важные последствия при решении диофантовых уравнений , по отношению к криптографии они позволяют нам эффективно использовать сложность задачи дискретного логарифмирования (DLP) для группы , эллиптических кривых над конечным полем , где q = p к и p — простое число. DLP, как его стали называть, представляет собой широко используемый подход к криптографии с открытым ключом , и сложность решения этой проблемы определяет уровень безопасности криптосистемы. В этой статье рассматриваются алгоритмы подсчета точек на эллиптических кривых над полями большой характеристики, в частности p > 3. Для кривых над полями малой характеристики существуют более эффективные алгоритмы, основанные на p -адических методах.

Подходы к подсчету точек на эллиптических кривых

[ редактировать ]

Существует несколько подходов к проблеме. Начиная с наивного подхода, мы прослеживаем развитие вплоть до окончательной работы Шуфа по этому вопросу, а также перечисляем улучшения алгоритма Шуфа, сделанные Элкисом (1990) и Аткином (1992).

Некоторые алгоритмы используют тот факт, что группы вида подчиняются важной теореме Хассе, ограничивающей число рассматриваемых точек. Теорема Хассе утверждает, что если E — эллиптическая кривая над конечным полем , мощность то удовлетворяет

Наивный подход

[ редактировать ]

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

Пусть E — кривая y 2 = х 3 + x + 1 больше . Для подсчета очков на E мы делаемсписок возможных значений x , затем квадратичных остатков x по модулю 5 (только для целей поиска), затем x 3 + x mod 5, затем y x + 1 3 + x + 1 mod 5. Это дает точки на E .

Очки

Например, последняя строка вычисляется следующим образом: если вы вставляете в уравнении х 3 + x + 1 мод 5 вы получаете как результат (3-й столбец). Такого результата можно достичь, если ( Квадратичные остатки можно посмотреть во 2-м столбце). Таким образом, баллы за последнюю строку равны .

Поэтому, имеет мощность 9: 8 точек, перечисленных выше, и точку на бесконечности.

Этот алгоритм требует времени работы O ( q ), поскольку все значения необходимо учитывать.

Бэби-шаг, гигантский шаг

[ редактировать ]

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

Пробуем все значения чтобы найти тот, который удовлетворяет берет вокруг шаги.

Однако, применив алгоритм «маленького шага-гиганта» к , мы можем ускорить это примерно до шаги. Алгоритм следующий.

Алгоритм

[ редактировать ]
1. выбрать  целое число, 2.  ЗА  {  к }  ДЕЛАТЬ  3. 4.  НАКОНЕЦ-ТО 5. 6.  7.  ПОВТОРИТЕ  подсчёт очков 8.  ПОКА  :   \\ -координаты сравниваются9.  \\примечание 10. Фактор . Позволять  быть отдельными простыми факторами .11.  ПОКА   ДЕЛАТЬ 12.  ЕСЛИ  13.  ЗАТЕМ  14.  ЕЩЕ   15.  ЭНДИФ 16.  КОНЕЦ 17.  \\примечание  это порядок точки 18.  ПОКА   делит более одного целого числа  в 19.  ОБЯЗАТЕЛЬНО  выберите новую точку  и перейти к 1.20.  КОНЕЦ 21.  ВОЗВРАТ   \\это мощность 

Примечания к алгоритму

[ редактировать ]
  • В строке 8. мы предполагаем наличие совпадения. Действительно, следующая лемма гарантирует, что такое совпадение существует:
Позволять быть целым числом с . Существуют целые числа и с
  • Вычисление один раз было вычислено, можно сделать, добавив к вместо того, чтобы заново вычислять полное скалярное умножение. Таким образом, для полного расчета требуется дополнения. можно получить с одним удвоением из . Вычисление требует удвоения и дополнения, где количество ненулевых цифр в двоичном представлении ; отметим, что знание и позволяет уменьшить количество удвоений. Наконец, чтобы получить от к , просто добавьте вместо того, чтобы пересчитывать все.
  • Мы предполагаем, что можем факторизовать . Если нет, то мы можем, по крайней мере, найти все малые простые множители. и проверь это для этих. Затем будет хорошим кандидатом орден на .
  • Вывод шага 17 можно доказать с помощью элементарной теории групп: поскольку , порядок делит . Если нет собственного делителя из осознает , затем это порядок .

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

Существуют и другие общие алгоритмы вычисления порядка элемента группы, которые более эффективны с точки зрения использования пространства, такие как ро-алгоритм Полларда и метод кенгуру Полларда . Метод кенгуру Полларда позволяет искать решение в заданном интервале, что дает время работы , с использованием космос.

Алгоритм Шуфа

[ редактировать ]

Теоретический прорыв в проблеме вычисления мощности групп типа был достигнут Рене Шуфом, который в 1985 году опубликовал первый детерминированный алгоритм с полиномиальным временем. Центральным элементом алгоритма Шуфа является использование полиномов деления и теоремы Хассе , а также китайской теоремы об остатках .

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

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

Алгоритм Шуфа – Элкиса – Аткина

[ редактировать ]

В 1990-х годах Ноам Элкис , а затем АОЛ Аткин разработали улучшения базового алгоритма Шуфа, проводя различие между простыми числами. которые используются. Премьер называется простым числом Элкиса, если характеристическое уравнение эндоморфизма Фробениуса , распадается . В противном случае называется простым числом Аткина. Простые числа Элкиса являются ключом к улучшению асимптотической сложности алгоритма Шуфа. Информация, полученная из простых чисел Аткина, допускает дальнейшее улучшение, которое асимптотически незначительно, но может оказаться весьма важным на практике. Модификация алгоритма Шуфа для использования простых чисел Элкиса и Аткина известна как алгоритм Шуфа – Элкиса – Аткина (SEA).

Статус конкретного премьера зависит от эллиптической кривой , и может быть определен с помощью модульного полинома . Если одномерный полином имеет корень в , где обозначает j- инвариант , затем является простым числом Элкиса, а в противном случае — простым числом Аткина. В случае Элкиса дальнейшие вычисления с использованием модульных полиномов используются для получения правильного множителя полинома деления. . Степень этого фактора , тогда как имеет степень .

В отличие от алгоритма Шуфа, алгоритм SEA обычно реализуется как вероятностный алгоритм (типа Лас-Вегаса ), так что поиск корня и другие операции могут выполняться более эффективно. Его вычислительная сложность во многом зависит от стоимости вычисления модульных полиномов. , но так как они не зависят от , они могут быть вычислены один раз и использоваться повторно. При эвристическом предположении, что существует достаточно много маленьких простых чисел Элкиса, и исключая затраты на вычисление модульных полиномов, асимптотическое время работы алгоритма SEA равно , где . Его пространственная сложность , но когда используются предварительно вычисленные модульные полиномы, это увеличивается до .

См. также

[ редактировать ]

Библиография

[ редактировать ]
  • И. Блейк, Г. Серусси и Н. Смарт: эллиптические кривые в криптографии , издательство Кембриджского университета, 1999.
  • А. Энге: Эллиптические кривые и их приложения в криптографии: Введение . Kluwer Academic Publishers, Дордрехт, 1999.
  • Г. Мюзикер: Алгоритм Шуфа для подсчета очков на . Доступно по адресу http://www.math.umn.edu/~musiker/schoof.pdf.
  • Р. Шуф: Подсчет точек на эллиптических кривых над конечными полями. Дж. Теория. Nombres Bordeaux 7:219-254, 1995. Доступно по адресу http://www.mat.uniroma2.it/~schoof/ctg.pdf.
  • Л. К. Вашингтон: Эллиптические кривые: теория чисел и криптография. Чепмен \& Холл/CRC, Нью-Йорк, 2003 г.


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 006e69c0945aa0c1ea65ba09055bc528__1703968620
URL1:https://arc.ask3.ru/arc/aa/00/28/006e69c0945aa0c1ea65ba09055bc528.html
Заголовок, (Title) документа по адресу, URL1:
Counting points on elliptic curves - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)