Interfaz IX509PublicKey (certenroll.h)
La interfaz IX509PublicKey representa una clave pública en un par de claves pública y privada. La clave pública se incluye en la solicitud de certificado enviada a una entidad de certificación (CA) y en el certificado recibido de la ENTIDAD de certificación. Para obtener más información, consulte Pares de claves públicas y privadas.
El control de inscripción de certificados pasa claves públicas y privadas en matrices de bytes. En el ejemplo de certificado siguiente se muestra una clave pública de 1024 bits creada mediante el algoritmo de firma RSA, XCN_OID_RSA_RSA (1.2.840.113549.1.1.1.1).
...
Public Key Algorithm:
Algorithm ObjectId: 1.2.840.113549.1.1.1 RSA (RSA_SIGN)
Algorithm Parameters:
05 00
Public Key Length: 1024 bits
Public Key: UnusedBits = 0
0000 30 81 89 02 81 81 00 8f e2 41 2a 08 e8 51 a8 8c
0010 b3 e8 53 e7 d5 49 50 b3 27 8a 2b cb ea b5 42 73
0020 ea 02 57 cc 65 33 ee 88 20 61 a1 17 56 c1 24 18
0030 e3 a8 08 d3 be d9 31 f3 37 0b 94 b8 cc 43 08 0b
0040 70 24 f7 9c b1 8d 5d d6 6d 82 d0 54 09 84 f8 9f
0050 97 01 75 05 9c 89 d4 d5 c9 1e c9 13 d7 2a 6b 30
0060 91 19 d6 d4 42 e0 c4 9d 7c 92 71 e1 b2 2f 5c 8d
0070 ee f0 f1 17 1e d2 5f 31 5b b1 9c bc 20 55 bf 3a
0080 37 42 45 75 dc 90 65 02 03 01 00 01
...
La clave pública consta de un módulo de 1024 bits creado multiplicando dos números primos grandes y un exponente de 96 bits. El algoritmo RSA usa el exponente y los números primos de la fórmula euclidiana estándar para crear una clave privada. El módulo y el exponente se pueden identificar con más claridad examinando la siguiente salida de ASN.1 de la misma clave pública. Dado que el módulo comienza con un byte (0x8F) para el que se establece el bit de signo, 0x00 se antepone para asegurarse de que el entero permanece sin signo. Otros algoritmos de clave pública crean claves públicas formadas por diferentes partes constituyentes.
30 81 89 ; SEQUENCE (89 Bytes)
02 81 81 ; INTEGER (81 Bytes)
| 00 // Modulus
| 8f e2 41 2a 08 e8 51 a8 8c b3 e8 53 e7 d5 49 50
| b3 27 8a 2b cb ea b5 42 73 ea 02 57 cc 65 33 ee
| 88 20 61 a1 17 56 c1 24 18 e3 a8 08 d3 be d9 31
| f3 37 0b 94 b8 cc 43 08 0b 70 24 f7 9c b1 8d 5d
| d6 6d 82 d0 54 09 84 f8 9f 97 01 75 05 9c 89 d4
| d5 c9 1e c9 13 d7 2a 6b 30 91 19 d6 d4 42 e0 c4
| 9d 7c 92 71 e1 b2 2f 5c 8d ee f0 f1 17 1e d2 5f
| 31 5b b1 9c bc 20 55 bf 3a 37 42 45 75 dc 90 65
02 03 ; INTEGER (3 Bytes)
01 00 01 // Exponent
Herencia
La interfaz IX509PublicKey hereda de la interfaz IDispatch . IX509PublicKey también tiene estos tipos de miembros:
Métodos
La interfaz IX509PublicKey tiene estos métodos.
IX509PublicKey::ComputeKeyIdentifier Crea un identificador a partir de un hash SHA-1 de 160 bits de la clave pública. |
IX509PublicKey::get_Algorithm Recupera un identificador de objeto (OID) para el algoritmo de clave pública. |
IX509PublicKey::get_EncodedKey Recupera una matriz de bytes que contiene la clave pública. |
IX509PublicKey::get_EncodedParameters Recupera una matriz de bytes que contiene los parámetros asociados al algoritmo de clave pública. |
IX509PublicKey::get_Length Recupera la longitud de la clave pública. |
IX509PublicKey::Initialize Inicializa el objeto a partir de un identificador de objeto de algoritmo de clave pública (OID) y de matrices de bytes que contienen una clave pública y los parámetros asociados, si los hay. |
IX509PublicKey::InitializeFromEncodedPublicKeyInfo Inicializa el objeto de una matriz de bytes que contiene una clave pública. |
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 |