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

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

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

Аннотация научной статьи по математике, автор научной работы — В.И. Долгов, А.В. Неласая

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

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

Похожие темы научных работ по математике , автор научной работы — В.И. Долгов, А.В. Неласая

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

It is conducted the review of methods of optimization of computation rate in cryptographic transformations in the cluster of points of elliptical curve in the article. It was offered to use methods of multiple programming for increasing the rate of direct transformations.

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

с преобразованием геометрической информации, для решения которых применяются методы евклидовой комбинаторной оптимизации [18].

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

ПЕРЕЧЕНЬ ССЫЛОК

1. Стоян Ю.Г. Математические модели и оптимизационные методы геометрического проектирования / Стоян Ю. Г., Яковлев С. В. - Киев: Наук. думка, 1986. - 268 с.

2. Стоян Ю.Г. Комбинаторная оптимизационная задача размещения прямоугольников с учетом погрешностей исходных даннях / Стоян Ю.Г., Романова Т.Е., Евсеева Л.Г. // Докл. НАН Украины. Сер. A. - 1997. - № 7 - С.56-60.

3. Емец О.А. Интервальная математическая модель комбинаторной задачи цветной упаковки прямоугольников / Емец О.А., Евсеева Л.Г., Романова Н.Г. // Кибернетика и системный анализ. - 2001. - № 3 - С. 131-138.

4. Стоян Ю.Г. Оптимизационная задача размещения правильных интервальных многоугольников / Стоян Ю.Г., Романова Т.Е., Сысоева Ю.А. // Докл. НАН Украины. Сер. A. - 1998. - № 9 - С. 114-120.

5. Гребенник И.В. Учет погрешностей при построении математических моделей оптимизационных комбинаторных задач / Гребенник И.В., Романова Т.Е. // АСУ и приборы автоматики. - 2002. Вып. 119. - С. 64-69.

6. Kaucher E. Interval Analysis in the Extended Interval Space IR // Comp. Suppl. - 1980. - № 2. - P. 33-49.

7. Stoyan Yu. G. The extended interval space and elementary mappings // Proc. of the IMACS-GAMM Intern. Symp. on Numerical Methods and Error Bounds. (Oldenburg, Germany). - Oldenburg, 1995. - P. 270-279.

8. Стоян Ю.Г. Метрическое пространство центрированных интервалов // Докл. НАН Украины. Сер. A. - 1996. -№ 7. - С. 23-25.

9. Стоян Ю.Г. Выпуклые интервальные многоугольники // Доп. НАН Украши. - 2000. - № 5. - С. 33-39.

10. Stoyan Yu. G. Analytical description of interactions of point sets // Journal of mechanical engineeering - 2001. -№ 1-2, v. 4 - С. 77-88.

11. Stoyan Y. Ф -function for 2D primary objects // Stoyan Y., Terno J., Scheithauer G., Gil N., Romanova T. // Studia Informatica, Paris, University. - 2002. - Vol. 2, № 1. - P. 1- 32.

12. Stoyan Yu. Ф-function for primary 3D objects/ Stoyan Yu., Scheithauer G., Pridatko D., Romanova T.: Prepr./ Technische Univarsitat Dresden; MATH-NM-15-2002. - Dresden. 2002. - 27 p.

13. Stoyan Y. Ф-function for complex 2D objects/ Stoyan Y., Scheithauer G., Gil M., Romanova T. // 4OR Quarterly Journal of the Belgian, French and Italian Operations Research Societies. Volume 2, Number 1, 2004 - P. 69-84.

14. Stoyan Yu. G. Ф-function and its basic properties // Докл. HAH Украины. Сер. A. - 2001. - № 8. - С. 112-117.

15. Stoyan Y. Construction of a Ф-function for two convex poly-topes / Stoyan Y., Terno J., Gil M., Romanova T., Scheithauer G. // Applicationes Mathematicae. - 2002. - Vol. 2, № 29. - P. 199-218. n

16. Романова Т.Е. Интервальное пространство IsR // Докл. HAH Украины. Сер. A. - 2000. - № 9. - С. 36-41.

17. Гребенник И.В. Интервальные модели комбинаторной оптимизации квазилинейных функций в пространстве ^R //

Докл. HAH Украины. Сер. A. - 2004. - № 9 - С. 60-64.

18. Стоян Ю.Г. Теор1я i методи евкл^овоТ комбшаторноТ оптим1зацп / Стоян Ю.Г., бмець 0.0. - КиТв: ¡нститут сис-темних досл^жень осв™, 1993. - 188 с.

Надшшла 18.05.2004 Шсля доробки 27.11.2004

Будуеться математична модель оптимгзацшно1 задачг геометричного проектування в ттервальному npocmopi. Видгляються множини базових двoвимipниx та триви-мipниx iнmеpвальних геометричних oб'eкmiв. Введено по-няття геометричноЧ тформацп щодо базових та складе-них ттервальних oб'eкmiв. Формуеться область припус-тимих pi-шень onmимiзацiйнo'i iнmеpвальнo'i задачi poзмi-щення з використанням методу Ф-функцш.

Mathematical model of a basic optimization problem of geometric design is constructed in the interval space. A set of primary two and three dimensional interval geometric objects are given. A concept of geometric information on primary and complex interval objects is introduced. A feasible region of the basic optimization interval placement problem is formed by means of Ф-functions.

УДК 681.3.06

В. И. Долгов, A.B. Hелаcая

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

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

ВВЕДЕНИЕ

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

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

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

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

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

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

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

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

/ = щ,

где п - порядок циклической подгруппы группы точек эллиптической кривой.

При правильном выборе кривой задача логарифмирования в группе простого порядка, выражаемом числом длиной 160 бит примерно соответствует сложности логарифмирования в мультипликативной группе простого поля, порядок которого выражается числом длиной 1024 бита [1]. Это позволяет уменьшить длину ключа и

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

1 ЭЛЛИПТИЧЕСКИЕ КРИВЫЕ В КРИПТОГРАФИИ. ОБЩИЕ СВЕДЕНИЯ

В криптографии применяется редуцированная форма эллиптической кривой, определенной над конечным полем Галуа GF(q), где модуль q является либо простым числом, либо степенью простого числа. В настоящее время наиболее часто употребляются кривые над простым полем GF(p), где p - большое простое число [2, 5] и кривые над полем GF(2m) [3, 5].

Эллиптическая кривая (ЭК) над простым полем GF(p) в аффинных координатах задается уравнением:

y2 = ( х3 + ax + b) mod p , (1)

где p - простое число, являющееся модулем преобразований; (xi, yi) - точки ЭК. Точка принадлежит ЭК, если удовлетворяет условию (1); a, b - параметры ЭК, причем должно выполняться условие

4a3 + 27b2 ф 0 (modp), (2)

которое обеспечивает гладкость кривой.

Эллиптическая кривая над расширенным полем GF( 2m ) в аффинных координатах имеет вид:

y2 + xy = (x3 + ax2 + b)(mod f(x), 2 ), (3)

где координаты точек ЭК xi, yi и коэффициенты a, b э э GF(2m), f(x) - примитивный полином над полем GF( 2m).

Во втором случае приведение осуществляется по двойному модулю (f (x), 2 ).

Кроме точек ( xi, yi ), удовлетворяющих соответственно уравнениям (1) или (3), в множество точек ЭК также включается точка на бесконечности, обозначаемая как О. На таком множестве можно определить операцию сложения [5], обладающую следующими свойствами:

1. P+O=O + P = P для любой точки P, принадлежащей ЭК.

2. Для любой точки P существует такая точка Q, что P + Q = O. Точка Q является обратным элементом по отношению к P. Для простого поля (1) взаимно обратными являются точки с координатами (x,y) и (x,-y), для расширенного поля (3) - точки с координатами (x,y) и (x,x+y).

3. Для любых точек P и Q существует точка R = P + + Q = Q + P, принадлежащая ЭК.

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

Основой криптографических преобразований является выполнение операции скалярного умножения в группе точек эллиптической кривой. Для ЭК над простым полем [2] сумма двух различных точек ^ = (х^ ^) и Р2 = (Х2, у2) в аффинных координатах определяется следующим образом:

