Научная статья на тему 'Разработка нейросетевого метода умножения точки эллиптической кривой на скаляр'

Разработка нейросетевого метода умножения точки эллиптической кривой на скаляр Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
912
144
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЭЛЛИПТИЧЕСКАЯ КРИВАЯ / СИСТЕМА ОСТАТОЧНЫХ КЛАССОВ / НЕЙРОННЫЕ СЕТИ / УМНОЖЕНИЕ ТОЧКИ ЭЛЛИПТИЧЕСКОЙ КРИВОЙ НА СКАЛЯР / ЭЛЛИПТИЧЕСКАЯ КРИПТОГРАФИЯ / ПРОЕКТИВНЫЕ КООРДИНАТЫ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Червяков Н. И., Кияшко Е. С.

В статье предложен новый модифицированный метод вычисления скалярного умножения с использованием нейронной сети конечного кольца. В первую очередь исследования в данной области направлены на снижение алгоритмической сложности алгоритмов и, вместе с тем, на увеличение их быстродействия. С целью повышения эффективности предлагается использование нейронной сети конечного кольца и модифицированного NAF non-adjacent form метода[2].

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Разработка нейросетевого метода умножения точки эллиптической кривой на скаляр»

Серия История. Политология. Экономика. Информатика. 2014. №8 (179). Выпуск 30/1

УДК 004.22

РАЗРАБОТКА НЕЙРОСЕТЕВОГО МЕТОДА УМНОЖЕНИЯ ТОЧКИ ЭЛЛИПТИЧЕСКОЙ КРИВОЙ НА СКАЛЯР

ФГАОУ ВПО «СевероКавказский федеральный университет»

Н. И. ЧЕРВЯКОВ Е. С. КИЯШКО

В статье предложен новый модифицированный метод вычисления скалярного умножения с использованием нейронной сети конечного кольца. В первую очередь исследования в данной области направлены на снижение алгоритмической сложности алгоритмов и, вместе с тем, на увеличение их быстродействия. С целью повышения эффективности предлагается использование нейронной сети конечного кольца и модифицированного NAF - non-adjacent form метода[2].

e-mail:

[email protected]

Ключевые слова: эллиптическая кривая, система остаточных классов, нейронные сети, умножение точки эллиптической кривой на скаляр, эллиптическая криптография, проективные координаты.

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

На современном этапе развития общества требуются особые подходы для сохранения информации в секрете, так как порой от информации зависят не только деньги, но и жизни людей. Развитие распределенных систем обработки данных выдвинуло на первый план задачу информационной безопасности системы в целом, понимая под этим состояние защищенности всех процессов обработки, хранения и передачи информации в системе [16]. Одним из перспективных направлений построения криптографических примитивов является эллиптическая кривая, так как она обеспечивает максимально возможный уровень безопасности при сохранении той же длины ключа, например, при длине ключа 192 бит криптосистема на эллиптической кривой обеспечивает тот же уровень безопасности RSA с длиной ключа 1024 бита. В данной работе будет рассматриваться эллиптическая кривая в форме Вейерштрасса: E(Fp) : y2 = х3 + ax+b, где a, b e Fp, p > 3 - простое число.

В основе криптосистем, построенных на точках эллиптической кривой, лежит алгоритм умножения точки на скаляр. На практике используются длинные криптографические ключи, что приводит к решению задач повышенной размерности, эффективное решение которых можно осуществить на основе использования нейросетевых систем, синтезируемых на основе нейроускорителей [19], представляющих собой совокупность нейронных сетей (НС) конечного кольца [18] или обычных арифметических элементов, которые выполняют арифметические операции. Ускорение выполнение базовых операций с точками эллиптической кривой получено в работах [14, 13] с использованием системы остаточных классов. В работе [15, 17] показано, что нейронная сеть представляет собой высокопараллельную динамическую структуру с топологией направленного графа, которая может получать выходную информацию посредством реакции её состояния на входные воздействия. Структура алгоритма обработки данных, представленных в системе остаточных классов, также как и структура нейронной сети обладают естественным параллелизмом, что позволяет использовать нейронную сеть в качестве аппарата описания алгоритма.

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

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

Серия История. Политология. Экономика. Информатика.

2014 № 8 (179). Выпуск 30/1

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

Основная часть

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

В работе [9] проанализированы простые бинарные методы, которые известны как алгоритмы удвоения и сложения точек ЭК в разных системах координат и приведена оценка их сложности вычисления.

