top of page
                                    Лабораторная работа №9
      Тема: Изучение алгоритма электронной цифровой подписи RSA
Цель Работы: Ознакомиться со схемами цифровой подписи и получить навыки создания  и проверки подлинности ЦП.

Теоретическая часть:

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

  • гарантирование истинности письма путем сличения подписи с имеющимся образцом;

  • гарантирование авторства документа (с юридической точки зрения).

Выполнение данных требований основывается на следующих свойствах подписи:

  • подпись аутентична, то есть с ее помощью получателю документа можно доказать, что она принадлежит подписывающему;

  • подпись служит доказательством, что только тот человек, чей автограф стоит на документе, мог подписать данный документ, и никто другой не смог бы этого сделать;

  • подпись непереносима, то есть является частью документа и поэтому перенести ее на другой документ невозможно:

  • документ с подписью является неизменяемым, то есть после подписания его невозможно изменить, оставив данный факт незамеченным;

  • подпись неоспорима, то есть человек, подписавший документ, в случае признания экспертизой, что именно он засвидетельствовал данный документ, не может оспорить факт подписания;

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

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

В настоящее время применяются несколько алгоритмов цифровой подписи:

  • RSA (наиболее популярен);

  • Digital Signature Algorithm, DSA (алгоритм цифровой подписи американского правительства, который применяют в стандарте цифровой подписи (Digital Signature Standard, DSS), также используется часто);

  • алгоритм Эль-Гамаля (иногда можно встретить).

  • алгоритм, который применяют в стандарте ГОСТ РЗ4.10-94 (в основе лежит DSA и является вариацией подписи Эль-Гамаля);

  • Так же существуют алгоритмы подписей, в основе которых лежит криптография эллиптических кривых; они похожи на все прочие, но в некоторых ситуациях работают эффективнее.

Электронная подпись RSA

Для осуществления подписи сообщения m=m1m2m3..mn необходимо вычислить хеш-функцию y=h(m1m2m3..mn), которая ставит в соответствие сообщению m число y. На следующем шаге достаточно снабдить подписью только число y, и эта подпись будет относиться ко всему сообщению m.

Далее по алгоритму RSA вычисляются ключи (e,n) и (d,n) Затем вычисляется                      (d на этот раз секретная степень).

Число s это и есть цифровая подпись. Она просто добавляется к сообщению и получается подписанное сообщение <m,s>.

Теперь каждый, кто знает параметры подписавшего сообщение (т.е. числа e и n), может проверить подлинность подписи.

Для этого необходимо проверить выполнение равенства 

Задачи

1.Для указанных открытых ключей пользователя RSA проверить подлинность подписанных сообщений:

  1. n=55, e=3: <7,28>, <22,15>,<16,36>

  2. n=65, e=5: <6,42>, <10,30>,<6,41>

  3. n=77, e=7: <13,41>, <11,28>,<5,26>

  4. n=91, e=5: <15,71>, <11,46>,<16,74>

  5. n=33, e=3: <10,14>, <24,18>,<17,8>

Контрольные вопросы

  1. Назовите основные свойства цифровой подписи.

  2. Какие схемы цифровой подписи существуют?

  3. Как осуществляется подпись RSA? Какое отличие подписи RSA от шифра RSA?

bottom of page