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

Режимы шифрования. 
Системные и прикладные аспекты

РефератПомощь в написанииУзнать стоимостьмоей работы

OFBNLF — нелинейная обратная связь по выходу. Режим OFBNLF наследует некоторые свойства режимов OFB и ЕСВ. Функционирование в режиме OFBNLF моделируется мультиключевым ш. а., ключ изменяется при шифровании каждого блока данных: у, = Ек (х,) k,= Ek (kt_f); ?=1,2,… Единичная ошибка в шифротексте распространяется только на один блок открытого текста, однако требуется поддержка синхронизма. Время… Читать ещё >

Режимы шифрования. Системные и прикладные аспекты (реферат, курсовая, диплом, контрольная)

Режимами шифрования называют алгоритмы обработки данных, построенные на основе базового режима ЕСВ. Криптографическая стойкость СБШ определяется в основном стойкостью базового режима. Однако особенности различных режимов шифрования позволяют использовать СБШ для решения различных криптографических задач.

ЕСВ (простая замена).

В режиме простой замены ключу k соответствует подстановка Ек степени 22″, в соответствии с которой каждый блок открытого текста заменяется блоком шифрованного текста. Режим ЕСВ имеет следующие свойства:

  • 1) при замене и перестановке блоков шифрогекста блоки расшифровываются корректно;
  • 2) шифрование на одном ключе одинаковых блоков открытого текста дает одинаковые блоки шифрогекста независимо от их положения в сообщении;
  • 3) в силу хорошего перемешивания информации шифрующими подстановками, что является общим свойством известных блочных шифров, каждый из 2п битов выходного блока у искажается с вероятностью ½ при искажении одного лишь случайно выбранного бита входного блока х. Единичная ошибка в блоке х порождает в среднем п ошибок внутри 2я-битового шифрблока у. На другие шифрблоки сообщения ошибка не распространяется.

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

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

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

Простейший способ — дополнение неполного ш-битового блока открытого текста строкой длины 2п — т — 8 битов, например нулевой строкой, и байтом, где указано число 2п — т, равное дефициту последнего блока в битах. После этого дополненный блок шифруется обычным образом. Если 2п — т < 8, то длина сообщения увеличивается на один блок.

Второй способ называется похищением (stealing) шифротекста. Обозначим через vm и wm отображения Vr —> Vm и Vr —> Vr_m соответственно, где 1 < т < г, реализующие в совокупности «рассечение» блока х,…, xr) е V,.

на две части: vm(xxх,) = х, …, хт), wm(xxхг) = (хх+тх,). Пусть xt

