Русская Википедия:BassOmatic

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Шаблон:Карточка блочного шифра BassOmatic — в криптографии симметричный блочный криптоалгоритм, разработанный Филиппом Циммерманом для его программы шифрования электронной почты, PGP, использовался исключительно в её первой публичной версии — 1.0. Согласно исходным текстам и заявлениям автора, алгоритм был создан ещё в 1988, опубликован впервые в 1991. После того, как криптограф Эли Бихам указал на ряд серьёзных уязвимостей в алгоритме BassOmatic, автор заменил его на более устойчивый к атакам алгоритм IDEA в следующей версии PGP.

Алгоритм основан на работе с блоками размером 256 байт (2048 бит). Размер ключа может составлять от 8 до 2048 бит, причём 6 младших бит ключа являются контрольными битами, которые используются для выбора из нескольких возможных вариаций. Число раундов составляет в исходном варианте от 1 до 8 в зависимости от значений 3 младших контрольных битов, 4-й бит определяет одно из ключевых расписаний: одно использует ключ для установки начального значения генератора псевдослучайных чисел, другое использует собственный механизм алгоритма BassOmatic. Использование зависимых от ключа вариаций значительно усложняет механизм шифрования алгоритма, в то же время приводит к тому, что криптографическая стойкость ключей сильно варьируется.

Выбранное ключевое расписание создает 8 таблиц перестановок, каждая из которых представляет собой перестановку чисел от 0 до 255. Каждый раунд шифрования состоит из 4 операций: операцией XOR блока с одной из таблиц перестановок, измельчение или перестановка отдельных битов в блоке, бесключевой диффузии и распространения, именуемых Шаблон:Lang-en (сгребание), и этапа подстановки с использованием таблиц подстановки, как S-блоков. Этап измельчения может также переставлять все 8-битные битовые плоскости независимо или в группе из четырёх в зависимости от 3-го контрольного бита. Таблицы перестановок могут оставаться неизменными в течение всего процесса шифрования либо, если установлен 5-й контрольный бит, таблицы перестановок генерируются отдельно для каждого блока.

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Симметричные криптоалгоритмы

Шаблон:Crypto-stub