Защита информации, передаваемой через интернет с помощью ЭЦП (електронно-цифровой подписи)
Характеристика электронно-цифровой подписи (ЭЦП), особенности ее использования, общая схема. Основные алгоритмы шифрования: RSA и DSA, симметрические криптосистемы. Криптографическая система с открытым ключом: особенности системы и основные законы ЭЦП.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 09.03.2015 |
Размер файла | 449,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
План работы
Введение
1. Электронно-цифровая подпись
1.1 Как пользоваться ЭЦП
1.2 Общая схема электронной подписи
2. Алгоритмы шифрование
2.1 RSA
2.2 DSA
2.3 Симметричные криптосистемы
3. Криптографическая система с открытым ключом
3.1 Особенности системы
3.2 Цифровая подпись обеспечивает
3.3 Законы ЭЦП
3.4 Использование ЭЦП в странах
Заключение
Список литературы
Введение
В результате создания глобальных компьютерных сетей произошел настоящий переворот в области передачи и распространения информации. Сначала компьютер перестал выполнять только функции электронной вычислительной машины. Затем компьютеры были объединены обширными сетями. Это позволило хранить значительные объемы информации и передавать ее на большие расстояния. Применение глобальных коммуникаций в коммерческой деятельности и повседневной жизни привело к появлению принципиально новой области юридических отношений, связанных с электронным обменом данными. В таком обмене участвуют производители товаров и услуг, оптовые и розничные торговцы, дистрибьюторы, перевозчики, банки, страхователи, органы государственной власти и их организации, а также физические лица в своих деловых и личных отношениях. Несомненно, электронный документооборот (ЭДО) будет получать все большее развитие. При применении систем ЭДО значительно возрастает скорость информационного обмена. Использование компьютеров и компьютерных сетей в этой области позволяет передавать структурированную информацию. Существенно сокращается потребность в больших пространствах для хранения информации. Да и в целом уменьшаются издержки на осуществление документооборота. Пропадает необходимость при передаче документов тратиться на транспорт, курьеров, бумагу и т.д. Анализ перемен, происшедших за последние 20 лет, показывает, что благодаря объединению компьютеров, информационных технологий и организации сетей удалось автоматизировать трудоемкие деловые операции, как в промышленной, так и государственной сфере. Например, в банковской сфере эти перемены можно наблюдать по широко распространенному применению банкоматов, кредитных и дебитных карточек, а также предоставлению кредитов через Интернет. Подобного рода автоматизированный информационный и операционный обмен между банками, клиентами, банками и клиентами и составляет сущность электронной коммерции.
Как мы видим, сегодня электронный обмен данными оказывает существенное влияние на экономику и права граждан. Поэтому данные отношения требуют особого правового регулирования на уровне как национального законодательства, так и международного права, а также решения вопросов обеспечения безопасности передаваемой информации. Неразвитость существующих правовых нормативов, относящихся к указанной сфере, а также значительные противоречия между соответствующим законодательством разных стран являются препятствием для развития электронного бизнеса, электронного документооборота в сфере государственного управления, обеспечения информационных прав граждан, а также для успешного международного обмена электронными данными. Электронные документы способны найти широкое применение в коммерческих и управленческих процессах лишь при условии, что достоверность содержащейся в них информации не вызывает сомнений. Процесс обмена электронными документами существенным образом отличается от обычной формы обмена документами на бумажных носителях. При широком внедрении в деловую и административную практику обмена электронными документами необходимо решить проблему подтверждения подлинности содержащейся в них информации и ее соответствия смыслу волеизъявления человека. Технически эта проблема решается путем использования средств электронной цифровой подписи (ЭЦП).
электронный подпись шифрование криптографический
1. Электронно-цифровая подпись
Электронно-цифровая подпись (ЭЦП ) -- электронный аналог собственноручной подписи -- используемый в системах электронного документооборота для придания электронному документу юридической силы, равной бумажному документу, подписанного собственноручной подписью правомочного лица и/или скрепленного печатью. Документ (файл), подписанный ЭЦП, гарантированно защищен от изменений -- проверка подписи мгновенно выявит расхождение. ЭЦП обеспечивает проверку целостности документов, конфиденциальность, установление лица, отправившего документ. Это позволяет усовершенствовать процедуру подготовки, доставки, учета и хранения документов, гарантировать их достоверность. Главное преимущество использование ЭЦП -- значительное сокращение временных и финансовых затрат на оформление и обмен документацией. Таким образом, по функциональности ЭЦП даже превосходит обычную подпись. Предположим, что две стороны (назовем их условно «А» и «Б») решили организовать между собой обмен документами на машинных носителях. Как должен выстраиваться документооборот между этими сторонами? В первую очередь, стороны должны договориться об использовании средств ЭЦП. Лучше, если это будет программный или программно-аппаратный комплекс, сертифицированный в нашей стране. После того, как средство ЭЦП выбрано, стороны должны выполнить генерирование ключей -- по открытому и секретному (личному) ключу ЭЦП для каждой стороны.
Чтобы каждая сторона могла удостовериться в подлинности ЭЦП, поставленной под документом другой стороной, они должны обменяться открытыми ключами. Однако этот процесс не так прост, как может показаться. Ведь в случае конфликтной ситуации одна из сторон может заявить, что тот открытый ключ, который был использован при проверке ЭЦП под документом, не ее, а неизвестно чей. Сначала для документа должна быть выработана ЭЦП с использованием соответствующих технических средств и секретного ключа стороны «А».
Из исходного текста документа и его ЭЦП формируется электронный документ. Здесь нужно понимать, что электронный документ -- это не просто файл на магнитном носителе с текстом документа, а файл, состоящий из двух частей: общей (в которой содержится текст) и особенной, содержащей все необходимые ЭЦП (рис. 3). Текст документа без ЭЦП -- это не более чем обычный текст, который не имеет юридической силы. Его можно распечатать, передать по электронной почте, отредактировать, но нельзя установить его подлинность. ЭЦП без текста документа вообще представляет собой непереводимую игру букв. Восстановить документ по ЭЦП невозможно точно так же, как невозможно восстановить дворец по найденному кирпичу. ЭЦП сама по себе не имеет ни ценности, ни смысла.
Рис. 3. Текст документа + ЭЦП = электронный документ
Чтобы обеспечить конфиденциальность при передаче по открытым каналам, он может быть зашифрован с использованием открытого ключа корреспондента -- стороны «Б» (рис. 4).
Рис. 4. Шифрование электронного документа с использованием открытого ключа получателя
Получившийся зашифрованный текст может быть безопасно передан стороне «Б», например, по электронной почте через Интернет. Сторона «Б», в свою очередь, должна сначала расшифровать полученный документ, используя свой секретный ключ (рис. 5).
Рис. 5. Расшифровка электронного документа с использованием секретного ключа получателя
Расшифровав текст, его можно прочитать, однако, чтобы убедиться в том, что он передан именно стороной «A», нужно проверить цифровую подпись, пришедшую вместе с текстом электронного документа (рис. 6).
Рис. 6. Проверка ЭЦП с использованием открытого ключа отправителя.
Так выглядит схема передачи файла из пункта «А» в пункт «Б». Если осуществляется передача в обратном направлении, в описанных шагах нужно поменять местами ключи отправителя и получателя. Но это не единственное приложение криптографии с открытым ключом. Например, две стороны хотят составить договор в электронном виде и защитить его от внесения изменений. Поскольку стороны равны перед законом, каждая из них должна подписать один и тот же документ (файл) с использованием своего личного (секретного) ключа, после чего обменяться полученными цифровыми подписями. В этом случае (при наличии заверенных карточек открытых ключей каждой из сторон) проверить подлинность файла не составит труда. Выполняется проверка ЭЦП точно так же, как было описано в примере с передачей сообщений. Итак, чтобы установить доверительные отношения в электронном документообороте, стороны должны: 1. Заключить соглашение об использовании электронных документов. 2. Сгенерировать ключи в соответствии с документацией на выбранный комплекс средств ЭЦП. 3. Принять меры к защите личного (секретного) ключа ЭЦП от компрометации (разглашения). Носитель, на котором хранится личный ключ, определяется используемыми средствами ЭЦП и может представлять жесткий диск компьютера, гибкий диск (дискету) или устройство хранения на базе энергонезависимой памяти. Как правило, личный ключ дополнительно шифруется, и для его использования нужно ввести пароль или PIN-код. В любом случае, если ключ хранится на несъемном диске, нужно ограничить доступ к компьютеру со средствами ЭЦП. Если же ключ хранится на съемном носителе, это устройство следует хранить, например, в сейфе вместе с печатью организации. 4. Обменяться открытыми ключами ЭЦП и заверенными карточками открытого ключа ЭЦП.
1.1 Как пользоваться ЭЦП
Пользоваться электронной подписью достаточно просто. Никаких специальных знаний, навыков и умений для этого не потребуется. Каждому пользователю ЭЦП, участвующему в обмене электронными документами, генерируются уникальные открытый и закрытый (секретный) криптографические ключи.
Закрытый ключ - это закрытый уникальный набор информации объемом 256 бит, хранится в недоступном другим лицам месте на дискете, смарт-карте, ru-token. Работает закрытый ключ только в паре с открытым ключом.
Открытый ключ - используется для проверки ЭЦП получаемых документов/файлов. Технически это набор информации объемом 1024 бита. Открытый ключ передается вместе с Вашим письмом, подписанным ЭЦП. Дубликат открытого ключа направляется в Удостоверяющий Центр, где создана библиотека открытых ключей ЭЦП. В библиотеке Удостоверяющего Центра обеспечивается регистрация и надежное хранение открытых ключей во избежание попыток подделки или внесения искажений
Вы формируете документ в электронной форме с использованием электронной подписи. При этом на основе секретного закрытого ключа ЭЦП и содержимого документа путем криптографического преобразования вырабатывается некоторое большое число, которое и является электронно-цифровой подписью данного пользователя под данным конкретным документом. Это число добавляется в конец электронного документа или сохраняется в отдельном файле.
В подпись, в том числе, записывается следующая информация:
имя файла открытого ключа подписи,
информация о лице, сформировавшем подпись,
дата формирования подписи.
Пользователь, получивший подписанный документ и имеющий открытый ключ ЭЦП отправителя на основании текста документа и открытого ключа отправителя выполняет обратное криптографическое преобразование, обеспечивающее проверку электронной цифровой подписи отправителя. Если ЭЦП под документом верна, то это значит, что документ действительно подписан отправителем и в текст документа не внесено никаких изменений. В противном случае будет выдаваться сообщение, что сертификат отправителя не является действительным.
1.2 Общая схема электронной подписи
Схема электронной подписи обычно включает в себя:
1) Алгоритм генерации ключевых пар пользователя;
2) Функцию вычисления подписи;
3) Функцию проверки подписи.
Функция вычисления подписи на основе документа и секретного ключа пользователя вычисляет собственно подпись. В зависимости от алгоритма функция вычисления подписи может быть детерминированной (точной) или вероятностной. Детерминированные функции всегда вычисляют одинаковую подпись по одинаковым входным данным.
Вероятностные функции вносят в подпись элемент случайности, что усиливает криптостойкость алгоритмов ЭЦП. Однако, для вероятностных схем необходим надёжный источник случайности (либо аппаратный генератор шума, либо криптографически надёжный генератор псевдослучайных бит), что усложняет реализацию.
В настоящее время детерминированные схемы практически не используются. Даже в изначально детерминированные (точные) алгоритмы сейчас внесены модификации, превращающие их в вероятностные (так, в алгоритм подписи RSA вторая версия стандарта PKCS#1 добавила предварительное преобразование данных (OAEP), включающее в себя, среди прочего, зашумление). RSA стал первым алгоритмом такого типа, пригодным и для шифрования и для цифровой подписи. Алгоритм используется в большом числе криптографических приложений.
2. Алгоритмы Шифрования
2.1 История RSA
RSA (аббревиатура от фамилий Rivest, Shamir и Adleman) -- криптографический алгоритм с открытым ключом, основывающийся на вычислительной сложности задачи факторизации больших целых чисел.
Криптосистема RSA стала первой системой, пригодной и для шифрования, и для цифровой подписи. Алгоритм используется в большом числе криптографических приложений, включая PGP, S/MIME, TLS/SSL, IPSEC/IKE и других.
Опубликованная в ноябре 1976 года статья) перевернула представление о криптографических системах, заложив основы криптографии с открытым ключом. Разработанный впоследствии алгоритм Диффи -- Хеллмана позволял двум сторонам получить общий секретный ключ, используя незащищенный канал связи. Однако этот алгоритм не решал проблему аутентификации. Без дополнительных средств пользователи не могли быть уверены, с кем именно они сгенерировали общий секретный ключ.
Изучив эту статью, трое учёных Рональд Ривест, Ади Шамир и Леонард Адлеман из Массачусетского технологического института (MIT) приступили к поискам математической функции, которая бы позволяла реализовать сформулированную Уитфилдом Диффи и Мартином Хеллманом модель криптографической системы с открытым ключом. После работы над более чем 40 возможными вариантами, им удалось найти алгоритм, основанный на различии в том, насколько легко находить большие простые числа и насколько сложно раскладывать на множители произведение двух больших простых чисел, получивший впоследствии название RSA. Система была названа по первым буквам фамилий её создателей.
В августе 1977 года в колонке «Математические игры» Мартина Гарднера в журнале Scientific American, с разрешения Рональда Ривеста появилось первое описание криптосистемы RSA. Читателям также было предложено дешифровать английскую фразу, зашифрованную описанным алгоритмом:
9686 1477 8829 7431 0816 3569 8962 1829 |
9613 1409 0575 9874 2982 3147 8013 9451 |
7546 2225 9991 6951 2514 6622 3919 5781 |
2206 4355 1245 2093 5708 8839 9055 5154 |
В качестве открытых параметров системы были использованы числа n= (129 десятичных знаков, 425 бит, также известно, как RSA-129 и e=9007. За расшифровку была обещана награда в 100 долларов США. По заявлению Ривеста, для факторизации числа потребовалось бы более 40 квадриллионов лет. Полученную награду победители пожертвовали в фонд свободного программного обеспечения.
После публикации Мартина Гарднера полное описание новой криптосистемы любой желающий мог получить, выслав по почте запрос Рональду Ривесту, с приложенным конвертом с обратным адресом и марками на 35 центов. Полное описание новой криптосистемы было опубликовано в журнале «
Заявка на патент была подана 14 декабря 1977 года, в качестве владельца был указан MIT. Патент 4405829 был выдан 20 сентября 1983 года, а 21 сентября 2000 года срок его действия истёк. Однако за пределами США у изобретателей патента на алгоритм не было, так как в большинстве стран его необходимо было получить до первой публикации.
В 1982 году Ривест, Шамир и Адлеман организовали компанию (в настоящий момент -- подразделение EMC). В 1989 году RSA, вместе с симметричным шифром DES, упоминается в RFC 1115, тем самым начиная использование алгоритма в зарождающейся сети Internet, а в 1990 году использовать алгоритм начинает министерство обороны США.
В ноябре 1993 года открыто публикуется версия 1.5 стандарта , описывающего применение RSA для шифрования и создания электронной подписи. Последние версии стандарта также доступны в виде RFC (RFC 2313 -- 1.5, 1993 год; RFC 2437 -- 2.0, 1998 год; RFC 3447 -- 2.1, 2002 год).
В декабре 1997 года была обнародована информация, согласно которой британский математик Клиффорд Кокс (Clifford Cocks), работавший в центре правительственной связи (GCHQ) Великобритании, описал криптосистему аналогичную RSA в 1973 году.
Описание алгоритма
Криптографические системы с открытым ключом используют так называемые односторонние функции, которые обладают следующим свойством:
· Если известно, то вычислить относительно просто
· Если известно, то для вычисления нет простого (эффективного) пути.
Под односторонностью понимается не теоретическая одно направленность, а практическая невозможность вычислить обратное значение, используя современные вычислительные средства, за обозримый интервал времени.
В основу криптографической системы с открытым ключом RSA положена сложность задачи факторизации произведения двух больших простых чисел. Для шифрования используется операция возведения в степень по модулю большого числа. Для дешифрования за разумное время (обратной операции) необходимо уметь вычислять функцию Эйлера от данного большого числа, для чего необходимо знать разложения числа на простые множители.
В криптографической системе с открытым ключом каждый участник располагает как открытым ключом (), так и закрытым ключом (). В криптографической системе RSA каждый ключ состоит из пары целых чисел. Каждый участник создаёт свой открытый и закрытый ключ самостоятельно. Закрытый ключ каждый из них держит в секрете, а открытые ключи можно сообщать кому угодно или даже публиковать их. Открытый и закрытый ключи каждого участника обмена сообщениями в криптосистеме RSA образуют «согласованную пару» в том смысле, что они являются взаимно обратными, то есть:
допустимых пар открытого и закрытого ключей
соответствующие функции шифрования и расшифрования такие, что
сообщений, где -- множество допустимых сообщений,
Алгоритм создания, открытого и секретного ключей
RSA-ключи генерируются следующим образом:
1. Выбираются два различных случайных простых числа и заданного размера (например, 1024 бит, а каждое).
2. Вычисляется их произведение, которое называется модулем.
3. Вычисляется значение функции Эйлера от числа:
4. Выбирается целое число \varphi(n)</math>. Обычно в качестве берут простые числа, содержащие небольшое количество единичных бит в двоичной записи, например, простые числа Ферма 17, 257 или 65537.
o Число называется открытой экспонентой ()
o Время, необходимое для шифрования с использованием быстрого возведения в степень, пропорционально числу единичных бит в.
o Слишком малые значения, например, 3, потенциально могут ослабить безопасность схемы RSA.
5. Вычисляется число e</math> по модулю, то есть число, удовлетворяющее условию:
o Число называется секретной экспонентой. Обычно, оно вычисляется при помощи расширенного алгоритма Евклида.
6. Пара публикуется в качестве открытого ключа RSA ().
7. Пара играет роль закрытого ключа RSA () и держится в секрете.
Шифрование и расшифрования
Предположим, Боб хочет послать Алисе сообщение.
Сообщениями являются целые числа в интервале от до, т.е..
Алгоритм:
· Взять открытый ключ Алисы
· Взять открытый текст
· Зашифровать сообщение с использованием открытого ключа Алисы:
Алгоритм:
· Принять зашифрованное сообщение
· Взять свой закрытый ключ
· Применить закрытый ключ для расшифрования сообщения:
Наиболее используемым в настоящее время является смешанный алгоритм шифрования, в котором сначала шифруется сеансовый ключ, а потом уже с его помощью участники шифруют свои сообщения симметричными системами. После завершения сеанса сеансовый ключ как правило уничтожается.
Алгоритм шифрования сеансового ключа выглядит следующим образом:
Алгоритм:
· Взять открытый ключ Алисы
· Создать случайный сеансовый ключ
· Зашифровать сеансовый ключ с использованием открытого ключа Алисы:
· Расшифровать сообщение с помощью сеансового ключа симметричным алгоритмом:
Алгоритм:
· Принять зашифрованный сеансовый ключ Боба
· Взять свой закрытый ключ
· Применить закрытый ключ для расшифровывания сеансового ключа:
· Зашифровать сообщение с помощью сеансового ключа симметричным алгоритмом:
В случае, когда сеансовый ключ больше, чем модуль сеансовый ключ разбивают на блоки Цифровая подпись
Система RSA может использоваться не только для шифрования, но и для цифровой подписи.
Предположим, что Алисе (стороне) нужно отправить Бобу (стороне) сообщение, подтверждённое электронной цифровой подписью.
Применение RSA
Система RSA используется для защиты программного обеспечения и в схемах цифровой подписи.
Также она используется в открытой системе шифрования PGP и иных системах шифрования (к примеру, DarkCryptTC и формат xdc) в сочетании с симметричными алгоритмами.
Из-за низкой скорости шифрования (около 30 кбит/с при 512 битном ключе на процессоре 2 ГГц), сообщения обычно шифруют с помощью более производительных симметричных алгоритмов со случайным ключом (сеансовый ключ), а с помощью RSA шифруют лишь этот ключ, таким образом реализуется гибридная криптосистема. Такой механизм имеет потенциальные уязвимости ввиду необходимости использовать криптостойкий генератор случайных чисел для формирования случайного сеансового ключа симметричного шифрования и эффективно противостоящий атакам симметричный криптоалгоритм (в данное время широкое применение находят AES, IDEA, Serpent, Twofish).
2.2 Алгоритм DSA (Digital Signature Algorithm)
DSA (Digital Signature Algorithm) -- алгоритм с использованием открытого ключа для создания электронной подписи, но не для шифрования (в отличие от RSA и схемы Эль-Гамаля). Подпись создается секретно, но может быть публично проверена. Это означает, что только один субъект может создать подпись сообщения, но любой может проверить её корректность. Алгоритм основан на вычислительной сложности взятия логарифмов в конечных полях.
Алгоритм был предложен Национальным институтом стандартов и технологий (США) в августе 1991 и является запатентованным U.S. Patent 5 231 668, но НИСТ сделал этот патент доступным для использования без лицензионных отчислений. Алгоритм вместе с криптографической хеш-функцией SHA-1 является частью DSS (Digital Signature Standard), впервые опубликованного в 1994 (документ FIPS-186 (Federal Information Processing Standards). Позднее были опубликованы 2 обновленные версии стандарта: FIPS 186-2 (27 января 2000 года) и FIPS 186-3 (июнь 2009).
Алгоритм с использованием открытого ключа для создания электронной подписи, но не для шифрования. Секретное создание шифр - значения и публичная проверка ее означает, что только один человек может создать шифр - значение сообщения, но любой может проверить ее корректность. Основан алгоритм на вычислительной сложности взятия логарифмов в конечных полях.
Использование алгоритма
Для подписывания сообщений необходима пара ключей -- открытый и закрытый. При этом закрытый ключ должен быть известен только тому, кто подписывает сообщения, а открытый -- любому желающему проверить подлинность сообщения. Также общедоступными являются параметры самого алгоритма. Для обеспечения такого доступа достаточно авторитетная организация (или несколько организаций) поддерживает базу соответствия между реальными реквизитами автора (это может быть как частное лицо, так и организация) и открытыми ключами, а также всеми необходимыми параметрами схемы цифровой подписи (используемая хеш-функция). Эта организация также выдает цифровые сертификаты.
Параметры схемы цифровой подписи
Для построения системы цифровой подписи нужно выполнить следующие шаги:
1. Выбор криптографической хеш-функции H(x).
2. Выбор большого простого числа q, размерность которого N в битах совпадает с размерностью в битах значений хэш-функции H(x).
3. Выбор простого числа p, такого, что (p-1) делится на q. Битовая длина p обозначается L ().
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 должно выбираться случайным образом (на практике псевдослучайным) при подписывании каждого следующего сообщения.
Поскольку (p, q, g) могут быть использованы для нескольких пользователей, на практике часто делят пользователей по некоторым критериям на группы с одинаковыми (p, q, g). Поэтому эти параметры называют доменными параметрами (Domain Parameters).
2.3 Симметричные криптосистемы
Симметричные криптосистемы (также симметричное шифрование, симметричные шифры) -- способ шифрования, в котором для зашифровывания и расшифровывания применяется один и тот же криптографический ключ. До изобретения схемы асимметричного шифрования единственным существовавшим способом являлось симметричное шифрование. Ключ алгоритма должен сохраняться в секрете обеими сторонами. Ключ алгоритма выбирается сторонами до начала обмена сообщениями.
В настоящее время симметричные шифры - это:
1. Блочные шифры - обрабатывают информацию блоками определенной длины (обычно 64, 128 бит), применяя к блоку ключ в установленном порядке, как правило, несколькими циклами перемешивания и подстановки, называемыми раундами. Результатом повторения раундов является лавинный эффект - нарастающая потеря соответствия битов между блоками открытых и зашифрованных данных.
2. Поточные шифры - в которых шифрование проводится над каждым битом либо байтом исходного (открытого) текста с использованием гаммирования. Поточный шифр может быть легко создан на основе блочного (например, ГОСТ 28147-89 в режиме гаммирования), запущенного в специальном режиме.
3. Криптографическая система с открытым ключом
Криптографическая система с открытым ключом (или Асимметричное шифрование, Асимметричный шифр) -- система шифрования информации, при которой ключ, которым зашифровывается сообщение и само зашифрованное сообщение передаётся по открытому, (то есть незащищённому, доступному для наблюдения) каналу. Для генерации открытого ключа и для прочтения зашифрованного сообщения получатель использует секретный ключ. Криптографические системы с открытым ключом в настоящее время широко применяются в различных сетевых протоколах, в частности, в протоколе SSL и основанных на нём протоколах прикладного уровня HTTPS, SSH и т. д.
Рис. 7. Этапы шифровки с открытым ключом.
Этапы шифровки с открытым ключом
1. Получатель генерирует ключ. Ключ разбивается на открытую и закрытую часть. При этом открытый ключ не должен передаваться по открытому каналу. Либо его подлинность должна быть гарантирована некоторым сертифицирующим органом.
2.Отправитель с помощью открытого ключа шифрует сообщение.
3.Получатель с помощью закрытого ключа дешифрует сообщение.
Недостаток метода: хотя сообщение надежно шифруется, но «засвечиваются» получатель и отправитель самим фактом пересылки шифрованного сообщения.
Общая идея криптографической системы с открытым ключом заключается в использовании при зашифровке сообщения такой функции от открытого ключа и сообщения (шифр -функции), которую алгоритмически очень трудно обратить, то есть вычислить по значению функции её аргумент, даже зная значение ключа.
3.1 Особенности системы
Преимущество асимметричных шифров перед симметричными шифрами состоит в отсутствии необходимости передачи секретного ключа. Сторона, желающая принимать зашифрованные тексты, в соответствии с используемым алгоритмом вырабатывает пару «открытый ключ -- закрытый ключ». Значения ключей связаны между собой, однако вычисление одного значения из другого должно быть невозможным с практической точки зрения. Открытый ключ публикуется в открытых справочниках и используется для шифрования информации контрагентом. Закрытый ключ держится в секрете и используется для расшифровывания сообщения, переданного владельцу пары ключей. Начало асимметричным шифрам было положено в 1976 году в работе Уитфилда Диффи и Мартина Хеллмана «Новые направления в современной криптографии». Они предложили систему обмена общим секретным ключом на основе проблемы дискретного логарифма. Вообще, в основу известных асимметричных криптосистем кладётся одна из сложных математических проблем, которая позволяет строить односторонние функции и функции-ловушки. Например, криптосистема Ривеста-Шамира-Адельмана использует проблему факторизации больших чисел, а криптосистемы Меркля-Хеллмана и Хора-Ривеста опираются на так называемую задачу об укладке рюкзака.
Недостатки - асимметричные криптосистемы требуют существенно больших вычислительных ресурсов. Кроме того, необходимо обеспечить аутентичность (подлинность) самих публичных ключей, для чего обычно используют сертификаты.
Гибридная (или комбинированная) криптосистема -- это система шифрования, обладающая всеми достоинствами криптосистемы с открытым ключом, но лишенная ее основного недостатка -- низкой скорости шифрования.
Принцип: Криптографические системы используют преимущества двух основных криптосистем: симметричной и асимметричной криптографии. На этом принципе построены такие программы, как PGP и GnuPG.
Основной недостаток асимметричной криптографии состоит в низкой скорости из-за сложных вычислений, требуемых ее алгоритмами, в то время как симметричная криптография традиционно показывает блестящую скорость работы. Однако симметричные криптосистемы имеет один существенный недостаток -- её использование предполагает наличие защищенного канала для передачи ключей. Для преодоления этого недостатка прибегают к асимметричным криптосистемам, которые используют пару ключей: открытый и закрытый.
Шифрование: Большинство шифровальных систем работают следующим образом. Для симметричного алгоритма (3DES, IDEA, AES или любого другого) генерируется случайный ключ. Такой ключ, как правило, имеет размер от 128 до 512 бит (в зависимости от алгоритма). Затем используется симметричный алгоритм для шифрования сообщения. В случае блочного шифрования необходимо использовать режим шифрования (например, CBC), что позволит шифровать сообщение с длиной, превышающей длину блока. Что касается самого случайного ключа, он должен быть зашифрован с помощью открытого ключа получателя сообщения, и именно на этом этапе применяется криптосистема с открытым ключом (RSA или Алгоритм Диффи -- Хеллмана). Поскольку случайный ключ короткий, его шифрование занимает немного времени. Шифрование набора сообщений с помощью асимметричного алгоритма -- это задача вычислительно более сложная, поэтому здесь предпочтительнее использовать симметричное шифрование. Затем достаточно отправить сообщение, зашифрованное симметричным алгоритмом, а также соответствующий ключ в зашифрованном виде. Получатель сначала расшифровывает ключ с помощью своего секретного ключа, а затем с помощью полученного ключа получает и всё сообщение.
Цифровая подпись обеспечивает:
* Удостоверение источника документа. В зависимости от деталей определения документа могут быть подписаны такие поля, как «автор», «внесённые изменения», «метка времени» и т. д.
* Защиту от изменений документа. При любом случайном или преднамеренном изменении документа (или подписи) изменится шифр, следовательно, подпись станет недействительной.
* Невозможность отказа от авторства. Так как создать корректную подпись можно лишь, зная закрытый ключ, а он известен только владельцу, то владелец не может отказаться от своей подписи под документом.
Возможны следующие угрозы цифровой подписи:
*Злоумышленник может попытаться подделать подпись для выбранного им документа.
*Злоумышленник может попытаться подобрать документ к данной подписи, чтобы подпись к нему подходила.
При использовании надёжной шифр - функции, вычислительно сложно создать поддельный документ с таким же шифром, как у подлинного. Однако, эти угрозы могут реализоваться из-за слабостей конкретных алгоритмов кэширования, подписи, или ошибок в их реализациях. Тем не менее, возможны ещё такие угрозы системам цифровой подписи:
*Злоумышленник, укравший закрытый ключ, может подписать любой документ от имени владельца ключа.
*Злоумышленник может обманом заставить владельца подписать какой-либо документ, например, используя протокол слепой подписи.
*Злоумышленник может подменить открытый ключ владельца на свой собственный, выдавая себя за него.
Управление ключами от ЭЦП
Важной проблемой всей криптографии с открытым ключом, в том числе и систем ЭЦП, является управление открытыми ключами. Необходимо обеспечить доступ любого пользователя к подлинному открытому ключу любого другого пользователя, защитить эти ключи от подмены злоумышленником, а также организовать отзыв ключа в случае его компрометации.
Задача защиты ключей от подмены решается с помощью сертификатов. Сертификат позволяет удостоверить заключённые в нём данные о владельце и его открытый ключ подписью какого-либо доверенного лица. В централизованных системах сертификатов используются центры сертификации, поддерживаемые доверенными организациями. В децентрализованных системах путём перекрёстного подписывания сертификатов знакомых и доверенных людей каждым пользователем строится сеть доверия.
Управлением ключами занимаются центры распространения сертификатов. Обратившись к такому центру, пользователь может получить сертификат какого-либо пользователя, а также проверить, не отозван ли ещё тот или иной открытый ключ.
3.2 Законы ЭЦП в России
До 01 июля 2013 года действует Федеральный Закон № 1-ФЗ "Об Электронной Цифровой Подписи" (ранее планировалось, что датой окончания срока будет 01 июля 2012 года), устанавливающий следующие понятия.
Электронный документ -- документ, в котором информация представлена в электронно-цифровой форме.
Электронная цифровая подпись -- реквизит электронного документа, предназначенный для защиты данного электронного документа от подделки, полученный в результате криптографического преобразования информации с использованием закрытого ключа электронной цифровой подписи и позволяющий идентифицировать владельца сертификата ключа подписи, а также установить отсутствие искажения информации в электронном документе.
Владелец сертификата ключа подписи - физическое лицо, на имя которого удостоверяющим центром выдан сертификат ключа подписи и которое владеет соответствующим закрытым ключом электронной цифровой подписи, позволяющим с помощью средств электронной цифровой подписи создавать свою электронную цифровую подпись в электронных документах (подписывать электронные документы).
Средства электронной цифровой подписи -- аппаратные и (или) программные средства, обеспечивающие реализацию хотя бы одной из следующих функций -- создание электронной цифровой подписи в электронном документе с использованием закрытого ключа электронной цифровой подписи, подтверждение с использованием открытого ключа электронной цифровой подписи подлинности электронной цифровой подписи в электронном документе, создание закрытых и открытых ключей электронных цифровых подписей.
Сертификат средств электронной цифровой подписи -- документ на бумажном носителе, выданный в соответствии с правилами системы сертификации для подтверждения соответствия средств электронной цифровой подписи установленным требованиям.
Закрытый ключ электронной цифровой подписи -- уникальная последовательность символов, известная владельцу сертификата ключа подписи и предназначенная для создания в электронных документах электронной цифровой подписи с использованием средств электронной цифровой подписи.
Открытый ключ электронной цифровой подписи -- уникальная последовательность символов, соответствующая закрытому ключу электронной цифровой подписи, доступная любому пользователю информационной системы и предназначенная для подтверждения с использованием средств электронной цифровой подписи подлинности электронной цифровой подписи в электронном документе.
Сертификат ключа подписи -- документ на бумажном носителе или электронный документ с электронной цифровой подписью уполномоченного лица удостоверяющего центра, которые включают в себя открытый ключ электронной цифровой подписи и которые выдаются удостоверяющим центром участнику информационной системы для подтверждения подлинности электронной цифровой подписи и идентификации владельца сертификата ключа подписи.
Пользователь сертификата ключа подписи -- физическое лицо, использующее полученные в удостоверяющем центре сведения о сертификате ключа подписи для проверки принадлежности электронной цифровой подписи владельцу сертификата ключа подписи.
Информационная система общего пользования - информационная система, которая открыта для использования всеми физическими и юридическими лицами и в услугах которой этим лицам не может быть отказано.
Корпоративная информационная система -- информационная система, участниками которой может быть ограниченный круг лиц, определенный ее владельцем или соглашением участников этой информационной системы.
Удостоверяющий центр -- юридическое лицо, выполняющее функции по:
· изготовлению сертификатов ключей подписей,
· созданию ключей электронных цифровых подписей по обращению участников информационной системы с гарантией сохранения в тайне закрытого ключа электронной цифровой подписи,
· приостановлению и возобновлению действие сертификатов ключей подписей, а также аннулированию их,
· ведению реестра сертификатов ключей подписей, обеспечению его актуальности и возможности свободного доступа к нему участников информационных систем,
· проверке уникальности открытых ключей электронных цифровых подписей в реестре сертификатов ключей подписей и архиве удостоверяющего центра,
· выдаче сертификатов ключей подписей в форме документов на бумажных носителях и (или) в форме электронных документов с информацией об их действии,
· осуществлению по обращениям пользователей сертификатов ключей подписей подтверждения подлинности электронной цифровой подписи в электронном документе в отношении выданных им сертификатов ключей подписей,
· предоставлению участникам информационных систем иных связанных с использованием электронных цифровых подписей услуг.
При этом удостоверяющий центр должен обладать необходимыми материальными и финансовыми возможностями, позволяющими ему нести гражданскую ответственность перед пользователями сертификатов ключей подписей за убытки, которые могут быть понесены ими вследствие недостоверности сведений, содержащихся в сертификатах ключей подписей.
С 01 июля 2013 года в законную силу вступит Федеральный Закон № 63-ФЗ "Об Электронной Подписи", устанавливающий следующие понятия.
Электронная подпись - информация в электронной форме, которая присоединена к другой информации в электронной форме (подписываемой информации) или иным образом связана с такой информацией и которая используется для определения лица, подписывающего информацию;
Сертификат ключа проверки электронной подписи - электронный документ или документ на бумажном носителе, выданные удостоверяющим центром либо доверенным лицом удостоверяющего центра и подтверждающие принадлежность ключа проверки электронной подписи владельцу сертификата ключа проверки электронной подписи;
Квалифицированный сертификат ключа проверки электронной подписи (далее - квалифицированный сертификат) - сертификат ключа проверки электронной подписи, выданный аккредитованным удостоверяющим центром или доверенным лицом аккредитованного удостоверяющего центра либо федеральным органом исполнительной власти, уполномоченным в сфере использования электронной подписи (далее - уполномоченный федеральный орган);
Владелец сертификата ключа проверки электронной подписи - лицо, которому в установленном настоящим Федеральным законом порядке выдан сертификат ключа проверки электронной подписи;
Ключ электронной подписи - уникальная последовательность символов, предназначенная для создания электронной подписи;
Ключ проверки электронной подписи - уникальная последовательность символов, однозначно связанная с ключом электронной подписи и предназначенная для проверки подлинности электронной подписи (далее - проверка электронной подписи);
Удостоверяющий центр - юридическое лицо или индивидуальный предприниматель, осуществляющие функции по созданию и выдаче сертификатов ключей проверки электронных подписей, а также иные функции, предусмотренные настоящим Федеральным законом;
Аккредитация удостоверяющего центра - признание уполномоченным федеральным органом соответствия удостоверяющего центра требованиям настоящего Федерального закона;
Средства электронной подписи - шифровальные (криптографические) средства, используемые для реализации хотя бы одной из следующих функций - создание электронной подписи, проверка электронной подписи, создание ключа электронной подписи и ключа проверки электронной подписи;
Средства удостоверяющего центра - программные и (или) аппаратные средства, используемые для реализации функций удостоверяющего центра;
Участники электронного взаимодействия - осуществляющие обмен информацией в электронной форме государственные органы, органы местного самоуправления, организации, а также граждане;
Корпоративная информационная система - информационная система, участники электронного взаимодействия в которой составляют определенный круг лиц;
Информационная система общего пользования - информационная система, участники электронного взаимодействия в которой составляют неопределенный круг лиц и в использовании которой этим лицам не может быть отказано.
Из Федерального закона от 10.01.2002 N 1-ФЗ «Об электронной цифровой подписи»:
Согласно статье 8
«…удостоверяющим центром, выдающим сертификаты ключей подписей для использования в информационных системах общего пользования, должно быть юридическое лицо, выполняющее функции, предусмотренные настоящим Федеральным законом. При этом удостоверяющий центр должен обладать необходимыми материальными и финансовыми возможностями, позволяющими ему нести гражданскую ответственность перед пользователями сертификатов ключей подписей за убытки, которые могут быть понесены ими вследствие недостоверности сведений, содержащихся в сертификатах ключей подписей …»
Согласно п. 1 статьи 9
«…Удостоверяющий центр:
· изготавливает сертификаты ключей подписей;
· создает ключи электронных цифровых подписей по обращению участников информационной системы с гарантией сохранения в тайне закрытого ключа электронной цифровой подписи;
· приостанавливает и возобновляет действие сертификатов ключей подписей, а также аннулирует их;
· ведет реестр сертификатов ключей подписей, обеспечивает его актуальность и возможность свободного доступа к нему участников информационных систем;
· проверяет уникальность открытых ключей электронных цифровых подписей в реестре сертификатов ключей подписей и архиве удостоверяющего центра;
· выдает сертификаты ключей подписей в форме документов на бумажных носителях и (или) в форме электронных документов с информацией об их действии;
· осуществляет по обращениям пользователей сертификатов ключей подписей подтверждение подлинности электронной цифровой подписи в электронном документе в отношении выданных им сертификатов ключей подписей;
· может предоставлять участникам информационных систем иные связанные с использованием электронных цифровых подписей услуги …»
Из Федерального закона от 10.01.2002 N 63-ФЗ «Об электронной подписи»:
Из статьи 2
7) удостоверяющий центр - юридическое лицо или индивидуальный предприниматель, осуществляющие функции по созданию и выдаче сертификатов ключей проверки электронных подписей, а также иные функции, предусмотренные настоящим Федеральным законом;
Статья 13. Удостоверяющий центр
1. Удостоверяющий центр:
1) создает сертификаты ключей проверки электронных подписей и выдает такие сертификаты лицам, обратившимся за их получением (заявителям);
2) устанавливает сроки действия сертификатов ключей проверки электронных подписей;
3) аннулирует выданные этим удостоверяющим центром сертификаты ключей проверки электронных подписей;
4) выдает по обращению заявителя средства электронной подписи, содержащие ключ электронной подписи и ключ проверки электронной подписи (в том числе созданные удостоверяющим центром) или обеспечивающие возможность создания ключа электронной подписи и ключа проверки электронной подписи заявителем;
5) ведет реестр выданных и аннулированных этим удостоверяющим центром сертификатов ключей проверки электронных подписей (далее - реестр сертификатов), в том числе включающий в себя информацию, содержащуюся в выданных этим удостоверяющим центром сертификатах ключей проверки электронных подписей, и информацию о датах прекращения действия или аннулирования сертификатов ключей проверки электронных подписей и об основаниях таких прекращения или аннулирования;
6) устанавливает порядок ведения реестра сертификатов, не являющихся квалифицированными, и порядок доступа к нему, а также обеспечивает доступ лиц к информации, содержащейся в реестре сертификатов, в том числе с использованием информационно-телекоммуникационной сети "Интернет";
7) создает по обращениям заявителей ключи электронных подписей и ключи проверки электронных подписей;
8) проверяет уникальность ключей проверки электронных подписей в реестре сертификатов;
9) осуществляет по обращениям участников электронного взаимодействия проверку электронных подписей;
10) осуществляет иную связанную с использованием электронной подписи деятельность.
2. Удостоверяющий центр обязан:
1) информировать в письменной форме заявителей об условиях и о порядке использования электронных подписей и средств электронной подписи, о рисках, связанных с использованием электронных подписей, и о мерах, необходимых для обеспечения безопасности электронных подписей и их проверки;
2) обеспечивать актуальность информации, содержащейся в реестре сертификатов, и ее защиту от неправомерного доступа, уничтожения, модификации, блокирования, иных неправомерных действий;
3) предоставлять безвозмездно любому лицу по его обращению в соответствии с установленным порядком доступа к реестру сертификатов информацию, содержащуюся в реестре сертификатов, в том числе информацию об аннулировании сертификата ключа проверки электронной подписи;
4) обеспечивать конфиденциальность созданных удостоверяющим центром ключей электронных подписей.
3. Удостоверяющий центр в соответствии с законодательством Российской Федерации несет ответственность за вред, причиненный третьим лицам в результате:
1) неисполнения или ненадлежащего исполнения обязательств, вытекающих из договора оказания услуг удостоверяющим центром;
2) неисполнения или ненадлежащего исполнения обязанностей, предусмотренных настоящим Федеральным законом.
4. Удостоверяющий центр вправе наделить третьих лиц (далее - доверенные лица) полномочиями по созданию и выдаче сертификатов ключей проверки электронных подписей от имени удостоверяющего центра, подписываемых электронной подписью, основанной на сертификате ключа проверки электронной подписи, выданном доверенному лицу этим удостоверяющим центром.
5. Удостоверяющий центр, указанный в части 4 настоящей статьи, по отношению к доверенным лицам является головным удостоверяющим центром и выполняет следующие функции:
1) осуществляет проверку электронных подписей, ключи проверки которых указаны в выданных доверенными лицами сертификатах ключей проверки электронных подписей;
2) обеспечивает электронное взаимодействие доверенных лиц между собой, а также доверенных лиц с удостоверяющим центром.
6. Информация, внесенная в реестр сертификатов, подлежит хранению в течение всего срока деятельности удостоверяющего центра, если более короткий срок не установлен нормативными правовыми актами. В случае прекращения деятельности удостоверяющего центра без перехода его функций другим лицам он должен уведомить об этом в письменной форме владельцев сертификатов ключей проверки электронных подписей, которые выданы этим удостоверяющим центром и срок действия которых не истек, не менее чем за один месяц до даты прекращения деятельности этого удостоверяющего центра. В указанном случае после завершения деятельности удостоверяющего центра информация, внесенная в реестр сертификатов, должна быть уничтожена. В случае прекращения деятельности удостоверяющего центра с переходом его функций другим лицам он должен уведомить об этом в письменной форме владельцев сертификатов ключей проверки электронных подписей, которые выданы этим удостоверяющим центром и срок действия которых не истек, не менее чем за один месяц до даты передачи своих функций. В указанном случае после завершения деятельности удостоверяющего центра информация, внесенная в реестр сертификатов, должна быть передана лицу, к которому перешли функции удостоверяющего центра, прекратившего свою деятельность.
Подобные документы
Общая схема цифровой подписи. Особенности криптографической системы с открытым ключом, этапы шифровки. Основные функции электронной цифровой подписи, ее преимущества и недостатки. Управление ключами от ЭЦП. Использование ЭЦП в России и других странах.
курсовая работа [288,2 K], добавлен 27.02.2011Формирование ключей для шифрования сообщения. Описание алгоритма RSA: шифрование и дешифрование. Понятие и история изобретения криптосистемы с открытым ключом. Свойства односторонней функции и сложность раскрытия шифра. Сущность цифровой подписи.
лабораторная работа [326,0 K], добавлен 04.11.2013Состав, параметры технических средств. Выработка общего ключа для шифрования/расшифровки сообщения. Структура подключения ПЛИС с персональным компьютером по Ethernet. Модули формирования электронно-цифровой подписи. Архитектура стандарта Gigabit Ethernet.
дипломная работа [3,6 M], добавлен 13.09.2017Симметричные и асиметричные методы шифрования. Шифрование с помощью датчика псевдослучайных чисел. Алгоритм шифрования DES. Российский стандарт цифровой подписи. Описание шифрования исходного сообщения асимметричным методом с открытым ключом RSA.
курсовая работа [101,1 K], добавлен 09.03.2009Характеристика ГОСТ Р 34.10-2001 "Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи". Его обозначения, отличия от старого стандарта. Алгоритм формирования цифровой подписи.
курсовая работа [253,5 K], добавлен 16.08.2012Рассмотрение основных понятий криптографии: конфиденциальности, целостности, аутентификации и цифровой подписи. Описание криптографических средств защиты (криптосистемы, принципы работы криптосистемы, распространение ключей, алгоритмы шифрования).
дипломная работа [802,2 K], добавлен 08.06.2013Разъяснения по использованию систем цифровой подписи в связи с ведением закона "Об электронной цифровой подписи". Пример практического применения механизма электронно-цифровой подписи: программа контроля подлинности документов, хранимых в базе данных.
контрольная работа [180,1 K], добавлен 29.11.2009Основные алгоритмы реализации электронной цифровой подписи. Понятие секретного и открытого ключа. Программные модули, сроки действия и порядок функционирования электронной подписи. Технология работы с информационной системой "ЭЦП", перспективы развития.
курсовая работа [1,1 M], добавлен 07.12.2010Изучение истории развития электронной цифровой подписи. Исследование её назначения, принципов работы, основных функций. Виды электронных подписей в Российской Федерации. Асимметричные алгоритмы подписей. Использование хеш-функций. Управление ключами.
реферат [33,5 K], добавлен 04.06.2014Традиционные симметричные криптосистемы. Основные понятия и определения. Методы шифрования. Метод перестановок на основе маршрутов Гамильтона. Асимметричная криптосистема RSA. Расширенный алгоритм Евклида. Алгоритмы электронной цифровой подписи Гамаля.
курсовая работа [235,6 K], добавлен 06.01.2017