1 of 26

Шифры перестановки

2 of 26

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

3 of 26

Сцитала шифр

4 of 26

Маршрутные перестановки

5 of 26

1. Простой вертикальный перестановочный шифр

6 of 26

  • Открытый текст пишется по горизонтали на листе бумаги фиксированной длины, а шифртекст считывается по вертикали.

​

Пример:

t = ВАСЯ ЛЮБИТ МАШУ

Считывание по столбцам снизу вверх приводит к такому шифртексту:

Т = «_ЛВМЮААБСШИЯУТ_».

​

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

7 of 26

Пример:

t = ВАСЯ ЛЮБИТ МАШУ

Осуществляя считывания по уровням, начиная с верхнего, получим следующий шифртекст:

​

​

​

​

Т = «СЮ_УАЯЛБТМШВ_ИА».

8 of 26

2. Простой горизонтальный перестановочный шифр

9 of 26

Шифр перестановки строк

  • Открытый текст вписывается в прямоугольник столбцами сверху вниз. Криптограмма выписывается по строкам, которые выбирают в определенной последовательности по ключу
  • Пример:
  • t = СЕГОДНЯ ВЕЧЕРОМ �ВСТРЕЧА В ВОСЕМЬ

​

​

  • Т = СЯОЕСЕВМЧЕГЕВАМОЧСВЬДЕТВНРРО

С

Я

О

Е

С

Е

В

М

Ч

Е

Г

Е

В

А

М

О

Ч

С

В

Ь

Д

Е

Т

В

​

Н

Р

Р

О

​

10 of 26

3. Лабиринты

11 of 26

  • Маршрутные перестановки со сложными маршрутами записи открытого текста и криптограммы.

​

Например, путь в лабиринте или как при обходе шахматной доски «ходом коня»

12 of 26

Шифр перестановки с фиксированным периодом

13 of 26

  • Сообщение делится на блоки соответствующие заданному периоду. К каждому блоку применяется одна и та же перестановка

14 of 26

Поворотные решетки

15 of 26

Решетка Кардано

  • Ключ – карточка с окошками, которая при наложении на лист оставляет открытыми только некоторые его части. Секретный текст вносят в окошки при разном положении решетки, зависящем от поворота карточки на 90º против часовой стрелки. При дешифровании криптограмму вписывают в диаграмму нужных размеров, а потом накладывают решетку и читают открытый текст

16 of 26

  • Выбирается число k. Строим квадрат со стороной длины k и заполняем его клетки числами от 1 до k^2:

​

​

  • Поворачиваем квадрат на 90 градусов по часовой стрелке и приписываем справа от исходного квадрата:

​

​

​

  • Поворачивая на 90 градусов по часовой стрелке �и добавляя полученный квадрат сначала снизу, �а затем слева от предыдущего, получим �следующий квадрат со стороной 2k:

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9

7

4

1

8

5

2

9

6

3

1

2

3

4

5

6

7

8

9

7

4

1

8

5

2

9

6

3

3

6

9

2

5

8

1

4

7

9

8

7

6

5

4

3

2

1

17 of 26

  • В этом квадрате закрасим произвольным образом все цифры, причем каждая цифра может быть закрашена только один раз. Например:

1

2

3

4

5

6

7

8

9

7

4

1

8

5

2

9

6

3

3

6

9

2

5

8

1

4

7

9

8

7

6

5

4

3

2

1

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Кодирующая решетка

18 of 26

Пример:

t = ТЕКСТ ПОСЛЕ ШИФРОВАНИЯ СТАНЕТ НЕПОНЯТНЫМ

Разобьем t на блоки по 9 символов без пробелов, получим 4 блока:

​

​

​

Используя алгоритм шифрования �Кордано и предыдущую �кодирующую решетку для �первого блока получим:

​

​

Т

Е

К

С

Т

П

О

С

Л

Е

Ш

И

Ф

Р

О

В

А

Н

И

Я

С

Т

А

Н

Е

Т

Н

Е

П

О

Н

Я

Т

Н

Ы

М

​

​

​

​

​

П

О

​

​

​

​

Т

​

​

​

​

​

К

​

​

Л

Е

​

​

​

С

​

​

С

​

​

Т

​

​

​

​

Т

Е

К

С

Т

П

О

С

Л

О

С

Т

С

Т

Е

Л

П

К

К

П

Л

Е

Т

С

Т

С

О

Л

С

О

П

Т

С

К

Е

Т

19 of 26

  • Повторим шаг выше для других 3 блоков, поворачивая кодирующую решётку на 90 градусов по часовой стрелке.
  • В итоге получим таблицу:

​

​

​

​

​

​

  • Из этой таблицы криптограмма получается выписыванием символов по любому маршруту.

Е

Ш

О

Ф

А

П

О

Т

Н

В

Т

Т

Ы

Я

Я

Н

О

К

С

Т

Л

Е

Р

А

И

С

Н

М

С

Е

Н

Т

Н

И

П

Е

20 of 26

Сеть Фейстеля

21 of 26

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

Ячейка Фейстеля

22 of 26

Механизм работы

  1. Блок разбивается на две равные части - левую (L) и правую (R).
  2. После разбиения левый подблок изменяется функцией F с использованием ключа K. В качестве функции можно представить себе какое угодно преобразование - например, шифр сдвига с ключом K.
  3. Полученный подблок складывается по модулю 2 с правым подблоком R.
  4. Далее полученные части меняются местами и склеиваются.

23 of 26

Задача:

При помощи телеграфного алфавита (код Бодо) зашифруйте сообщение «AVADAKEDAVRA» со сдвигом на позиции секретного ключа [1,2].

24 of 26

Код Бодо

25 of 26

Декодирование сети Фейстеля

1. Шифротекст разбивается на блоки и затем подблоки

2. Левый подблок поступает в функцию, складывается по модулю 2 с правым

3. Затем подблоки меняются местами.

Отличие заключается в том, что раундовые ключи подаются в обратном порядке, то есть в нашем случае в первом раунде применим ключ K = 2, а затем во втором раунде K = 1.

26 of 26

Модификация сети Фейстеля