PGP: Кодирование и шифрование информации с открытым ключом - Левин Максим
Шрифт:
Интервал:
Закладка:
PGP, в принципе, считает, что вы будете поддерживать физическую защиту вашей системы и ваших каталогов ключей, столь же хорошо, сколь и собственно вашу копию PGP. Если злоумышленник имеет доступ к вашему диску, тогда, теоретически, он может изменить собственно PGP.
Один несколько сложный способ защиты вашего собственного каталога открытых ключей от вмешательства заключается в прописывании всего каталога вашим секретным ключом. Вы могли бы сделать это посредством создания отдельного удостоверения подписи каталога открытых ключей, посредством подписания каталога с помощью опции "-sb".
К сожалению, вы будете должны еще хранить отдельную достоверную копию вашего собственного открытого ключа для проверки сделанной подписи. Вы не можете полагаться на ваш собственный открытый ключ, хранящийся в каталоге, так как он является частью того, что вы пытаетесь проверить.
Как PGP следит за корректностью ключей.
Прежде, чем вы начнете читать этот раздел, убедитесь что вы прочитали предыдущий раздел "Как защитить открытые ключи от подделки".
PGP следит, какие ключи в вашем каталоге открытых ключей правильно удостоверяются подписями поручителей, которым вы доверяете. Все, что вы должны делать — сообщать PGP, каким людям вы доверяете, как поручителям, и удостоверять их ключи у себя с помощью вашей собственной абсолютно достоверной подписи. PGP может брать ее отсюда, автоматически при утверждении любых других ключей, которые были подписаны вашими указанными поручителями. И, конечно, вы можете прямо подписывать большинство ключей самостоятельно.
Имеются два совершенно разных критерия, которые PGP использует, чтобы судить о полезности открытого ключа:
1) Действительно ли ключ принадлежит упомянутому в идентификаторе человеку? Иными словами, был ли ключ удостоверен с помощью достоверной подписи?
2) Принадлежит ли он кому-либо из тех, кому мы можем доверять для удостоверения других ключей?
PGP может вычислять ответ на первый вопрос. Для ответа на второй вопрос вам, пользователю, необходимо явно пообщаться с PGP. Когда вы вводите ответ на вопрос 2, PGP может вычислить ответ на вопрос 1 для других ключей, подписанных тем поручителем, которого вы указываете как достоверного.
Ключи, удостоверенные поручителем, которому вы доверяете, PGP считает истинными. Ключи, принадлежащие доверенным поручителям, должны быть удостоверены либо вами, либо другими доверенными поручителями.
PGP также позволяет вам иметь несколько степеней доверия для людей, чтобы действовать как поручитель. Ваше доверие к владельцу ключа не просто отражает вашу оценку их персональной честности — это также должно отражать то, насколько компетентны, по вашему мнению, в понимании управления ключами и в принятии верного решения при подписании ключа. Вы можете обозначить человека как неизвестного для PGP, или как которому нет доверия, или как обладающего частичным доверием, или, наконец, обладающего полным вашим доверием при удостоверении других открытых ключей. Эта информация сохраняется в вашем каталоге вместе с их ключами, но когда вы даете команду PGP извлечь ключ из вашего каталога, PGP не копирует информацию о степени доверия наряду с ключом, так как ваши частные соображения относительно степени доверия расцениваются как конфиденциальные.
Когда PGP рассчитывает достоверность открытого ключа, она исследует степень доверия для всех присоединенных удостоверяющих подписей. Она вычисляет взвешенную величину достоверности — два удостоверения с частичной степенью доверия значат то же, что и одно с полной степенью. Скептицизм PGP`s можно регулировать — например, вы можете настроить PGP, чтобы она требовала два удостоверения с полной степенью доверия или три с частичной степенью для оценки ключа как допустимого к использованию.
Ваш собственный ключ "абсолютно" достоверен для PGP, он не нуждается ни в какой подписи никакого поручителя для установления истинности. PGP определяет, какие из ключей являются вашими при поиске соответствующих секретных ключей в каталоге секретных ключей. PGP также считает, что вы абсолютно доверяете себе при удостоверении других ключей.
Поскольку время идет, вы будете накапливать ключи от других людей, которых вы можете захотеть обозначить как доверенные поручители. Кто-то еще будет выбирать своих доверенных поручителей. И каждый будет постепенно накапливать и распространять коллекцию удостоверенных подписей других людей, надеясь, что кто-нибудь из получивших ее будет доверять хотя бы одной или двум подписям. Это может вызвать появление децентрализованной отказоустойчивой сети доверия для всех открытых ключей.
Этот уникальный массовый подход резко контрастирует с правительственной стандартной схемой управления открытыми ключами, такой, как Internet: Privacy Enhanced Mail (PEM), которая базируется на централизованном управлении и обязательном централизованном доверии. Стандартные схемы основываются на иерархии Удостоверения Авторства, когда диктуется, кому вы должны доверять. Децентрализованный вероятностный метод PGP для определения законности общего ключа — центральная часть архитектуры управления ключами. PGP позволяет вам быть единственным, кто выбирает, кому вам доверять, помещая вас в верхней части вашей собственной индивидуальной пирамиды достоверности. PGP — для тех людей, которые предпочитают сами упаковывать их собственный парашют.
Как защитить секретные ключи от раскрытия.
Тщательно защищайте ваш собственный секретный ключ и фразу пароля. По-настоящему тщательно. Если случилось так, что ваш секретный ключ скомпрометирован, срочно известите об этом все заинтересованные стороны, до того, как ваш ключ будет использован кем-либо для генерации подписи с вашим именем. Например, ваш ключ может быть использован для подписи поддельных удостоверений открытых ключей, что может создать определенные проблемы для широкого круга людей, особенно если вашей подписи широко доверяют. И, разумеется, компрометация вашего секретного ключа может дать возможность просмотра всех сообщений, адресованных вам.
Для начала всегда сохраняйте физический контроль над вашим секретным ключом. Если вы храните его на вашем личном домашнем или переносном компьютере, то это вполне нормально. Если вы должны использовать компьютер на работе, над которым вы не всегда имеете физический контроль, то тогда храните ваши ключи на защищенной от записи дискете и не оставляйте ее, уходя с работы. Отнюдь не будет способствовать сохранности секретного ключа его хранение на удаленном компьютере, который работает в режиме разделения времени, например, в Unix. Кто-нибудь может подключиться и прослушивать вашу модемную линию, узнать таким образом фразу пароля и получить затем ваш секретный ключ с удаленной системы. Вы должны использовать ваш секретный ключ только на той машине, над которой у вас есть физический контроль.
Не храните вашу фразу пароля на том же компьютере, на котором хранится ваш секретный ключ. Хранение секретного ключа и фразы пароля для него на одном и том же компьютере столь же опасно, как хранение вашего кода в одном бумажнике с кредитной карточкой. Вы же не хотите, чтобы кто-нибудь получил доступ к этому компьютеру и получил одновременно и ключ и пароль. Наиболее безопасным будет вообще нигде не записывать фразу пароля, а просто запомнить ее и не хранить ее нигде, кроме вашей головы.
Если же вы чувствуете, что ее необходимо записать, сделайте это, но как следует защитив ее, даже лучше, чем файл с секретным ключом.
Храните резервные копии вашего каталога секретных ключей — помните, что если у вас есть единственная копия секретного ключа, то его потеря сделает бесполезными все копии вашего открытого ключа, которые вы уже распространили по всему миру.
Децентрализованный подход, который PGP использует для управления открытыми ключами, имеет свои преимущества, но, к сожалению, в то же время это означает, что мы не можем полагаться на один центральный список скомпрометированных ключей. Этот факт делает несколько более трудным распространение информации о компрометации секретных ключей. Вы должны просто распространять словесную информацию и надеяться, что все ее услышат.