Р3 = Р1 + Р2 = (х1, у1) + (х2, у2) = (х3, у3); (4)

х3 = (X2 - - %2)modp; y3 = (X(xt -y3) -y1)modp;

X = ——У1 (modp). x2 - x1

(5)

(6)

(7)

Сумма двух одинаковых точек (удвоенная точка Р1 = (Х1,У1)) для Х1 Ф 0 равна:

P3 = 2P1 = (хэ. Уз).

(8)

В этом случае xi = х—, X = —--(mod p), а Х3 и У3

1 2 2 y1 з з

вычисляются по формулам (5) и (6) соответственно.

Для ЭК над расширенным полем [3], координаты суммы двух различных точек Pi= (x^ y1 и P—= (x—, y—) в аффинных координатах определяются следующим образом:

x3=fyi + y 2f+ yl+y—+ x1 + x2 + a(modf((x), 2)); (9) Vxi + x^ x1+x2

y3=(y1^)(x1 + x3) + x3 + y 1(mod(f((x), 2)); (10)

Координаты суммы двух одинаковых точек (удвоенная точка P1= (x1, y^) для x1 Ф 0 равны:

y3

2

= x 2 +

y1

(11) (12)

При этом в обоих случаях, если Р1 = -Р2, то Р3 = 0. При удвоении точки с нулевой х координатой результатом будет точка О.

Порядком группы точек ЭК называется число точек ЭК, включая бесконечно удаленную точку. Если п -простое нечетное число, которое делит порядок ЭК, пР = 0 и кР ф 0 для 0 < к < п, то точка Р порождает циклическую подгруппу порядка п и называется базовой точкой порядка п. При этом любую точку этой подгруппы можно представить как кратную базовой точке:

Q = d х P = P + P + ... + P.

(13)

В криптографии Q считается открытым ключом, й -секретным. Основой стойкости криптографических пре-

образований на эллиптических кривых является большая вычислительная сложность задачи нахождения числа й для известных Р и Q при п ^ ~ в циклическом модуле простого порядка, которая называется проблемой дискретного логарифма для ЭК. Если порядок циклического модуля составной, то сложность логарифмирования определяется максимальным простым делителем порядка модуля.

Стандартным является следующий алгоритм для вычисления открытого ключа (скалярного произведения целого числа на базовую точку):

Алгоритм. Бинарное скалярное умножение на эллиптической кривой [3, 8].

Исходные данные: число й Ф 0, точка Р, эллиптическая кривая Е = <а,Ъ,р>.

Результат: точка Q = йх Р.

1. Если й = 1, то Q := Р; закончить работу алгоритма.

2. к := 1Л-2; Q: = Р, где 1Л - длина числа й в битах;

3. Для г, принимающего значения от к до 0, выполнить шаги 4-5.

4. Q := Q + Q.

5. Если г-й бит й равен 1, то Q := Q + Р.

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

6. Закончить работу алгоритма.

2 МЕТОДЫ ОПТИМИЗАЦИИ ВЫЧИСЛЕНИЙ

НА ЭЛЛИПТИЧЕСКИХ КРИВЫХ

В протоколах цифровой подписи [2-4] и направленного шифрования на эллиптических кривых основной является операция умножения точки на скаляр, реализуемая посредством последовательных сложений у удвоений точек ЭК. Кратко рассмотрим сущность основных подходов к оптимизации этих операций и оценим их возможности.

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

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

1. Выполнение модульных операций над длинными целыми числами для кривых над простым полем.

2. Выполнение операций над элементами основного поля (модульных операций над многочленами) для расширенного поля.

3. Выполнение операций над точками эллиптической кривой.

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

x

3

d

2.1 Базисные представления элементов

поля ОГ(2т)

На уровне элементов поля на скорость вычислений влияет выбор базиса для представления элементов поля. Элементы расширенного поля Галуа О.Р(2ш) имеют два основных базисных представления - полиномиальное и нормальное [3, 9].

Каждый элемент поля О.Р(2ш) в полиномиальном базисе представляется как двоичный полином степени не выше (т - 1):

Ь = ат _ 1%т -1 + ат _2Хт -2 + ... + а.1% + д0.

При этом элементы хт -1, хт -1, ..., х, 1, где х - корень неприводимого многочлена /(Ь) степени т, образуют базис конечного поля О.Р(2т) как векторного пространства над полем О.Р(2).

Элементы О.Р(2т) при этом представляются битовыми строками длиной т битов (ат _ 1ат _ ^..а^). Единичный элемент по умножению задается битовой строкой (00...001). Нулевой элемент (0) задается битовой строкой из всех 0. Сложение элементов битового поля соответствует сложению по модулю 2 битовых строк. Произведение полиномов приводится по двойному модулю (/(х), 2).

Удобно задавать полиномиальный базис примитивным многочленом. При этом вычислительная сложность модульных операций зависит от количества ненулевых коэффициентов в примитивном полиноме. Стандартом [3] рекомендовано использовать трехчлен /(0 = У" + гк + 1, 0 < к< т или пятичлен (так как не всегда существует трехчлен заданной степени т) ДО = = ^ + ^ + Р + 1к + 1, 0 < к <1 <у < т указанных степеней. Рекомендованные примитивные многочлены приведены в стандарте [3].

При использовании нормального базиса элементы поля О.Р(2т) представляются следующим образом:

b = а„

xm - 1 .

xm - 2 .

"a0>

2.2 Сложение в различных координатных

базисах

Другой способ повышения скорости вычислений -представление точек кривой в различных типах координатных базисов, отличных от аффинных. Основными из них являются проективные координаты, якобиановые координаты, координаты Чудновского и модифицированные якобиановые координаты [10].

Например, в случае представления кривой в проективных координатах значения преобразуются по формулам [11]:

= X = I х г, У г.

Тогда

и обратно,

* (>) = ß(f § ^ Q(X, Y, Z) = Z3q(X, §•

при этом элементы {х2"-х2"-2, ..., х2, х} должны быть линейно независимыми над О.Р(2). Нормальный базис существует для каждого конечного поля характеристики 2.

Если число р = 2т + 1 - простое и для наименьшего натурального числа к, такого что 2к = 1то<<р выполняется р = 1то<(4) и к = 2т либо р = 3то<<(4) и к = т, то нормальный базис называется гауссовым оптимальным нормальным базисом типа 2. Он существует не для всех конечных полей характеристики 2 [3]. Стандарт [3] допускает представление в полиномиальном и гауссовом оптимальном нормальном базисах.

Как показано в [9] для минимизации вычислительной сложности при т <129 более предпочтительным является гауссов оптимальный нормальный базис, а при т > 129 - полиномиальный базис. А поскольку в преобразованиях на ЭК используется т >160, то в целом более предпочтительным оказывается использование полиномиального базиса.

В этом случае (X, I, I) = (XX, XI, XI).

Кривая над простым полем в проективных координатах имеет вид:

у2г = (X3 + ахг2 + ьг3 )тоа р

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

В [10, 12] показано, что наиболее вычислительно трудоемкими являются вычисления в аффинном базисе из-за присутствия в алгоритмах сложения и удвоения точек операции деления в поле. Повысить производительность криптопреобразований в группах точек ЭК позволяет также использование смешанных координат.

2.3 Методы повышения скорости операции

умножения

Существуют различные методы повышения скорости операции умножения. Среди них можно выделить умножение с помощью дискретного преобразования Фурье [11, 13], алгоритм умножения Карацубы-Офмана [11] и арифметику Монтгомери [11].

Пусть К[х] - кольцо многочленов над полем К и

п - 1

/'(х) = £ а^х1 е К[х] - многочлен из этого кольца. Кро-

I = 0

ме общепринятого задания многочлена п коэффициентами а, г = 0, п - 1 можно однозначно задать его множеством значений в п точках Хг. При этом для удобства вычислений в качестве х1 можно принять множество корней степени п из 1 в поле К. В этом случае многочлены можно умножать путем "покоординатного" умножения.

Элемент коммутативного кольца, обладающий свойствами

1) 1; 2) <вп = 1;

п-1

3) £ <р = 0 для 1 <р < п

1 = 0

называется примитивным корнем п-й степени из единицы. Элементы ю0, ю1, ..., юп-1 называются корнями п-й степени из единицы.

Дискретным преобразование Фурье называется отображение вектора коэффициентов многочлена степени не выше п в вектор значений, определяемых матрицей (п х п) вида A [i,у] = ю^ для 0 < i,у < п, где ю - примитивный корень п-й степени из единицы. При этом обратное преобразование осуществляется путем умножения вектора значений на обратную матрицу вида

А-1[i,у] = (п) ю для 0 < i,у < п.

Чтобы перемножить два многочлена, заданных своими значениями в корнях п-й степени из 1, достаточно перемножить пары их значений в соответствующих корнях. Для вычисления коэффициентов многочлена - произведения необходимо выполнить над ним обратное преобразование. То есть а®Ь = Р-1(Р(а) Р(Ь)).

Если п = 2к, то произведения у = Ах и х = А-1 удобно вычисляются. В этом случае преобразование называется быстрым преобразованием Фурье (БПФ). Алгоритм вычисления БПФ приведен в [11, 13].

БПФ также можно использовать для умножения больших чисел [11]. Пусть а, Ъ - п-разрядные двоичные числа от 0 до 2п -1, которые нужно перемножить по модулю 22п + 1. Пусть п = 2к, каждое число состоит из й блоков длины I = п/й бит. Для этого для каждого сомножителя выполняется БПФ так, чтобы образы имели двойную длину (защита от переполнения). Затем Фурье-образы покоординатно перемножаются по модулю 221 + 1. После этого выполняется обратное БПФ.

Алгоритм умножения Карацубы-Офмана сводит умножение двух 2п-значных чисел к трем умножениям двух п-значных чисел [11].

2п-значное число представляется в виде Ап + 10 пВп. Тогда выполняется тождество:

(Ап + 10пВп)'( Сп + 10п^п) = = Ап ■ Сп( 10п + 1) + (Оп - С )■( Ап - Вп )■ 10п +

+ Вп ■ Оп{ 102п + 10п).

Для умножения двух многочленов степени не более 2т - 1 из кольца Ер[х] их необходимо представить в виде:

и( х) = и1( х) хт + и0( х); У( х) = У1( х) хт + У0( х),

где степень каждого из многочленов х), и0(х), Ц"1 (К[(х)), Г0(х) не более т - 1. Тогда выполняется тождество:

иу=ц У1х2т+((и1+и0)(У1+У0) -и ^1-и0 У0)хт+щ у0.

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

В арифметике Монтгомери [11], при вычислении произведения двух длинных чисел А и В по модулю

нечетного числа М, множители представляются своими ^-вычетами АК, ВК по модулю N. Здесь К - число, равное степени двойки и превышающее N. Предложенный П. Монтгомери метод модульного умножения не требует операции деления. Произведение Монтгомери по модулю М:

МР(А, В, N Я) = АВЯ-1(шоа^).

В основе вычисления произведения Монтгомери лежит преобразование Монтгомери:

тВ-и ЛАГ, т + MN лыл т+MN

ТЯ шоа^) = —-— или ТЯ шodN) =—-—-N,

