¿Por qué Chrome y OpenSSL no están de acuerdo con el algoritmo de firma?

5
$ openssl version
OpenSSL 1.0.2h  3 May 2016

$ openssl s_client -connect winkel.vpro.nl:443 < /dev/null 2>/dev/null | openssl x509 -text -in /dev/stdin | grep -i sha
    Signature Algorithm: sha1WithRSAEncryption
    Signature Algorithm: sha1WithRSAEncryption

Pero Chrome dice SHA-256:

(versión de Chrome 51.0.2704.84 (64 bits))

    
pregunta Willem 15.06.2016 - 21:36
fuente

1 respuesta

8
  

¿Por qué Chrome y openssl no están de acuerdo con el algoritmo de firma?

Porque obtienen diferentes certificados. La razón de esto es que Chrome utiliza Indicación de nombre de servidor (SNI) mientras que openssl s_client no lo hace, al menos no de forma predeterminada .

Si observa de cerca, no solo el algoritmo de firma es diferente, sino también el sujeto del certificado:

$ openssl s_client -connect winkel.vpro.nl:443 | openssl x509 -text
...
Subject: ... CN=_default_.omroep.nl/[email protected]
...
Signature Algorithm: sha1WithRSAEncryption

Si, en cambio, usa SNI utilizando el argumento -servername , obtendrá el mismo certificado que obtuvo con Chrome:

$ openssl s_client -connect winkel.vpro.nl:443 -servername winkel.vpro.nl | \
     openssl x509 -text
...
Subject: C=NL, ST=Noord-Holland, L=Hilversum, O=VPRO, OU=ICT, CN=*.vpro.nl
...
Signature Algorithm: sha256WithRSAEncryption
    
respondido por el Steffen Ullrich 15.06.2016 - 21:51
fuente

Lea otras preguntas en las etiquetas