BuildOCSPRequest

Цифровые подписи

Описание

Encodes an RFC 6960 OCSP status request for a certificate.

Синтаксис

Delphi

Function TPDFlib.BuildOCSPRequest(Const SubjectCertDER, IssuerCertDER: AnsiString): AnsiString;

Параметры

SubjectCertDERСертификат, о статусе которого спрашивают, в кодировке DER
IssuerCertDERВыпустивший его сертификат в кодировке DER

Возвращаемые значения

RequestOCSPRequest в кодировке DER
Empty stringОдин из сертификатов не удалось прочитать, либо они не принадлежат друг другу; GetTimeStampError несет причину

Примечания

CertID строится из имени издателя и серийного номера сертификата субъекта плюс открытого ключа сертификата издателя, хешируемых SHA-1, как фиксировано в RFC 6960 §4.1.1. Хеш идентифицирует сертификат, но ничего не защищает

The pair is checked before anything is encoded: the subject certificate's issuer name must be the issuer certificate's subject name. A mismatched pair produces a request the responder answers with unknown, which reads like a revocation problem rather than a caller mistake, so it is refused here instead.

Nonce не запрашивается. Многие центры раздают заранее подготовленные ответы и отклоняют запрос с nonce целиком, а ответ, подшитый в хранилище безопасности документа, проверяется позже, а не вживую

См. также

FetchOCSPResponse, GetOCSPResponseStatus, GetCertificateOCSPURLs