Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kody_i_shifry_yuliy_Cezar_Enigma_i_Internet_2007.pdf
Скачиваний:
254
Добавлен:
29.03.2016
Размер:
2.04 Mб
Скачать

1

Коды и шифры

Построение систем кодирования и шифрования претерпело в нынешние времена значительные изменения. Появление мощных персональных компьютеров привело к бурному развитию электронной почты, электронной торговли и электронных банковских операций. Как следствие, шифрование средств связи ради обеспечения безопасности стало важным вопросом, являющимся предметом общественного интереса. Эта книга посвящена описанию и анализу многих систем шифрования, начиная с наиболее ранних и элементарных и заканчивая самыми современными и сложными, такими как RSA и DES, и, кроме того, шифрмашин времен войны (таких, как "Энигма" и "Хагелин"), а также шифров, применяемых шпионами. Обсуждаются вопросы стойкости систем шифрования и возможные методы их дешифрования,

которые иллюстрированы примерами. Построение многих систем основано на передовых математических теориях, детальное изложение которых содержится в основном приложении. Эта книга предназначена для всех, интересующихся использованием кодов и шифров частными лицами, шпионами, правительствами и в отраслях экономики в течение всей истории человечества вплоть до нашего времени.

Роберт Чёрчхаус является Заслуженным Профессором вычислительной математики Кардиффского Университета, в настоящее время находится в отставке. Читал лекции по математике и криптоанализу в более чем 50-ти университетах и институтах по всему миру. Является также соавтором книг по применению компьютеров в математике, литературных и лингвистических исследованиях, а также по численному анализу.

2

Роберт Чёрчхаус

Коды и шифры

(Юлий Цезарь, "Энигма" и Интернет)

 

 

3

Предисловие

 

8

Глава 1. Введение

 

10

Некоторые аспекты безопасности связи

10

Шифр Юлия Цезаря

 

11

Несколько основных определений

12

Три этапа дешифрования:

идентификация, взлом системы и вскрытие ключей.

13

Коды и шифры

 

14

Оценка стойкости системы шифрования

16

Коды, обнаруживающие и исправляющие ошибки

17

Другие методы сокрытия содержания сообщений

18

Модульная арифметика

 

19

Модульное сложение и вычитание букв

20

Род

 

21

Заключение

 

21

Глава 2. От Юлия Цезаря до простой замены

23

Шифры Юлия Цезаря и их вскрытие

23

Шифры простой замены

 

25

Вскрытие шифра простой замены

27

Частоты встречаемости букв в других языках, кроме английского

35

Сколько знаков необходимо для дешифрования простой замены?

37

Глава 3. Многоалфавитные системы

39

Усиление системы Юлия Цезаря: шифры Вижанэра

39

Вскрытие шифра Вижанэра

 

41

Индикаторы

 

45

Одноключевые сообщения

 

45

Распознавание одноключевых сообщений

46

Какой объем текста необходим для дешифрования шифра Вижанэра?

49

Цилиндр Джефферсона

 

49

Глава 4. Шифры-головоломки

 

52

Перестановки

 

52

Простая перестановка

 

52

Двойная перестановка

 

56

Другие виды перестановок

 

60

Регулярные перестановочные таблицы

60

Нерегулярные перестановочные таблицы

63

Оценка стойкости шифров перестановки

64

 

4

Общая концепция двойного шифрования

65

Глава 5. Двухбуквенные шифры

67

Замена "монограф-диграф"

67

МДПМ-шифры

69

Система "диграф-диграф"

71

Шифр Плейфера

72

Расшифрование в системе Плейфера

73

Криптоаналитические аспекты системы Плейфера

74

Двойной шифр Плейфера

75

Глава 6. Коды

78

Характеристики кодов

78

Одночастевые и двухчастевые коды

79

Код плюс аддитивное шифрование

81

Глава 7. Шифры для шпионов

87

Шифры-решетки

88

Книжные шифры

89

Использование книжного шифра

90

Частоты встречаемости букв в книжных шифрах

94

Вскрытие книжного шифра

95

Индикаторы

103

Катастрофические ошибки при использовании книжного шифра

104

Шифры "агента Гарбо"

106

Первый шифр "агента Гарбо"

106

Второй шифр "агента Гарбо"

106

Одноразовый блокнот

110

Глава 8. Получение случайных чисел и букв

112

Случайные последовательности

112

Получение случайных последовательностей

113

Бросание монеты

113

Бросание костей

114

Извлечение из урны (по типу лотереи)

115

Космические лучи

115

Шум от усилителей

116

Псевдослучайные последовательности

116

Линейные рекурренты

117

Использование последовательности двоичных знаков гаммы для шифрования

118

Двоичные линейные последовательности как генераторы гаммы

120

 

5

Криптоанализ линейной рекурренты

123

Повышение стойкости двоичной гаммы

123

Генераторы псевдослучайных чисел

125

Метод срединных квадратов

126

Линейные конгруэнтные генераторы

127

Глава 9. Шифрмашина "Энигма"

130

Историческая справка

130

Первая "Энигма"

132

Шифрование с использованием контактных колес

134

Шифрование в "Энигме"

136

Коммутатор "Энигмы"

139

Ахиллесова пята "Энигмы"

140

Цепочки индикаторов в "Энигме"

143

Выравнивание цепочек

147

Идентификация колеса R1 и его угловой установки

148

Двойное шифрование в "Энигме"

151

"Энигма" Абвера

151

Глава 10. Шифрмашина "Хагелин"

153

Историческая справка

153

Конструкция шифрмашины «Хагелин»

154

Шифрование при помощи шифрмашины "Хагелин"

156

Выбор установок барабана в шифрмашине "Хагелин"

158

Теоретический объем перебора для шифрмашины "Хагелин"

161

Вскрытие установок "Хагелина" по отрезку гаммы

163

Дополнительные возможности шифрмашины "Хагелин"

167

Смещение

168

Определение смещения по шифрованному тексту

168

Перекрытия

169

Вскрытие шифрмашины "Хагелин" только по шифрованному тексту

171

Глава 11. После "Энигмы"

174

SZ42 - предтеча электронных машин

174

Описание шифрмашины SZ42

175

Шифрование в машине SZ42

176

Вскрытие шифрмашины SZ42 и определение ее угловых установок

178

Модификации шифрмашины SZ42

179

Глава 12. Криптография с открытым ключом

181

Историческая справка

181

 

6

Вопросы безопасности

183

Защита программ и данных

183

Шифрование программ, данных и сообщений

185

Задача распределения ключей

186

Система ключевого обмена Диффи-Хеллмана

186

Стойкость системы Диффи-Хеллмана

188

Глава 13. Шифрование и Интернет

190

Обобщение шифра простой замены

190

Факторизация больших целых чисел

191

Стандартный метод факторизации

192

Малая теорема Ферма

194

Теорема Ферма-Эйлера (для случая системы RSA)

195

Ключи зашифрования и расшифрования в системе RSA

196

Процессы зашифрования и расшифрования в системе RSA

198

Каким образом хозяин ключей отвечает корреспондентам?

202

Американский Стандарт Шифрования Данных (DES)

204

Общие сведения

204

Процедура зашифрования

205

Процедура расшифрования

205

Стойкость DES-алгоритма

205

Зацепление

207

Реализации DES-алгоритма

208

Совместное использование алгоритмов RSA и DES

208

Полезное замечание

209

После DES-алгоритма

209

Проверка подлинности сообщения и удостоверение подлинности подписи

210

Криптография эллиптической кривой

211

Приложение. Математические вопросы

213

Глава 2

213

М1. Совпадения знаков в алфавитах замены

213

М2. Снижение стойкости при использовании взаимно-обратных алфавитов

213

M3. Парадокс дней рождения

214

Глава 3

215

М4. Евклидово доказательство бесконечности множества простых чисел

215

Глава 6

216

М5. Последовательность чисел Фибоначчи

216

Глава 7

217

М6. Частота встречаемости букв для книжного шифра

217

М7. Одноразовый блокнот дешифровать невозможно

219

Глава 8

219

М8. Частота появления случайных чисел на странице

219

 

 

7

М9. Комбинирование двух последовательностей двоичных знаков гаммы, имеющих

 

отклонения

221

М10. Последовательность типа Фибоначчи

221

М11. Двоичные линейные рекурренты

222

M12.

Восстановление двоичной линейной рекурренты по отрезку гаммы

224

М13. Получение псевдослучайных чисел

227

Глава 9

 

227

М14. Распайка колёс шифрмашины "Энигма"

227

М15. Число возможных отражателей шифрмашины "Энигма"

229

М16. Вероятность одноключевых сообщений для "Энигмы"

230

М17. Среднее число индикаторов, необходимое для построения полных цепочек

230

Глава 10

 

231

М18. Число возможных барабанов шифрмашины "Хагелин"

231

М19. Максимальная кратность значения зацепления, которая может встретиться при

 

вычислении разности гаммы шифрмашины "Хагелин"

233

