Compartilhar via


PCRYPT_DECRYPT_PRIVATE_KEY_FUNC função de retorno de chamada (wincrypt.h)

[A função PCRYPT_DECRYPT_PRIVATE_KEY_FUNC está disponível para uso nos sistemas operacionais especificados na seção Requisitos. Ele pode estar alterado ou indisponível em versões subsequentes.]

A função PCRYPT_DECRYPT_PRIVATE_KEY_FUNC descriptografa a chave privada e retorna a chave descriptografada no parâmetro pbClearTextKey . PCRYPT_DECRYPT_PRIVATE_KEY_FUNC é uma função de retorno de chamada especificada em uma estrutura CRYPT_PKCS8_IMPORT_PARAMS . Ele é usado quando uma estrutura CRYPT_ENCRYPTED_PRIVATE_KEY_INFO contém uma chave privada que precisa ser descriptografada. A função CryptImportPKCS8 usa essa função. A função deve ser implementada pelo desenvolvedor para atender a cada aplicativo.

Sintaxe

PCRYPT_DECRYPT_PRIVATE_KEY_FUNC PcryptDecryptPrivateKeyFunc;

BOOL PcryptDecryptPrivateKeyFunc(
  [in]      CRYPT_ALGORITHM_IDENTIFIER Algorithm,
  [in]      CRYPT_DATA_BLOB EncryptedPrivateKey,
  [out]     BYTE *pbClearTextKey,
  [in, out] DWORD *pcbClearTextKey,
  [in]      LPVOID pVoidDecryptFunc
)
{...}

Parâmetros

[in] Algorithm

Uma estrutura CRYPT_ALGORITHM_IDENTIFIER que identifica o algoritmo usado para criptografar o tipo ASN.1 PrivateKeyInfo encontrado no padrão PKCS nº 8.

[in] EncryptedPrivateKey

Um valor CRYPT_DATA_BLOB que identifica o BLOB de chave privada criptografada.

[out] pbClearTextKey

Um ponteiro para um buffer BYTE para receber o texto não criptografado. Este parâmetro pode ser NULL. Para obter mais informações, consulte Recuperando dados de comprimento desconhecido.

[in, out] pcbClearTextKey

Um ponteiro para um valor DWORD que identifica o tamanho, em bytes, do buffer pbClearTextKey . Se o tamanho for zero, pcbClearTextKey deverá ser preenchido com o tamanho, em bytes, necessário para descriptografar a chave e pbClearTextKey deverá ser ignorado.

[in] pVoidDecryptFunc

Um valor LPVOID que fornece dados usados na descriptografia, como chave, vetor de inicialização e senha.

Retornar valor

Se a função for bem-sucedida, a função retornará diferente de zero (TRUE).

Se a função falhar, ela retornará zero (FALSE).

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho wincrypt.h

Confira também

CRYPT_ENCRYPTED_PRIVATE_KEY_INFO

CRYPT_PKCS8_IMPORT_PARAMS

CryptImportPKCS8