Поточный шифр
Материал из Википедии — свободной энциклопедии
Пото́чный шифр — это симметричный шифр, в котором данные шифруются посимвольно. Поточный шифр реализует другой подход к симметричному шифрованию, нежели блочные шифры. При блочном шифровании одинаковые блоки при данном ключе всегда шифруется одинаково, при поточном шифровании это не так.
Содержание |
[править] История
В 1949 году Клод Шеннон опубликовал работу, в которой доказал абсолютную стойкость шифра Вернама (также известен, как одноразовый блокнот [one-time pad]). В шифре Вернама ключ имеет длину, равную длине самого передаваемого сообщения. Ключ используется в качестве гаммы, и если каждый бит ключа выбирается случайно, то криптоаналитику для вскрытия остается лишь метод грубой силы. Но ключи, сравнимые по длине с передаваемыми сообщениями, трудно использовать на практике. Поэтому обычно применяют ключ меньшей длины (например, 128 бит). С помощью него генерируется псевдослучайная гаммирующая последовательность. Естественно, псевдослучайность гаммы может быть использована при атаке на поточный шифр.
[править] Типы поточных шифров
- Синхронные поточные шифры генерируют псевдослучайную последовательность независимо от каких-либо битов открытого или шифрованного текста. При таком шифровании необходима точная синхронизация на концах линии связи. При потере битов или вставке новых при передаче корректное дешифрование становится невозможным. Для синхронизации могут использоваться специальные маркирующие последовательности, вставляемые в шифртекст. С другой стороны, такие шифры не распространяют ошибки: ошибка в шифровании одного бита не влияет на другие биты.
- Самосинхронизирующиеся поточные шифры используют предыдущие N битов при генерации, что позволяет автоматически синхронизироваться источнику и получателю. Потерянные или вставленные биты могут быть легко обнаружены.
[править] Поточные шифры на линейных сдвиговых регистрах
Наиболее популярный способ генерации гаммы — линейные сдвиговые регистры с обратной связью (англ. LFSR— Linear Feedback Shift Registers).
[править] Ссылки
- Matt J. B. Robshaw, Stream Ciphers Technical Report TR-701, версия 2.0, RSA Laboratories, 1995 (PDF).