BuildOCSPRequest

數位簽章

描述

為憑證編碼 RFC 6960 OCSP 狀態請求。

語法

Delphi

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

參數

SubjectCertDER被詢問狀態的憑證,DER 編碼。
IssuerCertDER簽發它的憑證,DER 編碼。

傳回值

RequestOCSPRequest,DER 編碼。
Empty string兩張憑證之一無法讀取,或兩者不屬於同一鏈;原因由 GetTimeStampError 攜帶。

備註

CertID 由主體憑證的簽發者名稱與序號,加上簽發者憑證的公開金鑰組成,依 RFC 6960 §4.1.1 的規定以 SHA-1 雜湊。這個雜湊用來識別憑證,沒有任何保護作用

編碼之前會先核對這一對:主體憑證的簽發者名稱必須等於簽發者憑證的主體名稱。配對不符會產生 responder 以 unknown 回答的請求——看起來像撤銷問題,其實是呼叫端的錯,所以在這裡就先拒收。

不要求 nonce。許多憑證機構只提供預先產生的回應,遇到帶 nonce 的請求會直接拒絕;存進文件安全儲存區的回應是之後驗證,不是即時查驗

另見

FetchOCSPResponse, GetOCSPResponseStatus, GetCertificateOCSPURLs