다음을 통해 공유


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

요청을 보낼 TSA의 URL을 포함하는 null로 끝나는 와이드 문자열에 대한 포인터입니다.

dwRetrievalFlags

타임스탬프를 검색하는 방법을 지정하는 플래그 집합입니다.

의미
TIMESTAMP_DONT_HASH_DATA
0x00000001
pbData 매개 변수가 가리키는 바이트 배열에 대한 해시 계산을 억제합니다.
TIMESTAMP_VERIFY_CONTEXT_SIGNATURE
0x00000020
검색된 타임스탬프를 통해 서명 유효성 검사를 적용합니다.
참고TIMESTAMP_VERIFY_CONTEXT_SIGNATURE 플래그는 pPara 매개 변수가 가리키는 CRYPT_TIMESTAMP_PARAfRequestCerts 멤버가 TRUE로 설정된 경우에만 유효합니다.
 
TIMESTAMP_NO_AUTH_RETRIEVAL
0x00020000
자동 인증 처리를 금지하도록 이 플래그를 설정합니다.

dwTimeout

검색 대기할 최대 시간(밀리초)을 지정하는 DWORD 값입니다. 이 매개 변수가 0으로 설정된 경우 이 함수는 시간 초과되지 않습니다.

[in] pszHashId

해시 알고리즘 개체 식별자 (OID)를 포함하는 null로 끝나는 문자열에 대한 포인터입니다.

[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