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

6. Шифр гаммирования.

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

[TO1] [TO2] … [T0n]

Γ: [γ1] [γ2] … [γn]

[ТШ1] [ТШ2] … [TШn]

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

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

110 000=110 – длина ключа 1 бит. L – нулевой ключ – прямое кодирование.

101 111=010 – код исходного символа изменился – просто происходит перекодировка.

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

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

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

[TO1] [TO2] … [T0n] TШ1=f(γ,TO1)

Γ: [γ1] [γ2=ТШ1] … [γn=ТШn-1] TШ2=f(γ,TO1,ТО2,ТШ1)

[ТШ1] [ТШ2] … [TШn] TШn = f(γ,TO1,…,ТОn,ТШn-1)

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

С одной стороны гаммирование, с другой стороны перестановка внутри блока – такой шаг называется шагом скрамблирования. Он лежит в основе всех алгоритмов, которые используются.

S=L*t, где t – вектор, представляющий собой произвольную последовательность бит исходного текста, L – матрица случайного преобразования бит, S – битовая последовательность шифротекста. Проблема возникает при обратном преобразовании. Det L≠0 – невырождена и с ростом n число невырожденных матриц быстро сокращается. Число базовых циклов не равно трем. Обычно в сложение вставляется какая-либо функция.

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