При этом были использованы следующие обозначения: деление в поле, содержащем координаты точки; инверсия I, умножение М в ОЕ(р), возведения в квадрат 5.

Сложность вычисления операций сложения и умножения представлена, в табл. 1.

Таблица 1

Сложность вычисления операций сложения и умножения

Система координат Сложность вычисления сложения точек ЭК Сложность вычисления удвоения точек ЭК

Аффинная (А) I + 2М + Б I + 2М + 2Б

Проективная (Р) 12М + 2Б 7М + 5Б

Якобиевы (J) 12М + 4Б 4М + 6Б

Якоби-Чудновского (Jc ) 1М + 3Б 5М + 6Б

Модифицированные координаты Якоби (Jm ) 13М + 6Б 4М + 4Б

Упрощенные координаты Якоби-Чудковского (JS) 12М + 3Б 4М + 6Б

Таким образом, из приведенных данных в таблице 1 можно сделать следующие выводы:

1. Из всех рассматриваемых координат в Якоби-Чудновского операция сложения двух разных точек эллиптической кривой выполняется быстрее всего.

2. Наиболее быстрым из всех рассматриваемых координат является удвоение в модифицированных координатах Якоби.

3. Распараллелив вычисление кратной точки на несколько вычислительных потоков можно наиболее эффективно использовать модифицированные координаты Якоби.

Формулы (і) и (2) показывают два алгоритма умножения на скаляр, представленного в бинарном виде. Умножение происходит аналогично классического алгоритма Бдиаге-ап^тиЫрМ 12]:

Алгоритм і. кР = кйР + кх 2Р +... + к;_ 121 1Р; (і)

Алгоритм 2. кР = к^Р + 2(кР + 2(...+ 2(к;_1Р)...)). (2)

Алгоритм і использует скаляр от наибольшего значения до наименьшего, так называемый подход ІеЙ-Ьо-гіеМ, а Алгоритм 2 наоборот - гіеЬМо-ІеЙ.

Алгоритм 1. ІеЙ-Ьо-гіеМ сложение и удвоение точек при умножении на скаляр.

Вход: Р є £(^),к = (к1 _]к1 _2..ко)2

114

НАУЧНЫЕ ВЕДОМОСТИ

Серия История. Политология. Экономика. Информатика. ^ .

2014. №8 (179). Выпуск 30/1

Выход: G = kP

i: Q ^ O

2: for i = l-1 to 0 do 3: Q ^ 2Q

4: if k = 1 then

5: Q +-Q+P

6: return Q

Алгоритм 2. right-to-left сложение и удвоение точек при умножении на скаляр.

Вход: P єE(Fq),k = (к^к—^.ко^

Выход: G = kP

i: Q ^ O

2: R ^ P

3: for i = 0 to l -1 do

4: if k = 1 then

5: Q +-Q+R

6: R ^ 2R

7: return Q

Трудоемкость двух алгоритмов одинакова в отношении операций над точками, тем не менее существуют различия при умножении. С одной стороны вариант left-to-right позволяет использовать смешанные аффинно-проективные координаты для сложения точек. С другой стороны используя вариант алгоритма right -to- left мы можем выразить через точку Q в Якобиан координатах и точку R в координатах модифицированного

Якобиана[5]. Для алгоритма 2, введены следующие обозначения J/ Jm .

Смешанный Якобиан и модифицированный Якобиан были первоначально введены, чтобы ускорить процесс удвоения в алгоритме left-to-right умножения на скаляр. В работе [1] Кохен и соавторы различают три вида операций left-to-right умножения на скаляр: промежуточные удвоения, окончательное удвоение, сложение. Окончательное удвоение, это удвоение предшествующей операции сложения, а все остальные удвоения называются промежуточными. Обратим внимание, на тот факт, что использование модифицированного Якобиана позволяет экономить 1M + 1A операций, по сравнению с обычными проективными координатами. Следовательно, скорость удвоения будет 3M + 4S + 11A. Обозначим данный подход Jm / J.

Таблица 2

Средняя скорость одного скалярного умножения Алгоритма 1 в зависимости от точки представления

Система координат Скорость при случайном a Скорость при a = — 3

H 11.5M + 6S + 13.5A 11.5M + 4S + 14.5A

J 8M + 7.5S +14.5A 8M + 5.5S +15.5 A

Jm / J 8M + 6.5S + 15A

Таблица 3

Средняя скорость одного скалярного умножения Алгоритма 2 в зависимости от точки представления

Система координат Скорость при случайном a Скорость при a = — 3

H 13M + 6S + 13.5A 13M + 4S +14.5A

J / Jm 10M + 6S + 15.5A

НАУЧНЫЕ ВЕДОМОСТИ

Оценка средней скорости вычисления Алгоритма 1 и, соответственно, алгоритма 2, в зависимости от скорости модульного умножения (M), модульного возведения в квадрат (S), и модульного сложения или вычитания (A), для различных проективных систем координат, представлена в Таблице 2 и Таблица 3, соответственно.

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

Можно отметить, что в алгоритме left-to-right. точка Q переходит в 2Q + P, при этом обрабатывается 1 бит. Таким образом, основной цикл можно записать в виде for i = l-1 to 0 do if k = 0 then

Использование модифицированного Якобиана со средней скоростью алгоритма 1 составляет: 8.5М + 5.55 + 12Л в общем случае или 8.5М + 4.55 + 12.5Л при a = -3, что позволяет увеличить скорость выполнения арифметических операций с точками эллиптической кривой, соответственно, 9-11% и на 4-7%.

Для вычисления точки - Р = (х, р - у) от точки Р = (х, у) требуется только одно

вычитание двух чисел, что является менее трудоемкой операцией, по сравнению со сложением и удвоением точек эллиптической кривой, которое позволяет уменьшить вычислительную сложность алгоритма 1еЙ^о-пеФ за счет представления скаляра не в двоичной системе счисления, а в NAF.

Бинарный алгоритм КАБ определяется следующим образом: КАБ представляется в виде целого числа к е N * с (к,_к,_ г-ко )НАр, где кг е {-1,0,1},0 < г < I -1 и к^ = 1 , так что для всех пар последовательных цифр £ и £+1 мы имеем ££+1 = 0.

Алгоритм КАБ обладает следующими свойствами:

1. Данный £ е N *, (к)МАр является уникальным.

2. Длина представления КАБ к имеет вид [Ь§2(к)] + 1 или [Ь§2(к)] + 2, то есть она

имеет туже длину или на одну цифру больше, чем бинарное представление к .

3. Вес Хемминга - число ненулевых цифр от (к)ИАР всегда минималный из базиса 2 при использовании подписи для заданного к .

4. Средний вес Хэмминга в I - значном представлении для КАБ будет примерно

Вычисление NAF положительного целого числа представлено в Алгоритме 3, который работает O(l) и включает в себя только легкие операции.

Алгоритм 3. Вычисление NAF.

Вход: k є N *

Выход: (k)naf

1: i — 0

2: while k > 1 do 3: if k mod2 = 1 then 4: k — 2 - (k mod4)

5: k —— k — k 6: else

7: kt — 0

Q — 2Q else

Q — 2Q + P.

l/3 .

8: k — k/2 9: i —— i + 1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Ю: return (к,-k-2...Л0)

Алгоритм 4 показывает вычисления left-to-right скалярного умножения при разложения скаляра в NAF. Алгоритм 5, впервые предложенный Joye [5], является представлением варианта right-to-left в том числе, on-the-fly вычисление представления скаляра в NAF. Можно отметить, что left-to-right on-the-fly вычисление представления в NAF возможно также вычислить используя таблицу [8].

Алгоритм 4. left-to-right бинарное представление скалярного умножения в NAF.

Вход : P є E(Fq ),k = (kl-1kl-2 ..-k0 )NAF

Выход: kP Uses: P and Q

i: Q — O

2: for i = l-1 to 0 do 3: Q — 2Q 4: if k = 1 then

5: Q — Q+P

6: if k = -1 then

7: Q — Q+(-P)

8: return Q

Алгоритм 5. right -to- left бинарное представление скалярного умножения в NAF. Вход: P є E(F ), k є N *

Выход: kP Uses: Q and R i: Q — O 2: R — P 3: while k > 1 do 4: if k mod2 = 1 then 5: u — 2 - (k mod4)

6: k —— k — u 7: if u = 1 then 8: Q — Q + R 9: else

10: Q — Q + (-R)

11: k —— k /2 12: R — 2R 13: return Q

Таблица 4

Средняя скорость вычисления умножения на скаляр в алгоритме 4 в зависимости от выбора точки

Система координат Скорость при случайном a Скорость при a = - 3

H 10M + 5.7S + 12.3A 10M + 3.7S + 13.3A

J 6.7M + 7S + 13.3A 6.7M + 5S + 14.3A

Jm / J 6.7M + 5.7S + 1 L4A

Таблица 5

Средняя скорость вычисления умножения на скаляр в алгоритме 5 в зависимости от выбора точки

Система координат Скорость при случайном a Скорость при a = - 3

H 11M + 5.7S + 12.3A 1M + 3.7S + 13.3A

J / Jm 8M + 5.3S + 14.3A

Как было описано выше варианты left-to-right и right -to- left имеют различную скорость вычисления. Средняя скорость вычисления алгоритмов 4 и 5 приведены в таблице 4 и 5, соответственно.

Применение алгоритмов left-to-right и right -to- left, позволяет уменьшить вычислительную сложность вычисления операций сложения и удвоения в системе различных проективных координат.

Алгоритм 4 может использовать операцию 2Q + P для ускорения вычислений, в том числе для бинарного алгоритма. В этом случае основной цикл записывается в виде: for i = l-1 to 0 do if k = 0 then Q 2Q

else if k = 1 then

Q ^ 2Q + P else

Q ^ 2Q + (-P)

Используя при сложении смешанный Якобиан средняя скорость Алгоритма 4 составит в общем случае 7M + 5.7S + 11.7A или 7M + 4.3S + 12.3A при a = -3. Среднее увеличение скорости составляет около 6-8% в общем случае и 3-5% при a = -3. Классические m-ичные алгоритмы возведение в степень Алгоритмами m-ичного умножения на скаляр, являются алгоритмы сложения и удвоения точек, которые могут быть представлены с основанием m > 2 [12]. Обычно, для повышения эффективности во встраиваемых устройствах m является степенью. При т~2* поиск t скалярного бита требует времени и предварительных вычислений:

2P,3P,...,(m -1)P.

«Оконные» алгоритмы NAF

Путем предварительного вычисления нечетных чисел, кратных входной точке, можно повысить эффективность скалярного умножения. Например, при обработке 11 бит, в алгоритме left-to-right, удвоение и сложение точек выполняется следующим образом 2(2Q + P) + P. Заметим, что можно вынести сложение, то есть 3P, тогда вычисление будет иметь вид 2(2Q) + 3P. Отсюда следует при использовании больших размеров «окон» NAF представления может быть получен существенный выигрыш[з,6].

Более того, если базовая точка является постоянной или заранее известной, то предварительные расчеты можно проводить в автономном режиме. Так, используя алгоритм right-to-left, мы сохраняем несколько промежуточных результатов во время вычисления кратной точки и объединяем их в конце [10,7], данную операцию будем называть поствычислениями.

Рассмотрим два «оконных» алгоритма описанных Ханкерсоном, Менезесом и Ванстоуном [4]: «скользящее окно» NAF и ширина «окна-w» NAF. Каждый из них может быть реализован через алгоритмы left-to-right и right -to- left .

Алгоритм 6 реализует алгоритм «скользящее окно» NAF используя алгоритм left-to-right и принимает двоичное представление скаляра в качестве входных данных. Алгоритм 7 реализует алгоритм ширина «окна-w» NAF используя алгоритм right -to- left и вычисление on-the-fly ширины «окна-w» представлением к .

Алгоритм 6. Алгоритм нахождения кратной точки left-to-right «скользящего окна» NAF

Вход: P е E(Fq),k = (ki-iki-2..k0)NAF,w > 2

Выход: kP

Uses: Q,Pi,P,,..., and Pm with m = 2(2w -(-1)w)/3-1

1: Q — о 2: i —— l — 1 Precomputations 3: for i = 1 to m by 2 do

4: P — iP

Основной цикл 5: while i > 0 do 6: if k = 0 then

7: Q —- 2Q 8: i — i-1 9: else

10: s — max(i - w + 1,0)

11: while ks = 0 do

12: s — s + 1

13: U — (ki ...ks )naf

14: for j = 1 to i - s + 1 do

15: Q — 2Q

16: if u > 0 then

17: Q — Q+Pu 18: if u < 0 then

19: Q — Q + (-P-u)

20: i — s-1 21: return Q

Алгоритм 7. Алгоритм нахождения кратной точки right-to-left ширина «окна-w»

NAF

Вход: P е E(Fq),к = (k;- 1kl-2..к0),w > 2 Выход: kP

Uses: R,Q1,Q3,..., and Qm with m = 2w-1 -1 1: R — P

2: Q1, Q3 ,...,Qm — °

Основной цикл 3: while к > 1 do

4: if к mod2 = 1 then 5: t — к mod2w 6: if t > 0 then

7: Qt — Q* + R 8: if t < 0 then

9: Q-1 — Q-1 - R 10: к —— к — t 11: R — 2R 12: к — к/2 Postcomputations 13: for i = 3 to m by 2 do

14: Qi ^ Qi + iQj

15: return Q

Метод «окон» позволяет понизить вычислительную сложность алгоритма, за счет использования больших массивов данных, которые вычисляются заранее. Однако, стоит заметить, что использование метода окон в реальных приложениях затруднено за счет требуемых больших пред и пост вычислений.

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

В архитектуре нейронных сетей для вычисления скалярного умножения точки на скаляр сборный слой разбит на две группы по п' и п" нейронов. Группа с п' нейронами используется для сбора входов р, а группа с п" - для входов r. Синаптические веса первой группы п' равны Щ = kPmodp. Синаптические веса для второй группы п" равны Щ = 2 , где i = 0,...,п'-1. Топология нейронной сети реализующей операцию вычисления умножения точки на скаляр представленна на рисунке.

Рис. Архитектура нейронной сети для вычисления кР

Пример 1.

Шйти р + д и 2р, где р,д еЕ(р7). ^ = хз _зх + 6 и р = (1,5), Q = (2,1).

Решения

Инициализация НСКК.

Так как в результате произведения двух чисел длиной 3 бита получается число длиной 6 бит, то, для построения НСКК нам необходимо вычислить Щ = 12, Щ = 10,

Щ = 100, Щ = 1, Щ = 10, Щ = 100 .

1. Случай Р + д .

к = УР—У^ = — = —4 = -100

Хр — Xq 1 — 2

Хд = к2 — хр — хе = 10000 —1 —10 = (0W+0W+0W+0W + W )—h —10 =

= 102 —12 —102 =—12 = 1102 yR = —yP + к(хР — XR )=—12 —1002 (1012 + 12 )=—12 — 1100° =—11001 =

= — (W + 0W + 0W2 + W3 + W4) =—(12 + 12 + 102 ) = —1002 = 112

Следовательно, R = (хд, у, ) = Р + g = (6,3).

2. Случай 2Р.

к = xpz3 = 12 —112 =-}°. = —= 100 2уР 10 -101 1010 101 2

хд = к2 — 2хР = 10000 —10 = 0

yR =—Ур + к(хр — XR ) = —10)12 + 1002 (12 — 0)=—12 = 1102

Следовательно, R = 2Р = (0,6).

Из примера видно, что для выполнения модульных операций достаточно произвести один раз инициализацию сети. Умножение и сложение чисел будут выполняться за один раунд нейронной сети.

Заключение

Таким образом, проведенный анализ существующих способов представления точек эллиптической кривой, позволяет сделать следующие выводы:

1. В Якоби-Чудновского сложение двух разных точек эллиптической кривой выполняется за меньшее количество операций, чем в якобиевых координатах и немного быстрее, чем в проективных, однако удвоение точек происходит на одно умножение медленнее, чем в якобиевых.

2. В модифицированных координатах Якоби сложение двух разных точек кривой выполняется за большее количество операций, чем в якобиевых, но при этом удвоение требует на две операции меньше с длинными числами «возведения в квадрат», чем в якобиевых.

3. Удвоение в модифицированных координатах Якоби является наиболее быстрым из всех рассматриваемых координат.

4. Наиболее эффективно можно использовать модифицированные координаты Якоби распараллелив вычисление кратной точки на несколько вычислительных потоков.

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

Список литературы

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

1. Cohen H., Miyaji A., Ono T. Efficient elliptic curve exponentiation using mixed coordinates. In: ASIACRYPT’98. Ed. by K. Ohta and D. Pei. Vol. 1514. Lecture Notes in Computer Science. Springer, 1998, pp. 51-65.

2. D. Hankerson, J. Lopez, A. Menezes. Software implementation of elliptic curve cryptography over binary fields. In Cetin K. Koc and C. Paar editors, Workshop and embedded systems (CHES'99) LNCS 1717, pp. 1-24, Springer-Verlag, august 2000.

3. Gordon D. M. A survey of fast exponentiation methods. In: Journal of algorithms 27 (1998), pp. 129-146.

4. Hankerson D., Menezes A., and Vanstone S. Guide to elliptic curve cryptography. Springer Professional Computing Series, Jan. 2003.

5. Joye M. Fast point multiplication on elliptic curves without precomputation. In: WAIFI 2008. Ed. by J. von zur Gathen. J. L. lmana, and C. K. Koc. Vol. 5130. Lecture Notes in Computer Science. Springer, 2008, pp. 36-46.

6. Koyama K., Tsuruoka Y. “Speeding up elliptic cryptosystems by using a signed binary window method”. In: CRYPTO’92. Ed. by E. F. Brickell. Vol. 740. Lecture Notes in Computer Science. Springer, 1993, pp. 345-357 (cit. on p. 28).

7. Möller B. “Improved techniques for fast exponentiation”. In: ICISC 2002. Ed. by P. J. Lee and C. H. Lim. Vol. 2587. Lecture Notes in Computer Science. Springer, 2003, pp. 298-312.

8. Muir JA. Efficient integer representation for cryptographic operations. PhD thesis. University of Waterloo, 2004.

9. Vincent Verneuil Elliptic curve cryptography and security of embedded devices url: http://lfant.math.u-bordeauxi.fr/seminar/slides/2012-06-13-Vincent_Verneuil.pdf

10. Yao A. C.-C. “On the evaluation of powers”. In: SIAM Journal on computing 5.1 (1976), pp. 100-103.

11. Болотов А.А, Гашков С.Б., Фролов А.Б. Элементарное введение в эллиптическую криптографию: Протоколы криптографии на эллиптических кривых. - М.:КомКнига, 2006. -280 с.

12. Валицкас А. И. Конспект лекций по дисциплине: Элементы абстрактной и компьютерной алгебры. / / Тобольск, ТГПИ им. Д. И. Менделеева, 2004.

13. Червяков Н.И., Авербух В.М., Бабенко М.Г., Ляхов П.А., Гладков А.В., Гапочкин А.В. Приближенный метод выполнения немодульных операций в системе остаточных классов// Фундаментальные исследования. 2012. № 6-1. С. 189-193.

14. Червяков Н.И., Бабенко М.Г. Алгебраические подходы к разработке алгоритмов

кодирования алфавита точками эллиптической кривой// Нейрокомпьютеры: разработка,

применение. 2010. № 9. С. 19-25.

15. Червяков Н.И., Евдокимов А.А., Галушкин А.И., Лавриненко И.Н., Лавриненко А.В. Применение искусственных нейронных сетей и системы остаточных классов в криптографии. -М.: ФИЗМАТЛИТ, 2012. - 280 с.

16. Червяков Н.И., Малофей О. П., Шапошников А. В., Бондарь В.В. Нейронные сети в системах криптографической защиты информации. Нейрокомпьютеры: разработка и применение, 2001, № 10.

17. Червяков Н.И., Сахнюк П.А., Шапошников А.В., Макоха А.Н. Нейрокомпьютеры в остаточных классах - М.: Радиотехника, 2003 - 272 с.

18. Червяков Н.И., Шапошников А.В., Сахнюк П.А. Модель и структура нейронной сети для реализации арифметики системы остаточных классов. - Нейрокомпьютеры: разработка и применение, 2001, № 10, с. 6.

19. Шаханов А.А., Власов А.И., Кузнецов А.С., Поляков Ю.А. Элементная база для реализации параллельных вычислений: тенденции развития. - Труды VII Всероссийской конференции "Нейрокомпьютеры и их применение". - М: ИПРЖ "Радиотехника", 2001, с. 499-531.

DEVELOPMENT OF THE NEURONETWORK METHOD OF SCALAR MULTIPLICATION OF THE POINT OF THE ELLIPTIC CURVE

North Caucasian Federal University

N. I. CHERVYAKOV E. S. KIYASHKO

This paper proposes a new method for calculating the modified scalar multiplication using a neural network of a finite ring. First of all study in this area are aimed at reducing the algorithmic complexity and, at the same time, at increasing of speed. To improve the efficiency is proposed to use the neural network of a finite ring and modified NAF - non-adjacent form method [2].

e-mail:

[email protected]

Key words: elliptic curve, residue number system, neural networks, elliptic curve point multiplication by a scalar, elliptic curve cryptography, projective coordinates.

i Надоели баннеры? Вы всегда можете отключить рекламу.