ћерион Ќетворкс

8 минут чтени€

Public Key Infrastructure (PKI) - это набор различных технологий, которые используютс€ дл€ обеспечени€ аутентификации источника, целостности данных и конфиденциальности дл€ пользовател€ в сети. PKI использует преимущества асимметричного шифровани€ и использует пары открытого и закрытого ключей дл€ шифровани€ данных.

¬ PKI открытый ключ обычно св€зан с цифровой подписью, чтобы добавить доверие и проверить сведени€ о владельце сертификата. Ќиже приведен ключевой жизненный цикл в PKI:

  • √енераци€ ключа: Ётот процесс определ€ет шифр и размер ключа.
  • √енераци€ сертификата: Ётот процесс создает цифровой сертификат и назначает его человеку или устройству.
  • –аспространение: ѕроцесс распространени€ отвечает за безопасное распространение ключа пользователю или устройству.
  • ’ранение: Ётот процесс отвечает за безопасное хранение ключа, чтобы предотвратить любой несанкционированный доступ к нему.
  • ќтзыв: —ертификат или ключ могут быть отозваны, если они скомпрометированы субъектом угрозы.
  • —рок действи€:  аждый сертификат имеет срок службы.

 аждый день мы посещаем различные веб-сайты, такие как социальные сети, стрим, новости, спорт, блоги и другие платформы. ќднако задумывались ли вы когда-нибудь о проверке подлинности веб-сайтов, которые вы посещаете? ¬ы, наверное, думаете, что всему, что находитс€ в »нтернете, нельз€ довер€ть. ’от€ это отчасти правда, мы можем довер€ть только ограниченному числу веб-сайтов, например, довер€ть веб-сайту вашего банка. √лавный вопрос заключаетс€ в том, как мы можем проверить подлинность веб-сайтов, которые мы посещаем? »менно здесь как PKI, так и цифровые сертификаты помогают установить доверие между хостом в »нтернете и нашим компьютером.


÷ентр сертификации

PKI играет жизненно важную роль в »нтернете, поскольку многим пользовател€м и устройствам требуетс€ метод установлени€ довери€ в самой ненадежной сети в мире Ц »нтернете. ѕонимание компонентов, которые помогают PKI обеспечить доверие, необходимую как пользовател€м, так и устройствам, имеет важное значение дл€ любого специалиста по кибербезопасности.

¬ы можете рассматривать PKI как набор процедур, правил, аппаратного и программного обеспечени€, а также людей, которые работают вместе дл€ управлени€ цифровыми сертификатами. ÷ифровой сертификат-это официальна€ форма идентификации объекта, котора€ провер€етс€ доверенной стороной. Ёти цифровые сертификаты выдаютс€ доверенной стороной в сети или »нтернете. ќни известны как ÷ентр сертификации (Certificate Authority - CA).

¬ каждой стране существует государственное учреждение, которое обычно отвечает за проверку личности своих граждан и выдачу удостоверений личности, такой как паспорт.

Ётот паспорт будет содержать важную информацию о владельце и сроке действи€, например, дату окончани€ срока действи€. ¬ сети и в »нтернете центр сертификации выполн€ет похожую роль и функции. ¬ »нтернете есть множество поставщиков, которые €вл€ютс€ доверенными центрами сертификации, которые позвол€ют вам приобретать цифровой сертификат дл€ личного использовани€. ѕримеры доверенных центров сертификации включают GoDaddy, DigiCert, Let's Encrypt, Comodo, Cloudflare и многие другие.

¬ажное примечание! ÷ифровой сертификат создаетс€ при объединении ключа и цифровой подписи. —ертификат будет содержать сведени€ о владельце сертификата, например, об организации.

÷— выдаст объекту цифровой сертификат только после того, как его личность будет проверена. ѕосле того, как ÷— создает цифровой сертификат, он сохран€етс€ в базе данных сертификатов, котора€ используетс€ дл€ безопасного хранени€ всех утвержденных ÷— цифровых сертификатов.

¬ажное примечание! ѕо истечении срока действи€ цифрового сертификата он возвращаетс€ в ÷—, который затем помещаетс€ в список отзыва сертификатов (Certificate Revocation List - CRL), который поддерживаетс€ ÷—.

÷ифровой сертификат форматируетс€ с использованием стандарта X.509, который содержит следующие сведени€:

  • Ќомер версии
  • —ерийный номер
  • »дентификатор алгоритма подписи
  • Ќазвание эмитента
  • —рок годности
  • Ќе раньше, чем
  • Ќе после
  • »м€ субъекта
  • »нформаци€ об открытом ключе субъекта
  • јлгоритм открытого ключа
  • ќткрытый ключ субъекта
  • ”никальный идентификатор эмитента (необ€зательно)
  • ”никальный идентификатор субъекта (необ€зательно)
  • –асширени€ (необ€зательно)
  • јлгоритм подписи сертификата
  • ѕодпись сертификата
  • –егистрирующий орган (RA)

—ледующий рисунок - это цифровой сертификат, который используетс€ дл€ проверки веб-сайта Cisco:

÷ифровой сертификат

 ак показано на предыдущем рисунке, видно, что CA - это HydrantID SSH ICA G2, который выдает сертификат на www.cisco.com на срок действи€ с 20 сент€бр€ 2019 года по 20 сент€бр€ 2021 года.

 ак показано на следующем рисунке, цифровой сертификат содержит дополнительную информацию, котора€ хранитс€ с использованием стандарта X.509:

‘орматирование X.509 в цифровом сертификате

ƒалее давайте рассмотрим, как создаетс€ цифрова€ подпись и ее роль в PKI.


÷ифрова€ подпись

ѕри совершении деловых операций на документах требуетс€ подпись, чтобы гарантировать, что сделка санкционирована соответствующим лицом. “ака€ же концепци€ требуетс€ в сети, так что цифрова€ подпись отправл€етс€ вместе с сообщением на конечный хост. «атем узел назначени€ может использовать цифровую подпись дл€ проверки подлинности сообщени€.

ѕри использовании PKI используютс€ следующие алгоритмы дл€ создани€ и проверки цифровых подписей:

  • DSA
  • RSA
  • Elliptic Curve Digital Signature Algorithm (ECDSA)

„тобы создать цифровую подпись, между јлисой (отправителем) и —ергеем јлексеевичем (получателем) происходит следующий процесс:

1) јлиса будет использовать алгоритм хешировани€ дл€ создани€ хэша (дайджеста) сообщени€:

—оздание хэша

2) «атем јлиса будет использовать свой закрытый ключ дл€ шифровани€ хэша (дайджеста) сообщени€:

—оздание цифровой подписи

÷ифрова€ подпись используетс€ в качестве доказательства того, что јлиса подписала сообщение.

„тобы лучше пон€ть, как используютс€ цифровые подписи в реальной жизни, давайте представим, что в сети есть два пользовател€. јлиса хочет отправить —ергею јлексеевичу сообщение. јлиса может использовать цифровую подпись с сообщением, чтобы заверить —ерге€ јлексеевича в том, что сообщение исходило именно от нее. Ёто шаги, которые јлиса будет использовать дл€ обеспечени€ подлинности, целостности и неотрицани€:

  1. јлиса создаст пару открытых и закрытых ключей дл€ шифровани€ данных.
  2. јлиса даст —ергею јлексеевичу только открытый ключ. “аким образом, закрытый ключ хранитс€ у јлисы.
  3. јлиса создаст сообщение дл€ —ерге€ јлексеевича и создаст хэш (дайджест) сообщени€.
  4. «атем јлиса будет использовать закрытый ключ дл€ шифровани€ хэша (дайджеста) сообщени€ дл€ создани€ цифровой подписи.
  5. јлиса отправит сообщение и цифровую подпись —ергею јлексеевичу.
  6. —ергей јлексеевич будет использовать открытый ключ јлисы дл€ расшифровки цифровой подписи, чтобы получить хэш сообщени€.
  7. —ергей јлексеевич также сгенерирует хэш сообщени€ и сравнит его с хэшем, полученным из цифровой подписи јлисы.  ак только два значени€ хэша (дайджеста) совпадают, это просто означает, что сообщение подписано и отправлено јлисой.

÷ифровые подписи используютс€ не только дл€ проверки подлинности сообщений. ќни также используютс€ в следующих случа€х:

  • ÷ифровые подписи дл€ цифровых сертификатов: это позвол€ет отправителю вставить цифровую подпись в цифровой сертификат.
  • ÷ифровые подписи дл€ подписи кода: это позвол€ет разработчику приложени€ вставить свою цифровую подпись в исходник приложени€, чтобы помочь пользовател€м проверить подлинность программного обеспечени€ или приложени€.

Ќа следующем рисунке показан пример приложени€, содержащего цифровой сертификат:

÷ифрова€ подпись в программном обеспечении

Ќа следующем рисунке показана дополнительна€ проверка цифровой подписи подписавшего:

ѕроверка цифровой подписи

—истема довери€ PKI

–анее мы узнали, что организаци€ может получить цифровой сертификат от доверенного центра сертификации в »нтернете. ќднако во многих крупных организаци€х вы обычно найдете корневой ÷— и множество промежуточных ÷—.  орневой ÷— отвечает за создание первичного цифрового сертификата, который затем делегируетс€ каждому подчиненному ÷— или промежуточному ÷—. ѕромежуточный ÷— будет использовать цифровой сертификат корневого сервера дл€ создани€ новых цифровых сертификатов дл€ конечных устройств, таких как внутренние серверы.

Ќа следующем рисунке показана иерархи€ корневого и промежуточного ÷—:

ƒоверительна€ система

»спользование этого типа иерархической структуры снимает нагрузку с корневого центра сертификации по управлению всеми цифровыми сертификатами в организации. Ќекоторые из этих об€занностей делегированы промежуточным серверам ÷— в сети. ѕредставьте, что в вашем головном офисе вы развернули корневой ÷—, а в каждом удаленном филиале развернули промежуточные ÷—. —ледовательно, каждый промежуточный ÷— отвечает за управление сертификатами своего собственного домена или филиала. Ёто также снижает риски взлома корневого ÷— злоумышленником, так что в случае взлома промежуточного ÷— корневой ÷— может быть отключен от сети, не затрагива€ другие конечные устройства или промежуточные ÷—.

¬ небольших сет€х можно развернуть один корневой ÷— дл€ предоставлени€ цифровых сертификатов каждому конечному устройству, как показано на следующем рисунке:

ќднокорневой ÷—

 ак показано на предыдущем рисунке, одним ÷— легко управл€ть. ќднако по мере роста сети наличие единственного центра сертификации в сети не позволит легко масштабироватьс€, поэтому необходимо использовать иерархическую структуру с корневым центром сертификации и промежуточными (подчиненными) центрами сертификации.


—кидки 50% в Merion Academy

¬ыбрать курс