- •Лекция Криптосистемы на эллиптических кривых
- •1.Криптографические системы на эллиптических кривых
- •Понятие группы
- •Примеры группы
- •1.2 Элементы теории конечных полей
- •Определение 2. Характеристикой «р» конечного поля GF q
- •Утверждение 2. Всякое конечное поле может содержать число элементов равное только целой неотрицательной
- •Построение конечного поля с элементами в виде двоичных последовательностей
- •Далее будем отождествлять последовательности длины n с многочленами, коэффициенты которых соответствуют номерам позиций
- •Определим операции умножения между элементами поля как перемножение соответствующих этим элементам многочленов с
- •Легко проверить, что такое определение сложения, вычитания и умножения между элементами поля соответствует
- •Основные свойства конечных полей
- •2. Криптосистемы на основе эллиптических кривых
- •2.1 Эллиптические кривые в вещественных числах
- •Операция сложения точек на кривой
- •Правило сложения
- •3-й случай. Точки P и Q инверсны друг другу:
- •2.2 Эллиптические кривые в поле GF(p)
- •Пример кривойE13 (1,1) по уравнениюy2 x3 x 1
- •Пусть нужно проверить, что точка
- •Важным свойством ЭК является то, что между точками этих ЭК
- •«Возведение в k-ю степень» точки P на эллиптической кривой понимается как k-кратное сложение
- •Криптосистема Эль-Гамаля на эллиптической кривой
- •Расшифрование
- •Пример построения системы Эль-Гамаля на эллиптической кривой
- •Выводы
- •3. Стандарт электронной цифровой подписи Р 34.10 -2012г.
- •ПРАВОВЫЕ ДОКУМЕНТЫ ОБ ЭЛЕКТРОННОЙ ПОДПИСИ
- •ГОСТ Р.34.10-12
- •Параметры ЭЦП
- •Генерирование ключей
- •Алгоритм формирования подписи на эллиптической кривой по ГОСТ Р34.10-12
- •Алгоритм проверки подписи
- •Формирование подписи в ГОСТ Р34.10-12
- •Проверка подписи в
ГОСТ Р.34.10-12
-длина подписываемого сообщения неограничена;
-использован стандарт функции хэширования ГОСТ Р34.11-12
-длина подписи в новом стандарте 512 или 1024 бита
-длина ключа подписи 256 бит или 512 бит
-длина ключа проверки подписи- определяется
числом p, p 2255
32
Параметры ЭЦП
Выбираются общесистемные параметры:
-p- модуль эллиптической кривой, простое число p>2255; -эллиптическая кривая E, удовлетворяющая уравнению
y2=x3+ax+b, где a,b GF(p) , 4a3+276b2 0(modp);
- целое число m – порядок группы точек эллиптическорй кривой
-простое число q – порядок подгруппы группы точек эллиптической кривой E, для которой выполнены следующие условия
m nq, n Z, n 1
2254 < q < 2256, или 2508 < q < 2512
-ненулевая точка кривой P с координатами (xp, y p), удовлетворяющая равенству q P = O. (Базовая точка) -хэширующая функция h(/).
33 33
Генерирование ключей
•Ключом подписи является равновероятное целое число d (0 < d < q),
•Ключ проверки подписи формируется в
виде точки Q эллиптической кривой с координатами (x, y), вычисляемой по правилу d P = Q.
34
Алгоритм формирования подписи на эллиптической кривой по ГОСТ Р34.10-12
1. Заверяемое сообщение сначала хэшируется с использованием хэш-функции по ГОСТ P34.11-12
2.Генерируется случайное число k ,
3.Вычисляется точка С эллиптической кривой умножением
точки P на число k: С( xС , y C) = k P( xP , y P),
4.Определяется первый параметр подписи r из координаты по оси абсцисс вычисленной точки r = xС (mod q).
5.Вычисляется второй параметр подписи по правилу
s = (r d + k h (M)) (mod q).
6, Определить ЭЦП, как конкатенацию r и s,
35 35
Алгоритм проверки подписи
1. Вычисляется значение v = h (M^) - 1 (mod q).
2. Вычисляются два числа:
z1 = s^·v (mod q) и z2 = (q – r^) v (mod q).
3. Находится точка С эллиптической кривой
С( xС , y C) = z1 P( xP , y P) + z2 Q(xq, yq).
4. Из координаты по оси абсцисс этой точки определяется значение
R = xС (mod q)
5. Проверяется выполнение равенства
R r .
6. При выполнении равенства подлинность полученного сообщения и авторство удостоверены,
иначе подпись неверна. |
36 36 |
Формирование подписи в ГОСТ Р34.10-12
|
Н АЧАЛО |
|
|
|
Ввод сообщения M |
|
|
||
и ключа подписи d |
|
|
||
Хеширование сообщения h (M ) |
|
|
||
|
|
да |
|
|
|
h( M ) 0 |
|
|
|
|
|
нет |
Установить |
h(M ) 000 . . . 01 |
Генерирование случайного |
|
|
||
числа k, |
0 < k < q |
|
|
|
Вычисление точки эллиптической |
|
|
||
кривой С (xC , yC ) kP( xP , yP ) |
|
|
||
Вычисление первого параметра |
|
|
||
подписи |
r xС (mod q) |
|
|
|
да |
r = 0 |
|
|
|
|
|
|
||
|
|
нет |
|
|
Вычисление второго параметра |
|
|
||
подписи |
s (rd kh (M )) mod q |
|
|
|
да |
s = 0 |
|
|
|
|
|
|
||
|
|
нет |
|
|
Передача сообщения М и его |
|
|
||
цифровой подписи {r, s} |
|
|
37
КОНЕЦ
Проверка подписи в
НАЧАЛО |
|
|
|
ГОСТ Р34.10-12 |
|||||
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|||
Ввод принятых |
|
|
|
|
|||||
сообщения |
|
|
и его |
M |
|
|
|
||
|
|
|
|
|
|
||||
цифровой подписи |
{r, s} |
|
|
|
|||||
|
|
|
|
|
|
||||
|
|
|
|
|
нет |
|
|
|
|
0 |
|
|
|
|
|
||||
r q |
|
|
|
|
|
|
|||
|
|
|
|
|
|
||||
|
|
|
да |
|
нет |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
||||
0 |
|
|
|
|
|
||||
s q |
|
|
|
|
|
|
|||
|
|
|
|
|
|
||||
|
|
|
да |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
Хеширование сообщения |
|
|
|
|
|
|
|||
h(M ) |
|
|
|
|
|
||||
|
|
|
|
да |
|
|
|
||
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
||||
h(M ) 0 |
|
|
|
|
|
|
|||
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Установить |
|
|
|
|
|
|
нет |
|
|
h(M ) 000 . . . 01 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Вычисление v h(M ) 1 (mod q)
Вычисление значений |
|
|
|
|
|
|||
Z 1 sv mod q |
|
|
|
|
|
|||
Z 2 rv mod q |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Вычисление точки эллиптической кривой |
|
|
|
|
|
|||
C (x c , yc ) Z 1P( x p , y p ) Z 2Q(x q , yq ) |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Вычисление R xc (mod q) |
|
|
|
|
|
|||
|
|
|
нет |
|||||
|
|
|
||||||
|
|
|||||||
R r |
|
|
|
|
|
|||
|
|
|
|
|
||||
|
|
да |
|
|
|
|
|
|
|
|
|
|
|
|
|||
Подлинность принятого |
|
|
|
|
|
|||
сообщения и авторство |
Подпись неверна |
|||||||
отправителя |
||||||||
|
|
|
|
|
||||
удостоверены |
|
|
38 |
|||||
|
|
|
|
|||||
|
|
|
|
КОНЕЦ