CryptRetrieveTimeStamp 函式 (wincrypt.h)
CryptRetrieveTimeStamp函式會編碼時間戳記要求,並從 URL 指定的位置擷取時間戳記權杖, (TSA) 。
語法
BOOL CryptRetrieveTimeStamp(
[in] LPCWSTR wszUrl,
DWORD dwRetrievalFlags,
DWORD dwTimeout,
[in] LPCSTR pszHashId,
[in, optional] const CRYPT_TIMESTAMP_PARA *pPara,
[in] const BYTE *pbData,
DWORD cbData,
[out] PCRYPT_TIMESTAMP_CONTEXT *ppTsContext,
[out, optional] PCCERT_CONTEXT *ppTsSigner,
[out, optional] HCERTSTORE *phStore
);
參數
[in] wszUrl
Null 終止寬字元字串的指標,其中包含要傳送要求之 TSA 的 URL。
dwRetrievalFlags
一組旗標,指定擷取時間戳記的方式。
值 | 意義 |
---|---|
|
禁止 pbData 參數所指向之位元組陣列的雜湊計算。 |
|
在擷取的時間戳記上強制執行簽章驗證。
注意只有當pPara參數指向之CRYPT_TIMESTAMP_PARA的fRequestCerts成員設定為TRUE時,TIMESTAMP_VERIFY_CONTEXT_SIGNATURE旗標才有效。
|
|
將此旗標設定為禁止自動驗證處理。 |
dwTimeout
DWORD值,指定等候擷取的毫秒數上限。 如果此參數設定為零,則此函式不會逾時。
[in] pszHashId
包含雜湊演算法 物件識別碼 的 Null 終止字元字串指標, (OID) 。
[in, optional] pPara
CRYPT_TIMESTAMP_PARA結構的指標,其中包含要求的其他參數。
[in] pbData
要時間戳記之位元組陣列的指標。
cbData
pbData參數所指向陣列的大小,以位元組為單位。
[out] ppTsContext
PCRYPT_TIMESTAMP_CONTEXT結構的指標。 當您完成使用內容時,必須呼叫 CryptMemFree 函式來釋放它。
[out, optional] ppTsSigner
接收簽署者憑證 之PCERT_CONTEXT 的指標。 當您完成使用此結構時,必須將此指標傳遞至 CertFreeCertificateCoNtext 函式來釋放它。
如果不需要 TSA 簽署者的憑證,請將此參數設定為 Null 。
[out, optional] phStore
以時間戳記回應中憑證初始化的憑證存放區控制碼。 此存放區可用來驗證時間戳記回應的簽署者憑證。
如果不需要 TSA 支援憑證,此參數可以是 Null 。 當您完成使用此控制碼時,請將它傳遞給 CertCloseStore 函式來釋放它。
傳回值
如果函式無法擷取、解碼及驗證時間戳記內容,則會傳回 FALSE。 如需擴充的錯誤資訊,請呼叫 GetLastError 函 式。
規格需求
最低支援的用戶端 | Windows 7 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | wincrypt.h |
Dll | Crypt32.dll |