Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Polnaya_metodichka

.pdf
Скачиваний:
27
Добавлен:
11.05.2015
Размер:
2.79 Mб
Скачать

такой информацией. Используется для определения лица, подписавшего информацию (электронный документ).

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

Назначение и применение ЭП

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

Использование электронной подписи позволяет осуществить:

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

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

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

=Доказательное подтверждение авторства документа: Так как создать корректную подпись можно, лишь зная закрытый ключ, а он должен быть известен только владельцу, то владелец пары ключей может доказать своё авторство подписи под документом. В зависимости от деталей определения документа могут быть подписаны такие поля, как «автор», «внесённые изменения», «метка времени» и т. д.

Алгоритмы

Существует несколько схем построения цифровой подписи:

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

На основе алгоритмов асимметричного шифрования. На данный момент такие схемы ЭП наиболее распространены и находят широкое применение.

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

Использование хеш-функций

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

Вычислительная сложность. Обычно хеш цифрового документа делается во много раз меньшего объёма, чем объём исходного документа, и алгоритмы вычисления хеша являются

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

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

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

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

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

Симметричная схема

Симметричные схемы ЭП менее распространены чем асимметричные, так как после появления концепции цифровой подписи не удалось реализовать эффективные алгоритмы подписи, основанные на известных в то время симметричных шифрах. Первыми, кто обратил внимание на возможность симметричной схемы цифровой подписи, были основоположники самого понятия ЭП Диффи и Хеллман, которые опубликовали описание алгоритма подписи одного бита с помощью блочного шифра.[3] Асимметричные схемы цифровой подписи опираются на вычислительно сложные задачи, сложность которых еще не доказана, поэтому невозможно определить, будут ли эти схемы сломаны в ближайшее время, как это произошло со схемой, основанной на задаче об укладке ранца. Также для увеличения криптостойкости нужно увеличивать длину ключей, что приводит к необходимости переписывать программы, реализующие асимметричные схемы, и в некоторых случаях перепроектировать аппаратуру. Симметричные схемы основаны на хорошо изученных блочных шифрах.

преимущества:

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

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

недостатки:

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

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

Из-за рассмотренных недостатков симметричная схема ЭЦП Диффи-Хелмана не применяется, а используется её модификация, разработанная Березиным и Дорошкевичем, в которой подписывается сразу группа из нескольких бит. Это приводит к уменьшению размеров подписи, но к увеличению объема вычислений. Для преодоления проблемы «одноразовости» ключей используется генерация отдельных ключей из главного ключа.

Асимметричная схема

Асимметричные схемы ЭП относятся к криптосистемам с открытым ключом. В отличие от асимметричных алгоритмов шифрования, в которых зашифрование производится с помощью открытого ключа, а расшифрование — с помощью закрытого, в схемах цифровой подписи подписывание производится с применением закрытого ключа, а проверка — с применением открытого.

Общепризнанная схема цифровой подписи охватывает три процесса:

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

Формирование подписи. Для заданного электронного документа с помощью закрытого ключа вычисляется подпись.

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

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

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

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

Следует отличать электронную цифровую подпись от кода аутентичности сообщения

(MAC).

Виды асимметричных алгоритмов ЭП

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

Обеспечение этого во всех асимметричных алгоритмах цифровой подписи опирается на следующие вычислительные задачи:

Задачу дискретного логарифмирования (EGSA)

Задачу факторизации, то есть разложения числа на простые множители (RSA)

Вычисления тоже могут производиться двумя способами: на базе математического аппарата эллиптических кривых (ГОСТ Р 34.10-2001) и на базе полей Галуа (DSA). В настоящее время самые быстрые алгоритмы дискретного логарифмирования и факторизации являются субэкспоненциальными. Принадлежность самих задач к классу NP-полных не доказана.

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

Ясно, что все алгоритмы, подписывающие хеш документа, относятся к обычным

ЭП.

