Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2_23.doc
Скачиваний:
5
Добавлен:
14.05.2015
Размер:
228.35 Кб
Скачать
    1. 2.23.5 Потоковые шифры

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

Пример – RC4

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

RC4 — фактически класс алгоритмов, определяемых размером его блока. Этот параметр nявляется размером слова для алгоритма. Обычно,n= 8, но в целях анализа можно уменьшить его. Однако для повышения безопасности необходимо увеличить эту величину. Внутреннее состояние RC4 состоит из массива размером 2nслов и двух счетчиков, каждый размером в одно слово. Массив известен какS-бокс, и далее будет обозначаться какS. Он всегда содержит перестановку 2nвозможных значений слова. Два счетчика обозначены черезiиj.

Алгоритм инициализации RC4 приведен ниже. Этот алгоритм использует ключ, сохраненный в Key, и имеющий длинуlбайт. Инициализация начинается с заполнения массиваS, далее этот массив перемешивается путем перестановок определяемых ключом. Так как только одно действие выполняется надS, то должно выполняться утверждение, чтоSвсегда содержит все значения кодового слова.

Начальное заполнение массива:

fori = 0 to 2n− 1

S[i] = i

Скремблирование:

j = 0

for i = 0 to 2n − 1

j = (j + S[i] + Key[i mod l]) mod 2n Перестановка (S[i], S[j])

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

Инициализация:

i = 0

j = 0

Цикл генерации:

i = (i + 1) mod 2n

j = (j + S[i]) mod 2n

Перестановка (S[i], S[j])

Результат: K = S[(S[i] + S[j]) mod 2n]

    1. 2.23.6 Абсолютно стойкие шифры

  • Ключ генерируется для каждого сообщения

  • Каждый ключ используется один раз

  • Ключ статистически надежен (то есть вероятности появления каждого из возможных символов равны)

  • Длина ключа равна или больше длины сообщения

  • Открытый текст обладает некоторой избыточностью (является критерием оценки правильности расшифрования)

  • Стойкость не зависит от того, какими вычислительными возможностями обладает криптоаналитик

  • Практическое применение систем, удовлетворяющих требованиям абсолютной стойкости, ограничено соображениями стоимости и удобства

Пример:

Типичным и наиболее простым примером реализации абсолютно стойкого шифра является шифр Вернама, который осуществляет побитовое сложение-битового открытого текста и-битового ключа:

Здесь- открытый текст,- ключ,- шифрованный текст.

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

1) полная случайность (равновероятность) ключа (это, в частности, означает, что ключ нельзя вырабатывать с помощью какого-либо детерминированного устройства);

2) равенство длины ключа и длины открытого текста;

3) однократность использования ключа.

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

Некоторыми аналитиками утверждается, что Шифр Вернамаявляется единственным шифром, который удовлетворяет этому условию.

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