Протоколы контроля целостности использование эцп реферат

Обновлено: 05.07.2024

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

Содержание работы

Введение……………………………………………………………………. 3
1. Общая схема ЭЦП…………………………………………………………. ……4
2. Защищенность………………………………………………………………..……6
3. Подделка подписей……………………………………………………………..…8
3.1. Модели атак и их возможные результаты…………………………….…8
3.2. Подделка документа (Коллизия первого рода)……………………….…9
3.3. Получение двух документов с одинаковой подписью (коллизия второго рода)……………………………………………………………..10
3.4. Социальные атаки…………………………………………………..……10
4. Использование ЭЦП в России……………………………………………..……11
5. Использование ЭЦП в других странах…………………………………………12
Заключение………………………………………………………………………13
Библиографический список . 14

Файлы: 1 файл

МОЙ РЕФЕРАТ.doc

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

ОРЕНБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ МЕНЕДЖМЕНТА

Кафедра информационной безопасности

На тему: Электронно-цифровая подпись

очной формы обучения

второго курса 21 группы С.А. Гусейнова

Руководитель работы Е.В. Заворитько

  1. Общая схема ЭЦП…………………………………………………………. …… 4
  2. Защищенность……………………………………………… ………………..……6
  3. Подделка подписей………………………………………………………… …..…8
    1. Модели атак и их возможные результаты…………………………….…8
    2. Подделка документа (Коллизия первого рода)……………………….…9
    3. Получение двух документов с одинаковой подписью (коллизия второго рода)…………………………………………………………….. 10
    4. Социальные атаки…………………………………………………..……10

    Библиографический список . . . 14

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

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

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

    - Гарантия достоверности и подлинности электронного документа

    - Дешевизна доставки, учета и оформления документов

    - Короткие сроки обмена информационными данными

    - Уменьшение вероятных потерь благодаря повышенной безопасности передачи информации

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

    1.Общая Схема ЭЦП

    Схема электронной подписи обычно включает в себя:

    1) алгоритм генерации ключевых пар пользователя;

    2) функцию вычисления подписи;

    3) функцию проверки подписи.

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

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

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

    Алгоритмы ЭЦП делятся на два больших класса: обычные цифровые подписи и цифровые подписи с восстановлением документа. Обычные цифровые подписи необходимо пристыковывать к подписываемому документу. К этому классу относятся, например, алгоритмы, основанные на эллиптических кривых (ECDSA, ГОСТ Р 34.10-2001, ДСТУ 4145-2002). Цифровые подписи с восстановлением документа содержат в себе подписываемый документ: в процессе проверки подписи автоматически вычисляется и тело документа. К этому классу относится один из самых популярных алгоритмов — RSA.

    Цифровая подпись обеспечивает:

    2)Защиту от изменений документа. При любом случайном или преднамеренном изменении документа (или подписи) изменится хэш, следовательно, подпись станет недействительной.

    3) Невозможность отказа от авторства. Так как создать корректную подпись можно лишь, зная закрытый ключ, а он известен только владельцу, то владелец не может отказаться от своей подписи под документом.

    4)Предприятиям и коммерческим организациям сдачу финансовой отчетности в государственные учреждения в электронном виде;

    5)Организацию юридически значимого электронного документооборота;

    Возможны следующие угрозы цифровой подписи:

    1) Злоумышленник может попытаться подделать подпись для выбранного им документа.

    2)Злоумышленник может попытаться подобрать документ к данной подписи, чтобы подпись к нему подходила. Однако в подавляющем большинстве случаев такой документ может быть только один. Причина в следующем:

    Документ представляет собой осмысленный текст; Текст документа оформлен по установленной форме.

    3)Документы редко оформляют в виде Plain Text — файла, чаще всего в формате DOC или HTML.

    Если у фальшивого набора байт и произойдет коллизия с хешем исходного документа, то должны выполниться 3 следующих условия:

    1)Случайный набор байт должен подойти под сложно структурированный формат файла.

    2) То, что текстовый редактор прочитает в случайном наборе байт, должно образовывать текст, оформленный по установленной форме.

    3) Текст должен быть осмысленным, грамотным и соответствующий теме документа.

    Вполне понятно, что вероятность такого происшествия ничтожно мала. Можно считать, что на практике такого случиться не может даже с ненадежными хеш-функциями, так как документы обычно большого объема — килобайты.

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

    Тем не менее, возможны ещё такие угрозы системам цифровой подписи:

    1) Злоумышленник, укравший закрытый ключ, может подписать любой документ от имени владельца ключа.

    2) Злоумышленник может обманом заставить владельца подписать какой-либо документ, например, используя протокол слепой подписи.

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

    3. Подделка подписей.

    3.1 Модели атак и их возможные результаты.

    В своей работе Гольдвассер, Микали и Ривест описывают следующие модели атак, которые актуальны и в настоящее время:

    Атака с использованием открытого ключа. Криптоаналитик обладает только открытым ключом.

    Также в работе описана классификация возможных результатов атак:

    Полный взлом цифровой подписи. Получение закрытого ключа, что означает полный взлом алгоритма.

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

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

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

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

    3.2 Подделка документа (Коллизия первого рода)

    Злоумышленник может попытаться подобрать документ к данной подписи, чтобы подпись к нему подходила. Однако в подавляющем большинстве случаев такой документ может быть только один. Причина в следующем:

    Документ представляет из себя осмысленный текст.

    Текст документа оформлен по установленной форме.

    Документы редко оформляют в виде Plain Text — файла, чаще всего в формате DOC или HTML.

    Если у фальшивого набора байт и произойдет коллизия с хешем исходного документа, то должны выполниться 3 следующих условия:

    Случайный набор байт должен подойти под сложно структурированный формат файла.

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

    Текст должен быть осмысленным, грамотным и соответствующим теме документа.

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

    Вероятность подобного происшествия также ничтожно мала. Можно считать, что на практике такого случиться не может даже с ненадёжными хеш-функциями, так как документы обычно большого объёма — килобайты.

    3.3 Получение двух документов с одинаковой подписью (коллизия второго рода)

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

    Лекция 12. Контроль целостности данных. Хеш-функции. Имитовставка. ЭЦП. Аутентификация. Протоколы AAA.

    Контроль целостности данных.

    Целостности данных - при котором отсутствует любое ее изменение либо изменение осуществляется только преднамеренно субъектами, имеющими на него право.

    Методы контроля целостности данных:

    Полная копия данных.

    Создаются полные копии данных и потом сверяются.

    • простота реализации
    • полный контроль данных (до бита)
    • большой объем
    • копии можно подменить
    • копиями можно воспользоваться (например: если данные - пароль)


    Рис. Контроль целостности с помощью полной копии данных

    Контрольная сумма.

    Контрольная сумма - значение, рассчитанное по входным данным с помощью определённого алгоритма.

    • высокая скорость вычисления
    • малый размер
    • стандартный размер
    • можно подменить
    • для одного значения существует множество исходных данных
    • можно подобрать исходные данные к значению за приемлемое время (например: получить пароль)


    Рис. Контроль целостности с помощью контрольной суммы

    Примеры контрольных сумм: CRC8, CRC16, CRC32

    исходный текст: Контроль целостности данных

    crc32 (длина 32 бита)

    1. контроль целостности файлов
    2. контроль передаваемых данных по каналам связи
    3. контроль целостности при считывании данных (например: c HDD)

    Хеш (хэш, криптографический хеш) - значение, рассчитанное по входным данным с помощью криптографического алгоритма.

    • малый размер
    • стандартный размер
    • нельзя подобрать исходные данные к значению за приемлемое время (например: получить пароль)
    • низкая скорость вычисления (сопоставима с шифрованием)
    • можно подменить
    • для одного значения существует множество исходных данных


    Рис. Основная задача хеш функций

    Вычисляют хеш шифрованием данных блочным алгоритмом в режимах CBC, но со стандартным (известным) ключом. Хешем является последний шифрованный блок.

    ГОСТ Р 34.11-94

    Рис. Вычисление хеш по ГОСТ Р 34.11-94 (сравните с CBC)

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

    исходный текст: Контроль целостности данных

    md2 (длина 128 бит)

    md4 (длина 128 бит)

    md5 (длина 128 бит)

    sha1 (длина 160 бит)

    sha224 (длина 224 бит)

    sha256 (длина 256 бит)

    sha384 (длина 384 бит)

    sha512 (длина 512 бит)

    ГОСТ Р 34.11-94 (длина 256 бит)

    1. контроль целостности файлов
    2. контроль передаваемых данных по каналам связи
    3. контроль целостности при считывании данных (например: c HDD)
    4. хеши паролей
    5. аутентификация (CRAM-MD5, DIGEST-MD5 и т.д.)

    Имитовставка - значение, рассчитанное по входным данным с помощью криптографического алгоритма с использованием секретного элемента (ключа), известного только отправителю и получателю.

    • малый размер
    • стандартный размер
    • нельзя подобрать исходные данные к значению за приемлемое время (например: получить пароль)
    • нельзя подменить без секретного элемента (ключа)
    • низкая скорость вычисления (сопоставима с шифрованием)
    • для одного значения существует множество исходных данных
    • секретный ключ известен как минимум двоим

    Вычисляют имитовставку шифрованием данных блочным алгоритмом в режимах CBC. Имитовставкой является последний шифрованный блок.


    Рис. Вычисление имитовставки

    Имитовставка по ГОСТ 28147-89

    Длина имитовставки от 1 до 32 бит.

    Открытый текст TO разбивается на блоки длиной 64 бита. Последний блок в случае необходимости дополняется нулями.

    T_O=T_O^<(1)></p>
