Администрирование информационных систем Лекция 6

advertisement
Администрирование информационных систем
Лекция 6
Цифровые сертификаты ключей упрощают задачу
определения, действительно ли открытый ключ
принадлежит предполагаемому владельцу.
Цифровой сертификат ключа — это информация,
приложенная к открытому ключу пользователя,
которая помогает другим установить, является
ли ключ подлинным и верным. Цифровые
сертификаты нужны для того, чтобы сделать
невозможной попытку выдать ключ одного
человека за ключ другого.
Прикладная криптосистема PGP (Pretty Good Privacy, Довольно хорошая секретность) была разработана и
опубликована в интернете в 1991 году программистом и математиком Массачусетского Политеха Филиппом
Циммерманом, по сути, оказавшись первым продуктом подобного уровня, представленным для свободного
доступа всему миру (за что впоследствии Циммерман поплатился несколькими годами уголовного
преследования со стороны Таможенной службы США — в то время экспорт стойких криптотехнологий за
пределы Штатов был запрещён). Изначальной целью разработки была защита гражданских прав
пользователей глобальной сети, а главной задачей программы стала криптографическая защита
электронной почты — шифрование.
Программа основана на так называемой асимметричной криптографии, использующей взаимосвязанные пары
ключей: закрытый, хранящийся только у владельца для цели расшифрования данных и их цифрового
подписания, и открытый, который не нуждается в защите, может быть широко распространен и используется
для зашифрования и сличения цифровых подписей (все эти уникальные возможности достигаются за счёт
особого математического аппарата). Это идеальное решение для людей, не имеющих существующего
согласованного тайного ключа.
С тех пор PGP претерпел значительные изменения и преобразился, как согласно духу времени и новых угроз, так
и вследствие того, что теперь значительную часть пользователей программы составляют не только обычные
люди, но и крупные организации и бизнесы. Сегодня PGP — это несколько линеек приложений,
различающихся назначением и перечнем решаемых задач, функциональностью, принципами работы и
средой исполнения, но объединённых полной совместимостью благодаря стандарту OpenPGP, а также своей
исключительной надёжностью в обеспечении защиты информации.
Долгая история PGP привлекла к криптосистеме внимание огромного числа пользователей, исследователей,
специалистов. Тому способствовал и ряд дополнительных обстоятельств. Во-первых, программа всегда была
условно-бесплатна. Даже после перехода разработки на коммерческие рельсы продолжают выходить
freeware-версии, отличающиеся от платных лишь чуть меньшей функциональностью (по большому счету,
только отсутствием PGPdisk). Во-вторых, разработчики — выдающиеся программные инженеры и эксперты в
области информационной безопасности — всегда публиковали исходные тексты программы для их
свободного изучения, что является необходимым условием для поддержания высокой надёжности и
выдающейся репутации системы. Закрытые исходные тексты лишь осложняют изучение программы на
наличие брешей, "потайных ходов" и ошибок в реализации. С другой стороны, тот факт, что даже наличие
открытых исходных текстов не привело к взлому PGP, красноречиво свидетельствует о надёжности
программы.
PGP объединяет в себе лучшие стороны как симметричной криптографии, так и криптографии с
открытым ключом. PGP — это гибридная криптосистема.
Когда человек зашифровывает данные с помощью PGP, PGP для начала их сжимает. Сжатие
уменьшает время их модемной передачи и экономит дисковое пространство, а так же, что
более важно, усиливает криптографическую стойкость. Большинство криптоаналитических
техник основано на статистическом анализе шифротекста в поисках признаков открытого
текста. Сжатие уменьшает число таких признаков, чем существенно усиливает
сопротивляемость криптоанализу.
Затем, PGP создаёт сеансовый ключ, который, по сути, — одноразовый симметричный ключ,
применяемый только для одной операции. Этот ключ — псевдослучайное число,
сгенерированное от случайных движений вашей мышки и нажатий клавиш. Сеансовый ключ
работает на основе очень надёжного, быстрого симметричного алгоритма, которым PGP
зашифровывает сжатое сообщение; в результате получается шифротекст. Как только данные
зашифрованы, сеансовый ключ также шифруется, но уже открытым ключом получателя. Этот
зашифрованный открытым ключом сеансовый ключ передаётся получателю вместе с
шифртекстом.
Расшифрование происходит в обратном порядке. PGP получателя использует его закрытый ключ
для извлечения сеансового ключа из сообщения, которым шифртекст исходного послания
восстанавливается в открытый текст.
Таким образом, комбинация этих двух методов объединяет удобство шифрования открытым
ключом со скоростью работы симметричного алгоритма. Симметричное шифрование
примерно в тысячу раз быстрее асимметричного. Шифрование открытым ключом, в свою
очередь, представляет простое решение проблемы управления ключами и передачи данных.
Используемые совместно, скорость исполнения и управление ключами взаимно дополняются
и улучшаются без какого-либо ущерба безопасности.
Цифровой сертификат состоит из трёх компонентов:
 открытого ключа;
 сведений сертификата (информация о личности
пользователя, как то: имя, ID, и т.п.);
 одной или более цифровых подписей.
