Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Режимы использования шифров.




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

Алгоритм DES может использоваться в следующих четырех режимах:

режим электронной кодовой книги (ЕСВ — Electronic Code Book);

режим сцепления блоков (СВС — Cipher Block Chaining);

режим обратной связи по шифртексту (CFB — Cipher Feed Back);

режим обратной связи по выходу (OFB — Output Feed Back).

Режим электронной кодовой книги (ЕСВ) отвечает обычному использованию DES как блочного шифра, осуществляющего некоторую простую замену блоков открытого текста. В режиме сцепления блоков (СВС) каждый блок Ci, i> 1, шифртекста перед очередным зашифрованием складывается по модулю 2 со следующим блоком открытого текста Мi. При этом вектор С 0 полагается равным начальному вектору IV (Initial Vector). Начальный вектор меняется ежедневно и хранится в секрете. Блоки С,,С2,... вырабатываются по рекуррентной формуле

Сi = DESk (Ci- 1 Å Mi).

Рис.27. Режим CBC.

В режимах CFB и OFB алгоритм DES функционирует по аналогии с "шифром Вернама", в режиме OFB — как синхронный шифр, в режиме CFB — как шифр с самосинхронизацией.

В режиме CFB вырабатывается блочная "гамма" Z0,Z1,..., причем Z0 полагается равным начальному вектору IV, а при i ≥ 1 блоки гаммы удовлетворяют соотношению Z i = DESk (Ci -1). Блоки открытого текста шифруются по правилу Ci = Mi Å Zi, i ≥ 1.

 

Рис.28. Режим CFB.

В режиме OFB вырабатывается блочная "гамма" Z 0 ,Z 1 ,..., причем Z 0 полагается равным начальному вектору IV, а при i ≥ 1 блоки гаммы удовлетворяют соотношению Zi = DESk (Zi -1). Блоки открытого текста шифруются по правилу Ci=Mi Å Zi, i ≥ 1.

Рис.29. Рис.29. Режим OFB.

Кроме перечисленных режимов, DES имеет также "режим т-битовой обратной связи", 1 ≤ т ≤ 64. Этот режим оперирует с m -битовыми блоками. Входной блок (64-битовый регистр сдвига) вначале содержит вектор инициализации IV, "выровненный по правому краю".

Рис.30. Режим m-битовой обратной связи.

Блоки открытого текста шифруются по правилу Сi = Mi Å Pi, где Pi — вектор, состоящий из т старших битов блока DESk (Сi -1). Обновление заполнения регистра сдвига осуществляется путем отбрасывания старших т битов и дописывания справа вектора Pi.

Указанные режимы имеют свои достоинства и недостатки. Основное достоинство режима ЕСВ — простота реализации. Недостаток — в возможности проведения криптоанализа "со словарем ". Дело в том что вследствие большой избыточности в открытом тексте вполне возможны повторения 64-битовых блоков. Это приводит к тому, что одинаковые блоки открытого текста будут представлены идентичными блоками шифртекста, что дает криптоаналитику возможность при наличии достаточно большого числа пар открытого и шифрованного текста восстанавливать с большой вероятностью блоки открытого текста по шифртексту.

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

В режимах СВС и CFB искажение при передаче одного блока шифртекста Сi приводит к искажению на приеме не более двух блоков открытого текста — Мi, Mj+ 1. В то же время изменение блока Mi приводит к тому, что Ci и все последующие блоки шифртекста будут искажены. Это свойство оказывается полезным для целей аутентификации. Такие режимы применяются для выработки кода аутентификации сообщения. Так, в режиме СВС берется вектор инициализации, состоящий из одних нулей. Затем с помощью ключа k вырабатываются блоки Ci,...,Cn шифртекста. Кодом аутентификации сообщения (КАС) служит блок Сп.

Если требуется обеспечить лишь целостность сообщения, отправитель передает блоки М1,...,Мп вместе с Сп. Тогда противнику, желающему изменить сообщение, нужно соответствующим образом изменить и блок Сп. Возможность этого маловероятна, если только противник не располагает секретным ключом k.

Если же нужно обеспечить шифрование и аутентификацию, то отправитель сначала использует ключ k 1для выработки КАС, затем шифрует последовательность блоков М 1 ,...,Мп, Мп+1 = КАС на втором ключе k 2, и получает последовательность блоков С 1,..., Сn, Сn +1. Получатель должен сначала расшифровать С 1 ,...,Спп+ 1на ключе k 2, а затем проверить (с помощью k), что Мп+ 1— это КАС для М 0,..., Мn.

Можно поступить и иначе: сначала использовать k для зашифрования М 1,..., Мn, получая С 1,..., Сn, а затем k 2— для получения КАС. Получатель же будет использовать k2 для проверки КАС, а затем k — для расшифрования C1,..,Cn.

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

В российском стандарте также предусмотрено несколько режимов использования: режим простой замены, режим шифрования с обратной связью и режим гаммирования с обратной связью, которые являются аналогами соответственно режимов ЕСВ, СВС и CFB. Для того чтобы избавиться от указанной выше проблемы неопределенности длины периода гаммы в режиме OFB, в российском стандарте введен режим гаммирования, при котором блочный шифр используется в качестве узла усложнения некоторой последовательности гарантированного периода. Для выработки этой последовательности обычно применяются линейные регистры сдвига или счетчики по некоторому модулю.

Рис.31. Режим гаммирования.

Уравнение шифрования имеет вид

Ci = Mi. Å F (γi), i = 1,2,...,

где F — преобразование, осуществляемое блочным шифром, γi - блоки, сформированные узлом выработки исходной гаммы из начального вектора γ 1, который передается в начале сообщения в открытом или зашифрованном виде.

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

 

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

1. В чем различие между поточными и блочными шифрами?

2. Какие шифры удобнее в программной, а какие в аппаратной реализации?

3. Какие требования предъявляются к шифрующим преобразованиям блочных шифров?

4. В чем суть рассеивающих и перемешивающих преобразований при блочном шифровании?

5. Назовите основные параметры блочных шифров.

6. Какие виды поточных шифров могут быть эффективно реализованы программно?

7. Какие требования предъявляются к генераторам псевдослучайной последовательности?

8. Какие требования предъявляются к функции шифрования поточного шифра?

9. Какие режимы шифрования не распространяют искажений?

 


Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...