и yt есть неполные m-битовые блоки открытого и шифрованного текстов, xt_x и у(_х суть предыдущие полные блоки. Тогда шифрование определено формулами у, — vm(Ek(xt_x)), yt_, = Ek(xt, wm(Ek(xt_x)). При расшифровании нужно вычислить блок (0 = Ek~1(yt_x), после чего определить х, = «'» (ш) и xt_x = Ek-'(yr

СВС (сцепление блоков шифротекста). Режим СВС блочного шифра описывается уравнениями шифрования у, = Ek(xt ®yt_x), t= 1, 2,…, где случайный вектор у0 е V2n, называемый вектором инициализации (начальным вектором, синхропосылкой), вырабатывается перед каждым сообщением. Вектор у0 может передаваться в линию связи и в открытом, и в шифрованном виде (в частности, с помощью режима ЕСВ). Однако важно избегать повторения синхропосылки в разных сообщениях, шифруемых одинаковым ключом. Это затрудняет атаку на шифротекст, основанную на наличии стандартов в начале сообщения. В качестве синхропосылки используется некоторая строка случайных байтов либо метка времени.

На рис. 15.2 дана блок-схема зашифрования (в верхней части) и расшифрования (в нижней части) в режиме СВС.

Зашифрование-расшифрование в режиме СВС.

Рис. 15.2. Зашифрование-расшифрование в режиме СВС.

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

Искажение /-го бита в блоке yt (такие искажения возможны из-за шумов в линиях связи или сбоев в устройствах хранения) влечет искажение около половины битов в блоке xt и /-го бита в блоке xt+x. Следующие блоки расшифровываются корректно (самовосстанавливаются). В то же время режим СВС совершенно не устойчив к ошибкам синхронизации.

Дополнение блоков выполняют, как в режиме ЕСВ, а если требуется совпадение длин исходного сообщения и криптограммы, то при неполном /w-битовом блоке xt открытого текста соответствующий блок у( шифротекста вычисляется по формуле yt = xt © vm(Ek(yt_j)).

Второй способ — это вариант похищения шифротекста. Пусть а есть (2п — т) —битовая строка из нулей и со = Ek(xt_{ 0 yt.2) — Тогда шифрование происходит по формулам yt = гя (со), yt_{ = Ek((xt, а) © со). При расшифровании сначала вычисляется блок данных со' = Ek yt t) Ф (yt> а), после чего определяется xt = ^w(co'), xt_x = Е^(уп wm(со')) 0 yt_2•.

CFB (гаммирование с обратной связью по шифротексту). В некоторых ситуациях, когда требуется шифровать символы поступающего потока, не дожидаясь формирования целого блока данных, удобен режим CFB. Обозначим CFB-m режим шифрования, в котором блоки открытого и шифрованного текстов имеют длину т битов  — параметр), 1 < т < 2п. Для сообщения, состоящего из байтов, удобно взять т = 8. Блочный шифр в режиме CFB-m моделируется моноключевым ш. а. = №? Т, К, 2, hy fm), где X = Y = Vw S = V2n, z = sx — нс зависящая от ключа k синхропосылка, для функций frn и h выполнено: у{ = k, xt) = v, n(Ek(st)) 0 xt, st+x = = h (sty ky xt) = (wm(st)y yt)y t = 1, 2, … На рис. 15.3 показана схема зашифрования (в левой части) и расшифрования (в правой части) в режиме CFB-m. В обеих процедурах базовый режим используется только для шифрования (реализация подстановки Efx не требуется).

Схема зашифрования-расшифрования в режиме СРВ-т.

Рис. 153. Схема зашифрования-расшифрования в режиме СРВ-т.

Рекомендации по синхропосылке те же, что и в режиме СВС. Искажение одного бита в блоке х( влечет искажение одного бита в у{ и в среднем половины битов во всех блоках шифротекста, начиная с ум, но при расшифровании получается открытый текст с той же единственной ошибкой. Искажение г-го бита в блоке у, влечет искажение г-го бита в блоке х,. Затем ошибка поступает в регистр состояний и искажает в среднем половину битов в каждом из следующих / блоков, где [2п / т] < I < ]2п / т. В дальнейшем блоки расшифровываются корректно. Режим СРВ, как и ССПШ, самостоятельно восстанавливается после ошибок синхронизации.

ОРВ (гаммирование или внутренняя обратная связь). Блочный шифр в режиме гаммирования можно рассматривать как синхронный шифр гаммирования, обрабатывающий ш-битовые блоки открытого и шифрованного текста (обозначим режим ОРВ-те). Этот шифр моделируется моноключевым ш. а. Л$рв = (X, 5, У, К, г, /г,/т), где X = У = Рш, 5 = У2п, 2 = — не зависящая от ключа к синхропосылка, для функций /", и /г верно у, = к, х,) = = 0т(?^(5г" © х{, л>+1 = /г (х(, к) = утк^))), г = 1, 2,… На рис. 15.4.

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

Схема зашифрования-расшифрования в режиме ОРВ-т.

Рис. 15.4. Схема зашифрования-расшифрования в режиме ОРВ-т.

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

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

Использование ряда СБШ в режиме ОБВ ограничено из-за относительно коротких длин периодов генерируемой гаммы. Например, при случайном равновероятном выборе начального состояния я, длина периода гаммы, генерируемой ?)?5-алгоритмом в режиме ОРВ, с большой вероятностью не превышает 232.

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

ВС-сцепление блоков. Режим ВС задан равенством Режимы шифрования. Системные и прикладные аспекты.

Режимы шифрования. Системные и прикладные аспекты. где у0 — синхропосылка. Основной недостаток режима ВС в том, что единичная ошибка в шифротексте влечет некорректное расшифрование всех последующих блоков шифротекста.

РСВС-сцепление блоков шифротекста с распространением ошибки.

Режим РСВС, заданный равенствами у, = Ek(xt ® yt_x ® t = 1,2, использован в протоколе Kerberos 4 для реализации как шифрования, так и проверки целостности в ходе единого ряда вычислений. В режиме РСВС единичная ошибка в шифротексте влечет некорректное расшифрование всех последующих блоков шифротекста, что используется для проверки целостности сообщений. Однако если целостность проверяется лишь для завершающего отрезка текста, то можно не обнаружить перестановки пары шифрблоков в начале текста. Это свойство заставило разработчиков отказаться от данного режима в пользу СВС в следующей версии протокола Kerberos.

OFBNLF — нелинейная обратная связь по выходу. Режим OFBNLF наследует некоторые свойства режимов OFB и ЕСВ. Функционирование в режиме OFBNLF моделируется мультиключевым ш. а., ключ изменяется при шифровании каждого блока данных: у, = Ек (х,) k,= Ek(kt_f); ?=1,2,… Единичная ошибка в шифротексте распространяется только на один блок открытого текста, однако требуется поддержка синхронизма. Время обновления текущего значения ключа должно быть небольшим, чтобы не снижать скорость шифрования данных базовым алгоритмом.

Показать весь текст
Заполнить форму текущей работой