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
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.
17.4.3. Обчислення .
= 5EF5B87DD4 E59F072606 A7C47625DB
3C5D6B7739
17.4. У випадку ,
встановлюємо
.
Ціле число , яке менше
ніж
, перетворюють з рядка октетів
таким чином.
= 5EF5B87D D4E59F07
2606A7C4 7625DB3C 5D6B7739
8. Обчислення .
= 2 12F2BA12 015731EC 474D97BD
E224333F 80B36A71
Пара становить
цифровий підпис повідомлення
об’єкта А.
Для перевіряння цифрового підпису повідомлення
об’єкта А, об’єкт В виконує
такі кроки:
1. Перевіряння того, що й
; У
випадку невиконання умови цифровий підпис визнається недійсним.
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
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
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
Тому що ,
цифровий підпис приймається перевірником.
Скінчене поле обирається
таким чином:
- просте
число,
=
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 біт.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.