Родившиеся в Гуарульюсе
- 1 year ago
- 0
- 0
BassOmatic — в криптографии симметричный блочный криптоалгоритм, разработанный Филиппом Циммерманом для его программы шифрования электронной почты, PGP , использовался исключительно в её первой публичной версии — 1.0. Согласно исходным текстам и заявлениям автора, алгоритм был создан ещё в 1988 , опубликован впервые в 1991 . После того, как криптограф Эли Бихам указал на ряд серьёзных уязвимостей в алгоритме BassOmatic, автор заменил его на более устойчивый к атакам алгоритм IDEA в следующей версии PGP.
Алгоритм основан на работе с блоками размером 256 байт (2048 бит). Размер ключа может составлять от 8 до 2048 бит, причём 6 младших бит ключа являются контрольными битами , которые используются для выбора из нескольких возможных вариаций. Число раундов составляет в исходном варианте от 1 до 8 в зависимости от значений 3 младших контрольных битов, 4-й бит определяет одно из ключевых расписаний: одно использует ключ для установки начального значения генератора псевдослучайных чисел , другое использует собственный механизм алгоритма BassOmatic. Использование зависимых от ключа вариаций значительно усложняет механизм шифрования алгоритма, в то же время приводит к тому, что криптографическая стойкость ключей сильно варьируется.
Выбранное ключевое расписание создает 8 таблиц перестановок , каждая из которых представляет собой перестановку чисел от 0 до 255. Каждый раунд шифрования состоит из 4 операций: операцией XOR блока с одной из таблиц перестановок, измельчение или перестановка отдельных битов в блоке, бесключевой диффузии и распространения, именуемых англ. raking (сгребание), и этапа подстановки с использованием таблиц подстановки, как S-блоков . Этап измельчения может также переставлять все 8-битные независимо или в группе из четырёх в зависимости от 3-го контрольного бита. Таблицы перестановок могут оставаться неизменными в течение всего процесса шифрования либо, если установлен 5-й контрольный бит, таблицы перестановок генерируются отдельно для каждого блока.