Compartir a través de


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

La función de devolución de llamada PFN_CMSG_IMPORT_KEY_AGREE importa una clave de cifrado de contenido para un destinatario de transporte de claves de un mensaje sobre. PFN_CMSG_IMPORT_KEY_AGREE se pueden instalar mediante una (OID) de CryptoAPIidentificador de objeto. La función CryptMsgControl llama a esta función cuando su parámetro dwCtrlType se establece en CMSG_CTRL_DECRYPT.

Sintaxis

PFN_CMSG_IMPORT_KEY_AGREE PfnCmsgImportKeyAgree;

BOOL PfnCmsgImportKeyAgree(
  [in]  PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm,
  [in]  PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara,
  [in]  DWORD dwFlags,
        void *pvReserved,
  [out] HCRYPTKEY *phContentEncryptKey
)
{...}

Parámetros

[in] pContentEncryptionAlgorithm

Puntero a una estructura de CRYPT_ALGORITHM_IDENTIFIER que especifica el algoritmo utilizado para cifrar el contenido del mensaje y los parámetros asociados.

[in] pKeyAgreeDecryptPara

Puntero a una estructura de CMSG_CTRL_KEY_AGREE_DECRYPT_PARA que contiene información sobre el destinatario del contrato de clave.

[in] dwFlags

Este valor no se usa. Establézcalo en cero.

pvReserved

Este parámetro está reservado y debe ser NULL.

[out] phContentEncryptKey

Dirección de un identificador de la clave de cifrado de contenido devuelta por esta función.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es distinto de cero (TRUE).

Si se produce un error en la función, el valor devuelto es cero (FALSE). Para obtener información de error extendida, llame a GetLastError.

Si esta función de devolución de llamada no admite el algoritmo de cifrado de claves, debe devolver FALSE y llamar a SetLastError con E_NOTIMPL.

Observaciones

Puede usar funciones de compatibilidad con OID para implementar esta función de devolución de llamada. Wincrypt.h define las constantes siguientes para este propósito.

Constante Definición
CMSG_OID_IMPORT_KEY_AGREE_FUNC o CMSG_OID_CAPI1_IMPORT_KEY_AGREE_FUNC "CryptMsgDllImportKeyAgree"

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP [solo aplicaciones de escritorio]
servidor mínimo admitido Windows Server 2003 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de wincrypt.h