Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
GOS_2012.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
4.65 Mб
Скачать

7. Понятие электронно-цифровая подпись. Суть основных этапов реализации электронной цифровой подписи. Охарактеризовать выполнение цифровой подписи по алгоритму rsa и гост.

Электро́нная по́дпись (ЭП) — реквизит электронного документа, позволяющий установить отсутствие искажения информации в электронном документе с момента формирования ЭП и проверить принадлежность подписи владельцу сертификата ключа ЭП. Значение реквизита получается в результате криптографического преобразования информации с использованием закрытого ключа ЭП.

Суть основных этапов реализации электронной цифровой подписи:

  1. Вычисляем хэш от сообщения;

  2. Генерируем открытый и закрытый ключи;

  3. Публикуем открытый ключ;

  4. Подписываем;

  5. Присоединяем подпись к документу;

  6. Шлём;

  7. Получатель считает хеш от сообщения и на подпись накладывает открытый ключ и сравнивает с хэшем.

Цифровая подпись предназначена для аутентификации лица, подписавшего электронный документ. Кроме этого, использование цифровой подписи позволяет осуществить:

-Контроль целостности передаваемого документа: при любом случайном или преднамеренном изменении документа подпись станет недействительной, потому что вычислена она на основании исходного состояния документа и соответствует лишь ему.

-Защиту от изменений (подделки) документа: гарантия выявления подделки при контроле целостности делает подделывание нецелесообразным в большинстве случаев.

-Невозможность отказа от авторства. Так как создать корректную подпись можно, лишь зная закрытый ключ, а он должен быть известен только владельцу, то владелец не может отказаться от своей подписи под документом.

-Доказательное подтверждение авторства документа: Так как создать корректную подпись можно, лишь зная закрытый ключ, а он должен быть известен только владельцу, то владелец пары ключей может доказать своё авторство подписи под документом. В зависимости от деталей определения документа могут быть подписаны такие поля, как «автор», «внесённые изменения», «метка времени» и т. д.

Асимметричные схемы ЭЦП относятся к криптосистемам с открытым ключом. В отличие от асимметричных алгоритмов шифрования, в которых зашифрование производится с помощью открытого ключа, а расшифрование — с помощью закрытого, в схемах цифровой подписи подписывание производится с применением закрытого ключа, а проверка — с применением открытого.

Общепризнанная схема цифровой подписи охватывает три процесса:

Генерация ключевой пары. При помощи алгоритма генерации ключа равновероятным образом из набора возможных закрытых ключей выбирается закрытый ключ, вычисляется соответствующий ему открытый ключ.

Формирование подписи. Для заданного электронного документа с помощью закрытого ключа вычисляется подпись.

Проверка (верификация) подписи. Для данных документа и подписи с помощью открытого ключа определяется действительность подписи.

Для того, чтобы использование цифровой подписи имело смысл, необходимо выполнение двух условий:

-Верификация подписи должна производиться открытым ключом, соответствующим именно тому закрытому ключу, который использовался при подписании.

-Без обладания закрытым ключом должно быть вычислительно сложно создать легитимную цифровую подпись.

Алгоритм создания открытого и секретного ключей по RSA

RSA-ключи генерируются следующим образом:

1. Выбираются два случайных простых числа p и q заданного размера (например, 1024 бита каждое).

2. Вычисляется их произведение n = pq, которое называется модулем.

3. Вычисляется значение функции Эйлера от числа n: Z=(p-1)(q-1)

4. Выбирается целое число e , взаимно простое со значением функции Z. Обычно в качестве e берут простые числа, содержащие небольшое количество единичных битов в двоичной записи, например, простые числа Ферма. Число e называется открытой экспонентой (. public exponent)

Время, необходимое для шифрования с использованием быстрого возведения в степень, пропорционально числу единичных бит в e.

Слишком малые значения e, например 3, потенциально могут ослабить безопасность схемы RSA.http://ru.wikipedia.org/wiki/RSA - cite_note-Boneh-3

5. Вычисляется число d, мультипликативно обратное к числу e по модулю Z, то есть число, удовлетворяющее условию:de=1(modZ)

Число d называется секретной экспонентой.

Обычно, оно вычисляется при помощи расширенного алгоритма Евклида.

Пара P = (e,n) публикуется в качестве открытого ключа RSA (RSA public key).

Пара S = (d,n) играет роль секретного ключа RSA (RSA private key) и держится в секрете.

Алгоритм цифровой подписи

Взять открытый текст M

Создать цифровую подпись S с помощью своего секретного ключа (d,n) S=Mdmod n

Передать пару, состоящую из сообщения и подписи. S,M

Принять пару

Взять открытый ключ стороны (e,n)

Проверить подлинность подписи: S2=Semod n=M - подпись верная

Поскольку цифровая подпись обеспечивает как аутентификацию автора сообщения, так и подтверждение целостности содержимого подписанного сообщения, она служит аналогом подписи, сделанной от руки в конце рукописного документа.

Важное свойство цифровой подписи заключается в том, что её может проверить каждый, кто имеет доступ к открытому ключу ее автора. Один из участников обмена сообщениями после проверки подлинности цифровой подписи может передать подписанное сообщение ещё кому-то, кто тоже в состоянии проверить эту подпись. Например, сторона может переслать стороне электронный чек. После того как сторона проверит подпись стороны на чеке, она может передать его в свой банк, служащие которого также имеют возможность проверить подпись и осуществить соответствующую денежную операцию.

Заметим, что подписанное сообщение не зашифровано. Оно пересылается в исходном виде и его содержимое не защищено. Путём совместного применения представленных выше схем шифрования и цифровой подписи в системе RSA можно создавать сообщения, которые будут и зашифрованы, и содержать цифровую подпись. Для этого автор сначала должен добавить к сообщению свою цифровую подпись, а затем — зашифровать получившуюся в результате пару (состоящую из самого сообщения и подписи к нему) с помощью открытого ключа принадлежащего получателю. Получатель расшифровывает полученное сообщение с помощью своего секретного ключа. Если проводить аналогию с пересылкой обычных бумажных документов, то этот процесс похож на то, как если бы автор документа поставил под ним свою печать, а затем положил его в бумажный конверт и запечатал, с тем чтобы конверт был распечатан только тем человеком, кому адресовано сообщение.

ГОСТ

р- простое число, 2509 < р < 2512 либо 21020 < р <21024 .

q- простое число, 2254 < q < 2256 и q явлвется делителем для (p-1)

а- целое число, 1 < а < р-1, при этом аq (mod p)=1.

  Процедура подписи сообщения включает в себя следующие этапы:

1. Вычислить h(M) -значение хеш-функции h от сообщения М.

2. Выработать целое число k,  0<k < q.

3. Вычислить два значения : r=ak  (mod p) и r’ = r (mod q).

Если r’ =0, перейти к этапу 2 и выработать другое значение числа k.

4. С использованием секретного ключа х пользователя (отправителя сообщения) вычислить значение s= (xr’  + kh(M))(mod q).

Подписью сообщения М является вектор < r’ >256   ½½  < s >256 .

Процедура проверки включает в себя следующие этапы:

1. Проверить условие: 0< s < q и 0 < r’ < q.

Если хотя бы одно из этих условий не выполнено, то подпись недействительна.

2. Вычислять h(M1 )-значение хеш-функции h от полученного сообщения М1  .

3. Вычислить значение v= (h(M1 ))q-2    (mod q)

4. Вычислить значения: z1  = sv (mod q)  и z2  = (q-r’ ) v (mod q)

5. Вычислить значение u = (az1   yz2   (mod p))   (mod q)

6. Проверить условие: r’  = u.

    При совпадении значений r  и u  получатель принимает решение о том, что полученное сообщение подписано данным отправителем и в процессе передачи не нарушена целостность сообщения, т.е. М =М

Разница 34.10-94 и 34.10-2001 лишь в том, что в 2001 вычисления происходят над группой точек эллиптической кривой

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]