Блочные+шифры

**Блочный шифр** — разновидность симметричного шифра. Особенностью блочного шифра является обработка блока нескольких байт за одну итерацию (как правило 8 или 16). Блочные криптосистемы разбивают текст сообщения на отдельные блоки и затем осуществляют преобразование этих блоков с использованием ключа. Преобразование должно использовать следующие принципы: **Рассеивание** (diffusion) - т.е изменение любого знака открытого текста или ключа влияет на большое число знаков шифротекста, что скрывает статистические свойства открытого текста;

 **Перемешивание** (confusion) - использование преобразований, затрудняющих получение статистических зависимостей между шифротектстом и открытым текстом.

 Практически все современные блочные шифры являются **композиционными** - т.е состоят из композиции простых преобразований или F=F1oF2oF3oF4o..oFn, где F - преобразование шифра, Fi - простое преобразование, называемое также i-ым циклом шифрования. Само по себе преобразование может и не обеспечивать нужных свойств, но их цепочка позволяет получить необходимый результат. Например, стандарт DES состоит из 16 циклов. В иностранной литературе такие шифры часто называют послойными (layered). Если же используется одно и то же преобразование, т.е. Fi постоянно для "i, то такой композиционный шифр называют итерационным шифром. Наибольшую популярность имеют шифры, устроенные по принципу "**шифра Фейстеля** (Файстеля - Feistel)" (петли Фейстеля, сети Файстеля), т.е в которых: входной блок для каждого преобразования разбивается на две половины: p=(l,r), где l - левая, a r - правая; используется преобразование вида Fi (l,r )=(r,l Д fi (r)), где fi - зависящая от ключа Ki функция, а Д - операция XOR или некая другая.

 Функция fi называется цикловой функцией, а ключ Ki, используемый для получения функции fi называется цикловым ключом. Как можно заметить, с цикловой функцией складывается только левая половина, а правая остается неизменной. Затем обе половины меняются местами. Это преобразование прокручивается несколько раз (несколько циклов) и выходом шифра является получившаяся в конце пара (l,r). Чтобы использовать алгоритмы блочного шифрования для различных криптографических задач существует несколько режимов их работы. Наиболее часто встречающимися в практике являются следующие режимы: **электронная кодовая книга** - ECB (Electronic Code Book);

 **сцепление блоков шифротекста** - CBC (Cipher Block Chaining);

 **обратная связь по шифротектсту** - CFB (Cipher Feed Back);

 **обратная связь по выходу** - OFB (Output Feed Back);

 Обозначим применение шифра к блоку открытого текста как Ek(M)=C, где k - ключ, M - блок открытого текста, а C - получающийся шифротекст.

Ссылки: Симметричные шрифты --- [|ien.izi.vlsu.ru] <span style="display: block; font-family: 'Times New Roman',Times,serif; font-size: 120%; text-align: justify;">Блочные шифры --- kryptography.narod.ru <span style="display: block; font-family: 'Times New Roman',Times,serif; font-size: 120%; text-align: justify;">Блочные шифры. Общие сведения. форум --- welovepie.ucoz.ru