Цель ЭЦП на сертификате — указать, что сведения
сертификата были заверены третьим лицом или
организацией. В то же время цифровая подпись не
подтверждает достоверность сертификата как
целого; она является поручительством только того,
что подписанный ID связан с данным открытым
ключом.
Таким образом, сертификат, обычно, — это открытый ключ с
прикреплёнными к нему одной или несколькими формами ID плюс
отметка подтверждения от доверенного лица.
Сертификаты применяются, когда нужно обменяться с кем-нибудь
ключами.
Способы распространения:
 Ручной
 В виде хранилища-депозитария (сервера сертификатов)
Ручной способ характерен для небольших групп людей,
устанавливающих криптографированную связь (не составит труда
просто передать друг другу дискеты или отправить электронные
письма, содержащие копии их ключей).
При необходимости обеспечить достаточную надёжность и
безопасность, предоставления возможности хранения и обмена
ключами, используют системный подход.
Такая система может реализоваться в форму простого хранилищадепозитария или иметь более сложную и комплексную структуру,
предполагающую дополнительные возможности
администрирования ключей, и называемую инфраструктурой
открытых ключей (Public Key Infrastructure, PKI).
Сервер-депозитарий, также называемый сервером
сертификатов, или сервером ключей, — это база
данных, позволяющая пользователям оставлять
и извлекать из неё цифровые сертификаты.
Сервер ключей также может предоставлять
некоторые административные функции,
помогающие компании поддерживать свою
политику безопасности. Например, на хранение
могут оставляться только ключи,
удовлетворяющие определённым критериям.
PKI, как и сервер-депозитарий, имеет базу хранения сертификатов, но, в то же время,
предоставляет сервисы и протоколы по управлению открытыми ключами. В них входят
возможности выпуска, отзыва и системы доверия сертификатов. Главной же
возможностью PKI является введение компонентов, известных как Центр
сертификации (Certification Authority, CA) и Центр регистрации (Registration Authority,
RA).
Центр сертификации (ЦС) создаёт цифровые сертификаты и подписывает их своим
закрытым ключом. Из-за важности своей роли, ЦС является центральным компонентом
инфраструктуры PKI. Используя открытый ключ ЦС, любой пользователь, желающий
проверить достоверность (подлинность) конкретного сертификата, сверяет подпись
Центра сертификации и, следовательно, удостоверяется в целостности содержащейся в
сертификате информации.
Как правило, Центром регистрации (ЦР) называется система лиц, процессов и устройств,
служащая целям регистрации новых пользователей в структуре PKI (зачислению) и
дальнейшему администрированию постоянных пользователей системы. Также, ЦР
может производить «веттинг» — процедуру проверки того, принадлежит ли
конкретный открытый ключ предполагаемому владельцу.
ЦР — это человеческое сообщество: лицо, группа, департамент, компания или иная
ассоциация. С другой стороны, ЦС — обычно, программа, выдающая сертификаты
своим зарегистрированным пользователям.
Роль ЦР-ЦС аналогична той, что выполняет государственный паспортный отдел.
Как правило, цифровой сертификат — это набор
идентифицирующих сведений, связанных с открытым
ключом и подписанных доверенным третьим лицом
(посредником), дабы доказать их подлинность и
взаимосвязность.
Сертификат
может
быть
представлен в виде ряда форматов.
PGP поддерживает два формата сертификатов:
 Сертификаты
стандарта PGP (чаще называемые
просто ключами PGP)
 Сертификаты стандарта X.509
Сертификат PGP содержит следующие сведения (но не обязательно ограничен ими):

Версия PGP — какой версией программы PGP был создан ключ, связанный с сертификатом.

Открытый ключ владельца сертификата — открытая часть ключевой пары и её алгоритм: RSA, RSA
Legacy, DH (Diffie-Hellman) или DSA (Digital Signature Algorithm).

Сведения о владельце сертификата — информация, идентифицирующая личность пользователя, в
частности, его имя, адрес электронной почты, номер ICQ, фотография, и т.п.

ЭЦП владельца сертификата — это подпись закрытым ключом, соответвующим открытому ключу,
связанному с сертификатом (автоподпись).

Период действия сертификата — дата начала действия сертификата и дата окончания его действия;
указывает на то, когда сертификат станет недействительным (аналогично сроку действия
водительских прав). Если ключевая пара содержит дополнительные подключи шифрования
(subkeys), то здесь будет указан период действия каждого из них.

Предпочтительный алгоритм шифрования — указывает на то, каким симметричным алгоритмом
будет зашифрована информация для владельца сертификата. Поддерживаются следующие: CAST,
AES, IDEA, Triple-DES и Twofish.
Можно представить сертификат PGP в виде открытого ключа с одной или несколькими привязанными к
нему «бирками» . На этих «бирках» указана информация, описывающая владельца ключа, а также
подпись этого ключа, подтверждающая, что ключ и идентификационные сведения взаимосвязаны.
(Этот вид подписи называется автоподписью (self-signature); её содержит каждый PGP-сертификат.)
Уникальный аспект формата сертификатов PGP в том, что конкретный
сертификат может содержать множество подписей. Любой человек может
подписать идентификационно-ключевую пару, чтобы заверить, полагаясь на
своё личное убеждение, что открытый ключ принадлежит именно
указанному в ID пользователю.
На общественных серверах-депозитариях можно обнаружить определённые
ключи, как, например, принадлежащий создателю PGP Филу Циммерману,
содержащие огромное количество подписей.
Некоторые PGP-сертификаты состоят из открытого ключа с несколькими
«бирками», каждая из которых содержит собственное средство
«опознавания» владельца ключа (например, имя владельца и его рабочий email, прозвище владельца и его домашний e-mail, фотография владельца —
всё на одном сертификате). Список подписей на каждой из «бирок» может
быть различным; подписи указывают на достоверность определённой
«бирки» и её принадлежность открытому ключу, а не на то, что все «бирки»
достоверны.
«Достоверность» зависит от установившего её: подписи — это мнения, и разные
люди уделяют разную степень внимания проверке подлинности перед
подписанием ключа.
Х.509 — это другой очень распространённый формат. Все сертификаты Х.509
согласованы с международным стандартом ITU-T X.509; таким образом
(теоретически), сертификат Х.509, созданный для одного приложения, может
быть использован в любом другом, поддерживающим этот стандарт. На
практике, к сожалению, сложилось так, что разные компании создают
собственные расширения для Х.509, многие из которых друг с другом никак
не совместимы.
Имея дело с PGP-сертификатом, каждый может выступать в качестве
заверителя содержащейся в нём информации (за исключением случаев, когда
эта возможность намеренно ограничена системным администратором).
Однако, в случае сертификатов Х.509, заверителем может быть только Центр
сертификации или некто, специально уполномоченный им. (PGPсертификаты также в полной мере поддерживают иерархическое
структурирование системы доверия, использующее ЦС для удостоверения
сертификатов.)
Сертификат Х.509 — это набор стандартных полей, содержащих сведения о
пользователе или устройстве, и их соответствующий открытый ключ.
Стандарт Х.509 определяет, какие сведения входят в сертификат и как они
кодируются (формат данных).
Сертификат Х.509 содержит следующие сведения:

Версия Х.509 — указывает, на основе какой версии стандарта Х.509 построен данный сертификат, что
определяет, какая информация может в нём содержаться.

Открытый ключ владельца сертификата — открытый ключ наряду с идентификатором используемого
алгоритма (указывающим криптосистему, к которой принадлежит данный ключ) и прочая информация
о параметрах ключа.

Серийный номер сертификата — организация, создавшая сертификат, обязана снабдить его
уникальным серийным номером для его идентификации среди прочих сертификатов, выданных данной
организацией. Эта информация применяется в ряде случаев; например, при аннулировании
сертификата, его серийный номер помещается в реестр аннулированных сертификатов (Certificate
Revocation List, CRL).

Уникальный опознаватель владельца ключа (или DN, distinguished name — уникальное имя) — это имя
должно быть уникальным и единственным во всём Интернете. DN состоит из нескольких подсекций и
может выглядеть примерно так:
CN=Bob Davis, EMAIL=bdavis@pgp.com, OU=PGP Engineering, O=PGP Corporation, C=US
(Что обозначает Понятное имя субъекта, Электронную почту, Подразделение организации, Органицию и Страну соответственно.)




Период действия сертификата — дата начала действия сертификата и дата окончания его действия;
указывает на то, когда сертификат станет недействителен.
Уникальное имя издателя — уникальное имя организации, подписавшей сертификат. Обычно, это
наименование Центра сертификации. Использование сертификата подразумевает доверие организации,
его подписавшей. (В случаях с корневыми сертификатами выдавшая организация — как правило, этот
же ЦС — подписывает его сама.)
ЭЦП издателя — электронная подпись, созданная закрытым ключом организации, выдавшей
сертификат.
Идентификатор алгоритма подписи — указывает алгоритм, использованный ЦС для подписания
сертификата.
Существует ряд фундаментальных различий между форматами сертификатов Х.509 и PGP:
 можно лично создать собственный PGP-сертификат; необходимо запросить и получить
сертификат Х.509 от Центра сертификации;
 сертификаты Х.509 содержат только одно имя владельца сертификата;
 сертификаты Х.509 содержат только одну ЭЦП, подтверждающую достоверность
сертификата.
Чтобы получить сертификат Х.509, необходимо попросить ЦС выдать его:
 Клиент предоставляет свой открытый ключ, тем самым доказывая, что обладает
соответствующим частным, а также некоторые идентифицирующие сведения.
 Затем он электронно подписывает эти сведения и отправляет весь пакет — запрос
сертификата — в Центр сертификации.
 ЦС выполняет определённый процесс по проверке подлинности предоставленной вами
