Método IX509PublicKey::get_EncodedParameters (certenroll.h)
La propiedad EncodedParameters recupera una matriz de bytes que contiene los parámetros asociados al algoritmo de clave pública . La matriz de bytes se representa mediante una cadena con codificación Unicode.
Esta propiedad es de solo lectura.
Sintaxis
HRESULT get_EncodedParameters(
EncodingType Encoding,
BSTR *pValue
);
Parámetros
Encoding
pValue
Valor devuelto
None
Observaciones
Llame al método InitializeFromEncodedPublicKeyInfo o al método Initialize para inicializar el objeto de clave pública antes de llamar a esta propiedad.
El objeto AlgorithmIdentifier Abstract Syntax Notation One (ASN.1) al que hace referencia el objeto SubjectPublicKeyInfo en un certificado X.509 versión 3 contiene un identificador de objeto de algoritmo (OID) y parámetros opcionales.
SubjectPublicKeyInfo ::= SEQUENCE
{
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING
}
AlgorithmIdentifier ::= SEQUENCE
{
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL
}
El formato y el contenido de los parámetros difieren según el algoritmo. El control de inscripción de certificados genera valores de parámetro para varios algoritmos según sea necesario. Para obtener más información, consulte las secciones siguientes:
- Algoritmo de clave pública RSA
- Transporte de claves mediante RSA-OAEP
- Contrato clave mediante ECDH
- Cifrado de contenido mediante AES
Algoritmo de clave pública RSA
RSA se usa a menudo para cifrar una clave privada y enviarlo a una entidad de certificación (CA) para archivar. El XCN_OID_RSA_RSA (1.2.840.113549.1.1.1). El OID del algoritmo debe tener un valor de parámetro NULL . El valor NULL de ASN.1 se representa mediante dos bytes. El número de etiqueta es 0x05 y el valor asociado a la etiqueta se 0x00. Esto se muestra en el ejemplo de certificado siguiente.
...
Public Key Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.1 RSA (RSA_KEYX)
Algorithm Parameters:
05 00
...
Transporte de claves mediante RSA-OAEP
El algoritmo RSA-OAEP, XCN_OID_RSAES_OAEP (1.2.840.113549.1.1.7), también se admite para el transporte de claves. El campo de parámetros tiene la sintaxis siguiente.
RSAES-OAEP-params ::= SEQUENCE
{
hashFunc [0] AlgorithmIdentifier DEFAULT sha1OID,
maskGenFunc [1] AlgorithmIdentifier DEFAULT mgf1SHA1OID,
pSourceFunc [2] AlgorithmIdentifier DEFAULT pSpecifiedEmptyOID
}
Contrato clave mediante ECDH
El algoritmo de curva elíptica de paso único Diffie-Hellman, XCN_OID_DH_SINGLE_PASS_STDDH_SHA1_KDF (1.3.133.16.840.63.0.2), se admite para el acuerdo de clave. El acuerdo de clave usa dos niveles de cifrado:- El mensaje se cifra mediante una clave de cifrado de contenido (CEK) y un algoritmo de cifrado simétrico .
- La CEK se cifra (encapsula) mediante una clave de cifrado de clave simétrica (KEK).
- XCN_OID_RSA_SMIMEalgCMS3DESwrap (1.2.840.113549.1.9.16.3).)
- XCN_OID_RSA_SMIMEalgCMSRC2wrap (1.2.840.113549.1.9.16.3.7)
- XCN_OID_NIST_AES128_WRAP (2.16.840.1.101.3.4.1.5)
- XCN_OID_NIST_AES192_WRAP (2.16.840.1.101.3.4.1.25)
- XCN_OID_NIST_AES256_WRAP (2.16.840.1.101.3.4.1.45)
Cifrado de contenido mediante AES
El estándar de cifrado avanzado (AES) se usa para cifrar el contenido. Se admiten los siguientes algoritmos:- XCN_OID_NIST_AES128_CBC (2.16.840.1.101.3.4.1.2)
- XCN_OID_NIST_AES192_CBC (2.16.840.1.101.3.4.1.22)
- XCN_OID_NIST_AES256_CBC (2.16.840.1.101.3.4.1.42)
AES-IV ::= OCTET STRING (SIZE(16))
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 |