Выбрать главу

К несчастью, большинство исследованных мною в начале 1990-х, когда я только опубликовал PGP, коммерческих пакетов использовали именно режим ECB. В беседах с некоторыми из авторов подобных разработок они отвечали, что никогда и не слышали о режимах CBC или CFB и не знают о слабостях ECB. В тех же продуктах иногда реализуются неадекватные и небезопасные протоколы управления ключами. Один тот факт, что они не изучили даже основ криптографии, чтобы понимать такие элементарные вещи, ничуть не воодушевляет. Кроме того, нередко такие программные продукты содержат альтернативный более быстрый алгоритм, который может быть использован вместо медленного DES. Разработчик программы, как правило, считает свой собственный быстрый алгоритм столь же надёжным, сколь и DES, но после разговора с ним я обычно выяснял, что это лишь вариация на тему моего собственного "блестящего" изобретения студенческих лет. Возможно он даже не понимает, как работает его алгоритм, но горячо уверяет меня, что это — великолепная схема, на которую можно положиться. Я знаю, что он считает свой алгоритм безупречным, но как мне проверить надёжность, не изучив его?

Справедливости ради стоит отметить, что компании, специализирующиеся на криптотехнологиях, не выпускают таких кошмарно слабых программ.

Но даже действительно хорошие программы, применяющие DES в верном режиме, всё же имеют проблемы. Обычный DES использует 56-битовый ключ, слишком короткий по сегодняшним меркам, который может быть с лёгкостью взломан полным перебором на специальных высокоскоростных машинах. Жизнь DES подошла к концу, равно завершилась жизнь всех его реализаций.

Есть компания под названием AccessData, торгующая очень дешёвой программой, которая взламывает шифровальные схемы, встроенные в WordPerfect, Lotus 1-2-3, MS Excel, Symphony, Quattro Pro, Paradox, MS Word и PKZIP. Она не просто угадывает пароль, а производит настоящий криптоанализ. Некоторые люди покупают её, когда забывают пароли к собственным файлам. Силовые структуры тоже её покупают, чтобы читать файлы, которые изымают в ходе обысков. Я разговаривал с Эриком Томпсоном, автором программы, и он признался, что ей требуется всего доля секунды, чтобы взломать пароль, но он добавил несколько циклов задержки для замедления процесса, дабы он не казался покупателю столь элементарным.

В некотором смысле криптография аналогична фармацевтике. Её надёжность представляется критически важной. Плохой пенициллин на вид ничем не отличается от хорошего. Если с вашим текстовым редактором что-то не так, вы это увидите, но как вы определите надёжность своего криптографического пакета? Шифртекст, произведённый слабым алгоритмом, выглядит так же убедительно, как и шифртекст, сгенерированный стойким алгоритмом. В этом деле много ханаанского бальзама[16]. Много знахарских снадобий. В отличие от торгашей лекарствами древности, нынешние разработчики обычно даже не догадываются, что их продукты — ханаанский бальзам. Возможно, они неплохие программные инженеры, но, как правило, даже не знакомы с научными трудами по криптографии. Но продолжают считать, что могут написать хороший криптопродукт. А почему бы и нет? В конце концов, интуитивно это кажется несложным, а их программы вроде бы функционируют нормально.

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

Я вспоминаю случившуюся в 91-ом году беседу с Брайеном Сноу, высокопоставленным криптографом из АНБ. Он сказал, что никогда бы не поверил в надёжность алгоритма, созданного тем, кто для начала "не набил собственных шишек", потратив достаточно времени на взлом кодов. В этом есть смысл. Я обнаружил, что практически никто из мира коммерческой криптографии не подходит под такой критерий."Да, — добавил он с самоуверенной ухмылкой. — И это делает нашу работу в АНБ значительно проще". Пугающая мысль. Ведь я тоже не подхожу.

Правительство тоже приторговывало ханаанским бальзамом. После Второй мировой войны Соединённые Штаты продали германские шифровальные машины "Энигма" странам третьего мира. Но правительство не сообщило, что в ходе войны Союзники вскрыли код "Энигмы", факт, остававшийся засекреченным в течение десятилетий. Даже сегодня во многих UNIX-системах алгоритм "Энигмы" применяется для шифрования файлов, отчасти и потому, что правительство создало юридические преграды для использования чего-то лучшего. Оно даже пыталось предотвратить первоначальную публикацию RSA в 1977-м. И многие годы препятствовало практически всем попыткам коммерческой разработки эффективного криптофона для массового потребителя.

Главной задачей Агентства национальной безопасности США является сбор разведданных, главным образом путём скрытого прослушивания и перехватов частных гражданский коммуникаций (см. книгу Джеймса Бэмфорда"Дворец головоломок"). АНБ накопило значительные навыки и опыт по взлому кодов. Если люди не могут воспользоваться надёжными средствами шифрования, это делает задачу АНБ ещё более лёгкой. Агентство также отвественно за одобрение и рекомендацию криптоалгоритмов. Некоторые критики видят в этом конфликт интересов, например, как если посадить лисицу сторожить курятник. В 1980-х АНБ продавливало собственный симметричный шифровальный алгоритм (Утверждённая программа COMSEC), принципы действия которого отказывалось раскрывать, ссылаясь на"секретность информации". Агентство хотело, чтобы все просто приняли его на веру. Но любой криптолог скажет вам, что грамотно спроектированный алгоритм не нуждается в защите для сохранения надёжности. Защиты требуют только ключи. Как же в таком случае можно убедиться, что засекреченный алгоритм АНБ действительно безопасен? Агентству не составит большого труда разработать такой алгоритм, который только оно сможет взломать.

На момент первоначальной публикации PGP, качество коммерческих криптопродуктов в США определялось тремя главными факторами:

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

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

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

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

Я не так уверен в надёжности PGP, как был когда-то уверен в своей "блестящей" шифровальной схеме. Будь это так, это было бы дурным симптомом. В то же время я не думаю, что PGP содержит какие-то зияющие дыры (хотя и убеждён, что в нём есть ошибки). Для реализации в нём я избрал лучшие алгоритмы из опубликованных в гражданской криптологической литературе. Эти алгоритмы были индивидуально детально изучены. Я знаю многих ведущих мировых криптографов, с некоторыми из них обсуждал большинство алгоритмов и протоколов, задействованных в PGP. Программа была годы в разработке и уже хорошо изучена. И я не работаю на АНБ. Но вы не обязаны мне верить, ведь её исходные тексты опубликованы именно с целью свободного изучения.

вернуться

16

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