четверг, 2 июля 2015 г.

5 книг о криптографии

История криптографии насчитывает более 2000 лет, но посвященные ей книги начали появляться только в Средние века со скоростью приблизительно по одной за 100 лет. В XX веке криптография начала развиваться намного быстрее, во время Второй мировой войны в эту деятельность были вовлечены крупные математики (например, Клод Шеннон в США, Алан Тьюринг в Англии, Ганс Рорбах в Германии, Александр Осипович Гельфонд в СССР), но книги по криптографии публиковались ограниченными тиражами, а в СССР только в закрытой печати.


Большую роль в распространении знаний о криптографии в широких кругах сыграла написанная в 1967 году книга американского журналиста Дэвида Кана «Взломщики кодов», посвященная истории криптографии до 50-x годов XX века, но не содержащая технических деталей (эта книга была в начале 90-х годов переведена на русский, но публикация была задержана на 10 лет и осуществлена издательством «Центрполиграф» в 2000 году в сокращенном виде в серии «Секретная папка»).

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

Если в начале 90-х годов чуть ли не единственной книгой по криптографии была переведенная на русский язык А.А. Болотовым и А.Е. Андреевым книга известного финского математика Арто Саломаа, давно превратившаяся в библиографическую редкость, то сейчас список книг, так или иначе связанных с криптографией, на русском языке насчитывает чуть ли не сотню наименований, и выбрать из них пять довольно сложно.

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

1

Сингх С. Книга шифров. Тайная история шифров и их расшифровки. М.: Аст, Астрель, 2006. 447 с.

Английский оригинал (1999) имеет название The Code Book и более правильно переводится на русский как «Книга кодов». Часть тиража (наверное, умышленно) была напечатана именно под этим названием и с другой обложкой. Название «Книга кодов» содержит тонкую игру смыслов, так как так называемые кодовые книги использовались в криптографии для того, чтобы затруднить понимание даже уже расшифрованного текста (эти книги содержали таблицы кодов, с помощью которых можно было заменить слова, употребление которых хотелось скрыть, на другие слова, искажающие смысл текста; классический и одновременно анекдотичный пример: «снаряды — огурцы»).

Эта научно-популярная книга по объему значительно меньше, чем 1200-страничная The Codebreakers Дэвида Кана, и, разумеется, с ней значительно пересекается, но содержит и много нового. Особый интерес вызывает описание «альтернативной истории шифрования с открытым ключом»: молодые тогда математики Кокс и Уильямсон, работавшие в английской службе правительственной связи (аналог российского ФАПСИ), изобрели знаменитые ныне криптосистемы с публичным ключом DH и RSA на несколько лет раньше, чем их официальные первооткрыватели — американцы Диффи и Хеллман и, соответственно, Райвест, Шамир и Эдлимэн, но им была запрещена публикация в открытой печати.

В отличие от Кана, Сингх, физик по образованию и научный популяризатор по призванию, приводит в приложении к своей книге описание классических шифров, простейших методов дешифровки и несколько задач для читателей. В первом английском издании предлагалась премия в размере 10 000 фунтов первому, кто все их решит, что вызвало немалый ажиотаж.

2

Бауэр Ф. Расшифрованные секреты. Методы и принципы криптологии. М.: Мир, 2007. 550 c.

Эта книга (английское название Decrypted Secrets. Methods and maxims of cryptology, издания 1997, 2000, 2002 годов) написана известным немецким специалистом по вычислительной технике и программированию (и автором переведенного на русский язык учебника по информатике), который познакомился с криптографией уже в зрелом возрасте и не на шутку ею увлекся.

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

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

Как пишет в предисловии редактор перевода профессор А.В. Чашкин: «В книге можно выделить две… линии — криптографическую … и математическую… Эти линии, переплетаясь… создают любопытную картину криптологии — довольно специфической области человеческой деятельности, лежащей на границе науки, техники и искусства».

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

3

Шнайер Б. Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си. М.: Триумф, 2003. 806 с.

Эта книга (английский оригинал Applied Cryptography. Protocols, algorithms, and source code in C) уже неоднократно переиздавалась на русском языке и является энциклопедией состояния криптографии на период до середины 90-х годов прошлого века и, вероятно, самой читаемой книгой по криптографии в мире.

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

Один из американских журналов написал о ней: «Это книга, которую АНБ США никогда не хотело бы видеть опубликованной…»

Из предисловия Уитфилда Диффи: «…сдвиг стратегии АНБ от попыток контроля криптографических исследований… обусловлен сознанием того факта, что … печатные работы не защищают ни одного бита трафика. Стоя на полке… этот том не сделает ничего большего, чем предшествующие ему книги и статьи. Однако он принесет большую пользу, если будет лежать возле компьютера, на котором программист пишет криптографический код».

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

4

Мао B. Современная криптография. Теория и практика. М.: Вильямс, 2005. 763 с.

Эта книга, написанная сотрудником фирмы Hewlett-Packard и очень оперативно переведенная на русский язык (английский оригинал Modern Cryptography. Theory and practice был издан в 2004 году), почему-то в выходных данных издательства значится как научно-популярная.

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

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

5

Алферов А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Основы криптографии. М.: Гелиос АРВ, 2001. 479 с.

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

В ней рассмотрен широкий круг вопросов, связанных с криптографией, начиная с ее истории и кончая такими темами, как шифрование в аналоговой телефонии.

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

В приложении к учебнику изложены необходимые сведения из математики, но все же знание математики для его чтения предполагается.