Skip to content

Сертификат открытого ключа ЭЦП

Общее описание

Сертификат открытого ключа, или просто сертификат, — это цифровой документ, удостоверяющий принадлежность открытого ключа конкретному субъекту (пользователю, организации, серверу и т.д.). Он используется в системах асимметричной криптографии для обеспечения: - аутентификации; - целостности данных; - доверия между участниками обмена информацией.

Сертификат подписан удостоверяющим центром (УЦ), что позволяет проверить его подлинность. В России сертификаты могут быть выданы как государственными УЦ (например, Минцифры), так и коммерческими (Контур, СКБ Контур, Код безопасности и др.).


Основные понятия

1. Открытый ключ

  • Используется для:
  • шифрования данных (только соответствующий закрытый ключ может их расшифровать);
  • проверки электронной подписи (подписанной соответствующим закрытым ключом).
  • Может свободно распространяться.

2. Сертификат X.509

  • Стандарт описания формата цифровых сертификатов.
  • Версии: v1, v2, v3 (наиболее распространённая).

3. Удостоверяющий центр (УЦ)

  • Организация, выпускающая и подписывающая сертификаты.
  • Примеры:
  • Государственные: УЦ Минцифры РФ, УЦ ФСБ
  • Коммерческие: Контур, СКБ Контур, Код безопасности, Актив

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

Поле Описание
Version Версия сертификата (v1, v2, v3)
Serial Number Уникальный номер сертификата
Signature Algorithm Алгоритм подписи (RSA, ECDSA, ГОСТ Р 34.10)
Issuer Имя удостоверяющего центра
Validity Период действия: Not Before / Not After
Subject Имя владельца сертификата
Public Key Info Информация об открытом ключе
Extensions Дополнительные поля (например, Subject Alternative Name, Key Usage, Extended Key Usage)
Signature Подпись сертификата УЦ

Типы сертификатов

Тип Назначение
SSL/TLS-сертификаты Защищённое соединение HTTPS
Клиентские сертификаты Аутентификация пользователя на сервере
Электронная подпись (signing) Для создания ЭЦП по ГОСТ
Шифрование (encryption) Для зашифрования данных
Квалифицированный сертификат Соответствует требованиям законодательства РФ, используется в ЕГАИС, ЕИС, налоговых системах и др.

Хранилища сертификатов

1. Windows Certificate Store

  • LocalMachine – для всех пользователей системы
  • CurrentUser – только для текущего пользователя
  • Trusted Root Certification Authorities – доверенные корневые УЦ
  • Intermediate Certification Authorities – промежуточные УЦ
  • Personal (Личное) – сертификаты с закрытыми ключами
  • Trusted People – доверенные лица и субъекты

2. Файловые форматы

Формат Описание
.cer, .der Только открытый ключ (без закрытого)
.p7b Сертификаты без закрытых ключей
.pfx, .p12 Сертификаты + закрытый ключ, защищён паролем
.crt, .pem Открытый ключ в Base64-формате

Получение сертификата

1. Через запрос CSR (Certificate Signing Request)

  • Генерируется пара ключей (закрытый + публичный)
  • Создаётся CSR-файл, отправляемый УЦ
  • УЦ возвращает готовый сертификат
openssl req -new -newkey rsa:2048 -nodes -keyout private.key -out request.csr

2. Через УЦ напрямую

  • В интерфейсе УЦ создаётся ключевая пара
  • Сертификат скачивается вместе с закрытым ключом (обычно в формате .pfx)

Проверка сертификата

1. Через certmgr.msc

  • Открыть оснастку "Сертификаты"
  • Перейти в "Личное" → "Сертификаты"
  • Выбрать нужный сертификат и открыть его

2. Через командную строку

certutil -user -store -my

или

openssl x509 -in certificate.pem -text -noout

3. Проверка целостности цепочки

  • Корневой УЦ должен быть в хранилище "Доверенные корневые центры"
  • Промежуточные УЦ должны быть установлены

Интеграция с приложениями

Приложение Поддержка сертификатов
КриптоАРМ Да, через КриптоПро CSP
1С (ЕГАИС, ФНС, ПФР) Да
СБИС++ Да, через PKCS#11
Диадок Да
ЕГАИС Да
Web-браузеры Да, через Windows Store или файл
API-клиенты Да, через .pem/.pfx файлы

Особенности использования в терминальных средах

  • При использовании в RDS:
  • Убедитесь, что сертификат доступен в контексте каждого пользователя.
  • Закрытые ключи не должны быть общими между пользователями.
  • Используйте токены с перенаправлением через USB-устройства.

Диагностика проблем с сертификатами

Проблема Возможная причина Решение
"Не найден закрытый ключ" Ключ повреждён или не связан с сертификатом Импортировать заново (в случае неверного импорта) или перегенерировать (в случае повреждения) пару ключей
"Сертификат истёк" Срок действия закончился Получить новый сертификат
"Сертификат не доверен" Отсутствует корневой/промежуточный УЦ Установить недостающие сертификаты
"Ошибка проверки цепочки" Некорректная структура цепочки Установить все необходимые промежуточные сертификаты

Политики безопасности

Аспект Рекомендации
Срок действия Не более 3 лет для квалифицированных сертификатов
Длина ключа RSA ≥ 2048 бит, ECDSA ≥ 256 бит, ГОСТ ≥ 256 бит
Хранение Использовать аппаратные токены или HSM для закрытых ключей
Ротация Производить замену ключей и сертификатов перед истечением срока
Аннулирование Использовать CRL или OCSP для проверки статуса сертификата

Примечание: Все операции с сертификатами должны проводиться в защищённой среде. Некорректное управление сертификатами может привести к потере доверия, компрометации информации и нарушению работы критически важных систем.