К ЭП с восстановлением документа относится, в частности, RSA.

Схемы электронной подписи могут быть одноразовыми и многоразовыми. В

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

Также алгоритмы ЭП делятся на детерминированные и вероятностные.

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

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

5. Методы аутентификации сообщений.

Шифрование защищает от атак пассивной формы (подслушивания). Совершенно иной проблемой является защита от активных атак (фальсификации данных и транзакций). Защита от таких атак обеспечивается аутентификацией сообщений. Говорят, что сообщение, файл, документ или какой-то другой набор данных является аутентичным (т.е. подлинным), если такой набор данных действительно получен из того источника, который объявлен в сообщении, и в точности соответствует тому набору данных, которые из того источника отсылались. Аутентификация сообщений представляет собой процедуру, обеспечивающую связывающимся сторонам возможность проверки аутентичности получаемых сообщений.

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

1.Применима к блоку данных любой длины.

2.Дает на выходе значение фиксированной длины.

3.Значение H(x) вычисляется относительно легко для любого заданного x.

4.Чувствительна ко всевозможным изменениям в тексте x, таким как вставки, выбросы, перестановки и т.п.

5.Для любого данного кода h должно быть практически невозможно вычислить x, для которого Н(х) = h (свойство необратимости).

6.Для любого блока x должно быть практически невозможно вычислить у ≠ x, для которого H(x) = H(y).

7.Должно быть практически невозможно вычислить любую пару различных значений x

иу, для которых H(x) = H(y).

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

1. Шифрование хеш-значения симметричным методом

Для проверки корректности сообщения в том случае используется код аутентификации MAC (Message Authentication Code), который представляет собой зашифрованное значение хеш-функции от сообщения M (рис. 1). Злоумышленник не может изменить сообщение без отражения того факта на значении MAC. Получатель может быть уверен, что сообщение пришло из указанного источника, поскольку секретный ключ никому, кроме указанного отправителя, не известен.

2. Хеширование с использованием секретного значения

Этот вариант аутентификации сообщения с помощью функции хеширования не использует шифрования вообще (рис. 2). Сообщающиеся

Рис. 1. Аутентификация симметричным шифрованием хеш-значения.

Рис. 2. Аутентификация хешированием секретного значения.

стороны, скажем, А и B, имеют известное только им общее секретное значение Sab. Перед отсылкой сообщения стороне B сторона A вычисляет функцию хеширования для результата конкатенации того секретного значения и текста сообще ния: DM = H(Sab||M). Затем [M||DM] пересылается стороне B. Поскольку сторона B имеет значение Sab, она может вычислить H(Sab||M) и проверить соответствие вычисленного значения полученному значению DM. Поскольку само секретное значение с сообщением не пересылается, у нарушителя нет возможности модифицировать перехваченное сообщение. Пока секретное значение остается секретным, нарушитель не может генерировать фальшивые сообщения. При этом алгоритм аутентификации выполняется за время, соизмеримое со временем выполнения функции хеширования.

Один из вариантов реализации данного подхода, называемый НМАС, принят в качестве стандарта защиты протоколов IPSec, TLS, SET и др. Его работа описывается выражением:

HMACK = H[(K+ opad) || H[(K+ ipad) || M]],

где Н - встроенная функция хеширования (например SHA1);

М - подаваемое на вход НМАС сообщение (включая биты заполнителя, требуемые встроенной функцией хеширования);

К - секретный ключ; К+ - ключ К, расширенный до размера хеш-значения путем добавления нулей слева;

ipad - шестнадцатеричное 363636... 36, повторенное до заполнения К+; opad - шестнадцатеричное 5C5C5C...5C, повторенное до заполнения К+.

Связывание с ipad означает переключение половины битов К. Точно так же связывание с opad означает переключение половины битов К, но для другого набора битов. В результате этого из К+ получаются два ключа, сгенерированных псевдослучайным образом, что повышает криптостойкость алгоритма.

