Электронная цифровая подпись и особенности ее применения в органах власти и управления

Автор: Пользователь скрыл имя, 19 Февраля 2012 в 09:49, курсовая работа

Описание работы

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

Содержание

ВВЕДЕНИЕ 3
1. ГЛАВА ПОНЯТИЕ ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ И ИСТОРИЯ ЕЕ СОЗДАНИЯ. 5
1.1 История создания электронной цифровой подписи 5
1.2 Понятие и использование ЭЦП 7
1.3 Законодательная платформа ЭЦП 13
1.4 Электронный документооборот в органах власти. 14
ГЛАВА 2 ОСОБЕННОСТИ ПРИМЕНЕНИЯ ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ. 20
2.1 ЭЦП и юридическая значимость электронного документа 20
2.2 Защита целостности электронных данных и обеспечение его юридической силы 26
2.3 Корневые УЦ 28
2.4 Почему необходим корневой УЦ 31
2.5 Примеры действующих информационных систем 34
2.6 Технические аспекты применения ЭЦП 36
2.7 Методы построения цифровой подписи 40
2.8 Опыт внедрения системы электронного документооборота в исполнительных органах государственной власти 47
2.9 Особенности применения ЭЦП в органах власти 54
2.9 Алгоритмы кодирования и декодирования ЭЦП 59
2.9.1 DSA 59
2.9.2 ECDSA 63
ГЛАВА 3 РЕКОМЕНДАЦИИ ОТНОСИТЕЛЬНО СДАЧИ ОТЧЕТНОСТИ В ЭЛЕКТРОННОМ ВИДЕ 67
3.1 Сдача отчетности в электронном виде - Приморский край 67
3.2 Сложности, возникающие при использовании ЭЦП 70
3.3 Управление ключами 73
ВВЕДЕНИЕ 3
1. ГЛАВА ПОНЯТИЕ ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ И ИСТОРИЯ ЕЕ СОЗДАНИЯ. 5
1.1 История создания электронной цифровой подписи 5
1.2 Понятие и использование ЭЦП 7
1.3 Законодательная платформа ЭЦП 13
1.4 Электронный документооборот в органах власти. 14
ГЛАВА 2 ОСОБЕННОСТИ ПРИМЕНЕНИЯ ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ. 20
2.1 ЭЦП и юридическая значимость электронного документа 20
2.2 Защита целостности электронных данных и обеспечение его юридической силы 26
2.3 Корневые УЦ 28
2.4 Почему необходим корневой УЦ 31
2.5 Примеры действующих информационных систем 34
2.6 Технические аспекты применения ЭЦП 36
2.7 Методы построения цифровой подписи 40
2.8 Опыт внедрения системы электронного документооборота в исполнительных органах государственной власти 47
2.9 Особенности применения ЭЦП в органах власти 54
2.9 Алгоритмы кодирования и декодирования ЭЦП 59
2.9.1 DSA 59
2.9.2 ECDSA 63
ГЛАВА 3 РЕКОМЕНДАЦИИ ОТНОСИТЕЛЬНО СДАЧИ ОТЧЕТНОСТИ В ЭЛЕКТРОННОМ ВИДЕ 67
3.1 Сдача отчетности в электронном виде - Приморский край 67
3.2 Сложности, возникающие при использовании ЭЦП 70
3.3 Управление ключами 73
ЗАКЛЮЧЕНИЕ 78
СПИСОК ЛИТЕРАТУРЫ 80

Работа содержит 1 файл

готовая работа-пример.doc

— 497.50 Кб (Скачать)

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

     Следует отметить, что ни ст. 160 Гражданского кодекса, регулирующая вопросы письменной формы сделки, ни ст. 434 Гражданского кодекса, посвященная форме договора, не выдвигают в качестве обязательного требование скрепления документов печатями. Наоборот, в соответствии с п. 1 ст. 160 Гражданского кодекса скрепление печатью отнесено к одному из дополнительных требований к форме сделки, которая может устанавливаться законом, нормативным правовым актом или соглашением сторон. Тем не менее скрепление договоров и иных документов получило широкое распространение в хозяйственной практике, во многом из-за требований актов налогового права.

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

 

      2.9 Алгоритмы кодирования и декодирования ЭЦП

     2.9.1 DSA

     DSA (Digital Signature Algorithm) — алгоритм с  использованием открытого ключа для создания электронной подписи, но не для шифрования (в отличие от RSA и схемы Эль-Гамаля). Подпись создается секретно, но может быть публично проверена. Это означает, что только один субъект может создать подпись сообщения, но любой может проверить её корректность. Алгоритм основан на вычислительной сложности взятия логарифмов в конечных полях.

     Алгоритм  был предложен Национальным институтом стандартов и технологий (США) в августе 1991 и является запатентованным U.S. Patent 5231668, но НИСТ сделал этот патент доступным для использования без лицензионных отчислений. Алгоритм вместе с криптографической хеш-функцией SHA-1 является частью DSS (Digital Signature Standard), впервые опубликованного в 1994 (документ FIPS-186 (Federal Information Processing Standards). Позднее были опубликованы 2 обновленные версии стандарта: FIPS 186-231

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

     Для построения системы цифровой подписи желающий должен произвести следующие действия:

     1. Выбор криптографической хеш-функции H(x).

     2. Выбор большого простого числа q, размерность которого N в битах совпадает с размерностью в битах значений хэш-функции H(x).

     3. Выбор простого числа p, такого, что (p-1) делится на q. Битовая длина p обозначается L (2L − 1 < p < 2L).

     4. Выбор числа g такого, что его мультипликативный порядок по модулю p равен q. Для его вычисления можно воспользоваться формулой , где h — некоторое произвольное число,  такое, что  . В большинстве случаев значение h = 2 удовлетворяет этому требованию.

     Как упомянуто выше, а также в DSS (Digital Signature Standard), первоочередным параметром схемы цифровой подписи является используемая криптографическая хеш-функция, необходимая для преобразования текста сообщения в число, которое собственно и будет подписано. Важной характеристикой этой функции является битовая длина выходной последовательности, обозначаемая далее N (160 для функции SHA-1). В первой версии стандарта DSS рекомендована функция SHA-1 и, соответственно, битовая длина подписываемого числа 160 бит. Сейчас SHA-1 уже не является достаточно безопасной. В стандарте указаны следующие возможные пары значений чисел L и N:

     1. L = 1024, N = 160

     2. L = 2048, N = 224

     3. L = 2048, N = 256

     4. L = 3072, N = 256

     В соответствии с этим рекомендованы  хеш-функции семейства SHA-2. Правительственные  организации должны использовать один из этих вариантов, но все другие вольны выбирать. Проектирующий систему  может выбрать любую хеш-функцию. Поэтому далее не будет заостряться внимание на использовании конкретной хеш-функции. Стойкость криптосистемы на основе DSA не превосходит стойкость используемой хеш-функции и стойкость пары (L,N), чья стойкость не больше стойкости каждого из чисел по отдельности. Ранее рекомендовалась длина p L = 1024 бита. В данный момент для систем, которые должны быть стойкими до 2010 (2030) года, рекомендуется длина в 2048 (3072) бита.

     1. Секретный ключ представляет собой число 

     2. Открытый ключ вычисляется по формуле 

     Открытыми параметрами являются числа (p, q, g, y). Закрытый параметр только один — число x. При этом числа (p, q, g) могут быть общими для группы пользователей, а  числа x и y являются соответственно закрытым и открытым ключами конкретного пользователя. При подписании сообщения используются секретные числа x и k, причем число k должно выбираться случайным образом (на практике псевдослучайным) при подписывании каждого следующего сообщения.32

     Поскольку (p, q, g) могут быть использованы для нескольких пользователей, на практике часто делят пользователей по некоторым критериям на группы с одинаковыми (p, q, g). Поэтому эти параметры называют доменными параметрами (Domain Parameters).

     Подпись сообщения

     Подпись сообщения выполняется по следующему алгоритму:

     1 Выбор случайного числа  

     2 Вычисление 

     3 Вычисление 

     4 Выбор другого k, если оказалось,  что r=0 или s=0

     Подписью  является пара чисел (r, s), общая длина  подписи 2*N.

     Проверка  подписи

     Проверка  подписи выполняется по алгоритму:

     1 Вычисление 

     2 Вычисление 

     3 Вычисление 

     4 Вычисление 

     Подпись верна, если v = r

     Корректность  схемы

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

 

      2.9.2 ECDSA

     ECDSA (Elliptic Curve Digital Signature Algorithm) — алгоритм  с открытым ключом для создания  цифровой подписи, аналогичный  по своему строению DSA, но определённый  в отличие от него не над  полем целых чисел, а в группе  точек эллиптической кривой.

     Стойкость алгоритма шифрования основывается на проблеме дискретного логарифма  в группе точек эллиптической  кривой. В отличие от проблемы простого дискретного логарифма и проблемы факторизации целого числа, не существует суб-экспонециального алгоритма для  проблемы дискретного логарифма в группе точек эллиптической кривой. По этой причине «сила на один бит ключа» существеннее выше в алгоритме, который использует эллиптические кривые. Д. Брауном (Daniel R. L. Brown) было доказано, что алгоритм ECDSA не является более безопасным, чем DSA. Им было сформулировано ограничение безопасности для ECDSA, которое привело к следующему заключению: «Если группа эллиптической кривой может быть смоделирована основной группой и ее хэш-функция удовлетворяет определенному обоснованному предположению, то ECDSA устойчива к chosen-message атаке с существующей фальсификацией.»

     Алгоритм ECDSA в 1999 г. был принят, как стандарт ANSI, в 2000 г. — как стандарт IEEE и NIST. Также в 1998 г. алгоритм был принят стандартом ISO. Несмотря на то, что стандарты ЭЦП созданы совсем недавно и находятся на этапе совершенствования, одним наиболее перспективных из них на сегодняшний день является ANSI X9.62 ECDSA от 1999 — DSA для эллиптических кривых.

     Для подписывания сообщений необходима пара ключей — открытый и закрытый. При этом закрытый ключ должен быть известен только тому, кто подписывает сообщения, а открытый — любому желающему проверить подлинность сообщения. Также общедоступными являются параметры самого алгоритма.

     Параметры алгоритма

     1. Выбор хэш-функции H(x). Для использования алгоритма необходимо, чтобы подписываемое сообщение являлось числом. Хеш-функция должна преобразовать любое сообщение в последователность битов, которое можно потом преобразовать в число.

     2. Выбор большого простого числа q — порядок одной из циклических подгрупп группы точек эллиптической кривой. Если размерность этого числа в битах меньше размерности в битах значений хэш-функции H(x) то используются только левые биты значения хэш-функции.

     3. Простым числом p обозначается характеристика поля координат Fp.

     Для простоты будем рассматривать эллиптические  кривые над полем Fp, где Fp — конечное простое поле. Причем, если необходимо, конструкцию можно легко адаптировать для эллиптических кривых над  другим полем.

     Пусть E — эллиптическая кривая, определенная над Fp, и P — точка простого порядка q кривой E(Fp). Кривая E и точка P являются системными параметрами. Число p — простое. Каждая пользовательница Алиса конструирует свой ключ посредством следующих действий:

     1. Выбирает случайное или псевдослучайное целое число x из интервала [1,q − 1].

     2. Вычисляет произведение  .

     Открытым  ключом пользовательницы Алисы A является число Q, а закрытым — x.

     Вместо  использования E и P в качестве глобальных системных параметров, можно фиксировать только поле Fp для всех пользователей и позволить каждому пользователю выбирать свою собственную эллиптическую кривую E и точку . В этом случае определенное уравнение кривой E, координаты точки P, а также порядок q этой точки P должны быть включены в открытый ключ пользователя. Если поле Fp фиксировано, то аппаратная и программная составляющие могут быть построены так, чтобы оптимизировать вычисления в том поле. В то же время имеется огромное количество вариантов выбора эллиптической кривой над полем Fp.33

     Для того, что подписать какое-либо сообщение, для которого подсчитан значение h хэш-функции H, пользовательнице A должен сделать следующее:

     1. Выбрать случайное целое число k в интервале [1,q − 1].

     2. Вычислить  и положить в r = x1(mod q), где r получается из целого числа x1между 0 и (p − 1) приведением по модулю q.

     Замечание: если r = 0, то уравнение подписи s = k − 1(h + xr)(mod q) не зависит от секретного ключа x, и следовательно, (r,s) не подходит в качестве цифровой подписи. Значит, в случае r = 0 необходимо вернуться к шагу 1.

     3. Вычислить k − 1(mod q) и положить s = k − 1(h + xr)(mod q).

     Замечание: если s = 0, то значение s − 1(mod q), нужное для  проверки, не существует.

     Значит, в случае s = 0 необходимо вернуться  к шагу 1.

     Подписью  для сообщения является пара целых чисел (r,s).

     Для того, чтобы проверить подпись  пользовательницы Алисы (r,s) на сообщение, пользователь Борис B должен сделать  следующее:

     1. Получить подтвержденную копию открытого ключа Q пользовательницы А;

     2. Проверить, что числа r и s являются целыми числами из интервала [1,q − 1], и вычислить значение хеш-функции h от сообщения;

     3. Вычислить u1 = s − 1h(mod q) и u2 = s − 1r(mod q);

     4. Вычислить u1P + u2Q = (x0,y0), и относительно x0, как целого числа между 0 и (p − 1), положить v = x0(mod q);

     5. Принять подпись, если и только если v = r.

     Заметим, что, если пользовательница Алиса вычислила  свою подпись правильно, то u1P + u2Q = (u1 + xu2)P = kP, так как k = s − 1(h + xr)(mod q), и  поэтому v = r.

     ECDSA является очень привлекательным  алгоритмом для реализации ЭЦП. Самым важным преимуществом ECDSA является возможность его работы на значительно меньших полях Fp. Как, в общем, с криптографией эллиптической кривой, предполагается, что битовый размер открытого ключа, который будет необходим для ESDSA, равен двойному размеру секретного ключа в битах. Для сравнения, при уровне безопасности в 80 бит получаем, то есть атакующему необходимо примерно 280 версий подписи для нахождения секретного ключа. При этом размер открытого ключа DSA равен, по крайней мере, 1024 бит, когда как для открытого ключа ECDSA — 160 бит. С другой стороны размер подписи одинаков и для DSA, и для ECDSA: 4t бит, где — уровень безопасности, измеренный в битах, то есть — примерно 320 бит для уровня безопасности в 80 бит.34

Информация о работе Электронная цифровая подпись и особенности ее применения в органах власти и управления