M20. Определение смещения шифрмашины "Хагелин" с помощью коэффициента корреляции234

Глава 13

 

235

M21. (Порядок роста количества простых чисел)

235

M22. Вычисление остатка с использованием модульной арифметики

236

М23. Доказательство теоремы Ферма-Эйлера

237

М24. Нахождение чисел, "предположительно" являющихся простыми

238

M25. Алгоритм Евклида

239

М26. Эффективность возведения в степень методом последовательного возведения в квадрат241

М27. Число ложных ответов при дешифровании DES-алгоритма методом "встречного поиска "242

М28. Криптография эллиптической кривой

242

Решения задач

245

Глава 2

 

245

Глава 3

 

245

Глава 4

 

246

Глава 5

 

248

Глава 6

 

250

Глава 7

 

251

Глава 8

 

252

Глава 9

 

253

Глава 10

 

254

Глава 11

 

256

Глава 13

 

256

Литература

258

8

Предисловие

Фактически каждый, кто умеет читать, неизбежно сталкивается с кодами или шифрами того или иного вида. Например, решая кроссворды даже эпизодически, вы обязательно познакомитесь с анаграммами, которые являются разновидностью шифра перестановки. Шифрованные сообщения встречаются в детских комиксах, в газетных частных объявлениях и во многих художественных произведениях, начиная с рассказов Конан Дойля и Эдгара Аллана По.

В наши дни многие имеют персональные компьютеры и пользуются системой Интернет. Поэтому они знают, что для отправки и получения электронной почты необходимо всякий раз вводить пароль, который шифруется и проверяется системой. В сфере бизнеса и коммерции, особенно когда перевод денежных средств производится с использованием электронной документации, решающими факторами становятся засвидетельствование подлинности содержания сообщения и подтверждение полномочий участников сделки. И наилучшим способом защиты от мошенничества в такой ситуации является шифрование.

Поэтому неудивительно, что коды и шифры в гораздо большей мере, чем раньше, входят в нашу повседневную жизнь. К тому же рассекречивание некоторых сторон деятельности дешифровальщиков из Блетчли во время войны, особенно касающихся шифрмашины "Энигма", и появление вслед за этим публикаций и телевизионных программ на эту тему привело к росту интереса со стороны широкой публики к так называемому "взламыванию кодов".

По сложности системы шифрования варьируются от самых элементарных до наиболее передовых. И если первые не требуют никаких математических познаний, то в последних часто используются понятия и методы, известные, может быть, лишь специалистам с университетским дипломом по математике, информатике и некоторым другим смежным дисциплинам. Возможно, вследствие этого большинство книг по кодам и шифрам не касается математики совершенно, другие же требуют от читателя блестящего знания всего арсенала математических концепций, методов, обозначений и языка.

Исходя из личного опыта, автор полагает, что лучше придерживаться золотой середины: вполне возможно, не вдаваясь во все подробности, объяснить неспециалистам сущность некоторых математических концепций, лежащих в основе даже наиболее современных систем шифрования. Поэтому я вижу свою задачу в том, чтобы познакомить широкого читателя с целым рядом кодов и шифров. Начав с древнейших и простейших систем, мы перейдем к описанию некоторых шифровальных машин времен войны и

9

закончим системами шифрования, которые используются в коммерческой сфере в настоящее время. В книге даны примеры использования и методы вскрытия различных систем шифрования. Однако в тех случаях, когда описание метода дешифрования сообщения реальной длины заняло бы много страниц, оно дается в сжатом виде (промежуточные этапы опускаются).

Основной текст книги содержит только необходимый минимум математических сведений, обозначений и терминов. Тех, кто хотел бы получить более глубокие познания, отсылаем к приложению, в котором содержится детальное описание и объяснение математических вопросов. В некоторых случаях в нем дан даже больший объем сведений, нежели необходимо по ходу изложения. Автор делает это намеренно в надежде поощрить читателя в стремлении продолжить изучение одной из самых увлекательных и полезных областей математики, которая находит применение как при "взламывании кодов", так и в других сферах.

Выражаю благодарность Университету Кардиффа за разрешение воспроизвести фотографии с 9.1 по 9.4 включительно, а также 10.1 и 10.2, а моему сыну Джону за разрешение воспроизвести фото 11.1. Я также признателен доктору Крису Хигли из Информационной Службы Университета Кардиффа за предоставленный мне материал, относящийся к главе 13, а также персоналу издательства Cambridge University Press, в особенности Роджеру Эстли и Питеру Джексону за безотказную помощь в течение всего периода подготовки этой книги.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]