Compartir a través de


Método IX509ExtensionKeyUsage::InitializeEncode (certenroll.h)

El método InitializeEncode inicializa la extensión mediante la enumeración X509KeyUsageFlags . Este método está habilitado para web.

Sintaxis

HRESULT InitializeEncode(
  [in] X509KeyUsageFlags UsageFlags
);

Parámetros

[in] UsageFlags

Valor de enumeración X509KeyUsageFlags . Puede ser una combinación or bit a bit de cualquiera de los valores siguientes.

Valor Significado
XCN_CERT_DIGITAL_SIGNATURE_KEY_USAGE
La clave se usa con un algoritmo de firma digital (DSA) para admitir servicios distintos de la firma de certificados, la firma de certificados o la firma de lista de revocación. A menudo, los DSA se usan para la autenticación.
XCN_CERT_NON_REPUDIATION_KEY_USAGE
La clave se usa para comprobar una firma digital como parte de un servicio que no es de reconocimiento que protege contra la denegación falsa de acción mediante una entidad de firma.
XCN_CERT_KEY_ENCIPHERMENT_KEY_USAGE
La clave se usa para el transporte de claves. Es decir, la clave se usa para administrar una clave pasada desde su punto de origen hasta su punto de uso real.
XCN_CERT_DATA_ENCIPHERMENT_KEY_USAGE
La clave se usa para cifrar los datos de usuario distintos de las claves criptográficas.
XCN_CERT_KEY_AGREEMENT_KEY_USAGE
La clave se usa para el contrato de clave. El acuerdo de clave o el protocolo de intercambio de claves permite a dos o más partes negociar un valor de clave sin transferir la clave y sin establecer previamente un secreto compartido.
XCN_CERT_KEY_CERT_SIGN_KEY_USAGE
La clave se usa para comprobar una firma de certificado. Este valor solo se puede usar para los certificados emitidos por las entidades de certificación.
XCN_CERT_OFFLINE_CRL_SIGN_KEY_USAGE
La clave se usa para comprobar una firma de lista de revocación de certificados (CRL) sin conexión.
XCN_CERT_CRL_SIGN_KEY_USAGE
La clave se usa para comprobar una firma CRL.
XCN_CERT_ENCIPHER_ONLY_KEY_USAGE
La clave se usa para cifrar los datos mientras se realiza el contrato de clave. También se debe especificar el valor de XCN_CERT_KEY_AGREEMENT_KEY_USAGE .
XCN_CERT_DECIPHER_ONLY_KEY_USAGE
La clave se usa para descifrar los datos mientras se realiza un acuerdo de clave. También se debe especificar el valor de XCN_CERT_KEY_AGREEMENT_KEY_USAGE .

Valor devuelto

Si la función se realiza correctamente, la función devuelve S_OK.

Si se produce un error en la función, devuelve un valor HRESULT que indica el error. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros. Para obtener una lista de códigos de error comunes, consulte Valores HRESULT comunes.

Código devuelto Descripción
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
El objeto ya se ha inicializado.

Comentarios

Debe llamar a InitializeEncode o InitializeDecode para poder usar un objeto IX509ExtensionKeyUsage . Los dos métodos se complementan entre sí. El método InitializeEncode permite construir un objeto de extensión de notación de sintaxis abstracta (ASN.1) codificado reglas de codificación distinguida (DER) a partir de datos sin procesar y el método InitializeDecode permite inicializar los datos sin procesar a partir de un objeto codificado.

Puede recuperar las siguientes propiedades para esta extensión:

  • La propiedad Critical identifica si la extensión es crítica. También puede especificar esta propiedad.
  • La propiedad ObjectId recupera el identificador de objeto de extensión (OID).
  • La propiedad KeyUsage recupera las restricciones que identifican los usos previstos de la clave pública (los datos de extensión sin procesar).

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado certenroll.h
Archivo DLL CertEnroll.dll

Consulte también

IX509ExtensionKeyUsage