Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Режимы функционирования блочных шифров

Поиск

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

 

 

«тайных ходов». Однако за годы попыток взлома этого алгоритма слабости S-матриц так и не были выявлены.

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

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

2.   Режим сцепления шифрованных блоков (CBC). Каждый блок открытого текста перед шифрованием объединяется с помощью операции XOR с предыдущим блоком зашифрованного текста. Первый блок объединяется с некоторым заранее заданным инициализационным вектором. В результате одинаковые блоки открытого текста в зашифрованном виде будут различаться.

3.   Режим шифрованной обратной связи (CFB). Похож на предыдущий, но основное назначение состоит в том, чтобы превратить блочный шифр (например, DES с дли-ной блока 64 бита) в потоковый, т.е. шифрующий по одному символу (размером, например, j = 8 бит). Идея заключается в том, что изначально 64-битовый буфер заполняется значением инициализационного вектора (известного отправителю и получателю), которое шифруется ключом K. Из полученного результата выбираются старшие (левые) j бит, которые объединяются с помощью XOR с первым символом открытого текста. Получаем первый зашифрованный символ. Далее содержимое буфера сдвигается на j бит влево, а в самый младшие (правые) j бит записывается зашифрованный символ. Система готова к шифрованию следующего символа.

4.   Режим обратной связи по выходу (OFB). Аналогичен предыдущему, но в младшие j бит буфера после сдвига помещается не зашифрованный символ, а j сташих бит результата шифрования (т.е. до их объединения с символом открытого текста). Та-кой режим более устойчив к помехам (сбой при передаче одного символа зашифрованного текста не будет влиять на результаты дешифрования других символов).

 

Скремблеры

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

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

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

Пусть необходимо зашифровать сообщение 00111 скремблером 101 с ключом 011. Вычисляется сумма по модулю 2 первого и третьего бита ключа: 1 ⊕ 1 = 0. Этот бит становится новым первым битом ключа, а последний бит ключа (1) становится битом шифрующей последовательности. Вычисляем первый бит зашифрованного текста: 1 ⊕ 0 = 1. Далее повторям процесс, но уже с ключом 101. Шифрование всего сообщения показано на рисунке.

Рис. 9. Скремблирование последовательности 00111 скремблером 101 с ключом 011

 



Поделиться:


Последнее изменение этой страницы: 2019-12-15; просмотров: 470; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.248.48 (0.006 с.)