Função CryptRetrieveTimeStamp (wincrypt.h)
A função CryptRetrieveTimeStamp codifica uma solicitação de carimbo de data/hora e recupera o token de carimbo de data/hora de um local especificado por uma URL para uma TSA (Autoridade de Carimbo de Data/Hora).
Sintaxe
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
);
Parâmetros
[in] wszUrl
Um ponteiro para uma cadeia de caracteres largos terminada em nulo que contém a URL da TSA para a qual enviar a solicitação.
dwRetrievalFlags
Um conjunto de sinalizadores que especificam como o carimbo de data/hora é recuperado.
Valor | Significado |
---|---|
|
Inibir o cálculo de hash na matriz de bytes apontada pelo parâmetro pbData . |
|
Impor a validação de assinatura no carimbo de data/hora recuperado.
Nota O sinalizador TIMESTAMP_VERIFY_CONTEXT_SIGNATURE será válido somente se o membro fRequestCerts do CRYPT_TIMESTAMP_PARA apontado pelo parâmetro pPara for definido como TRUE.
|
|
Defina esse sinalizador para inibir o tratamento automático de autenticação. |
dwTimeout
Um valor DWORD que especifica o número máximo de milissegundos a aguardar a recuperação. Se esse parâmetro for definido como zero, essa função não atingirá o tempo limite.
[in] pszHashId
Um ponteiro para uma cadeia de caracteres terminada em nulo que contém o OID ( identificador de objeto do algoritmo de hash).
[in, optional] pPara
Um ponteiro para uma estrutura CRYPT_TIMESTAMP_PARA que contém parâmetros adicionais para a solicitação.
[in] pbData
Um ponteiro para uma matriz de bytes a ser carimbada.
cbData
O tamanho, em bytes, da matriz apontada pelo parâmetro pbData .
[out] ppTsContext
Um ponteiro para uma estrutura PCRYPT_TIMESTAMP_CONTEXT . Quando terminar de usar o contexto, você deverá liberá-lo chamando a função CryptMemFree .
[out, optional] ppTsSigner
Um ponteiro para um PCERT_CONTEXT que recebe o certificado do signatário. Quando terminar de usar essa estrutura, você deverá liberá-la passando esse ponteiro para a função CertFreeCertificateContext .
Defina esse parâmetro como NULL se o certificado do signatário da TSA não for necessário.
[out, optional] phStore
O identificador de um repositório de certificados inicializado com certificados da resposta de carimbo de data/hora. Esse repositório pode ser usado para validar o certificado do signatário da resposta de carimbo de data/hora.
Esse parâmetro poderá ser NULL se os certificados de suporte da TSA não forem necessários. Quando terminar de usar esse identificador, solte-o passando-o para a função CertCloseStore .
Valor retornado
Se a função não puder recuperar, decodificar e validar o contexto de carimbo de data/hora, ela retornará FALSE. Para obter informações de erro estendidas, chame a função GetLastError .
Requisitos
Cliente mínimo com suporte | Windows 7 [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | wincrypt.h |
DLL | Crypt32.dll |