![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
В современном деловом мире вопрос безопасности компьютерных систем приобретает решающее значение. Проигнорировав его, вы лишаете себя возможности заработать деньги, расширить свой бизнес, а, следовательно, ставите под угрозу само существование вашей компании. Одной из наиболее многообещающих технологий, позволяющих обеспечить безопасность в киберпространстве, является криптография.
Данная книга, написанная всемирно известными специалистами в области криптографии, представляет собой уникальное в своем роде руководство по практической разработке криптографической системы, устраняя тем самым досадный пробел между теоретическими основами криптографии и реальными криптографическими приложениями.
На протяжении последнего десятилетия криптография гораздо больше способствовала разрушению безопасности цифровых систем, чем ее усовершенствованию. В начале 90-х годов прошлого века криптография считалась настоящей панацеей, способной обеспечить безопасность в Internet. Одни воспринимали криптографию как грандиозный технологический "уравнитель" - математический аппарат, позволяющий уравнять права и возможности защиты данных среднестатистического обывателя и крупнейших государственных разведывательных служб. Другие видели в ней оружие, применение которого может привести к гибели наций, если будет потерян контроль за поведением людей в киберпространстве. Третьи представляли, что это настоящий рай для наркоторговцев, террористов и распространителей детской порнографии, которые смогли бы общаться между собой в атмосфере полной секретности. Даже неисправимым реалистам стало казаться, что криптография - то самое средство, которое приведет к расцвету глобальной коммерции в новом интерактивном сообществе.
Прошло 10 лет, и ожидания не оправдались. Несмотря на распространение криптографии, наличие государственных границ в Internet стало ощутимым более чем когда-либо. Способность обнаруживать и прослушивать переговоры членов криминальных группировок гораздо больше зависит от политики и человеческих ресурсов, нежели от математического аппарата. У частных лиц нет никаких шансов дотянуться до уровня хорошо финансируемых государственных разведслужб. И наконец, наблюдавшийся расцвет глобальной коммерции никак не связан с внедрением криптографии в широкие массы.
В большинстве случаев применение криптографии не дало пользователям Internet практически ничего, кроме ложного ощущения безопасности. Криптография обещала обеспечить безопасность обмена данными, но сделать это так и не удалось. И это плохо для всех (за исключением, разумеется, злоумышленников) .
Причины подобного провала кроются не столько в криптографии как в математической науке, сколько в криптографии как в инженерной дисциплине. На протяжении последнего десятилетия мы разработали, реализовали и выпустили в свет массу криптографических систем. Как ни печально, превратить математические перспективы криптографической безопасности в реальную безопасность оказалось намного сложнее, чем можно было предположить. Это и есть самая трудная часть программы.
Многие разработчики относятся к криптографии как к некоему волшебному порошку. Стоит только "посыпать" им аппаратное или программное обеспечение, как оно тут же приобретет то самое магическое свойство безопасности. Слишком многие потребители полагаются на волшебное действие этого порошка, слепо доверяя слову "зашифрованный" в громких рекламных кампаниях. Недалеко от них ушли и серьезные аналитики, которые на основании длины ключей шифрования провозглашали один продукт более безопасным, нежели другой.
Каждая система безопасна настолько, насколько безопасно ее самое слабое звено, а математический аппарат криптографии никогда не был ее слабым звеном. Фундаментальные концепции, лежащие в основе криптографии, безусловно, важны, однако гораздо важнее то, как они реализуются и используются на практике. Спорить о том, какой должна быть длина ключа - 112 или 128 бит, все равно что вкопать в землю огромный столб и надеяться, что злоумышленник в него врежется. Вы можете долго выяснять, какой высоты должен быть столб - километр или полтора километра, а злоумышленник просто обойдет его стороной. Однако безопасность - это не столб, а настоящий забор: т.е. целый комплекс неких вещей, делающих криптографию действительно эффективной.
Практически во всех книгах по криптографии, изданных на протяжении последних 10 лет, ощущается стойкий привкус "волшебного порошка". Все восхваляют преимущества "тройного" DES, скажем, со 112-битовым ключом шифрования, не упоминая о том, как следует генерировать или использовать ключи этого алгоритма. Книга за книгой описывает сложные протоколы, не затрагивая общественных или бизнес-ограничений, в рамках которых приходится применять эти протоколы, и рассматривает криптографию как чисто математическую дисциплину, не тронутую рамками и реалиями земного мира. Однако именно эти рамки и реалии определяют различие между мечтами о криптографическом чуде и суровыми буднями цифровой безопасности.
Книга Практическая криптография тоже посвящена этой дисциплине, однако здесь речь идет вовсе не о той "незапятнанной" криптографии, которая упоминалась выше. Назначение этой книги состоит в том, чтобы открыто описать все ограничения и аспекты применения криптографии в реальной жизни, а также рассказать о разработке действительно безопасных криптографических систем. В некотором смысле данная книга является продолжением книги Брюса Шнайера Applied Cryptography [86], впервые опубликованной более 10 лет назад. Однако, в отличие от книги Applied Cryptography, дающей широкое представление о криптографии и тысячах ее возможностей, Практическая криптография охватывает достаточно узкую, строго определенную область знаний.
Мы не предлагаем вам десятки вариантов; мы рассматриваем один вариант, описывая то, как его правильно реализовать. Книга Applied Cryptography демонстрирует поразительные возможности криптографии как математической науки - что возможно и что достижимо, в то время как Практическая криптография содержит конкретные советы, предназначенные для людей, которые разрабатывают и реализуют криптографические системы.
Настоящая книга - это попытка сократить разрыв между теорией криптографии и ее применением в реальной жизни, а также научить разработчиков использовать ее для повышения безопасности систем.
Мы позволили себе взяться за написание этой книги, поскольку оба являемся опытными специалистами в области криптографии. Брюса хорошо знают по его книгам Applied Cryptography (она упомянута выше) и Secrets and Lies [88], а также по информационному бюллетеню Crypto-Gram. Нильс отточил свое криптографическое мастерство, разрабатывая криптографические системы платежей в институте CWI (Национальный исследовательский институт математики и информатики Нидерландов) в Амстердаме и позднее в нидерландской компании DigiCash. Брюс разработал знаменитый алгоритм шифрования Blowfish, и мы оба принимали участие в разработке алгоритма Twofish. Исследования Нильса привели к появлению первого представителя нового поколения эффективных протоколов анонимных платежей. Общее количество написанных нами научных статей выражается трехзначным числом.
Что еще более важно, мы оба имеем обширный опыт в разработке и построении криптографических систем. С 1991 по 1999 годы консалтинговая компания Брюса Counterpane Systems предоставляла услуги по проектированию и анализу для нескольких крупнейших компьютерных и финансовых корпораций мира. В последние годы компания Counterpane Internet Security, Inc. занимается предоставлением услуг по слежению за безопасностью и ее обеспечению для больших корпораций и правительственных служб по всему миру. Нильс тоже работал в Counterpane перед тем, как основал собственную консалтинговую компанию MacFergus. Мы живем и дышим криптографией. Мы наблюдаем, как она "прогибается" под тяжестью реалий разработки программных систем и, что еще хуже, под тяжестью реалий бизнеса. Мы позволили себе издать эту книгу, поскольку уже десятки раз писали ее для клиентов, которых консультируем.
Если уж вам пришлось заморочиться безопасностью при проектировании и реализации вашей системы, значит именно безопасность должна быть поставлена во главу угла. Более того, все остальные свойства системы должны быть принесены в жертву безопасности.
Постулировав, что се ля ви именно такова и отослав с общими проблемами компьютерной безопасности к книге Secrets and Lies авторы переходят к разбору полетов в той части вопросов безопасности, в которой они лучше всего разбираются - в криптографии.
За необходимым минимумом по блочным шифрам и функциям хэширования следует пример создания безопасного канала общения, за ликбезом по случайным числам - разбор проекта генератора случайных чисел Fortuna, за главами, посвященными шифрованию с открытым ключом - разбор концепции инфраструктуры открытого ключа (Public-Key Infrastructure - PKI).
Вспоминая пословицу "Гладко было на бумаге, да забыли про овраги" можно сказать, что эта книга - как раз про "овраги" криптографии.
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |