La diferencia entre el identificador de clave del sujeto y sha1Fingerprint en los certificados X509

7

Tengo algunos SW que extraen datos de certificados y SW utiliza OpenSSL. Estoy confundido cuál es la diferencia entre el subjectKeyIdentifier y el sha1Fingerprint . Ambos son valores hash. Mi intuición es que el subjectKeyIdentifier es el hash de la clave pública del certificado y el sha1Fingerprint es el hash de los campos generales del certificado. Mi investigación se hizo más confusa. Por ejemplo, esta referencia dice acerca de subjectKeyIdentifier :

  

Este es un valor hash del certificado SSL.

Este es un ejemplo de lo que obtengo del SW:

"subjectKeyIdentifier": "A8:4A:6A:63:04:7D:DD:BA:E6:D1:39:B7:A6:45:65:EF:F3:A8:EC:A1", "sha1Fingerprint": "E6:A3:B4:5B:06:2D:50:9B:33:82:28:2D:19:6E:FE:97:D5:95:6C:CB"

¿Cuál es la diferencia entre los dos hashes? ¿Para qué es cada hash?

    
pregunta user9371654 24.12.2018 - 05:16
fuente

1 respuesta

8

El identificador de la clave del sujeto (SKID) es una extensión x509 y, por lo tanto, forma parte del certificado. La huella digital, en cambio, no forma parte del certificado, sino que se calcula a partir del certificado. Un certificado no necesita tener un SKID en absoluto y puede tener como máximo un SKID. Pero como la huella dactilar es solo una calculada a partir del certificado, puede haber varias huellas dactilares, como una que usa SHA-1, una que usa SHA-256, una que usa MD5 ...

El SKID se utiliza para crear la cadena de confianza que no se basa en el sujeto y el emisor del certificado, sino en el SKID del certificado y el identificador de la clave de autoridad (AKID). Esto facilita el manejo de situaciones en las que se utiliza la misma cadena de asunto con varios certificados de CA. Si bien el RFC 3280 describe formas comunes de generar un SKID , el único requisito real es que el SKID del El certificado de CA debe coincidir con el AKID en todos los certificados emitidos por esta CA.

En el siguiente ejemplo, se puede ver claramente que SKID BB:AF:7E:02:3D:FA:... del emisor coincide con el AKID del certificado emitido:

    ...
    Issuer: C=GB, ST=Greater Manchester, L=Salford, O=COMODO CA Limited, CN=COMODO RSA Certification Authority
    ...
    Subject: C=GB, ST=Greater Manchester, L=Salford, O=COMODO CA Limited, CN=COMODO RSA Domain Validation Secure Server CA
    ...
    X509v3 extensions:
        X509v3 Authority Key Identifier: 
            keyid:BB:AF:7E:02:3D:FA:A6:F1:3C:84:8E:AD:EE:38:98:EC:D9:32:32:D4

    ----

    ...
    Issuer: C=GB, ST=Greater Manchester, L=Salford, O=COMODO CA Limited, CN=COMODO RSA Certification Authority
    ...
    Subject: C=GB, ST=Greater Manchester, L=Salford, O=COMODO CA Limited, CN=COMODO RSA Certification Authority
    ...
    X509v3 extensions:
        X509v3 Subject Key Identifier: 
            BB:AF:7E:02:3D:FA:A6:F1:3C:84:8E:AD:EE:38:98:EC:D9:32:32:D4
    
respondido por el Steffen Ullrich 24.12.2018 - 07:54
fuente

Lea otras preguntas en las etiquetas