
- •Глава 1. Введение 10
- •Глава 9. Шифрмашина "Энигма" 130
- •Глава 10. Шифрмашина "Хагелин" 152
- •Глава 11. После "Энигмы" 172
- •Глава 12. Криптография с открытым ключом 179
- •Глава 13. Шифрование и Интернет 188
- •Предисловие
- •Глава 1. Введение Некоторые аспекты безопасности связи
- •Шифр Юлия Цезаря
- •Несколько основных определений
- •Три этапа дешифрования: идентификация, взлом системы и вскрытие ключей.
- •Коды и шифры
- •Оценка стойкости системы шифрования
- •Коды, обнаруживающие и исправляющие ошибки
- •Другие методы сокрытия содержания сообщений
- •Модульная арифметика
- •Модульное сложение и вычитание букв
- •Заключение
- •Глава 2. От Юлия Цезаря до простой замены Шифры Юлия Цезаря и их вскрытие
- •Шифры простой замены
- •Вскрытие шифра простой замены
- •Частоты встречаемости букв в других языках, кроме английского
- •Сколько знаков необходимо для дешифрования простой замены?
- •Глава 3. Многоалфавитные системы Усиление системы Юлия Цезаря: шифры Вижанэра
- •Вскрытие шифра Вижанэра
- •Индикаторы
- •Одноключевые сообщения
- •Распознавание одноключевых сообщений
- •Какой объем текста необходим для дешифрования шифра Вижанэра?
- •Цилиндр Джефферсона
- •Глава 4. Шифры-головоломки
- •Перестановки
- •Простая перестановка
- •Двойная перестановка
- •Другие виды перестановок
- •Регулярные перестановочные таблицы
- •Нерегулярные перестановочные таблицы
- •Оценка стойкости шифров перестановки
- •Общая концепция двойного шифрования
- •Глава 5. Двухбуквенные шифры
- •Замена "монограф-диграф"
- •Мдпм-шифры
- •Система "диграф-диграф"
- •Шифр Плейфера*)
- •Расшифрование в системе Плейфера
- •Криптоаналитические аспекты системы Плейфера
- •Двойной шифр Плейфера
- •Глава 6. Коды Характеристики кодов
- •Одночастевые и двухчастевые коды
- •Код плюс аддитивное шифрование
- •Глава 7. Шифры для шпионов
- •Шифры-решетки
- •Книжные шифры
- •Использование книжного шифра
- •Частоты встречаемости букв в книжных шифрах
- •Вскрытие книжного шифра
- •Индикаторы
- •Катастрофические ошибки при использовании книжного шифра
- •Шифры "агента Гарбо"
- •Первый шифр "агента Гарбо"
- •Второй шифр "агента Гарбо"
- •Одноразовый блокнот
- •Глава 8. Получение случайных чисел и букв Случайные последовательности
- •Получение случайных последовательностей
- •Бросание монеты
- •Бросание костей
- •Извлечение из урны (по типу лотереи)
- •Космические лучи
- •Шум от усилителей
- •Псевдослучайные последовательности
- •Линейные рекурренты
- •Использование последовательности двоичных знаков гаммы для шифрования
- •Двоичные линейные последовательности как генераторы гаммы
- •Криптоанализ линейной рекурренты
- •Повышение стойкости двоичной гаммы
- •Генераторы псевдослучайных чисел
- •Метод срединных квадратов
- •Линейные конгруэнтные генераторы
- •Глава 9. Шифрмашина "Энигма" Историческая справка
- •Первая "Энигма"
- •Шифрование с использованием контактных колес
- •Шифрование в "Энигме"
- •Коммутатор "Энигмы"
- •Ахиллесова пята "Энигмы"
- •Цепочки индикаторов в "Энигме"
- •Выравнивание цепочек
- •Идентификация колеса r1 и его угловой установки
- •Двойное шифрование в "Энигме"
- •"Энигма" Абвера
- •Глава 10. Шифрмашина "Хагелин" Историческая справка
- •Конструкция шифрмашины «Хагелин»
- •Шифрование при помощи шифрмашины "Хагелин"
- •Выбор установок барабана в шифрмашине "Хагелин"
- •Теоретический объем перебора для шифрмашины "Хагелин"
- •Вскрытие установок "Хагелина" по отрезку гаммы
- •Дополнительные возможности шифрмашины "Хагелин"
- •Смещение
- •Определение смещения по шифрованному тексту
- •Перекрытия
- •Вскрытие шифрмашины "Хагелин" только по шифрованному тексту
- •Глава 11. После "Энигмы" sz42 - предтеча электронных машин
- •Описание шифрмашины sz42
- •Шифрование в машине sz42
- •Вскрытие шифрмашины sz42 и определение ее угловых установок
- •Модификации шифрмашины sz42
- •Глава 12. Криптография с открытым ключом Историческая справка
- •Вопросы безопасности
- •Защита программ и данных
- •Шифрование программ, данных и сообщений
- •Задача распределения ключей
- •Система ключевого обмена Диффи-Хеллмана
- •Стойкость системы Диффи-Хеллмана
- •Глава 13. Шифрование и Интернет Обобщение шифра простой замены
- •Факторизация больших целых чисел
- •Стандартный метод факторизации
- •Малая теорема Ферма
- •Теорема Ферма-Эйлера (для случая системы rsa)
- •Ключи зашифрования и расшифрования в системе rsa
- •Процессы зашифрования и расшифрования в системе rsa
- •Каким образом хозяин ключей отвечает корреспондентам?
- •Американский Стандарт Шифрования Данных (des)*)
- •Общие сведения
- •Процедура зашифрования
- •Процедура расшифрования
- •Стойкость des-алгоритма
- •Зацепление
- •Реализации des-алгоритма
- •Совместное использование алгоритмов rsa и des
- •Полезное замечание
- •После des-алгоритма
- •Проверка подлинности сообщения и удостоверение подлинности подписи
- •Криптография эллиптической кривой
- •Приложение. Математические вопросы Глава 2 м1. Совпадения знаков в алфавитах замены
- •М2. Снижение стойкости при использовании взаимно-обратных алфавитов
- •M3. Парадокс дней рождения
- •Глава 3 м4. Евклидово доказательство бесконечности множества простых чисел
- •Глава 6 м5. Последовательность чисел Фибоначчи
- •Глава 7 м6. Частота встречаемости букв для книжного шифра
- •М7. Одноразовый блокнот дешифровать невозможно
- •Глава 8 м8. Частота появления случайных чисел на странице
- •М9. Комбинирование двух последовательностей двоичных знаков гаммы, имеющих отклонения
- •М10. Последовательность типа Фибоначчи
- •М11. Двоичные линейные рекурренты
- •M12. Восстановление двоичной линейной рекурренты по отрезку гаммы
- •М13. Получение псевдослучайных чисел
- •Глава 9 м14. Распайка колёс шифрмашины "Энигма"
- •М15. Число возможных отражателей шифрмашины "Энигма"
- •М16. Вероятность одноключевых сообщений для "Энигмы"
- •М17. Среднее число индикаторов, необходимое для построения полных цепочек
- •Глава 10 м18. Число возможных барабанов шифрмашины "Хагелин"
- •М19. Максимальная кратность значения зацепления, которая может встретиться при вычислении разности гаммы шифрмашины "Хагелин"
- •M20. Определение смещения шифрмашины "Хагелин" с помощью коэффициента корреляции
- •Глава 13 m21. (Порядок роста количества простых чисел)
- •M22. Вычисление остатка с использованием модульной арифметики
- •М23. Доказательство теоремы Ферма-Эйлера
- •М24. Нахождение чисел, "предположительно" являющихся простыми
- •M25. Алгоритм Евклида
- •М26. Эффективность возведения в степень методом последовательного возведения в квадрат
- •М27. Число ложных ответов при дешифровании des-алгоритма методом "встречного поиска "
- •М28. Криптография эллиптической кривой
- •Решения задач Глава 2
- •Глава 3
- •Глава 4
- •Глава 5
- •Глава 6
- •Глава 7
- •Глава 8
- •Глава 9
- •Глава 10
- •Глава 11
- •Глава 13
- •Литература
- •Глава 1
- •Глава 2
- •Глава 3
- •Глава 4
- •Глава 5
- •Глава 6
- •Глава 7
- •Глава 8
- •Глава 9
- •Глава 10
- •Глава 11
- •Глава 12
- •Глава 13
Глава 13
Rivest,R.L., Shamir,A., Adelman,L.: 'A method for obtaining digital signatures and public key cryptosystems', Communications of the ACM, 21, 1978, pp. 120-126. Основы этого метода и система ключевого обмена Диффи-Хеллмана были за несколько лет до этого разработаны Джеймсом Эллисом (James Ellis) из Штаб-квартиры Правительственной Связи Великобритании, но по соображениям секретности его работа в свое время не была опубликована. Рассказ о работе Эллиса и других в Штаб-квартире Правительственной Связи см. в статье Стивена Леви (Stephen Levy) 'The open secret' в журнале Wired, за апрель 1999 г., стр. 108-115.
Доказательство Великой теоремы Ферма, найденное в 1993 году Эндрю Уайлсом (Andrew Wiles), основано на чрезвычайно сложных математических изысканиях. Хорошее и доступное читателю изложение доказательства можно найти в Singh,Simon: Fermat's Last Theorem; Fourth Estate, London, 1997.
National Bureau of Standards, Federal Register, вып. от 15 мая 1973 г.
National Bureau of Standards, Federal Register, вып. от 27 августа 1974 г.
Konheim,A.G.: [5.2]. Полное описание DES-алгоритма, а также результаты тестов приведены на стр. 240-279.
Davies,D.W., Price,W.L.:[12.7]. Глава 3, стр. 49-87, посвящена DES-алгоритму. Следует заметить, что в таблицах S-блоков на стр. 58 содержатся три ошибки. Правильно S-блоки приведены в [13.7].
Federal Information Processing Standards Publications, 185: Escrowed Encryption Standard (EES). Полная спецификация алгоритма SKIPJACK приведена в 'Skipjack and KEA Algorithm Specifications' (Version 2.0, May 1988).
Lai,X., Massey,J.L.: 'A proposal for a new block encryption standard', Advances in Cryptology, Eurocrypt'90, Springer-Verlag, Berlin, 1991, pp. 389‑404.
Galbraith,S.: 'Elliptic curve public key cryptography', Mathematics Today, 35(3), pp. 76-79 (June 1999).
Zimmermann, Philip: The Official PGP User's Guide, MIT Press, 1996.
Garfinkel, Simson L.: PGP. Pretty Good Privacy, O'Reilly, Sebastopol, California, 1994.
Beauchemin,P., Brassard,G., Crepeau,C., Goutier,C., Pomerance,C.: 'The generation of random numbers that are probably prime', Journal of Cryptology, 1, 1988, pp. 53-64.
Bell,E.T.: Men of Mathematics, Pelican Books, Harmondsworth, Middlesex, 1953. Впервые книга была опубликована в 1937 г. В ней хорошим языком рассказано о жизни и деятельности более 30 величайших математиков, начиная с древнейших времен и вплоть до начала двадцатого века. Это издание выпущено в двух томах; глава, посвященная Галуа, содержится во 2-м томе.
*) Вспоминаю, как некий школьник писал сочинение на французском языке о том, как в средние века один путешественник приезжает ночью в гостиницу и стучится в дверь. В ответ он слышит "What Ho! Without." ("Какого чёрта! Убирайся!" - прим. перев.). Это выражение школьник перевел на французский дословно, подставив французские слова: "Que Ho! Sans." (получилось "Что за хо! Без." - прим. перев.).Учитель французского языка, прочитав это, потерял на мгновение дар речи, а потом заметил; "Вы, наверно, нашли эти слова в словаре, который раздают бесплатно с мешками сахара".
*) Линейное письмо Б (Linear B) - одна из наиболее древних систем греческой письменности. Обнаружено на глиняных табличках в Кноссе (о. Крит) и в Пилосе. Расшифрована Майклом Вентрисом (1922-1956), английским архитектором и лингвистом (прим. перев.).
*) т.е. преобразовать в буквенное письмо (прим. перев.)
*) Для иллюстрации этой ситуации как нельзя лучше подходит известная фраза
КАЗНИТЬНЕЛЬЗЯПОМИЛОВАТЬ,
где от постановки запятой смысл приговора меняется на противоположный (прим. перев.)
*) неопределенный артикль и местоимение "я" английского языка (прим.перев.).
*) число три - (прим.перев.).
**) число двадцать - (прим.перев.).
*) Перевод открытого текста: "Вероятность того, что какое-то событие произойдет, иногда резко отличается от того, что мы можем себе представить. Например, немногие бы согласились с тем, что если в одной комнате собрать двадцать три человека, то в половине случаев среди них найдутся двое с одинаковым днем рождения. Тем не менее, это именно так.".
Интересующихся объяснением этого, на первый взгляд знаменательного, факта отсылаем за доказательством к математическому приложению, M3.
*) Однако личный опыт Джека Гуда, о котором рассказано далее в этой главе, свидетельствует, что иногда происходят даже "самые невероятные" события.
*) при фиксированном ключе (прим. перев.)
*) -(греч.) - "завитушками". Во французском языке словом boustrophedon называется способ древнегреческого письма. (прим. перев.)
*) Этот шифр разработан в 1854 году британским ученым сэром Чарльзом Уитстоном (Charles Wheatstone). Свое название он получил по имени барона Лайона Плейфера (Lyon Playfair), который успешно способствовал его популяризации и принятию на вооружение правительством Великобритании. Этот шифр был разработан специально для шифрования телеграфных сообщений, и является первым известным шифром, в котором реализован принцип замены диграфов. Он применялся в качестве полевого шифра английской армии во время англо-бурской и Первой мировой войны, а во время Второй мировой войны он использовался в некоторых частях в качестве запасной (резервной) системы. (прим. перев.)
*) Перевод текста письма: "Когда вчера утром, примерно в одиннадцать тридцать я гулял в центре города, я случайно увидел Рона Кингстона. Он был один, управлял своей новенькой с виду машиной марки "Форд Эскорт". Прежде у него были только подержанные машины, не менее трехлетнего возраста. Может быть, он получил наследство от какого-нибудь недавно умершего богатого родственника?" (прим. перев.)
*) Перевод текста письма: "Некоторые пьесы Шекспира, например "Антоний и Клеопатра", ставят реже, чем другие, особенно такие как "Макбет", "Король Лир" и "Гамлет"." (прим. перев.)
*) Юпитер (англ.) - прим. перев.
*) одиннадцать (англ.) - прим. перев.
*) Подпись под фото 9.1: Фото 9.1. Правая сторона колеса шифрмашины "Энигма". С этой стороны видны 26 пружинных контактов, а также установочное кольцо с гладкими выступами по его внешнему диаметру. Машина имеет идентификационный номер M3564; колесо помечено римской цифрой 2 (II).
Подпись под фото 9.2: Фото 9.2. Левая сторона колеса шифрмашины "Энигма". На этой стороне расположены 26 плоских контактов. Видны алфавитная шина, установочное кольцо и кольцо с выемкой. На нем всего одна выемка, расположенная напротив буквы M алфавитной шины.
*) Подпись к рисунку 9.1.: Рис. 9.1. Шифрмашина "Энигма". Буква открытого текста. Буква шифрованного текста. U R3 R2 R1
**) Подпись под фото 9.3.: Фото 9.3. Шифрмашина "Энигма" с закрытой крышкой, готовая к использованию. Сквозь окошки можно видеть текущее положение трех колес.
Подпись под фото 9.4.: Фото 9.4. Шифрмашина "Энигма" с открытыми крышкой и передней стенкой. Видны три колеса, отражатель, а также штепсельный коммутатор спереди.
*) Подпись под рисунком 9.2: Рис. 9.2. Положение 1. A->Y B->M C->A
Положение 2. B->Z C->N D->B
*) Подписи к рисунку 9.3: Рис. 9.3. D->I I->K->B->P->U->P P->Q
*) Иллюстрация 10.1. Шифрмашина "Хагелин" с закрытой верхней крышкой, готовая к использованию. Положения шестерки колес видны оператору. Благодаря линейке, лежащей спереди, видно, что ширина машины всего около семи дюймов.
Иллюстрация 10.1. Шифрмашина "Хагелин" с открытой верхней крышкой. Видны шесть колес со штифтами, часть которых выступает слева, а часть справа, а также часть реек барабана с выступами (одни напротив колес, а другие в нейтральном положении). Слева также видны наборное и печатающее колёса, счетчик букв и лента для печати.
*) 504545 сантиметров (прим. перев.)
*) Подпись под фотографией: Фото 11.1. Шифрмашина SZ42 на выставке в музее Блетчли Парк, Милтон Кейнз. На переднем плане видны установочные кольца для 12 колёс и сами колёса.
*) Подпись к рисунку 11.1: Рис.11.1. Управление движением в SZ42. Пятерка верхних колес и 61-штифтовое колесо сдвигались при зашифровании каждой буквы. 61-штифтовое колесо управляло движением 37-штифтового колеса, которое, в свою очередь, управляло движением пяти нижних колес.
*) Подпись к рисунку 11.2. Рис. 11.2. процесс шифрования в машине SZ42. Пять двоичных разрядов буквы открытого текста P суммируются по отдельности (по модулю 2) с разрядами, поступающими от соответствующих колёс, показанных ниже; в результате получаются пять двоичных разрядов буквы шифрованного текста Z.
*) Эйлер Леонард (Leonard Euler), 1707-1783, родился в швейцарском городе Базеле. Ученик знаменитого математика Иоганна Бернулли (1667-1748). В возрасте 20 лет (в 1727 г.) приезжает в Россию, где прошла значительная часть его жизни и научной деятельности. С 1731 г. - член Петербургской академии наук. С 1741 по 1766 гг. жил в Берлине, продолжая поддерживать научные связи с Петербургской академией, в 1766 снова возвращается в Санкт-Петербург, где скончался в 1783 г. Эйлер оставил огромное печатное и рукописное наследие. С 1911 г. в Швейцарии издается полное собрание его сочинений Opera omnia. Основная часть рукописей Эйлера хранится в Санкт-Петербурге, в архиве РАН. (прим.перев.)
*) DES –аббревиатура словосочетания "Data Encryption Standard", перевод которого вынесен в данный заголовок (прим. перев.).
*) При использовании взаимно-обратных алфавитов говорить о снижении стойкости можно не только как о сокращении общего числа возможных вариантов алфавитов замены, но и о непосредственном упрощении способа дешифрования. Действительно, если криптоаналитик знает, что используется именно взаимно-обратный алфавит, то при вскрытии такого шифра простой замены он при любом сопоставлении пары "буква открытого текста - буква шифрованного текста" автоматически получает еще одну пару букв (например, из AW сразу следует WA). Это кардинально облегчает ему процесс вскрытия и фактически сводит 26-буквенный алфавит к "алфавиту", состоящему из 13-ти "пар букв". (прим. перев.)
*) "Liber Abaci" (лат.) - "Книга о счете" (прим. перев.)
*) в русской математической литературе - "задача о коллекционере" (прим. перев.)
*) Перевод открытого текста: "Для некоторых теорем найдены столь короткие и красивые доказательства, что, скорее всего, лучшего доказательства никогда на удастся найти. Именно таково доказательство бесконечности ряда простых чисел, предложенное Евклидом. Это доказательство приведено в приложении к этой книге." (см. приложение М4).