Перспективні ЕЦП в групі точок еліптичних кривих, страница 9

          M = This is a test message! = 54 68 69 73 20 69 73 20 61 20 74 65 73 74 20 6D 65 73 73 61 67 65 21 ( у формі ASCII)

1. Обчислення геш-значення

 = A9 99 3E 36 47 06 81 6A BA 3E 25 71 78 50 C2 6C 9C D0 D8 9D 54 68 69 73 20 69 73 20 61 20 74 65 73 74 20 6D 65 73 73 61 67 65 21

 = FA4A5B4F FFCDF62E 1524C2EA D9114B6B A94FD186

B.3.2.3.2 Обчислення на еліптичній кривій (арифметичні операції в базовому полі)

2. Обирання випадкового цілого числа k, що належить діапазону {1,…,n-1}.

k = 7D1C44A2 AD7318CF 2C525AAD 16515378 1EB702DA.

3. Обчислення точки еліптичної кривої .

 = 6 630EE3E5 C71F504B C141A406 AE71E062 441E5E42

 = 4 780DDE74 C235C60E C9A25253 DFCC60D4 AA281C6A.

17.4.1. Встановлення c перетворенням байтового рядка

c = 06 63 0E E3 E5 C7 1F 50 4B C1 41 A4 06 AE 71 E0 62 44 1E 5E 42

17.4.2. Обчислення геш-значення  

= A4BFE3322B 2869293322 652EAF3490 57F424A6BF.

B.3.2.3.3 Обчислення за модулем порядку групи базової точки G (арифметичні операції в полі  )

17.4.3. Обчислення .

* = 5EF5B87DD4 E59F072606 A7C47625DB 3C5D6B7739

17.4. У випадку , встановлюємо .

Ціле число , яке менше ніж , перетворюють з рядка октетів  таким чином.

 = 5EF5B87D D4E59F07 2606A7C4 7625DB3C 5D6B7739

8. Обчислення .

 = 2 12F2BA12 015731EC 474D97BD E224333F 80B36A71

B.3.2.4 Цифровий підпис

Пара  становить цифровий підпис повідомлення  об’єкта А.

B.3.2.5 Перевіряння цифрового підпису

Для перевіряння цифрового підпису повідомлення  об’єкта А, об’єкт В виконує такі кроки:

B.3.2.17.4.2.1 Перевіряння розміру цифрового підпису

1. Перевіряння того, що  й ; У випадку невиконання умови цифровий підпис визнається недійсним.

B.3.2.17.4.2.2 Обчислення геш-значення

2. Обчислення геш-значення .

 = A9 99 3E 36 47 06 81 6A BA 3E 25 71 78 50 C2 6C 9C D0 D8 9D 54 68 69 73 20 69 73 20 61 20 74 65 73 74 20 6D 65 73 73 61 67 65 21

 FA4A5B4FFF CDF62E1524 C2EAD9114B 6BA94FD186

B.3.2.17.4.2.3 Обчислення на еліптичній кривій

3. Обчислення

 = 5EF5B87DD4 E59F072606 A7C47625DB 3C5D6B7739

17.4.1. У випадку  , обчислюється .

Ціле число , яке менше ніж , перетворюють з рядка октетів  таким чином.

 = 5EF5B87D D4E59F07 2606A7C4 7625DB3C 5D6B7739

17.4.2. Обчислення .

 = 6 630EE3E5 C71F504B C141A406 AE71E062 441E5E42

 = 4 780DDE74 C235C60E C9A25253 DFCC60D4 AA281C6A

Примітка. У випадку коли  та  обчислюють поодинці, їх подають таким чином:

 = 1 F6D335D3 82787252 9D4CE43F 36673CBA 7DDE9AC1

 = 1 F3E72FEA 2BE2BD0B 0146022D AD753325 4F57AF96

 = 5 050081C9 7688A213 14193AB9 89AA8312 0EB9589F

 = 5 40D08C5F 677374C2 0C88B340 AD1EA59B B7B42191

B.3.2.17.4.2.4 Перевіряння цифрового підпису

17.4.3. Встановлення  за допомогою перетворення рядка байтів .

 = 06 63 0E E3 E5 C7 1F 50 4B C1 41 A4 06 AE 71 E0 62 44 1E 5E 42

17.4. Обчислення .

v = A4BFE3322B 2869293322 652EAF3490 57F424A6BF

Тому що , цифровий підпис приймається перевірником.

B.3.3 Числовий приклад EC-KCDSA над полем

B.3.3.1 Параметри домену

Скінчене поле  обирається таким чином:

-  просте число,  = 4294967291(10) = 232-5 

-  ціле число   = 5;

-  нормований понижуючий поліном  степеня m  поля  над полем , .

Примітка. Всі наступні числа в цьому прикладі представлені в шістнадцятковій системі числення. А всі цілі числа великої довжини визначають 32 -бітовими блоками.

Таким чином, кожен елемент  представляють багаточленом ,  де  , та позначають .

Еліптичною кривою  над полем  є : , де

a = ( 0 0 0 0 1)  та

b = (0 0 0 1 1 0 6).

Тоді порядок еліптичної кривої  є простим числом і його обчислюють таким чином:

 = FFFFFFE7 000000F9 FFFE3308 F697C1D6 D7DE35CF.

Обирається  просте число  довжини 160 біт:

= = FFFFFFE7 000000F9 FFFE3308 F697C1D6 D7DE35CF.

Точку  на еліптичній кривій , що генерує циклічну групу простого порядку , представляють таким чином:

 = FCDEE3EE EB6A9D0C 821C8B46 D27937BC FBAC840

 = 3C329E0D 7A5FB6E4 48A69C1 12F8CB35 DFFB7CCC.

Цей приклад використовує алгоритм  як геш-функцію  з довжиною вихідних даних 160 біт.

B.3.3.2 Параметри користувачів