Криптография

рытого и шифрованного текста. Распространенный способ достижения

хорошего рассеивания состоит в использовании составного шифра,

который может быть реализован в виде некоторой последовательности

простых шифров, каждый из которых вносит небольшой вклад в значи-

тельное суммарное рассеивание и перемешивание. В качестве простых

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

Одним из наилучших примеров криптоалгоритма, разработанного

в соответствии с принципами рассеивания и перемешивания, может

служить принятый в 1977 году Национальным бюро стандартов США

стандарт шифрования данных DES. Несмотря на интенсивные и тща-

тельные исследования алгоритма специалистами, пока не найдено

уязвимых мест алгоритма, на основе которых можно было бы предло-

жить метод криптоанализа, существенно лучший, чем полный перебор

ключей. Общее мнение таково: DES — исключительно хороший шифр. В

июле 1991 года введен в действие подобный отечественный криптоал-

горитм ГОСТ 28 147–89.

В то же время блочные шифры обладают существенным недостат-

ком — они размножают ошибки, возникающие в процессе передачи со-

общения по каналу связи. Одиночная ошибка в шифртексте вызывает

искажение примерно половины открытого текста при дешифровании.

Это требует применения мощных кодов, исправляющих ошибки.

В блочном шифре из двух одинаковых блоков открытого текста

получаются одинаковые блоки шифрованного текста. Избежать этого

позволяют потоковые шифры, которые, в отличие от блочных, осу-

ществляют поэлементное шифрование потока данных без задержки в

криптосистемы. В общем случае каждый символ открытого текста шиф-

руется, передается и дешифруется независимо от других символов.

Иначе, шифруюшее преобразование элемента открытого текста меняет-

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

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

Иногда символ открытого текста может шифроваться с учетом ограни-

ченного числа предшествующих ему символов.

Потоковые шифры основываются на псевдослучайных ключевых

последовательностях — сгенерированных определенным образом после-

довательностях символов с заданными свойствами непредсказуемости

(случайности) появления очередного символа. Генераторы ключевых

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

сдвига и нелинейных булевых функциях. В качестве нелинейной буле-

вой функции может использоваться криптоалгоритм DES, что соот-

ветствует применению DES в режиме обратной связи по выходу (OFB)

лил обратной связи по шифртексту (CFB). Наибольший интерес предс-

тавляет режим CFB, поскольку в ряде случаев режим OFB не обеспе-

чивает требуемой секретности.

Системы потокового шифрования близки к криптосистемам с од-