共用方式為


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

一組旗標,指定擷取時間戳記的方式。

意義
TIMESTAMP_DONT_HASH_DATA
0x00000001
禁止 pbData 參數所指向之位元組陣列的雜湊計算。
TIMESTAMP_VERIFY_CONTEXT_SIGNATURE
0x00000020
在擷取的時間戳記上強制執行簽章驗證。
注意只有當pPara參數指向之CRYPT_TIMESTAMP_PARAfRequestCerts成員設定為TRUE時,TIMESTAMP_VERIFY_CONTEXT_SIGNATURE旗標才有效。
 
TIMESTAMP_NO_AUTH_RETRIEVAL
0x00020000
將此旗標設定為禁止自動驗證處理。

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

另請參閱

CryptVerifyTimeStampSignature