gn = "justify "> dC1 = d (kP) = kQ і потім відновлює M = C2 - k q. Зловмисник, який бажає відновити M , повинен обчислити kQ < span align = "justify">. Проблема обчислення kQ при знанні параметрів кривої, Q < span align = "justify"> і C1 = kP , є аналогом проблеми Діффі-Хеллмана для еліптичних кривих. Нижче наданий алгоритм шифрування.
Вхід: Параметри кривої (p, E, P, n), відкритий ключ Q, текст m.
Висновок: Криптограма (C1, C2).
Алгоритм: 1. Уявити повідомлення m у вигляді точки M кривої E (Fp). p align="justify">. Вибрати k ? R [1, n? 1].
. Обчислити C1 = kP. p align="justify">. Обчислити C2 = M + kQ. p align="justify"> Повернути: (C1, C2).
А алгоритм дешифрування виглядає наступним чином:
Вхід : Параметри кривої (p, E, P, n) span> , секретний ключ d , криптограма (C1 , C2) .
Вихід : Оригінальний текст m .
Алгоритм : 1. Обчислити M = C2? dC1 , і обчислити m з M .
Повернути : ( m ).
Дані, які розміщуються в деякій точці еліптичної кривої, повинні складатися з дещо меншого числа біт, ніж елемент кінцевого поля, над якими будується крива. Кілька біт повинні залишатися невизначеними, щоб забезпечити можливість потрапляння на криву. br/>
Алгоритм цифрового підпису на основі еліптичних кривих
Схема цифрового підпису ECDSA складається з чотирьох алгоритмів:
. Алгоритм генерації параметрів еліптичної кривої. p align="justify">. Алгоритм генерації пари ключів. p align="justify">. Алгоритм генерації цифрового підпису, на вхід якого подаються параметри еліптичної кривої, секретний ключ і повідомлення для підпису. p align="justify">. Алгоритм засвідчення підпису, на вхід якого подаються параметри кривої, відкр...