Криптономикон. Нил Стивенсон
Чтение книги онлайн.
Читать онлайн книгу Криптономикон - Нил Стивенсон страница 77
Разница между вырожденным и невырожденным случаем заключена в свойствах использованных чисел. Комбинация (n = 20, l = 101) принципиально отличается от комбинации (n = 20, l = 100). Главная разница в том, что 20 и 101 – «взаимно простые», т. е. у них нет общих делителей. Это означает, что их наименьшее общее кратное, их НОК – большое число и равняется собственно l х n, т. е. 20 х 101 = 2020. А вот НОК ста и двадцати – всего 100. У велосипеда с l = 101 длинный период – он проходит через множество различных состояний, прежде чем вернуться к исходному, а у велосипеда с l = 100 – короткий, всего из нескольких состояний.
Предположим, что велосипед Тьюринга – шифромашина, основанная на алфавитной замене, т. е. заменяет каждую из двадцати шести букв английского алфавита какой-то другой буквой. А открытого текста может стать Т шифртекста, В – F, С – М и так дальше до Z. Сам по себе такой шифр до смешного прост, взломать его – детская забава. Однако предположим, что схема замены меняется от буквы к букве. Первая буква открытого текста шифруется с помощью одного алфавита замены, вторая – с помощью другого, третья – с помощью третьего и так далее. Это называется полиалфавитный шифр.
Предположим, что велосипед Тьюринга генерирует свой алфавит для каждого из состояний. Тогда состоянию (Q = 0, С = 0) будет соответствовать, например, такой алфавит замены:
а состоянию (Q = 180, С = 15) – такой:
Никакие две буквы не будут зашифрованы одним и тем же алфавитом замены, пока велосипед не вернется в исходное состояние (Q = 0, С = 0) и цикл не пойдет с начала. То есть это периодическая полиалфавитная система. Теперь, если период у машины короткий, она часто повторяет саму себя и в качестве шифровальной системы тоже годится исключительно для детской забавы. Чем длиннее период (чем больше взаимно простых чисел в него встроено), тем реже используется один и тот же алфавит замены и тем выше устойчивость шифра.
Трехдисковая «Энигма» – система именно такого типа (то есть периодическая полиалфавитная). Ее барабаны подобно приводу в велосипеде Тьюринга заключают в себе циклы в циклах. Ее период равен 17 576, то есть алфавит замены, которым зашифрована первая буква сообщения, не повторится до 17 577-й буквы. Однако в «Акуле» немцы добавили четвертый барабан, увеличив период до 456 976. В начале каждого сообщения диски ставятся в различные, случайным образом выбранные исходные положения. Поскольку ни в одном немецком сообщении нет 450 000 знаков, «Энигма»