Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
7_Курс лекций МиСЗИ.doc
Скачиваний:
190
Добавлен:
11.04.2015
Размер:
132.61 Кб
Скачать

3.Общая схема симметричной криптосистемы

Схема объединения всех рассмотренных выше методов.

Общая схема симметричной криптосистемы с учетом всех рассмотренных пунктов изображена на рисунке 3.

Рис.3. Симметричная криптосистема

Подпись документов при помощи симметричных криптосистем

Первые варианты цифровой подписи были реализованы при помощи симметричных криптосистем, в которой абоненты, участвующие в обмене сообщениями, используют один и тоже секретный ключ для простановки и проверки подписи под документом. В качестве алгоритма криптографического преобразования может использоваться любая из симметричных криптосистем, обладающая специальными режимами функционирования (например, DES, ГОСТ 28147-89 и т.п.).

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

1. Алекс и Юстас обладают одинаковым секретным ключом K.

2. Алекс зашифровывает цифровое сообщение, используя ключ K, и посылает зашифрованное сообщение Юстасу. При этом, как уже отмечалось, используется криптосистема, обладающая специальными механизмами функционирования, например ГОСТ 28147-89 в режиме выработки имитовставки.

3. Юстас расшифровывает сообщение при помощи ключа K.

Так как только Алекс и Юстас обладают секретным ключом, то тем самым обеспечивается гарантия, что сообщение подписано именно Алексом, а не стариком Мюллером. Однако, данная схема применима только в тех сетях, в которых можно дать стопроцентную гарантирую надежности каждого из абонентов, т.к. в обратном случае существует потенциальная возможность мошенничества со стороны одного из абонентов, владеющих секретным ключом.

Для устранения указанного недостатка была предложена схема с доверенным арбитром. В данной схеме помимо Алекса и Юстаса существует арбитр - радистка Кэт. Она может обмениваться сообщениями и с Алексом, и с Юстасом, и владеет секретными ключами обоих - KА и KЮ. Процедура подписания документов в данной схеме выглядит следующим образом:

1. Алекс зашифровывает сообщение, используя ключ KА, и посылает его Кэт.

2. Кэт расшифровывает сообщение, также используя ключ KА.

3. Расшифрованное сообщение Кэт зашифровывает на ключе Юстаса KЮ.

4. Данное сообщение Кэт посылает Юстасу.

5. Юстас расшифровывает сообщение, полученное от Кэт, используя ключ KЮ.

Насколько эффективна данная схема? Рассмотрим ее с учетом вышеуказанных требований, предъявляемых к цифровой подписи.

Во-первых, Кэт и Юстас знают, что сообщение пришло именно от Алекса. Уверенность Кэт основана на том, что секретный ключ KА имеют только Алекс и Кэт. Подтверждение Кэт служит доказательством Юстасу. Во-вторых, только Алекс знает ключ KА (и Кэт, как доверенный арбитр). Кэт может получить зашифрованное сообщение на ключе KА только от Алекса. Если Мюллер пытается послать сообщение от имени Алекса, то Кэт сразу обнаружит это на 2-м шаге. В-третьих, если Юстас пытается использовать цифровую подпись, полученную от Кэт, и присоединить ее к другому сообщению, выдавая его за сообщение от Алекса, это выявляется. Арбитр может потребовать от Юстаса данное сообщение и затем сравнивает его с сообщением, зашифрованном на ключе KА. Сразу выявляется факт несоответствия между двумя сообщениями. Если бы Юстас попытался модифицировать присланное сообщение, то Кэт аналогичным способом выявила бы подделку. В-четвертых, даже если Алекс отрицает факт посылки подписанного сообщения, подтверждение от Кэт говорит об обратном.

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

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

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

В Российской Федерации установлен государственный стандарт (ГОСТ 28147—89) на алгоритмы криптографического преобразования информации в ЭВМ, вычислительных комплексах и вычислительных сетях. Эти алгоритмы допускается использовать без ограничений для шифрования информации любого уровня секретности. Алгоритмы могут быть реализованы аппаратными и программными способами.

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

• простая замена;

• гаммирование;

• гаммирование с обратной связью;

• выработка имитовставки.

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

Сущность алгоритма простой замены состоит в следующем. Блок из 64-х бит исходной последовательности разбивается на два двоичных слова А и В по 32 разряда. Слово А образуют младшие биты, а слово В - старшие биты блока. Эти слова подвергаются итерационной обработке с числом итераций равным i=32. Слово, находящееся на месте младших бит блока, (А на первой итерации) суммируется по mod 232 с 32-разрядным словом ключа; разбивается на части по 4 бита в каждой (4-х разрядные входные векторы); с помощью специальных узлов замены каждый вектор заменятся на другой вектор (4 бита); полученные векторы объединяются в 32-разрядное слово, которое циклически сдвигается влево на 32 разряда и суммируется по mod 2 с другим 32-разрядным словом из 64-разрядного блока (слово В на первой итерации).

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

На следующих итерациях операции над словами повторяются.

На каждой итерации i 32-разрядное слово ключа j (всего их 8) выбирается по следующему правилу:

Блок замены состоит из 8 узлов замены, которые выбираются поочередно. Узел замены представляет собой таблицу из шестнадцати строк, в каждой из которых находятся векторы замены (4 бита). Входной вектор определяет адрес строки в таблице, число из которой является выходным вектором замены. Информация в таблицы замены заносится заранее и изменяется редко.

Алгоритм гаммирования предусматривает сложение по mod 2 исходной последовательности бит с последовательностью бит гаммы. Гамма получается в соответствии с алгоритмом простой замены. При выработке гаммы используются две специальные константы, заданные в ГОСТ 28147-89, а также 64-разрядная двоичная последовательность - синхропосылка. Расшифрование информации возможно только при наличии синхропосылки, которая не является секретной и может в открытом виде храниться в памяти ЭВМ или передаваться по каналам связи.

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

В ГОСТ 28147-89 определен алгоритм выработки имитовставки. Она используется для защиты от навязывания ложной информации. Имитовставка является функцией преобразования исходной информации и секретного ключа. Она представляет собой двоичную последовательность длиной к бит. Значение параметра к выбирается с учетом вероятности навязывания ложной информации Рн, которая связана с параметром к соотношением:

Рн=1/2к

Алгоритм выработки имитовставки может быть представлен следующей последовательностью действий. Открытая информация разбивается на блоки T(i) (i = 1, 2,...,m), где т определяется объемом шифруемой информации. Объем каждого блока - 64 бита. Первый блок Т(1) подвергается преобразованию в соответствии с первыми 16-ю итерациями алгоритма простой замены. В качестве ключа используется ключ, по которому будет шифроваться исходная информация. Полученное 64-битовое двоичное слово суммируется по mod 2 со вторым блоком Т(2). Результат суммирования подвергается тем же итерационным преобразованиям, что и блок Т(1), а на завершающем этапе суммируется по mod 2 с третьим блоком Т(3). Эти действия повторяются для т-1 блоков исходной информации. Если последний блок Т(т) не полный, то он дополняется соответствующим числом нулей до 64 разрядов. Этот блок суммируется по mod 2 с результатом, полученным при обработке Т(m-1) блока, и подвергается преобразованию в соответствии с первыми 16-ю итерациями алгоритма про­стой замены. Из полученного 64-разрядного блока выделяется слово длиной к бит, которое и является имитовставкой.

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