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

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

Я помню диалог с Brian Snow, высокопоставленным специалистом по криптографии из NSA. Он сказал, что никогда не будет доверять алгоритму шифрования, разработанному человеком, который это не "заслужит", потратив предварительно достаточно времени на раскрытие кодов. В этом весьма много смысла. Я не встречал в мире коммерческой криптографии практически ни одного человека, которого можно было бы охарактеризовать таким образом. "Да", — сказал он с уверенной улыбкой, — "и это делает нашу работу в NSA значительно проще". Неприятная мысль. Я тоже не занимался этим.

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

Основная работа правительственного NSA — это собирать информацию, преимущественно путем скрытого подключения к частным коммуникационным линиям (см. книгу James Bamford "The Puzzle Palace"). NSA обладает значительным мастерством и ресурсами для раскрытия кодов. Если люди не обладают мощной криптографической системой для защиты своей информации, это делает задачу NSA значительно проще. Кроме того, у NSA есть обязанность одобрять и рекомендовать алгоритмы шифрования. Необходимо отметить это интересное противоречие, подобное назначению лисы для охраны курятника. NSA протолкнуло стандартный алгоритм шифрования, разработанный им же, и оно не собирается никому сообщать, как он работает, так как он является секретным. Однако, оно требует, чтобы все этому алгоритму доверяли и использовали его. Но любой специалист в области криптографии может вам подтвердить, что удачно разработанный алгоритм шифрования не должен быть засекречен, дабы оставаться надежным. В защите должны нуждаться только ключи. Как мы можем знать, насколько надежен алгоритм шифрования NSA? Для NSA совсем не сложно разработать алгоритм, который сможет взломать только оно, если этот алгоритм больше никто не увидит. Не является ли это преднамеренной продажей "змеиного масла"?

Я не могу быть полностью уверен в уроне надежности PGP, поскольку однажды я уже разрабатывал прекрасный алгоритм — в колледже. Если я снова буду так же уверен, это будет плохим сигналом. Но я в достаточной степени уверен, что PGP не содержит грубых ошибок. Криптографические алгоритмы разрабатывались людьми с высоким уровнем криптографического образования. Исходные тексты доступны для облегчения изучения PGP и с целью помочь рассеять опасения некоторых пользователей. Разработке предшествовали достаточно глубокие исследования и годы работы. К тому же я не работаю на NSA. Я надеюсь, что не требуется слишком большого "скачка в доверие" для того, чтобы доверять надежности PGP.

Краткий справочник команд PGP.

Здесь приведена краткая сводка команд PGP.

Зашифровать текстовый файл с открытым ключом получателя: pgp -е textfile her_userid

Для подписания текстового файла вашим секретным ключом: pgp -s textfile [-u your_userid]

Для подписи текстового файла вашим секретным ключом и, затем, зашифровки его с открытым ключом получателя:

pgp -es textfile her_userid [-u your_userid]

Для шифрования текстового файла стандартным криптографическим методом:

pgp -с textfile

Для расшифровки зашифрованного файла или для проверки целостности подписи подписанного файла:

pgp ciphertextfile [-o plaintextfile]

Для шифрования сообщения, предназначенного для нескольких адресатов: