Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
moskalev_pa_analiz-algoritmov-elektronnoy-cifrovoy-podpisi-primenitelno-k-elektronnomu-dokumentooborotu_11706.docx
Скачиваний:
56
Добавлен:
14.01.2018
Размер:
385.65 Кб
Скачать

Глава 3. Анализ алгоритмов эцп в электронном документообороте

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

  • ГОСТ Р 34.10-94 Информационная технология. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асимметричного криптографического алгоритма.

  • ГОСТ Р 34.10-2001 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи.

  • ГОСТ Р 34.10-2012 Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи.

3.1. Гост р 34.10-94

Как уже отмечалось ранее, ГОСТ Р 34.10-94 является первым российским стандартом, описывающим процесс формирования и проверки электронной цифровой подписи. Данный стандарт использует алгоритм, близкий к алгоритму в американском стандарте DSS. Наиболее ощутимым различием между этими стандартами является использование параметров электронной цифровой подписи разного порядка, что приводит к получению более безопасной подписи, при использовании российского стандарта. Алгоритм выработки ЭЦП в отечественном стандарте 94-го года можно представить в виде следующих шагов [3]:

Шаг 1: вычислить хэш-код сообщения M : =h(M)

Шаг 2: вычислить целое число а, двоичным представлением которого является вектор, и определитьe , гдеq - простое число,2254 q 2256.

Шаг 3: сгенерировать случайное (псевдослучайное), целое число k, удовлетворяющее неравенству0 < k < q

Шаг 4: вычислить r = ((mod p)) modq. Еслиr = 0, вернуться к шагу 3.

Шаг 5: вычислить значение s .Еслиs=0, вернуться к шагу 3.

Шаг 6: вычислить двоичные векторы и, соответствующиеr иsи определить цифровую подписьdsкак конкатенацию двух двоичных векторови.

Исходными данными этого процесса являются ключ подписи dи подписываемое сообщениеM, а выходным результатом – цифровая подписьds.

Давайте рассмотрим каждый шаг подробнее.

Шаг 1. Хэш-код сообщения - это строка бит, являющаяся выходным результатом хэш-функции. В соответствии с ISO/IEC 14888-1:20089, хэш-функция – это функция, отражающая строки бит в строки бит фиксированной длины и удовлетворяющая следующим свойствам [6]:

  1. по данному значению функции сложно вычислить исходные данные, отображаемые в это значение;

  2. для заданных исходных данных сложно вычислить другие исходные данные, отображаемые в то же значение функции;

  3. сложно вычислить какую-либо пару исходных данных, отображаемых в одно и то же значение.

Шаг 2. Не совсем понятно, откуда берется q. Перед началом выполнения алгоритма, необходимо определитьр- простое число,2509 р 2512либо21020 р 21024,q- простое число,2254 q 2256иqявляется делителем для(p-1).

Шаги 3-6. Здесь все понятно – чистая математика.

Таким образом, процесс выработки электронной цифровой подписи можно представить в виде следующей схемы:

Рисунок 5. Алгоритм выработки электронной цифровой подписи

В соответствии со стандартом ГОСТ Р 34.10-94, алгоритм проверки подписи состоит из следующих шагов [6]:

Шаг 1: по полученной подписи ds, вычислить целые числаr иs. Если выполнены неравенства0 < r < q,0 < s < q, то перейти к следующему шагу. В противном случае подпись неверна.

Шаг 2: вычислить хэш-код сообщения M : =h(M)

Шаг 3: вычислить целое число а, двоичным представлением которого является вектор, и определитьe , гдеq– порядок циклической группы точек эллиптической кривой. Еслиe = 0, то определитьe = 1.

Шаг 4: вычислить значение v

Шаг 5: вычислить значение .

Шаг 6: вычислить R

Шаг 7: если выполнено равенство R = r, то подпись принимается, в противном случае – подпись неверна.

Исходными данными этого процесса являются сообщение M, цифровая подписьdsи ключ проверки подписиQ, а выходным результатом – свидетельство о достоверности или ошибочности данной подписи. Процесс выработки электронной цифровой подписи можно представить в виде следующей схемы:

Рисунок 6. Алгоритм проверки электронной цифровой подписи

Следует также отметить, что в ГОСТах от 2001 и 2012 годов алгоритмы выработки подписи и ее проверки практически не изменились. Тогда для чего же они нужны?