Bagikan melalui


Fungsi CryptRetrieveTimeStamp (wincrypt.h)

Fungsi CryptRetrieveTimeStamp mengodekan permintaan stempel waktu dan mengambil token stempel waktu dari lokasi yang ditentukan oleh URL ke Time Stamping Authority (TSA).

Sintaks

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
);

Parameter

[in] wszUrl

Penunjuk ke string karakter lebar yang dihentikan null yang berisi URL TSA untuk mengirim permintaan.

dwRetrievalFlags

Sekumpulan bendera yang menentukan bagaimana stempel waktu diambil.

Nilai Makna
TIMESTAMP_DONT_HASH_DATA
0x00000001
Menghambat perhitungan hash pada array byte yang diacu oleh parameter pbData .
TIMESTAMP_VERIFY_CONTEXT_SIGNATURE
0x00000020
Terapkan validasi tanda tangan pada stempel waktu yang diambil.
Catatan Bendera TIMESTAMP_VERIFY_CONTEXT_SIGNATURE hanya valid jika anggota fRequestCertsdari CRYPT_TIMESTAMP_PARA yang ditujukkan oleh parameter pPara diatur ke TRUE.
 
TIMESTAMP_NO_AUTH_RETRIEVAL
0x00020000
Atur bendera ini untuk menghambat penanganan autentikasi otomatis.

dwTimeout

Nilai DWORD yang menentukan jumlah maksimum milidetik untuk menunggu pengambilan. Jika parameter ini diatur ke nol, fungsi ini tidak kehabisan waktu.

[in] pszHashId

Penunjuk ke string karakter yang dihentikan null yang berisi pengidentifikasi objek algoritma hash (OID).

[in, optional] pPara

Penunjuk ke struktur CRYPT_TIMESTAMP_PARA yang berisi parameter tambahan untuk permintaan tersebut.

[in] pbData

Penunjuk ke array byte yang akan diberi stempel waktu.

cbData

Ukuran, dalam byte, dari array yang ditujukkan oleh parameter pbData .

[out] ppTsContext

Penunjuk ke struktur PCRYPT_TIMESTAMP_CONTEXT . Setelah selesai menggunakan konteks, Anda harus membebaskannya dengan memanggil fungsi CryptMemFree .

[out, optional] ppTsSigner

Penunjuk ke PCERT_CONTEXT yang menerima sertifikat penanda tangan. Setelah selesai menggunakan struktur ini, Anda harus membebaskannya dengan meneruskan penunjuk ini ke fungsi CertFreeCertificateContext .

Atur parameter ini ke NULL jika sertifikat penanda tangan TSA tidak diperlukan.

[out, optional] phStore

Handel penyimpanan sertifikat yang diinisialisasi dengan sertifikat dari respons stempel waktu. Penyimpanan ini dapat digunakan untuk memvalidasi sertifikat penanda tangan respons stempel waktu.

Parameter ini bisa NULL jika sertifikat pendukung TSA tidak diperlukan. Setelah Anda selesai menggunakan handel ini, lepaskan dengan meneruskannya ke fungsi CertCloseStore .

Nilai kembali

Jika fungsi tidak dapat mengambil, mendekode, dan memvalidasi konteks stempel waktu, fungsi mengembalikan FALSE. Untuk informasi kesalahan yang diperluas, panggil fungsi GetLastError .

Persyaratan

   
Klien minimum yang didukung Windows 7 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header wincrypt.h
DLL Crypt32.dll

Lihat juga

CryptVerifyTimeStampSignature