PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY función de devolución de llamada (wincrypt.h)
La función de devolución de llamada PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY genera la clave simétrica utilizada para cifrar el contenido de un mensaje sobre. La función CryptMsgOpenToEncode llama a esta función cuando inicializa la estructura CMSG_CONTENT_ENCRYPT_INFO .
Sintaxis
PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY PfnCmsgGenContentEncryptKey;
BOOL PfnCmsgGenContentEncryptKey(
[in, out] PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
[in] DWORD dwFlags,
void *pvReserved
)
{...}
Parámetros
[in, out] pContentEncryptInfo
Puntero a una estructura CMSG_CONTENT_ENCRYPT_INFO que contiene la clave.
[in] dwFlags
Este valor no se utiliza. Establézcalo en cero.
pvReserved
Este parámetro está reservado y debe ser NULL.
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.
Comentarios
Puede usar funciones de compatibilidad de OID para implementar esta función de devolución de llamada. Wincrypt.h define las constantes siguientes para este propósito.
Debe definir diferentes funciones de devolución de llamada para claves CAPI1 y claves cryptography API: Next Generation (CNG). Ambas funciones tienen la misma firma, pero usan identificadores de objeto diferentes (OID). La función a la que se llama depende del valor del miembro fCNG de la estructura de CMSG_CONTENT_ENCRYPT_INFO a la que apunta el parámetro pContentEncryptInfo . En la tabla siguiente se muestra la relación entre la función de devolución de llamada y el valor del miembro fCNG .
valor de fCNG | Constante | Definición |
---|---|---|
FALSE | CMSG_OID_GEN_CONTENT_ENCRYPT_KEY_FUNC o CMSG_OID_CAPI1_GEN_CONTENT_ENCRYPT_KEY_FUNC | "CryptMsgDllGenContentEncryptKey" |
TRUE | CMSG_OID_CNG_GEN_CONTENT_ENCRYPT_KEY_FUNC | "CryptMsgDllCNGGenContentEncryptKey" |
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 |