Femi написал:Чтобы Вам проверить статус сертификата в тот момент времени(в штампе который):
[...удалено...]
С OCSP этого осуществить никак нельзя.
Хотелось бы понять, принципиально нельзя?
Тогда какой смысл имеет класс CryptoPro::PKI::OCSP::CExtHistoricalRequest, описание которого фигурирует в заголовочном файле ocsp.h, который содержится в ocspsdk. Привожу комментарий к этому классу:
/**
* \brief Расширение Historical Request
*
* Запрос состояния сертификата на определенный момент в прошлом.
*
* \sa CExtValue, CExtension
*/
Если попробовать запустить утилиту "ocsputil.exe makereq --help", она выдаёт:
ocsputil makereq 1.5
Usage: ocsputil makereq [OPTIONS]... [SUBJECT.CER[|ISSUER.CER]]...
-h, --help Print help and exit
-V, --version Print version and exit
Output Control:
-o, --request=FILE Output request file name
-f, --format=FORMAT Write request in specific format (possible
values="binary", "base64"
default=`base64')
Signature Control:
-c, --sign-cert=FILE Make signed OCSP-request with specified
certificate
--pincode=PINCODE Use pincode for access to private key
Request Control:
-A, --add-cert=FLAG Add additional certificates (possible
values="none", "only-cert",
"chain-except-root", "whole-chain")
-n, --nonce=FLAG Generate random nonce field (possible
values="no", "yes")
--acceptable-responce=FLAG
Include AcceptableResponses extension
(possible values="no", "yes")
--service-locator[=CERTFILE]
Include ServiceLocator extension from AIA of
certificate
--crl-locator[=CERTFILE] Include CRLLocator extension from CDP of
certificate
--hashalg=HASHALG Hash algorithm (ALGID or OID)
CryptoPro Request Extensions:
--hist-time=YYYYMMDDhhmmss.ddddddZ
Make historical request on date
--hist-crl-number=N Make historical request with CRL number
--hist-cdp-url=URL Make historical request with CDP
Обратите внимание на раздел "CryptoPro Request Extensions"
Я попробовал создать ocsp-запрос с таким расширением. Создаётся.
Попробовал послать его в
http://www.cryptopro.ru/ocsp/. Даже получаю ответ.
Если заказывать "historical request", то статус сертификата в ответе значится как неизвестен, независимо от значения времени --hist-time.
Если же не заказывать "historical request", то статус сертификата - валиден.