В процессе управления ключами УЦ имеет возможность отзыва выпущенных им сертификатов, что необходимо для досрочного прекращения их действия, например, в случае компрометации ключа. Процедура проверки ЭЦП предусматривает помимо подтверждения ее математической корректности еще и построение, и проверку цепочки сертификатов до доверенного УЦ, а также проверку статусов сертификатов в цепочке.
Таким образом, проверка статусов сертификатов важна для приложений, использующих ИОК, поскольку, например, принятие к обработке подписанного ЭЦП документа, соответствующий сертификат ключа подписи которого аннулирован, может быть впоследствии оспорено и привести к финансовым потерям.
В ОС Microsoft Windows встроена поддержка технологии ИОК. Многие приложения, работающие под управлением этих ОС, используют интерфейс CryptoAPI для осуществления функций криптографической защиты информации. Функции CryptoAPI используют, например, следующие приложения: Internet Explorer, Outlook Express, Outlook, Internet Information Server и др.
По умолчанию CryptoAPI осуществляет проверку статусов сертификатов с использованием СОС (CRL). СОС представляет собой список аннулированных или приостановленных сертификатов, издаваемый периодически – например, раз в неделю. СОС не отражает информацию о статусах в реальном времени, а также имеет ряд других недостатков, которых лишён протокол OCSP – протокол получения статуса сертификата в реальном времени.
Архитектура CryptoAPI предоставляет возможность подключения внешнего модуля проверки статуса сертификата – Revocation Provider.
КриптоПро Revocation Provider предназначен для встраивания проверки статусов сертификатов открытых ключей в режиме реального времени по протоколу OCSP в ОС Windows.
КриптоПро Revocation Provider предназначен для встраивания проверки статусов сертификатов открытых ключей в режиме реального времени по протоколу OCSP в ОС Windows.
КриптоПро Revocation Provider, будучи установлен в системе, встраивается в CryptoAPI и тем самым обеспечивает проверку статусов сертификатов во всех приложениях по протоколу OCSP, причём менять что-либо в самих приложениях не требуется. Revocation Provider вызывается автоматически каждый раз, когда приложение осуществляет действия с сертификатом. Проверка сертификата в реальном времени по протоколу OCSP обеспечивает большую безопасность по сравнению с СОС.
Схема встраивания Revocation Provider в ОС представлена на рисунке.

КриптоПро Revocation Provider функционирует в следующих операционных системах:
- Microsoft Windows 2000 / XP / 2003 / Vista / 2008 / W7 / 2008 R2.
КриптоПро Revocation Provider:
- Встраивает проверку статуса сертификатов по протоколу OCSP во все приложения операционной системы.
- Не требует модификации приложений для использования своих возможностей.
- Уменьшает риск стать жертвой мошенничества или понести ответственность.
- Совместим с серверными приложениями.
- Автоматически проверяет статусы сертификатов OCSP-серверов.
- Поддерживает расширение id-pkix-ocsp-nocheck. Если такое расширение присутствует в сертификате OCSP-сервера, то статус этого сертификата не проверяется.
- Автоматически проверяет, уполномочен ли OCSP-сервер Удостоверяющим Центром, издавшим проверяемый сертификат, выдавать информацию о статусе данного сертификата.
- Настраивается через групповые политики.
- Даёт возможность настройки доверия к конкретным OCSP-серверам.
- При невозможности проверки сертификата по протоколу OCSP передаёт его в Microsoft Revocation Provider, который проводит проверку по СОС.
- Может осуществлять соединения по защищённому протоколу TLS (SSL).
- Устанавливается с помощью Windows Installer.
Как вызывается Revocation Provider
Будучи установленным в системе, Revocation Provider вызывается для проверки сертификата(ов) при каждом вызове функции CryptoAPI CertVerifyRevocation. Фактически, все параметры этой функции передаются без изменений в Revocation Provider. Помимо непосредственного вызова, эта функция, а значит и Revocation Provider, вызывается неявно внутри функций CertGetCertificateChain и WinVerifyTrust.
Как работает Revocation Provider
Когда приложение, работающее с CryptoAPI, вызывает функцию проверки статуса сертификата, в Revocation Provider передаётся этот сертификат вместе с рядом дополнительных параметров.
Revocation Provider, получив на проверку сертификат, создаёт OCSP-запрос на данный сертификат и обращается к одной или нескольким службам OCSP с этим запросом. При получении OCSP-ответа, осуществляет его проверку. Если ответ проходит проверку и содержит статус сертификата good или revoked, в отличие от unknown (см. RFC2560), то на этом проверка заканчивается и полученный статус возвращается приложению. Если же ответ содержит статус unknown или не проходит проверку, то происходит обращение по следующему адресу.
Очерёдность обращения к службам OCSP определяется следующим образом:
- По расширению AIA (AuthorityInformationAccess) в сертификате. Среди различных точек AIA выбирает те, к которым указан метод доступа по протоколу OCSP, обращения к ним происходят по очереди их расположения в сертификате.
- Если ни по одному из адресов OCSP-серверов, указанных в расширении AIA сертификата, не удаётся получить удовлетворяющий этим условиям ответ, или если таких адресов в сертификате не указано, то Revocation Provider пробует обратиться за статусом к OCSP-серверу, адрес которого задан групповой политикой, если она определена.
Если на предыдущих шагах не удаётся получить удовлетворяющем описанным условиям ответ, то сертификат передаётся на проверку в Microsoft Revocation Provider, входящий в состав ОС Windows. Microsoft Revocation Provider осуществляет проверку данного сертификата с использованием СОС. Полученный статус сертификата возвращается приложению.
КриптоПро Revocation Provider использует сертифицированное ФСБ России средство криптографической защиты КриптоПро CSP 3.0.
Для того, чтобы получить сетевую версию дистрибутива КриптоПро Revocation Provider вам нужно зарегистрироваться.
Для штатной работы необходимо устанавливать КриптоПро Revocation Provider с дистрибутива, полученного у производителя на материальном носителе.
Предупреждение. Срок использования КриптоПро Revocation Provider ограничен 30 днями с момента установки. Для дальнейшей эксплуатации необходимо получить лицензию на использование продукта в ООО "Крипто-Про" или у официального дилера.
Использование КриптоПро Revocation Provider регламентируется Лицензионным соглашением с ООО "Крипто-Про" или Договором, заключенным между ООО "Крипто-Про" (или дилером) и Пользователем (физическим или юридическим лицом).
Перейти к загрузке.
Сервер OCSP
Чтобы обеспечить использование протокола OCSP для проверки статусов сертификатов, используемых в конкретной информационной системе, необходимо, чтобы в данной системе работал сервер OCSP.
В качестве сервера OCSP для КриптоПро Revocation Provider можно использовать КриптоПро OCSP Server.


