Compartir a través de


PCRYPT_DECRYPT_PRIVATE_KEY_FUNC función de devolución de llamada (wincrypt.h)

[La función PCRYPT_DECRYPT_PRIVATE_KEY_FUNC está disponible para su uso en los sistemas operativos especificados en la sección Requisitos. Puede modificarse o no estar disponible en versiones posteriores.

La función PCRYPT_DECRYPT_PRIVATE_KEY_FUNC descifra la clave privada y devuelve la clave descifrada en el parámetro pbClearTextKey . PCRYPT_DECRYPT_PRIVATE_KEY_FUNC es una función de devolución de llamada especificada en una estructura de CRYPT_PKCS8_IMPORT_PARAMS . Se usa cuando una estructura de CRYPT_ENCRYPTED_PRIVATE_KEY_INFO contiene una clave privada que debe descifrarse. La función CryptImportPKCS8 usa esta función. El desarrollador debe implementar la función para que se adapte a cada aplicación.

Sintaxis

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

Estructura de CRYPT_ALGORITHM_IDENTIFIER que identifica el algoritmo usado para cifrar el tipo ASN.1 PrivateKeyInfo que se encuentra en el estándar PKCS #8.

[in] EncryptedPrivateKey

Valor de CRYPT_DATA_BLOB que identifica el BLOB de clave privada cifrada.

[out] pbClearTextKey

Puntero a un búfer BYTE para recibir el texto no cifrado. Este parámetro puede ser NULL. Para obtener más información, vea Recuperar datos de longitud desconocida.

[in, out] pcbClearTextKey

Puntero a un valor DWORD que identifica el tamaño, en bytes, del búfer pbClearTextKey . Si el tamaño es cero, pcbClearTextKey debe rellenarse con el tamaño, en bytes, necesario para descifrar la clave y pbClearTextKey debe omitirse.

[in] pVoidDecryptFunc

Valor LPVOID que proporciona datos usados en el descifrado, como clave, vector de inicialización y contraseña.

Valor devuelto

Si la función se ejecuta correctamente, la función devuelve un valor distinto de cero (TRUE).

Si se produce un error en la función, devuelve cero (FALSE).

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado wincrypt.h

Consulte también

CRYPT_ENCRYPTED_PRIVATE_KEY_INFO

CRYPT_PKCS8_IMPORT_PARAMS

CryptImportPKCS8