Генерация ключей:
выбирается случайное целое число d = 3; вычисляется точка Q d υG = 3(13, 7) = (17, 3).
Секретным ключом пользователя является число d = 3, открытым ключом – точка Q = (17, 3). Пусть сообщение M = 9.
Зашифрование информации (абонент A защищает сообщение M, предназначенное для абонента B):
А выбирает случайное целое число k = 4; |
А вычисляет точку |
x1, y1 |
k υG = 4(13, 7) = (17, 20); |
А вычисляет точку |
x2 , y2 |
k υQ = 4(17, 3) = (5, 19); |
А вычисляет c1 M x2 = 9 5 = 12; закрытые данные: C x1, y1,c1 = (17, 20, 12).
Расшифрование информации (абонент B восстанавливает закрытые данные C x1, y1,c1 = (17, 20, 12), полученные от або-
нента A):
В вычисляет точку x2 , y2 d υ x1, y1 = 3(17, 20) = (5, 19);
В восстанавливает исходное сообщение
Mc1 x2 = 12 5 = 9.
12.3.Схема электронной цифровой подписи на эллиптических кривых
Выбор параметров и процедура генерации ключей описаны в разделе 12.2.
|
|
|
Формирование подписи (абонент A подписывает сообщение M): |
А вычисляет хеш-образ сообщения e h M ; |
А выбирает случайное целое число k, 1 k n 1; |
А вычисляет точку x1, y1 |
k υG ; |
А вычисляет r |
x1 e mod n ; |
А вычисляет s |
k r υ d mod n , используя свой секретный |
ключ d. В том случае, если r = 0 или s = 0, выбор k осуществляется заново;
подписью сообщения является пара (r, s).
Проверка подписи (абонент B проверяет подпись (r, s) абонента A на сообщении M):