Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОСы - ответы (КБ-71).doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
7.88 Mб
Скачать

60. Цифровая подпись. Общие положения. Цифровые подписи на основе шифросистемы с открытыми ключами стандартов гост р и dss.

Электронная подпись - информация в электронной форме, которая присоединена к другой информации в электронной форме (подписываемой информации) или иным образом связана с такой информацией и которая используется для определения лица, подписывающего информацию. (Федеральный закон от 6 апреля 2011 г. N 63-ФЗ "Об электронной подписи")

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

Цифровая подпись позволяет решить следующие задачи: - аутентификация источника сообщения, - проверка целостности сообщения, - обеспечение невозможности отказа от факта подписи конкретного сообщения.

Для реализации схемы ЭЦП необходимы: алгоритм генерации подписи и алгоритм проверки. Надежность схемы цифровой подписи определяется сложностью следующих трех задач: - подделки подписи, то есть нахождения значения подписи под заданным документом лицом, не являющимся владельцем секретного ключа; - создания подписанного сообщения, то есть нахождения хотя бы одного сообщения с правильным значением подписи; - подмены сообщения, то есть подбора двух различных сообщений с одинаковыми значениями подписи.

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

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

DSS (Digital Signature Standard) – Американский стандарт цифровой подписи, использующий алгоритм DSA. Данный алгоритм представляет собой вариант подписи ElGamal. Выбирается простое число длиной L битов, где L принимает значение, кратное 64, в диапазоне от 512 до 1024. Выбирается простое число - (множитель р-1) длиной 160 бит. Выбирается , где - любое число, меньшее , такое что . - закрытый ключ , - открытый ключ. Параметры - открыты и могут быть общими для группы пользователей.

Выработка ЭЦП: считается хеш-функция (хеш-код сообщения М по методу SHA-1), генерируется случайное , вычисляются: которые являются подписью.

Проверка ЭЦП: вычисляются числа: Если , то подпись верна.

ГОСТ Р 34.10-2001 – российский стандарт, описывающий алгоритмы формирования и проверки электронной цифровой подписи. Стойкость применяемой в стандарте схемы цифровой подписи основывается на сложности решения задачи дискретного логарифмирования в группе точек эллиптической кривой, а также на стойкости используемой хэш-функции.

Используемые параметры:

— простое число — модуль эллиптической кривой;

— эллиптическая кривая E, задается своим инвариантом J(E) или коэффициентами , где Fp — конечное поле из p элементов. , причем (значит не тождественно);

— целое число — порядок группы точек эллиптической кривой;

— простое число q - порядок некоторой циклической подгруппы группы точек эллиптической кривой, то есть выполняется m=nq, для некоторого . <q< ;

— точка эллиптической кривой E, являющаяся генератором подгруппы порядка q, то есть и для всех k = 1, 2, …, q-1, где — нейтральный элемент группы точек эллиптической кривой E;

— h(M) — хэш-функция (ГОСТ Р 34.11-94), отображает сообщения M в двоичные векторы длины 256 бит.

Ключ шифрования: d-целое число, лежащее в пределах 0<d<q; ключ расшифрования: вычисляемый как .

Дополнительные требования: где ; (пожалуй можно забыть, взято из госта)

Формирование цифровой подписи

1.Вычисление хэш-функции от сообщения М: ;

2.Вычисление e=z mod q, и если e=0, положить e=1. Где z — целое число, соответствующее (т.е. - это двоичное представление числа z);

3.Генерация случайного числа k такого, что 0<k<q;

4.Вычисление точки эллиптической кривой C=kP, и по ней нахождение , где — это координата x точки C. Если r=0, возвращаемся к предыдущему шагу;

5.Нахождение s=(rd+ke) mod q. Если s=0, возвращаемся к шагу 3;

6.Формирование цифровой подписи , где и — векторы, соответствующие r и s.

Проверка цифровой подписи

1.Вычисление по цифровой подписи чисел r и s, учитывая, что , где r и s — числа, соответствующие векторам и . Если хотя бы одно из неравенств r<q и s<q неверно, то подпись неправильная;

2.Вычисление хэш-функции от сообщения М: ;

3.Вычисление e=z mod q, и если e=0, положить e=1. Где z — целое число соответствующее ;

4.Вычисление ;

5.Вычисление и ;

6.Вычисление точки эллиптической кривой . И определение , где — координата x кривой C;

7.В случае равенства R=r подпись действительная, иначе — фальшивая.