0Pricing
Cryptology Academy · Урок

Что такое сертификат? Структура X.509

Разберите поля внутри сертификата SSL/TLS

«Что такое сертификат? Структура X.509» — бесплатный урок Cryptology Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cryptology Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cryptology Academy содержит 4 уроков всего.

Добро пожаловать

Сертификат X.509 связывает открытый ключ с идентичностью. Он лежит в основе HTTPS, шифрования электронной почты и подписания кода. Давайте разберём каждое поле.

Какую проблему решают сертификаты?

Любой может создать пару ключей RSA. Без сертификатов злоумышленник мог бы подставить свой открытый ключ вместо ключа Google. Сертификат — это подписанное CA доказательство того, что открытый ключ принадлежит определённому субъекту.

Поля сертификата X.509

Версия (v3), серийный номер (уникальный для каждого CA), издатель (идентичность CA), период действия (не ранее/не позднее), субъект (идентичность владельца), информация об открытом ключе субъекта, расширения, алгоритм подписи, подпись.

Имя субъекта (DN)

Distinguished Name использует атрибуты в стиле LDAP: CN=example.com (Common Name) O=Example Corp (Organization) C=US (Country) В современном TLS расширение Subject Alternative Name (SAN) содержит фактические имена узлов.

Альтернативные имена субъекта (SAN)

SAN содержит все имена узлов и IP-адреса, на которые распространяется сертификат: DNS:example.com DNS:www.example.com DNS:*.api.example.com Браузеры требуют SAN с 2017 года; поле CN игнорируется при проверке имени узла.

Период действия

Не ранее: самая ранняя дата, с которой сертификат действителен. Не позднее: дата окончания действия. Let's Encrypt выпускает сертификаты сроком на 90 дней, чтобы вынудить регулярно продлевать их и ограничить ущерб от компрометации. Большинство коммерческих CA предлагают сертификаты сроком на 1–2 года.

Открытый ключ в сертификате

Сертификат содержит открытый ключ субъекта в SubjectPublicKeyInfo: - Algorithm: rsaEncryption или id-ecPublicKey - Key: байты открытого ключа в кодировке DER Этот ключ используется для обмена ключами TLS или проверки подписи.

Чтение сертификата с помощью OpenSSL

# Inspect certificate from HTTPS site: openssl s_client -connect google.com:443 < /dev/null 2>/dev/null | openssl x509 -text -noout # Or from file: openssl x509 -in cert.pem -text -noout

Кодирование DER и PEM

DER: двоичное кодирование структуры сертификата ASN.1. PEM: закодированный в Base64 формат DER, заключённый между заголовками -----BEGIN CERTIFICATE-----. PEM удобен для чтения и используется веб-серверами. DER компактен и подходит для устройств.

Расширения сертификатов v3

Основные расширения: - Основные ограничения: isCA (true/false) и pathLen - Использование ключа: digitalSignature, keyEncipherment и т. д. - Расширенное использование ключа: serverAuth, clientAuth, codeSigning - Идентификатор ключа субъекта (SKI) и идентификатор ключа центра сертификации (AKI)

Сертификаты с подстановочным знаком

Сертификат с подстановочным знаком (*.example.com) охватывает все поддомены первого уровня: api.example.com, www.example.com и т. д. Он NOT охватывает вложенные поддомены (deep.api.example.com).

Быстрая проверка

Какое поле сертификата X.509 v3 содержит список допустимых имён хостов для TLS?

Итоги

Вы умеете читать и понимать сертификаты X.509. Далее мы изучим, как центры сертификации и цепочки доверия проверяют эти сертификаты.

Часто задаваемые вопросы

Урок «Что такое сертификат? Структура X.509» бесплатный?

Да — полный текст урока «Что такое сертификат? Структура X.509» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cryptology Academy, подпишись на CoddyKit PRO. Курс Cryptology Academy содержит 4 уроков всего.

Чему я научусь в уроке «Что такое сертификат? Структура X.509»?

Разберите поля внутри сертификата SSL/TLS Ты практикуешь Cryptology Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cryptology Academy?

Предыдущий опыт не требуется. Cryptology Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.

Сколько времени занимает урок «Что такое сертификат? Структура X.509»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cryptology Academy?

Да. Каждый урок Cryptology Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Что такое сертификат? Структура X.509
  2. Центры сертификации и цепочки доверия
  3. Отзыв сертификатов: CRL и OCSP
  4. Создание самоподписанных сертификатов с OpenSSL
← Назад к Cryptology Academy