3. Шифрование хеш-значения асимметричным методом

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

Рис. 3. Аутентификация ассимметричным шифрованием хеш-значения.

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

6.Методы идентификации и аутентификации пользователей. Парольная аутентификация.

Основные понятия:

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

Аутентификация - проверка соответствия (подлинности) сущности предъявленному ею идентификатору.

Методы аутентификации:

1. Парольная аутентификация (основана на знании лицом, имеющим право на доступ к ресурсам системы, некоторой секретной информации – пароля)

2.Аутентификация с помощью уникального предмета (основана на использовании уникального предмета: USB-токена, электронной карточки и др.)

3.Биометрическая аутентификация (основана на измерении биометрических параметров человека – физиологических или поведенческих атрибутах живого организма)

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

Парольная аутентификация:

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

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

-методы, использующие постоянные (многократно используемые) пароли,

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

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

Впоследнем случае можно запустить программу по подбору паролей.

Более надежный способ – использование одноразовых или динамически меняющихся паролей.

Известны следующие методы парольной защиты, основанные на одноразовых паролях:

-методы модификации схемы простых паролей;

-методы «запрос-ответ»;

-функциональные методы.

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

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

Функциональные методы основаны на односторонних функциях:

-для заданного пароля x легко вычислить новый пароль y = f(x);

-зная f и y, сложно или невозможно определить x.

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

Идея метода функционального преобразования состоит в периодическом изменении самой функции. Последнее достигается наличием в функциональном выражении динамически меняющихся параметров, например, функции от некоторой даты и времени. Пользователю сообщается исходный пароль, собственно функция и периодичность смены пароля. Нетрудно видеть, что паролями пользователя на заданных -периодах времени будут следующие: x, f(x), f(f(x)), ..., f(x)n-1.

Метод «рукопожатия» состоит в следующем. Функция парольного преобразования известна только пользователю и системе защиты. При входе в АС подсистема аутентификации генерирует случайную последовательность x, которая передается пользователю. Пользователь вычисляет результат функции y=f(x) и возвращает его в систему. Система сравнивает собственный вычисленный результат с полученным от пользователя. При совпадении указанных результатов подлинность пользователя считается доказанной.

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

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

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

7. Алгоритм генерирования одноразовых паролей S/KEY

Система одноразовых паролей предназначена для защиты от случаев, когда злоумышленник «прослушивает» сеть, пытаясь перехватить пароль (или соответствующие ему выражение, например, хэш-значение) для дальнейшего его использования.

S/Key – процедура аутентификации на основе одноразового пароля. Смысл заключается в том, что пользователь при входе в систему каждый раз передает новый пароль. Эти пароли не бесконечны. Схематично отображено на рисунке 1, сервер верифицирует его.

рисунок 1

Процедура S/Key поддерживает одностороннюю и двустороннюю аутентификацию.

Диалог при односторонней аутентификации:

1.На сервер высылается имя пользователя.

2.На рабочей станции клиента вычисляется криптографическая контрольная сумма и меняется номер очередного пароля (n-1). Криптографическая контрольная сумма высылается на сервер.

3.На сервере выбирается пароль пользователя из базы паролей на основе имени пользователя и текущей процедуры аутентификации. Вычисляется значение хэш-функции. На основе выбранного пароля вычисляется ключ шифрования и расшифровывается криптографическая контрольная сумма, присланная с рабочей станции. Изменяется номер текущего пароля. Сравнивается hash вычисленный и расшифрованный. Делается вывод: если

hash совпал, то пользователь считается аутентифицированным.

Диалог при двусторонней аутентификации:

1.На сервер высылается имя пользователя.

2.И на сервере, и на рабочей станции вычисляется криптографическая контрольная сумма и изменяется номер текущего пароля.

3.Сервер и рабочая станция обмениваются криптографическими контрольными суммами.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]