Я

Я

где N и К - взаимно простые положительные целые числа, = -^-1(шоаЯ) и М = ТЫ'(шоаЯ). Деление на К выполняется путем сдвига на соответствующее число разрядов.

Для перевода числа в М-вычет необходимо вычислить МР(А, Я2(шodN), Ы, Я). Обратное преобразование М-вы-чета в число нужно вычислить МР(АЯ(шоаЫ), 1, Ы, Я). В [12, 20] приведены алгоритмы вычисления преобразования Монтгомери для многоразрядного числа и модульного умножения больших чисел. Множество М-вы-четов с операциями умножения по Монтгомери и сложения является кольцом, изоморфным кольцу классов вычетов по модулю М [12].

2.4 Оптимально расширенные поля

В [14] предложено определенным образом выбирать вид основного поля ОР(рт), где р - простое, т - положительное целое, с целью уменьшения вычислительной сложности операций в нем. Такое оптимально расширенное поле соответствует следующим требованиям:

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

2) р выбирается таким, чтобы оно было псевдопрос-

1

тым числом Мерсенна (вида 2п±с где 1ое2(е) < -п). Это

22

позволяет выполнять операцию модульного преобразования над элементами поля с минимальной вычислительной сложностью;

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

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

число членов в полиноме поля, требование 3) обеспечивает уменьшение вычислительной сложности модульного умножения в расширенном поле GP(pm). Как показано в [14], использование оптимально расширенных полей обеспечивает более высокую производительность по сравнению с блочной арифметикой Монтгомери.

2.5 Комплексное умножение

Эллиптические кривые над алгебраическим замыканием конечного поля имеют тривиальные автоморфизмы, заключающиеся в умножении точки на целое число. В этом случае для отображения уп: P ^ nP справедливо [11] п

%(р) + %(в) = nP + nQ = п( P + в) = уп (P + 0.

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

Пусть на кривой Е(О.Р(д)) над полем из д = рп элементов определено отображение

ф : (х,у)^(/(х), к(х,у)), (14)

где /, к - рациональные функции, такое, что если (х,у)е еЕ, то и ф(х,у) е Е и ф(0) = 0. По определению это отображение является эндоморфизмом кривой. Пусть группа точек кривой содержит циклическую подгруппу О простого порядка г, причем #Е(О_Р(д)) не делится на г2. В случае, когда группа О под действием отображения (14) переходит в себя, то есть когда отображение является автоморфизмом, ф(Р) = еР для некоторого 0 < е < г. Такое отображение задает комплексное умножение на кривой Е(О_Р(д)). Число е легко вычислимо [15].

Важным примером таких отображений является эндоморфизм Фробениуса, определяемый как ф : (х, у) ^ ^ (хд, уд). По определению он переводит точку О в О. Если #Е(О_Р(д)) не делится на г2, эндоморфизм Фро-бениуса имеет собственные значения. Тогда имеет место равенство

ф( Р) = еР,

где е - собственное значение эндоморфизма Фробениуса [11, 16].

Комплексное умножение для быстро вычислимых отображений позволяет ускорить процедуру умножения точки на число. Для вычисления произведения в = йР множитель й представляют в виде

й = й0 + ^е,

где |й0|, < л/Г.

Доказано [28], что такое представление всегда существует. Затем последовательно вычисляют й^Р,йР, е(^Р), ^Р + е (^Р). Это позволяет ускорить процедуру умножения примерно вдвое [15], при этом произведение точки на е легко вычисляется с помощью комплексного умножения.

Однако комплексное умножение можно также использовать и для снижения стойкости криптоалгоритма, так

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

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

ЗАКЛЮЧЕНИЕ

В настоящее время для криптографических целей используются кривые над простым полем или над полем характеристики 2. Арифметические операции в простом поле выполняются достаточно долго. В поле характеристики 2 вычисления проводятся быстрее, особенно при аппаратной реализации, однако неизоморфных кривых над полем характеристики 2 с требуемыми для криптографического приложения свойствами существует довольно немного [1]. Примеры допустимых кривых приведены в стандарте [3]. Показано [16, 17], что операции сложения и умножения в поле характеристики д = 216 +1 микропроцессор выполняет быстро, количество неизоморфных кривых, пригодных для построения криптосистем, исчисляется тысячами для каждой степени расширения. Существуют и другие "удобные" характеристики. Однако в современных стандартах эти результаты еще не нашли отражения.

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

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

ПЕРЕЧЕНЬ ССЫЛОК

1. Ростовцев А.Г. О выборе эллиптической кривой над простым полем для построения криптографических алгоритмов. // Проблемы информационной безопасности. Компьютерные системы. №3, 1999. С. 37-40.

2. ГОСТ Р 34.10-2001. Государственный стандарт российской федерации. Информационная технология. Криптографическая защита информации. Процессы формирования и проверки цифровой подписи. М.: Госстандарт России, 2001.

3. ДСТУ 4145-2002. Державний стандарт Украши. ¡нфор-мацшш технологи. Криптограф1чний захист ¡нформацп. Цифровий тдпис, що грунтуеться на елттичних кривих. Формування та перев1рка. Ки!'в:-Держстандарт Укра'ни, 2003.

4. Don Johnson, Alfred Menezes, Scott Vanstone. The Elliptic Curve Digital Signature Algorithm (ECDSA)// Certicom Research, Canada, 2001.

5. J.H. Silverman "The Arithmetic of Elliptic Curve", GTM 106, Springer-Verlag, New York, 1986

6. Koblitz N. Elliptic Curve Cryptosystems // Mathematics of Computation. 1987. Vol. 48, № 177.P.203-209.

7. Штанько C.B. Эллиптические кривые в криптографии // Проблемы информационной безопасности. Компьютерные системы. № 2, 2003, С. 65-74.

8. Качко Е.Г., Свинарев А.В., Головашич C.A. Методы и алгоритмы ускорения вычислений в несимметричных преобразованиях на эллиптических кривых. // Радиотехника: Всеукр. межвед. науч.-техн. сб. 2000, Вып. 114. С. 69-74.

9. Горбенко И.Д., Збитнев С.И. Расширенное поле Галуа. Вычислительная сложность простейших операций над расширенным полем. // Радиотехника: Всеукр. межвед. науч.-техн. сб. 2000, Вып. 114. С. 80-89.

10. Збитнев С.И. Проективная геометрия - не все так гладко. / / Радиотехника: Всеукр. межвед. науч.-техн. сб. 2003. 9 с.

11. Ростовцев А.Г. Алгебраические основы криптографии. -СПб.: НПО "Мир и семья", ООО "Интерлайн", 2000. -354 с.

12. Горбенко И.Д., Збитнев С.И., Поляков А.А. Сложность арифметических операций в группах точек эллиптических кривых для криптографических операций. // Радиотехника: Всеукр. межвед. науч.-техн. сб. 2001 Вып. 119. 5 с.

13. Лавриненко Д.И. Применение быстрого преобразования Фурье в криптографических преобразованиях. // Радиотехника: Всеукр. межвед. науч.-техн. сб. 2000, Вып. 114. C. 75-79.

14. Лавриненко Д.И. Оптимально расширенные поля в алгоритмах для эллиптических кривых..// Радиотехника: Все-укр. межвед. науч.-техн. сб. 2001. Вып. 119. С. 56-61.

15. Ростовцев А.Г., Буренкова А.П., Маховенко Е.Б. О комплексном умножении на эллиптических кривых. // Проблемы информационной безопасности. Компьютерные системы. №1, 1999. С. 90-91.

16. Маховенко Е.Б., Ростовцев А.Г. Быстрая арифметика для эллиптических кривых над расширенными полями. // Проблемы информационной безопасности. Компьютерные системы. №2, 1999. С. 50-54.

17. Маховенко Е.Б. Эллиптические кривые над полем характеристики 216 + 1 с хорошими криптографическими свойствами. // Безопасность информационных технологий. №3, 1997. C. 56-58.

Надшшла 02.04.2004 Шсля доробки 08.10.2004

В cmammi проведено огляд nemodie оптим1зацп meudKocmi обчжленъ при крuпmoгрaфiчнux перетвореннях в грут крапок eлiпmичнo'i кривоi. Запропоновано euкoрucmo-eyeamu мemoди паралелъного програмування для збiлъшeння шeuдкocmi прямих пeрemeoрeнъ.

It is conducted the review of methods of optimization of computation rate in cryptographic transformations in the cluster of points of elliptical curve in the article. It was offered to use methods of multiple programming for increasing the rate of direct transformations.

УДК 681.32:007.52

В. И. Дубровин

МЕТОДЫ СОКРАЩЕНИЯ ОБЪЕМА ДАННЫХ

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

ВВЕДЕНИЕ

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

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

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

чтобы минимизировать количество исходных данных для моделирования и одновременно обеспечить требуемый уровень точности модели [1-5].

Для решения этой задачи в настоящей работе предлагается использовать два подхода:

- уменьшение размерности модели за счет исключения малозначимых признаков путем оценки информативности и отбора признаков;

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

1 МЕТОДЫ ОЦЕНКИ ИНФОРМАТИВНОСТИ

И ОТБОРА ПРИЗНАКОВ

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

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