Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Bezopasnost_operatsionnykh_sistem_Nastya.docx
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
846.67 Кб
Скачать

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

Шифр простой перестановки определяется тем, что создается таблица размерностью m*n и в эту таблицу помещается блок шифруемого текста, соответствующий размерности. Предположим, что текст записывается по строкам и считывается по столбцам. Получается шифротекст. Это простая перестановка. При расшифровании шифротекст теперь записывается по столбцам и считывается по строкам. Всегда нужно задавать вопросы: где здесь ключ? Что является ключом? Ключом в данном случае является размерность таблицы, т.е. количество строк и столбцов. Ключом не является направление чтения и записи и с точки зрения алгоритма можно поменять местами запись и чтение. Шифрование:

Н

Г

Т

У

А

В

Т

ф

Шифротекст – НАГВТТУФ. При расшифровании текст записывается по столбцам и считывается по строкам.

Рассмотрим, как можно усложнить этот алгоритм. Совершенно очевидно что мы можем перед тем как будем считывать текст, например, переставить столбцы в каком либо порядке и затем считывать шифротекст. Этот алгоритм называется одиночным алгоритмом перестановки по ключу. У нас появляется дополнительный ключ, определяющий порядок столбцов. Мы можем продолжить усложнение, например, упорядочить строки.

Усложнения:

  1. Если мы для шифрования будем применять не один размер блока, а несколько (несколько ключей по размерам блока).

  2. При смене блоков по ключу менять направление чтения записи.

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

Н

Г

Т

У

_

_

_

_

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

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

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

Упорядоченный алфавит – это тоже ключ. Пример:

  1. 1

    6

    5

    7

    23

    5

    11

    А

    Л

    Е

    К

    С

    Е

    Й

    Получаем числовые значения.
  2. Шифруем текст с помощью полученных значений.

  3. Если две одинаковых буквы рядом, то нумеруем в порядке появления.

Главный принцип – любому тексту можно поставить в соответствие число и любому числу можно сопоставить текст.

Алгоритмы перестановки отличаются достаточно высокой стойкостью, в частности алгоритм простой перестановки для матрицы 16*16 создает 10^26 разных вариантов перестановки. Применяя любой шифр всегда нужно помнить о том, что любой шифр имеет недостатки.

Для современных вычислительных систем, если речь не идет о специальных, уникальных шифрах, т.к. у нас на шифры есть ГОСТ, а для любого шифра требуется наличии сертификата. Внутри стандартных шифров алгоритм реализуются в виде шагов скрамблирования. Блок разбивается на левую и правую часть. Далее эти части складываются по модулю 2 и записываются - в левую сумма по модулю 2 правой и левой части, а в правую часть неизмененная левая часть.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]