Данный алгоритм является моноалфавитным, аддитивным и поточным. Ключ – это некоторое слово и число
Сложность атаки перебором: O(n!)
Дешифрование Обычного сопоставления гистограмм частот символов шифротекста и языка
открытого текста будет достаточно для того, чтобы расшифровать данный алгоритм
Блок «frequency test» программы Cryptool2 |
Блок-схема расшифровки |
Шифрование:
Открытый текст делится на блоки равные длине ключа n. Далее строится таблица из n+1 строк. Первая строка – это алфавит (начинается с первой буквы алфавита). Каждая последующая строка это тот же алфавит, но смещенный таким образом, что каждая i-ая буква ключа является стартовой.
Шифротекст получается путем пересечения номера позиции i-ой буквы блока открытого текста несмещенного алфавита с алфавитом смещенным до i-ой буквы ключа.
Это блочныйполиалфавитный шифр работающий на основе подстановоки смещений Ключ – это некоторое слово !
Сложностьатаки перебором: − !
Дешифрование (атака)
Атака делится на два этапа: определение длины блока , разделение шифротекста на блоки длинной и частотный анализ каждогоиз них.
Этап 1. Определение длины блока Длина блока определяется при помощи метода автокорреляции. Суть метода заключается в том, что
берется шифровка и сдвигается на 1 элемент влево и сравнивается количество совпадений по позициям с исходной строкой. Сдвиги, при которых наибольшее число совпадений, вероятнее всего делятся на длину ключа или являются длинойключа
Этап 2. Частотный анализ После того, как была найдена вероятная длина ключа, в дело вступает частотный анализ. Каждый из
блоков записывается друг под другом и рассматривается частотный анализ каждого столбца (каждой из буквы ключа). Работает лучше всего на больших текстах
Гистограмма после применения автокорреляции в программе Cryptool2
Метод автокорреляции