информации и, если всё сходится, создаёт сертификат и возвращает его вам.
Можно представить сертификат Х.509, как обычный бумажный сертификат или аттестат с
приклеенным к нему открытым ключом. На нём указано имя, а также некоторые
сведения о владельце, плюс подпись лица, выдавшего сертификат.
Достоверность (подлинность) есть убеждённость в том, что конкретный открытый ключ
принадлежит предполагаемому владельцу. Достоверность является одним из
важнейших принципов в среде системы открытых ключей, где необходимо определять
подлинность каждого конкретного сертификата.
После подтверждения, что открытый PGP-ключ корреспондента достоверен (т.е.
действительно принадлежит именно ему), можно подписать копию этого ключа на
своей связке ключей, чем подтвердить факт, что его проверили и нашли достоверным.
Чтобы другие знали степень доверия этому сертификату, можно экспортировать
подпись на сервер-депозитарий, с тем чтобы другие могли её видеть.
Некоторые компании уполномочивают один или более Центр сертификации (ЦС) на
проверку подлинности сертификатов. В организации, использующей PKI с
сертификатами Х.509, задача Центров регистрации состоит в приёме запросов на
сертификаты, а задача Центров сертификации — в выдаче сертификатов конечным
пользователям: процесс ответа на запрос пользователя на сертификат. В организации,
использующей PGP-сертификаты без PKI, задача ЦС — в проверке достоверности всех
PGP-сертификатов и подписании верных. Как правило, основная цель ЦС —
собственной подписью «связать» открытый ключ с идентификационной информацией,
содержащейся в сертификате, чем заверить третьих лиц, что были приняты
определённые меры по установлению связи между ключом и идентификационными
сведениями.
Центр сертификации в организации — это краеугольный камень системы доверия и
достоверности; в некоторых организациях, как, например, в тех, которые используют
PKI, ни один сертификат не считается достоверным, пока не будет подписан
доверенным ЦС.
Один из способов установления достоверности — определённый механический процесс.
Существует несколько вариантов его проведения. Например, можно попросить
корреспондента передать копию его открытого ключа «физически», т.е. на жёстком
носителе — магнитном или оптическом диске и т.п. Но зачастую это бывает неудобно и
неэффективно.
Другой вариант — сверить отпечаток (fingerprints) сертификата. Насколько уникальны
отпечатки пальцев каждого человека, настолько же уникальны и отпечатки каждого
сертификата PGP. Отпечаток — это хэш-значение сертификата пользователя, которое
показано как один из его параметров. В PGP отпечаток может быть представлен или
как шестнадцатеричное число, или как набор биометрических слов, фонетически
чётких, и применяемых для упрощения вербальной идентификации отпечатка.
Существует возможность установить достоверность сертификата позвонив владельцу
ключа и попросив его прочитать отпечаток с его ключа; необходимо сверить этот
отпечаток с тем, который находится на полученной копии. Некоторые с этой целью
помещают отпечатки ключей на свои визитные карточки.
Ещё один способ установления достоверности чужого сертификата — довериться тому,
что третье лицо провело процесс его удостоверения.
ЦС, например, ответственно за детальную проверку принадлежности открытого ключа
предполагаемому владельцу перед выдачей ему сертификата. Любой пользователь,
доверяющий ЦС, будет автоматически расценивать подлинными все сертификаты,
подписанные ЦС.
Другой аспект проверки достоверности состоит в том, чтобы убедиться, что сертификат
не был аннулирован (отозван).
Нельзя доверить людям удостоверять сертификаты. Как правило, если только владелец сам не
вручил копию ключа, необходимо положиться на чьё-то мнение о его достоверности.
В большинстве случаев люди полностью доверяют ЦС в установлении подлинности
сертификатов. Это значит, что все полагаются на то, что ЦС провёл всю механическую
процедуру удостоверения за них. Такая схема работает только до определённого предела в
количестве пользователей, перейдя который ЦС не сможет придерживаться прежнего уровня
тщательности процедуры проверки достоверности. В этом случае становится необходимым
добавление в систему дополнительных «удостоверителей».
ЦС также может быть мета-представителем (мета-поручителем). Мета-представитель не
только сам заверяет ключи, но и другим предоставляет полномочия заверения. Эти
доверенные представители могут удостоверять ключи с тем же результатом, что и метапредставитель. Однако, они не могут создавать новых доверенных представителей.
«Мета-представитель» и «доверенный представитель» — это термины PGP. В среде Х.509 метапредставитель называется корневым Центром сертификации (root CA), а доверенные
представители — подчинёнными, или промежуточными, Центрами сертификации
(subordinate CAs).
Корневой ЦС для подписания ключей использует закрытый ключ, связанный с особым типом
сертификата, называемым корневым сертификатом ЦС. Любой сертификат, подписанный
корневым ключом ЦС, становится достоверным любому другому сертификату, подписанному
корневым. Такой процесс удостоверения действует даже для сертификатов, подписанных
другим ЦС в [связанной] системе — если ключ промежуточного ЦС подписан ключом
корневого ЦС, любой сертификат подписанный первым расценивается верным в пределах
иерархии. Этот процесс отслеживания вдоль ветвей иерархии того, кто подписал какие
сертификаты, называется отслеживанием пути, или цепи, сертификатов.
В относительно закрытых системах, таких как небольшие
фирмы, можно без труда отследить путь сертификата
назад к корневому ЦС. Однако, пользователям зачастую
приходится связываться с людьми за пределами их
корпоративной среды, включая и таких, с которыми они
никогда не встречались, например, с поставщиками,
потребителями, клиентами и пр. Установление линии
доверия с теми, кто не был явно удостоверен ЦС,
становится непростой задачей.
Компании следуют одной из нескольких моделей доверия,
которые диктуют пользователям их действия по
установлению достоверности сертификатов. Существует
три различных модели:
 Прямое доверие
 Иерархическое доверие
 Сеть доверия (Web of Trust)
Прямое доверие — это простейшая из моделей доверия. В этой
схеме индивид верит, что ключ достоверен, поскольку знает,
откуда пришёл данный ключ. Все криптосистемы в той или
иной мере используют эту форму доверия. Например, в веббраузерах корневые ключи Центров сертификации
доверяются напрямую, т.к. находились в дистрибутиве
данного программного продукта. Если и существует какойлибо вид иерархии, то он распространяется из этих напрямую
доверяемых сертификатов.
В PGP пользователь, заверяющий ключи самостоятельно, не
прибегая к помощи доверенных представителей, использует
схему прямого доверия.
В иерархической системе существует ряд корневых сертификатов, от которых
распространяется доверие. Эти сертификаты могут либо сами заверять сертификаты
конечных пользователей, либо они могут назначать другие сертификаты, которые
будут заверять сертификаты пользователей по некоторой цепи. Достоверность
сертификатов-«листьев» устанавливается отслеживанием цепочки к их
удостоверителям, а от них уже к удостоверителям этих удостоверителей, и т.д. до тех
пор, пока не будет найдет напрямую доверяемый корневой сертификат.
Это накопительная модель доверия. Сертификат может быть доверяем напрямую или доверяем по
некоторой цепочке, уходящей к напрямую доверяемому корневому сертификату (метапредставителю), или может быть заверен группой доверенных представителей.
Теория «Шесть степеней разделения», утверждает, что любой индивид может установить некоторую
цепочку к любому другому индивиду на планете, используя шесть или менее человек в качестве
посредников. Это — сеть представителей.
Таково же и представление PGP о доверии. PGP использует цифровые подписи как собственный вид
поручительства. Когда один пользователь подписывает ключ другого, он становиться поручителем
этого ключа. Этот процесс, расширяясь, и образует Сеть доверия.
В среде PGP любой пользователь может выступать в качестве центра сертификации. Каждый
пользователь может заверить открытый ключ другого пользователя. Однако, такой сертификат
будет верным для иного пользователя только тогда, когда он распознаёт заверившего как
доверенного представителя.
На связке открытых ключей каждого пользователя хранятся следующие показатели:

рассматривает ли пользователь определённый ключ как достоверный (подлинный);