<p>\,T_O^\,\ldots\,T_O^

    I=E

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


    Рис. Проблема имитовставки

    Отсюда следует, что имитовставка на основе симметричного шифра не может заменять собой электронную подпись!

    1. контроль целостности файлов
    2. контроль передаваемых данных по каналам связи
    3. аутентификации источника данных (не во всех случаях)

    Обычные хэш-алгоритмы использовать для вычисления имитовставки нельзя (MD5 и т.д.) т.к. отсутствует секретный ключ. Поэтому создан HMAC .

    HMAC (H ash-based Message Authentication Code ) - механизм включения секретного ключа в существующие хэш-алгоритмы.

    Электронная цифровая подпись - зашифрованное значение вычисленного хеша по входным данным.

    • малый размер
    • стандартный размер
    • нельзя подобрать исходные данные к значению за приемлемое время (например: получить пароль)
    • нельзя подменить без секретного элемента (ключа)
    • секретный ключ известен одному
    • низкая скорость вычисления (сопоставима с шифрованием)
    • для одного значения существует множество исходных данных


    Рис. Создание и проверка ЭЦП

    1. контроль целостности файлов
    2. контроль передаваемых данных по каналам связи
    3. аутентификации источника данных (кто создал подпись)

    Аутентификация

    Аутентификация (Authentication) — проверка принадлежности субъекту доступа по предъявленному им идентификатору (пароль, ключ и т.д.); подтверждение подлинности.

    • парольные (PIN коде и т.д.) - уникальная последовательность символов, которую пользователь должен знать.
    • "ключе" - в случае электронных систем это электронный ключ, который хранится на носителе (смарт-карты, электронные таблетки iButton, USB-токены и т. д.)
    • биометрические (отпечаток пальца, рисунок радужной оболочки глаза, форма лица, параметры голоса и т. д.)
    • криптографические


    Рис. Методы аутентификации

    Аутентификация по многоразовым паролям

    Используется один пароль многократно.

    Хотя аутентификация может использоваться не только к удаленным системам, методы аутентификации будем рассматривать сразу на примерах к удаленным системам

    Протоколы аутентификации

    PAP (Password Authentication Protocol)

    PAP - аутентификация по имени и паролю пользователя. Протокол PAP ненадежен при использовании в сетях, т.к. пароли можно перехватить.

    1. клиент посылает имя и пароль серверу
    2. сервер сверяет присланный пароль с паролем в своем хранилище


    Рис. Протокол PAP

    Недостатки и пути решения:

    1. подбор паролей
    2. просмотр паролей в системе
    3. перехват паролей при передачи

    человеческий фактор – человек не может запомнить сложные пароли (записывает), диктует открытым способом (по телефону) и т.д.

    Решение проблемы "подбора паролей" :

    1. использовать "сильные" пароли
    2. блокировка при неправильных попытках (например: 5 раз) ввода пароля


    Рис. Плохие пароли

    Почему эти пароли плохие:

    "2" - один символ, легко перебрать.

    "123456" - один из популярных паролей (еще примеры - 123; 111; qwerty; qazwsx; qazwsxedc; password; "ваш логин"; "номер телефона"; "дата рождения" и т.д.).

    "пароль" - словарное слово, после перебора популярных паролей, перебирают слова из словаря.

    "Gjhs6129dgGF_9eK_sj2vc9d" - пароль очень сложный, его не запомнят, а запишут и приклеят к монитору, пароль должен быть только в голове (или в сейфе).

    Наиболее хорошим вариантом являются пароли построенные на фразах:

    1. хорошо запоминаются
    2. достаточно длинные
    3. словарные атаки не проходят


    Рис. Хорошие пароли

    Решение проблемы "просмотра паролей в системе" :

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


    Рис. Пароли не хранятся в системе, а хранятся их хэши

    Пароли в системе не хранятся, при этом пользователь проходит аутентификацию по паролю.

    В большинстве современных систем именно так и сделано. Не только в ОС, но и в СУБД, форумах, сайтах и т.д.

    Решение проблемы "перехвата паролей при передачи":

    1. шифровать передаваемые пароли
    2. использовать алгоритмы без передачи паролей (рассмотрены ниже ( CHAP ))


    Рис. Шифрование передаваемых паролей

    Протоколы аутенти фикации вызов-ответ

    CHAP (Challenge Handshake Authentication Protocol)

    CHAP - аутентификация без передачи пароля.

    1. пользователь посылает серверу запрос на доступ (login)
    2. сервер отправляет клиенту случайное число
    3. на основе этого случайного числа и пароля пользователя клиент вычисляет хеш
    4. клиент пересылает хеш серверу
    5. сервер сверяет присланный хеш со своим вычисленным
    6. в случайные промежутки времени сервер отправляет новый и повторяет шаги с 2 по 5.


    Рис. Протокол CHAP

    Основной недостаток - необходимо хранить пароль на сервере.

    CRAM - ( challenge-response authentication mechanism)

    Основан на вычислении имитовставки по алгоритму HMAC, роль симметричного ключа выполняет пароль.

    В зависимости от алгоритма хэширования - CRAM-MD5, CRAM-MD4, CRAM-SHA1 и т.д.

    1. пользователь посылает серверу запрос на доступ (login)
    2. сервер вычисляет имитовставку с секретным ключом-паролем пользователя для строки (случайное число + временная метка + доменное имя сервера) (например: )
    3. сервер отправляет клиенту имитовставку
    4. клиент вычисляет имитовставку из строки - (идентификатор клиента (login) + пробел + имитовставка сервера)
    5. отправляет серверу
    6. сервер сверяет полученное с ожидаемым



    Рис. Протокол CRAM

    В CRAM вместо пароля на сервере может хранится хэш.

    Digest access authentication (DIGEST-MD5)

    Схема аналогичная CHAP.

    1. запрос клиента (без аутентификации)
    2. ответ сервера (Unauthorized), содержащий
      "realm" - строка (например: realm=testrealm@host.com)
      "nonce" - случайное число сервера (например: nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093")
    3. клиент вычисляет хэш HA1 = MD5 (username: realm: password)
    4. клиент вычисляет хэш HA2 = MD5 (URI)
    5. клиент вычисляет хэш для ответа Response = MD5(HA1:nonce:nc:cnonce:qop:HA2)
      "nc" - счётчика запросов
      "cnonce" - клиентское случайное значение
      "qop" - код качества защиты
    6. клиент посылает ответ
    7. сервер сравнивает значение полученное и вычисленное

    HA1 = MD5( "Mufasa:testrealm@host.com:Circle Of Life" )
    = 939e7578ed9e3c518a452acee763bce9

    HA2 = MD5( "GET:/dir/index.html" ) = 39aff3a2bab6126f332b942af96d3366

    Response = MD5( "939e7578ed9e3c518a452acee763bce9:\
    dcd98b7102dd2f0e8b11d0f600bfb0c093:\
    00000001:0a4f113b:auth:\
    39aff3a2bab6126f332b942af96d3366" )

    Взаимная аутентификация

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


    Рис. Протокол взаимной аутентификации

    Аутентификация по одноразовым паролям (One-time password)

    Различные подходы к созданию одноразовых паролей:

    Одноразовые пароли клиент может получать:

    1. на бумаге
    2. в токене
    3. пересылкой (по СМС)


    Рис. пример банковской карты

    Многофакторная аутентификация

    Иногда используются сразу несколько методов аутентификации.

    Например: электронный ключ и логин.

    При использовании SIM-карт в мобильных телефонах. Субъект вставляет свою SIM-карту в телефон и при включении вводит свой PIN-код (пароль).

    В случае банковской карты. Субъект вставляет свою банковскую карту в банкомат и вводит свой PIN-код (пароль).

    Протоколы AAA

    AAA ( Authentication, Authorization, Accounting ) — используется для описания процесса предоставления доступа и контроля за ним.

    • Authentication - аутентификация.
    • Authorization - авторизация (проверка уровня доступа).
    • Accounting - учёт, контроль (слежение за потреблением ресурсов пользователем, например, для тарификации (биллинга)).


    Рис. Для чего нужен протокол AAA

    Представьте организацию (например университет) с множеством систем (серверы, АТС, WI-FI, здания, помещения и т.д.). Необходимо регистрировать в каждой системе одного и того-же пользователя. Чтобы этого не делать, ставится сервер AAA и все пользователи регистрируются только в нем. Все системы организации обращаются к серверу AAA.

    1. пользователь посылает запрос на аутентификацию системе (пароль, ключ и т.д)
    2. система пересылает его серверу AAA (т.к. не может провести аутентификацию)
    3. сервер AAA посылает ответ системе
    4. пользователь получает или не получает доступ

    Основные протоколы AAA:

    • RADIUS, DIAMETER
    • TACACS, TACACS+ (компании Cisco)

    Наибольшее распространение получил RADIUS ему на смену создан DIAMETER. Закрытые протоколы не выдерживают конкуренции.

    RADIUS ( Remote Authentication in Dial-In User Service )

    Протокол опубликован в 1997, был опубликован как RFC 2058 и RFC 2059.

    Последние версии (2012) RFC 2865 (rus PDF) и RFC 2866 (rus PDF).

    Основные особенности:

    • используется транспортный протокол UDP протокол
    • поддерживает аутентификацию PAP, CHAP, EAP.
    • предоставляет более 50 пар атрибут/значение с возможностью создавать специфичные для производителя пары
    • учетные данные могут хранится локально или во внешних источниках (базы SQL, Kerberos, LDAP, Active Directory)


    Рис. Запрос клиента и варианты ответа сервера RADIUS

    Пользователь посылает свои данные для аутентификации и авторизации серверу (FTP,POP,WWW,PROXY и т.д.), такие серверы называются Network Access Server (NAS).

    Сервер NAS и сервер RADIUS используют общий секретный ключ (для аутентификации друг друга, и хэширования открытых паролей пользователей).

    NAS (клиент) формирует запрос серверу RADIUS Access Request, сервер RADIUS может ответить:

    Ac­cess-Chal­lenge - запрос дополнительной информации от пользователя, например, второй пароль, пин-код, номер карты и т.п.

    Access Request - может содержать:

    Ответ Ac­cess-Chal­lenge может использоваться для посылки случайного числа пользователю, для дальнейшего хеширования его с паролем (см. CHAP).

    При выполнении всех условий в отклик Access-Accept включается список всех конфигурационных параметров для данного пользователя.

    К таким параметрам относятся тип сервиса (например, SLIP, PPP, Login User) и все требуемые для предоставления этого сервиса значения.

    Для протоколов SLIP и PPP могут включаться такие параметры, как

    Взаимодействие с PAP и CHAP

    PAP

    CHAP

    NAS передает запрос Access-Request серверу RADIUS со значением CHAP username для атрибута User-Name и значениями CHAP ID и CHAP-отклик в качестве CHAP-Password.

    сервер RADIUS находит пароль для пользователя "User-Name", хэширует (CHAP ID+пароль+CHAP challenge) и сравнивает результат с атрибутом CHAP-Password.

    DIAMETER

    Название DIAMETER - игра слов, отражающая превосходство нового протокола над предшественником RADIUS (диаметр - удвоенный радиус).

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

    САНКТ – ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

    Факультет технической кибернетики

    Кафедра информационных и управляющих систем

    Студент Барташевич Е.Е.

    Преподаватель Чистяков И.В.

    1. Ассиметричные алгоритмы шифрования 3

    1.1. Стандарт ассимметричного шифрования RSA 4

    1.1.1. Генерация ключей 4

    1.1.2. Шифрование/расшифрование 5

    1.2. Алгоритм ЭльГамаля 6

    1.2.1. Общие сведения 6

    1.2.3. Подтверждение подлинности отправителя 6

    1.3. Алгоритм Шамира 7

    1.3.1. Общее описание 7

    1.3.3. Пример использования 8

    1.4. Кpиптосистемы на основе эллиптических уpавнений 8

    2. Электронно-цифровая подпись 9

    2.1. Общие положения 9

    3. Алгоритм DSA 10

    3.1. Генерация ЭЦП 11

    3.2. Проверка ЭЦП 12

    4. Стандарт на процедуры ЭЦП ГОСТ Р 34.10-94 12

    4.1. Генерация ЭЦП 13

    4.2. Проверка ЭЦП 13

    5. Цифровые подписи, основанные на симметричных криптосистемах 13

    6. Атаки на ЭЦП 22

    7. Некоторые средства работы с ЭЦП 23

    7.2. GNU Privacy Guard (GnuPG) 24

    8. Литература и ссылки 26

    Ассиметричные алгоритмы шифрования

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

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

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

    Стандарт ассимметричного шифрования RSA

    Генерация ключей

    Первым этапом любого асимметричного алгоритма является создание пары ключей : открытого и закрытого и распространение открытого ключа "по всему миру". Для алгоритма RSA этап создания ключей состоит из следующих операций :

    Выбираются два простых (!) числа p и q

    Вычисляется их произведение n(=p*q)

    Возведем обе ее части в степень (-y) : (x (- y )( p -1)( q -1) )mod n = 1 (- y ) = 1.

    Теперь умножим обе ее части на x : (x (- y )( p -1)( q -1)+1 )mod n = 1*x = x.

    Алгоритм ЭльГамаля

    Общие сведения

    Криптографы со своей стороны вели поиски более эффективных систем открытого шифрования и в 1985 году Т.Эль-Гамаль (США) предложил следующую схему на основе возведения в степень по модулю большого простого числа P.
    Задается большое простое число P и целое число A, 1 Kb mоd(P)

    C = M * B Ka mоd(P)

    D = ( A Ka ) -Kb mоd(P)

    Подтверждение подлинности отправителя

    абоненты знают числа A и P;

    отправитель генерирует случайное число и хранит его в секрете:

    решает относительно S

    M = Ka * R + L * S mоd(P)

    получатель проверяет правильность подписи

    A M = ( B R ) * ( R S ) mоd(P)

    Алгоритм Шамира

    Общее описание

    получатель вычисляет и передаёт отправителю число B, определяемое последовательностью:

    отправитель аннулирует свой шифр и отправляет полученную последовательность получателю

    E=D (X-1) mоd(P) E = D Fa mоd(P)

    Пример использования

    Эта процедура ОШ может быть использована, например, для таких "экзотических" целей как игра в карты по телефону.
    Действительно, если игрок A желает "сдать" игроку B, скажем, 5 карт из 52 как при игре в покер, он зашифровывает обозначения всех карт и передает их игроку B:

    Игрок B выбирает из них 5, зашифровывает своим ключом 22 и возвращает игроку А:

    Игрок A снимает с этих 5 карт свой шифр и выдает их игроку B.
    Игрок B расшифровывает полученные карты:

    Ma = Ea Fb mоd (P)

    При этом оставшаяся часть колоды C(6). C(52) теперь находится у игрока B, но он не может раскрыть эти карты, т.к. они зашифрованы на ключе его партнера A. Остальные процедуры игры проделываются аналогично.

    Кpиптосистемы на основе эллиптических уpавнений

    Эллиптические кpивые - математический объект, котоpый может опpеделен над любым полем (конечным, действительным, pациональным или комплексным). В кpиптогpафии обычно используются конечные поля. Эллиптическая кpивая есть множество точек (x,y), удовлетвоpяющее следующему уpавнению:

    y 2 = x 3 + ax + b,

    а также бесконечно удаленная точка. Для точек на кpивой довольно легко вводится опеpация сложения, котоpая игpает ту же pоль, что и опеpация умножения в кpиптосистемах RSA и Эль-Гамаля.

    В pеальных кpиптосистемах на базе эллиптических уpавнений используется уpавнение

    y 2 = x 3 + ax + b mod p,

    Пpоблема дискpетного логаpифма на эллиптической кpивой состоит в следующем: дана точка G на эллиптической кpивой поpядка r (количество точек на кpивой) и дpугая точка Y на этой же кpивой. Нужно найти единственную точку x такую, что Y = xG, то есть Y есть х-я степень G.

    Электронно-цифровая подпись

    Общие положения

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

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

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

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

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

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

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

    Документ с подписью является неизменяемым.

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

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

    Существует несколько методов посторения ЭЦП, а именно:

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

    Использование ассиметричных алгоритмов шифрования. Фактом подписания документа является зашифрование его на секретном ключе отправителя.

    Развитием предыдущей идеи стала наиболее распространенныя схема ЭЦП – зашифрование окончательного результата обработки ЭД хеш-функцией при помощи ассиметричного алгоритма.

    Кроме перечисленных, существуют и другие методы построения схем ЭЦП

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

    Алгоритм DSA

    В 1991 г. в США был опубликован проект федерального стандарта цифровой подписи - DSS (Digital Signature Standard, [DSS91], описывающий систему цифровой подписи DSA (Digital Signature Algorithm). Одним из основных критериев при создании проекта была его патентная чистота.

    Предлагаемый алгоритм DSA, имеет, как и RSA, теоретико-числовой характер, и основан на криптографической системе Эль-Гамаля в варианте Шнорра . Его надежность основана на практической неразрешимости определенного частного случая задачи вычисления дискретного логарифма. Современные методы решения этой задачи имеют приблизительно ту же эффективность, что и методы решения задачи факторизации; в связи с этим предлагается использовать ключи длиной от 512 до 1024 бит с теми же характеристиками надежности, что и в системе RSA. Длина подписи в системе DSA меньше, чем в RSA, и составляет 320 бит.

    С момента опубликования проект получил много критических отзывов, многие из которых были учтены при его доработке. Одним из главных аргументов против DSA является то, что, в отличие от общей задачи вычисления дискретного логарифма, ее частный случай, использованный в данной схеме, мало изучен и, возможно, имеет существенно меньшую сложность вскрытия. Кроме того, стандарт не специфицирует способ получения псевдослучайных чисел, используемых при формировании цифровой подписи, и не указывает на то, что этот элемент алгоритма является одним из самых критичных по криптографической стойкости.

    Функции DSA ограничены только цифровой подписью, система принципиально не предназначена для шифрования данных. По быстродействию система DSA сравнима с RSA при формировании подписи, но существенно (в 10-40 раз) уступает ей при проверке подписи.

    Вместе с проектом DSS опубликован проект стандарта SHS (Secure Hash Standard), описывающий однонаправленную хэш-функцию SHA (Secure Hash Algorithm), рекомендованную для использования вместе с DSA. Хэш-функция SHA является модификацией алгоритма MD4, хорошо известного в криптографической литературе.

    Генерация ЭЦП

    При генерации ЭЦП используются параметры трех групп:

    Общие параметры необходимы для функционирования системы в целом. Секретный ключ используется для формирования ЭЦП, а открытый – для проверки ЭЦП. Общими параметрами системы являются простые целые числа p,q,g, удовлетворяющие следующим условиям:

    q: простой делитель числа (p-1), который удовлетворяет условию

    g: так называемый генератор,удовлетворяющий

    равенству g=h^((p-1)/q)mod p >1.

    Парараметры p,q,g публикуются для всех участников обмена ЭД с ЭЦП.

    Секретный ключ x случайно выбирается из диапазона [1,q] и держится в секрете.

    Открытый ключ вычисляется: y=g^x mod p.

    Секретный ключ x случайно выбирается из диапазона [1,q] и держится в секрете.

    Открытый ключ вычисляется: y=a^x mod p.

    Генерация ЭЦП

    Процесс генерации ЭЦП состоит из нескольких этапов:

    (хэш-функция, используемая в данном стандарте в соответствии с

    ГОСТ Р 34.10-94), если h(m)(mod p) = 0, то h(m) присваевается значение 0…02551

    2.Из диапазона [1,q] случайным образом выбирается значение k

    3. вычисляется r= (a^k mod p) , r1=r(mod p); если r1=0, следует вернуться к предыдущему этапу и выработать другое значение k.

    3. Вычисляется s= (xr1+kh(m))(mod p); если s=0, то необходимо выработать другое значение k.

    Проверка ЭЦП

    Проверка ЭЦП происходит следующим образом:

    проверяется выполнений условий 0 n T –1(K0), R2 n T –1(K1)).

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

    s=SignT(T)=(s0,s1)=, которые, очевидно, должны выполняться для подлинного блока данных T:

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

    В стандартной поставке для хранения файлов открытых ключей используются дискеты. Помимо дискет, пакет КРИПТОН®Подпись дает возможность использования всех типов ключевых носителей (смарт-карт, электронных таблеток Touch Memory и др.), поддерживаемых текущей версией интерфейса SCApi, входящего в поставку Crypton API v2.2 и выше.

    ВербаО

    Система криптографической защиты информации "Верба - О"

    Система криптографической защиты информации (СКЗИ) "Верба - О" разработана Московским отделением Пензенского научно - исследовательского электротехнического института (МО ПНИЭИ), полномочным представителем которого в регионе является наш филиал.

    СКЗИ "Верба-О" представляет собой программный комплекс, предназначенный для защиты информации при ее хранении на дисках и (или) передаче по каналам связи. СКЗИ "Верба - О" решает следующие задачи:

    шифрование/расшифрование информации на уровне файлов;

    генерацию электронной цифровой подписи (ЭЦП);

    обнаружение искажений, вносимых злоумышленниками или вирусами в защищаемую информацию.

    СКЗИ "Верба - О" может поставляться в следующих вариантах:

    в виде автономного рабочего места;

    в виде модулей, встраиваемых в ПО заказчика.

    СКЗИ "Верба - О" в различных модификациях функционирует под управлением операционных систем MS DOS v5.0 и выше, Windows95, Windows NT, UNIX (HP UX) на персональных ЭВМ, совместимых с IBM PC/ AT. Требуемый объем оперативной памяти не более 155 Кбайт. Кроме того, необходим накопитель на гибком магнитном диске (НГМД).

    Алгоритм шифрования выполнен в соответствии с требованиями ГОСТ 28147-89 "СИСТЕМЫ ОБРАБОТКИ ИНФОРМАЦИИ. ЗАЩИТА КРИПТОГРАФИЧЕСКАЯ". Цифровая подпись выполнена в соответствии с требованиями ГОСТ Р34.10-94 "ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ. КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ. ПРОЦЕДУРЫ ВЫРАБОТКИ И ПРОВЕРКИ ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСИ НА БАЗЕ АССИМЕТРИЧНОГО КРИПТОГРАФИЧЕСКОГО АЛГОРИТМА." Функция хэширования выполнена в соответствии с требованиями ГОСТ Р 34.11-94 "ИНФОРМАЦИОННАЯ ТЕХНОЛОГИЯ. КРИПТОГРАФИЧЕСКАЯ ЗАЩИТА ИНФОРМАЦИИ. ФУНКЦИЯ ХЭШИРОВАНИЯ".

    Ключи шифрования симметричные. Ключи для подписи асимметричные.

    При обработке информации на ПЭВМ СКЗИ "Верба - О" обеспечивает следующие показатели:

    вопросы

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

    Как устроена электронная подпись

    Электронная подпись состоит из двух основных частей:

    1. Открытый ключ, он же сертификат.
    2. Закрытый ключ — криптографическая часть.

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

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

    Программы для работы и алгоритмы шифрования

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

    Принцип работы электронной подписи

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

    Подписание документа производится в несколько этапов:

    1. Хеш документа шифруется с помощью закрытого ключа.
    2. Полученная подпись добавляется к документу.
    3. К документу прикрепляется сертификат проверки.

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

    Читайте также: