Таблица затрат на операции в эллиптических кривых - Table of costs of operations in elliptic curves

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

Сокращения для операций

В следующем разделе представлена ​​таблица всех временных затрат на некоторые из возможных операций с эллиптическими кривыми. Столбцы таблицы помечены различными вычислительными операциями. Строки таблицы относятся к разным моделям эллиптических кривых. Рассматриваются следующие операции:

DBL - удвоение
ДОБАВИТЬ - Дополнение
mADD - Смешанное добавление: добавление входа, который был масштабирован, чтобы иметь Z-координата 1.
mDBL - Смешанное удвоение: удвоение входа, который был масштабирован, чтобы иметь Z координата 1.
ОСАГО - утроение.
DBL + ADD - комбинированный двойной и дополнительный шаг

Чтобы увидеть, как определяются точки добавления (ADD) и удвоения (DBL) на эллиптических кривых, см. Групповой закон. Важность удвоения скорости умножения скейлера обсуждается после таблицы. Для получения информации о других возможных операциях с эллиптическими кривыми см. http://hyperelliptic.org/EFD/g1p/index.html.

Табулирование

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

I = 100M, S = 1M, * param = 0M, add = 0M, * const = 0M

Это означает, что требуется 100 умножений (M), чтобы инвертировать (I) элемент; одно умножение требуется для вычисления квадрата (S) элемента; умножение не требуется для умножения элемента на параметр (* param), на константу (* const) или для добавления двух элементов.

Для получения дополнительной информации о других результатах, полученных с другими предположениями, см. http://hyperelliptic.org/EFD/g1p/index.html

Форма кривой, представлениеDBLДОБАВИТЬMADDmDBLОСАГОDBL + ADD
Краткая проекция Вейерштрасса1114118
Короткий проектив Вейерштрасса с a4 = -11114118
Короткий проектив Вейерштрасса с a4 = -31014118
Краткий относительный якобиан Вейерштрасса[1]1011(7)(7)18
Кривая Доче – Икарта – Кохеля, ориентированная на утроение91711612
Расширенная кривая Гессе912119
Проективная кривая Гессе81210614
Якоби квартика XYZ813115
XYZ, ориентированная на удвоение квартики Якоби813115
Проективная скрученная кривая Гессе81212814
Кривая Доче – Икарта – Кохеля, ориентированная на удвоение717126
Проективное пересечение Якоби71412614
Расширенное пересечение Якоби71211716
Скрученный проектив Эдвардса711106
Скрученный Эдвардс перевернутый71096
Twisted Edwards Extended8987
Эдвардс проективный7119613
Якобиевская квартика ориентированная на удвоение XXYZZ7119614
Якоби квартика XXYZZ7119614
Якоби квартика XXYZZR7109715
Кривая Эдвардса перевернутая71096
Кривая Монтгомери43

Важность удвоения

В некоторых приложениях криптография на основе эллиптических кривых и метод факторизации эллиптической кривой (ECM ) необходимо учитывать скалярное умножение [п]п. Один из способов сделать это - последовательно вычислить:

Но быстрее использовать метод двойного и сложения, например [5]п = [2] ([2] P) + п.В общем, чтобы вычислить [k]п, записывать

с kя в {0,1} и , kл = 1, тогда:

.

Обратите внимание, что этот простой алгоритм занимает не более шагов и каждый шаг состоит из удвоения и (если kя ≠ 0) добавляя две точки. Таким образом, это одна из причин, по которой определены формулы сложения и удвоения. Более того, этот метод применим к любой группе, и если групповой закон записан мультипликативно, вместо этого вызывается алгоритм двойного и сложения. алгоритм квадратного и умножения.

Рекомендации

  1. ^ Фэй, Бьорн (2014-12-20). «Двойное и сложение с относительными якобианскими координатами». Архив криптологии ePrint.