уровень доверия, предоставленный пользователем определённому ключу, с которым его владелец
будет выступать поручителем других ключей.
Пользователь указываете на своей копии проверяемого ключа, насколько весомым считает мнение
хозяина этого ключа о подлинности подписанных им ключей. Это исключительно система
репутации: определённые люди известны тем, что тщательно проверяют ключи и дают хорошие
подписи, которым люди доверяют как безоговорочному показателю достоверности.
Наивысший уровень доверия — безусловное доверие (Implicit Trust) — это
доверие к собственной ключевой паре. PGP полагает, что владелец закрытого
ключа должен доверять и действиям соответствующего открытого.
Существует три степени доверия, которые можно присвоить чужому открытому
ключу:
 Полное доверие
 Частичное доверие
 Нет доверия
Существует также три уровня достоверности:
 Подлинный
 Возможно подлинный
 Неопределённый
Чтобы дать другому ключу полномочия поручительства:
 Требуется достоверный ключ, который подписан доверенным
представителем
 Устанавливается уровень доверия, которого, заслуживает владелец.
PGP требует одну Полностью доверяемую или две Частично доверяемых
подписи, чтобы установить ключ как достоверный. Метод PGP
приравнивания двух Частичных к одной Полной аналогичен тому, как иногда
требуют два вида документов, удостоверяющих личность.
Сертификаты применимы только пока достоверны. Небезопасно полагаться на то, что сертификат будет
защищён вечно. В большинстве организаций и во всех PKI сертификат имеет ограниченный срок «жизни».
Этим уменьшается период, в который система может оказаться под угрозой, если сертификат окажется
скомпрометирован.
Таким образом, сертификат создаётся с заданным периодом достоверности, начинающимся с даты создания и
заканчивающимся датой истечения. Сертификат может быть использован в течение всего периода действия
(срока его жизни), по истечении которого перестаёт быть верным, поскольку достоверность его
идентификационно-ключевой пары более не может быть гарантирована.
Иногда возникает необходимость аннулировать сертификат до истечения срока его действия, например, в случае
увольнения владельца сертификата с настоящего места работы или когда становиться известно, что
закрытый ключ данного сертификата был скомпрометирован. Такой процесс аннулирования называется
ревокацией, отзывом, или отменой. Отозванный сертификат гораздо более подозрителен, нежели
просроченный. Просроченные сертификаты более непригодны к использованию, однако, не несут такой
угрозы скомпрометированности, как отменённые.
Кто бы ни подписал сертификат, он в любой момент может отозвать с него свою подпись (используя тот же
закрытый ключ, которым её создавал). Отозванная подпись указывает на то, что подписавший счёл, что
открытый ключ и идентификационная информация более не связаны друг с другом, или что открытый ключ
сертификата (или соответствующий закрытый) был взломан. Отозванная подпись имеет почти такое же
значение, как и аннулированный сертификат.
В случае с сертификатами Х.509, отозванная подпись представляет ровно то же самое, что и аннулированный
сертификат, поскольку вообще только одна подпись делала сертификат достоверным — подпись Центра
сертификации. Сертификаты PGP предоставляют дополнительную возможность аннулирования всего
сертификата (а не только подписей на нём), если вдруг он был скомпрометирован.
Только владелец сертификата (обладатель соответствующего закрытого ключа) или некто, специально
уполномоченный владельцем (т.н. «доверенный отменитель», designated revoker), может аннулировать PGPсертификат. (Уполномочивание третьего лица на отмену сертификата бывает полезным, т.к. потеря пароля к
закрытому ключу, которая обычно и служит поводом к аннулированию, делает исполнение этой процедуры
самим владельцем невозможным.) И только издатель сертификата Х.509 может его отменить.
После аннулирования сертификата очень важно оповестить всех
потенциальных корреспондентов, что он более недействителен. В случае
сертификата PGP, наиболее простой способ оповещения — это размещение
отменённого сертификата на сервере-депозитарии; таким образом, все, кто
могут решить связаться с вами, будут предупреждены не использовать этот
открытый ключ.
В среде PKI предупреждение об отмене сертификатов обычно происходит через
специальную структуру, называемую реестром аннулированных
сертификатов (Certificate Revocation List, CRL) и публикуемую Центром
сертификации. CRL содержит датируемый, актуальный список всех
аннулированных непросроченных сертификатов системы. Аннулированные
сертификаты остаются в списке только до момента своего фактического
истечения, после чего убираются оттуда — это предотвращает бесконечное
увеличение списка.
ЦС обновляет CRL через определённые регулярные промежутки времени.
Теоретически, это должно предотвратить непреднамеренное использование
аннулированного сертификата. Хотя, всё же остаётся вероятным случайное
применение скомпрометированного сертификата во временном промежутке
между публикациями CRL.
Ключевая фраза — это более длинный и сложный вариант пароля, который, в
теории, должен быть более безопасным. Обычно состоящая из нескольких
слов, ключевая фраза гораздо надёжней против стандартных «словарных»
атак, в ходе которых взломщик перебирает все слова из словаря в попытке
угадать ваш пароль. Наилучшие ключевые фразы довольно длинны и
комплексны, содержат как заглавные, так и строчные буквы, а также цифры,
знаки препинания и специальные символы.
PGP использует ключевую фразу чтобы зашифровать ваш закрытый ключ.
Закрытый ключ хранится на диске, зашифрованный хэшем-значением вашей
ключевой фразы как симметричным тайным ключом. Вы же используете
ключевую фразу, чтобы расшифровать и применять закрытый ключ.
Ключевая фраза должна быть такой, чтобы вам её было трудно забыть, а
другим — догадаться. Она должна быть чем-то, уже хранящимся в
долгосрочной памяти вашего мозга, а не придуманным с нуля.
Закрытый ключ абсолютно и совершенно бесполезен без его ключевой фразы.
PGP — это криптография, которая не позволит правительствам могучих
держав читать ваши файлы. И уж тем более она не позволит читать их
вам.
Говорят, что секрет — это уже не секрет, если его знают два человека.
Разделение закрытого ключа опровергает такое мнение. Хотя это и не
рекомендуемая практика, разделение закрытого ключа в определённых
ситуациях бывает необходимо. Например, корпоративные ключи подписания
(Corporate Signing Keys, CSK) — это закрытые ключи, используемые
компанией, например, для подписания правовых документов, важной личной
информации сотрудников или пресс-релизов для удостоверения авторства. В
данном случае будет полезно, чтобы несколько членов компании имело
доступ к закрытому ключу. Но это будет значить, что каждый из членов
команды сможет свободно и в полной мере действовать от лица компании.
В такой ситуации будет правильней разделить закрытый ключ между
несколькими лицами таким образом, что для восстановления его до рабочего
состояния необходимо присутствие более одного или двух обладателей
частей ключа. Если предоставлено слишком мало частей — ключ
неприменим.
В качестве примеров разделения ключа можно назвать разделение его на три
части с требованием любых двух из них или разделение на две части с
необходимостью использования обеих. Если в процессе восстановления
применяется криптографически защищённое сетевое соединение,
обладателям частей ключа для целей его объединения нет нужды
присутствовать вместе в одной географической точке.

Безопасность через неясность
Попытка обороняющейся стороны обезопасить систему, максимально усложнив ее, запутав
внутренние взаимосвязи и исходный код, чтобы потенциальному взломщику было труднее в
ней разобраться и попытаться найти слабые места в защите. Отказ от публикации исходного
кода криптосистем считается одним из примеров подобной практики, однако история учит
тому, что реально этот подход дает лишь временную отсрочку перед окончательным взломом.

Безопасность через открытость
Открытость — это состояние вычислительной системы (или нескольких систем), которое не
является уязвимостью, но:
◦ позволяет атакующему производить сбор защищенной информации;
◦ позволяет атакующему скрывать свою деятельность;
◦ содержит возможности, которые работают корректно, но могут быть легко использованы
в неблаговидных целях;
◦ является первичной точкой входа в систему, которую атакующий может использовать для
получения доступа или информации.
Download