![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
4. Абонент-отправитель формирует исходное сообщение «М» (в качестве примера выбрано слово «Криптон») и вычисляет значение функции хеширования h(M)B. В рассматриваемом примере h(M)B = 52 48 52 48 50 42 46 46 40 56 48 48 50 54 46 42 52 56 56 52 50 50 50 50 44 52 48 48 54 50 46 42.
5. Для того, чтобы сформировать цифровую подпись сообщения «М» абонент-отправитель случайным образом задает целое число «k» с учетом следующих ограничений:
1 < k < Р-1 и НОД (k; (Р-1)) = 1,
т.е. выбранное случайное целое число «k» и значение (Р-1) должны быть взаимно простыми числами. Для примера «k» выбирается равным 547 k=547; число «k» также никому не передается и является постоянным только лишь для подписываемого сообщения «М».
6. Для формирования электронной цифровой подписи производятся следующие вычисления:
6.1. Вычисляется число a = Gk mod P, которое постоянно для всех элементов криптограммы функции хеширования h(M)B исходного сообщения «М». Например, для слова «Криптон»:
a = Gк mod P = 784547 mod 883 = 141 mod 883 → 141.
6.2. Вычисляются с помощью закрытого (секретного) ключа абонента-отправителя КЗА элементы криптограммы функции хеширования h(M)B исходного сообщения «М», h(M)B → Сi → bi
Это вычисление выполняется на основе расширенного алгоритма Евклида для решения сложных сравнений вида a * X ≡ b mod P, которое отображается при вычислении элементов криптограммы хэш-функции h(M)B в уравнение вида:
mi = (KOA * a + k * bi) mod (P-1),
где: mi – элементы значения числового выражения функции хеширования h(M)B исходного сообщения «М»;
k – случайное целое число, выбранное для формирования ЭЦП исходного сообщения;
а – постоянное число для множества элементов криптограммы Ch(M) функции хеширования h(M)B исходного сообщения «М»;
bi – множество элементов) функции хеширования h(M)B исходного сообщения «М».
В полученном уравнении определяемыми неизвестными параметрами являются значения элементов bi функции хеширования h(M)B исходного сообщения «М».
Ci = bi = mod (P-1)
Для криптограммы хэш-значения сообщения «М» элементы криптограммы определяются как:
Ci = bi = mod 882
547 * bi = (mi – 86292) mod 882
Рассмотрим решение этого уравнения относительно bi с использованием.расширенного алгоритма Евклида для значения первого элемента хэш-функции сообщения «Криптон» m1 = 52:
547 * b1 ≡ (m1 – 86292) mod 882; 547* b1 ≡ (52 – 86292) mod 882;
547 * b1 ≡ - 86240 mod 882; 547 * b1≡- 686 mod 882; 547 * b1 ≡ 196 mod 882;
Откуда: b1 = 196 * 547-1 mod 882, так как Р – простое число и функция Эйлера известна, то b1 определяется как:
b1 = 196 * 547-1 mod 882 = 196 * 547φ(Р) – 1 mod 882 = 196 * 547881 mod 882 =
= 196*337 mod 882 = 66052 mod 882 = 784 mod 882 → 784.
Значения остальных элементов криптограммы хэш-функции b2 … b32 определяются аналогичным образом и соответственно равны:
bi → {b1, b2, … b32} → {784, 318, 784, 318, 110, 60, 526, 526, 268, 368, 318, 318, 110, 576, 526, 60, 784, 368, 368, 784, 110, 110, 110, 110, 734, 784, 318, 318, 576, 110, 526, 60.
Множество чисел, состоящее из компонентов «а» и «bi» представляют собой электронную цифровую подпись сообщения «М» («Криптон») в виде криптограммы:
ЭЦП → Ch(M) → {a, bi} → {141_784 141_318 141_784 141_318 141_110 141_60 141_526 141_526 141_268 141_368 141_318 141_318 141_110 141_576 141_526 141_60 141_784 141_368 141_368 141_784 141_110 141_110 141_110 141_110 141_734 141_784 141_318 141_318 141_576 141_110 141_526 141_60}.
Сообщение «М» и криптограмма хэш-функции Ch(M) передаются абоненту-получателю подписанного ЭЦП сообщения «М».
Дата публикования: 2014-10-25; Прочитано: 398 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!