Доклады, выступления, видео и электронные публикации

Почтальон всегда звонит дважды

Сегодня все уже говорят, что пользоваться электронной почтой стало совершенно невозможно. Постоянно растущее количество спама делает процент <полезных> писем исчезающе малым, а установка <спамодавов> и вовсе сводит его на нет, поскольку те почему-то путают со спамом именно самую нужную корреспонденцию. В одном из прошлых номеров уже говорилось о том, что проблема доверенной переписки по электронной почте решается с помощью ПСКЗИ ШИПКА. Давайте более подробно рассмотрим как саму проблему, так и пути ее решения.

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

Именно из-за этой убежденности человек попадается на удочку преступника почти гарантированно.

Все те же опасности - даже в еще большей степени - связаны с электронной почтой.

В большей степени - потому, что получая электронное письмо, мы не располагаем по сути никакой информацией об отправителе, кроме его учетной записи и обратного адреса, которые вполне могут оказаться указанными заведомо неверно. Можно, конечно, созваниваться с тем, кто указан отправителем, и уточнять, в самом ли деле письмо от него, и в самом ли деле он написал именно то, что пришло, или же письмо было <переписано> по дороге. Стоит ли в таком случае вообще прибегать к услугам электронной почты, или лучше просто созваниваться?

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

Делает ли использование этих функций обмен письмами более доверенным?

 Итак, для того чтобы убедиться в подлинности подписанного ЭЦП письма (в его адресате и целостности) необходимо проверить подпись, которой это письмо подписано.

Сам процесс проверки ЭЦП построен точно на такой же логике, как проверка обыкновенной подписи на бумажном документе.

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

ЭЦП - это результат криптографического преобразования, в котором участвуют данные самого подписываемого документа, и данные пользователя. Таким образом, ЭЦП двух разных документов не будет одинаковой, и сравнивать ее с эталоном - бессмысленно. Что делать?

Нужно сравнивать что-то постоянное. Постоянны - данные пользователя. Однако полностью их раскрыть - значило бы свести на нет все усилия по обеспечению безопасности. Именно поэтому в качестве таких данных для ЭЦП используется ключевая пара, состоящая из секретного и открытого ключей. То есть в данных пользователя есть часть секретная, которая участвует в генерации подписи и никому не раскрывается, и есть открытая, которая участвует в ее проверке.

Но возникает следующий вопрос: как связать открытый ключ с пользователем, если ничто в нем на этого пользователя не указывает? Необходим <паспорт>, где было бы сказано - <это открытый ключ именно этого пользователя>. Роль такого <паспорта> выполняют цифровые сертификаты. Это пара <имя пользователя + открытый ключ>, подписанная ЭЦП некой третьей доверенной стороны, которая удостоверяет своей подписью эту связь.

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

В качестве третьей стороны, подтверждающей связь между пользователем и его открытым ключом, могут выступать Удостоверяющие Центры (УЦ).

Инфраструктура УЦ в настоящее время в России еще находится в стадии становления, и большинство из них - тестовые. В перспективе же их услуги будут платными.

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

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

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

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

Иначе обстоят дела при использовании ПСКЗИ ШИПКА. С помощью ШИПКИ можно генерировать ключи, которые будут храниться в устройстве, а не в компьютере, получать сертификаты УЦ или выписывать себе самоподписанные сертификаты, сохраняя их непосредственно на устройство - и, имея всю эту информацию с собой, а не на том или ином компьютере - использовать на разных компьютерах.

Более того, в Ваше отсутствие никто другой не сможет отправить подписанное <Вами> письмо или прочитать зашифрованное письмо - будь оно в <отправленных> или во <входящих>.

С помощью ПСКЗИ ШИПКА работать таким образом можно в почтовых программах Outlook, OutlookExpress и The Bat! (как с использованием настроек CSP - интерфейса для работы с криптографией Microsoft, так и с использованием программы PGP, использующей интерфейс PKCS#11).

Даже если Вы случайно оставили свою ШИПКУ, выходя, рядом с компьютером, любопытствующие не смогут воспользоваться ее возможностями, не зная ПИН-кода.

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

Автор: Конявская С. В.

Дата публикации: 01.01.2007

Библиографическая ссылка: Конявская С. В. Почтальон всегда звонит дважды // Computerbild. 2007. № 20. С. 45.


Scientia potestas est
Кнопка связи