CAs de Comodo

Aclaración de las Jerarquias de CA raíces para los certificados de servidor de COMODO


Subject:  [SCS-USER] [Aclaración de las Jerarquias de CA raíces para los certificados de servidor de COMODO]
From:     Daniel García 
Date:     6 de abril de 2010 17:36:27 GMT+02:00
To:       Admin. de servidores con de certificados SCS 
Reply-To: Admin. de servidores con de certificados SCS 

Hola a Todos,

En respuesta a una pregunta/conversación con Antonio Ruiperez nos hemos dado cuenta de la necesidad que existe de aclarar qué está pasando con las CAs que firman los actuales certificados SCS.

La historia es la siguiente. Al principio, incluso antes de que los certificados estuviesen disponibles, nosotros (RedIRIS) pusimos en la web [http://www.rediris.es/scs/capath.html] la jerarquía de certificados de CAs raíz con la se que firman los certificados emitidos en SCS.

En el caso del perfil de certificados SSL para servidor, la jerarquía que se anunció fue:

0. UTN-USERFirst-Hardware
(serial number = 44:be:0c:8b:50:00:24:b4:11:d3:36:2a:fe:65:0a:fd,
expiry = 9/07/2019 18:19:22 GMT)
	1. TERENA SSL CA
	(serial number = 4b:c8:14:03:2f:07:fa:6a:a4:f0:da:29:df:61:79:ba,
	expiry = 30/05/2020 10:48:38 GMT)

Cuando se empezaron a emitir los primeros certificados, nos dimos cuenta de que COMODO envía otra jerarquía de certificados de CAs raíz junto al certificado emitido; y fue por ello, por lo que cambiamos en la web la jerarquía anterior por la siguiente:

0. AddTrust External CA Root [DER|PEM]
(serial number = 01,
expiry = 30/05/2020 10:48:38 GMT)
	1. UTN-USERFirst-Hardware [DER|PEM]
	(serial number = 48:4b:ac:f1:aa:c7:d7:13:43:d1:a2:74:35:49:97:25,
	expiry = 30/06/2020 10:48:38 GMT)
		2. TERENA SSL CA [DER|PEM]
		(serial number = 4b:c8:14:03:2f:07:fa:6a:a4:f0:da:29:df:61:79:ba,
		expiry = 30/05/2020 10:48:38 GMT)

Bien ahora es cuando viene la aclaración. Ambas cadenas o jerarquías de certificados son completamente válidas. En la primera jerarquía mostrada, el certificado UTN-USERTrust-Hardware es auto-firmado, y se encuentra ampliamente distribuido en los repositorios de raíces de confianza de muchos dispositivos. En la segunda jerarquía, el certificado UTN-USERTrust-Hardware está firmado por AddTrust External CA Root, la cual parece tiene una distribución menor entre los repositorios de raíces de confianza de los dispositivos.

Ambos certificados UTN-USERTrust-Hardware (tanto el auto-firmado como el firmado por AddTrust External CA Root) son exactamente idénticos en lo relativo a la verificación de la cadena de certificación de los certificados SCS. Esto se observa en que en ambos certificados, el identificador de la clave del certificado es el mismo tal y como muestro a continuación:

UTN-USERTrust-Hardware AUTO-FIRMADO:
X509v3 Subject Key Identifier:
	A1:72:5F:26:1B:28:98:43:95:5D:07:37:D5:85:96:9D:4B:D2:C3:45

UTN-USERTrust-Hardware FIRMADO por AddTrust External CA Root:
X509v3 Subject Key Identifier:
	A1:72:5F:26:1B:28:98:43:95:5D:07:37:D5:85:96:9D:4B:D2:C3:45

Esto lo podéis comprobar por ustedes mismos haciendo lo siguiente:

1.- descargamos ambos certificados (primero el auto-firmado y luego el firmado por Add Trust External CA Root)

$>wget http://www.rediris.es/scs/cacrt/UTN-USERFirst-Hardware.pem
$>wget http://www.rediris.es/scs/cacrt/UTNAddTrustServer_CA.pem

2.- Con openssl comprobamos el subject, issuer, hash, fingerprint y public key/p>

$>openssl x509 -issuer -subject -hash -fingerprint -pubkey -noout -in UTN-USERFirst-Hardware.pem
issuer= /C=US/ST=UT/L=Salt Lake City/O=The USERTRUST Network/OU=http://www.usertrust.com/CN=UTN-USERFirst-Hardware
subject= /C=US/ST=UT/L=Salt Lake City/O=The USERTRUST Network/OU=http://www.usertrust.com/CN=UTN-USERFirst-Hardware
SHA1 Fingerprint=04:83:ED:33:99:AC:36:08:05:87:22:ED:BC:5E:46:00:E3:BE:F9:D7
ff783690
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsffDOD+0qH/POYJRZ9Bt
n9L/WPPnnyvsDYlUmbk4mRb34CF5SMK7YXQSlh08anLVPBBnOjntKxPNZuuVCTOk
bJex6MbswXV5nEZejavQav25KlUXEFSzGfCa9vGxXbanbfvgcRdrooj7AN/+GjF3
DJoBerEy4ysBBzhuw6VeI7xFm3tQwckwj9vlK3rTW/szQB6g1ZgXvIuHw4nTXaCO
sqqq9o5piAbF+okh8widaS4JM5spDUYPjMxJNLBpUb35Bs1orWZMvD6sYb0KiA7I
3z3ufARMnQpea5HW7sftKI2rTYeJc9BupNAeFosU4XZEA39jrOTNSZzFkvSrMqFI
WwIDAQAB
-----END PUBLIC KEY-----
$>openssl x509 -issuer -subject -hash -fingerprint -pubkey -noout -in UTNAddTrustServer_CA.pem
issuer= /C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
subject= /C=US/ST=UT/L=Salt Lake City/O=The USERTRUST Network/OU=http://www.usertrust.com/CN=UTN-USERFirst-Hardware
SHA1 Fingerprint=3D:4B:2A:4C:64:31:71:43:F5:02:58:D7:E6:FD:7D:3C:02:1A:52:9E
ff783690
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsffDOD+0qH/POYJRZ9Bt
n9L/WPPnnyvsDYlUmbk4mRb34CF5SMK7YXQSlh08anLVPBBnOjntKxPNZuuVCTOk
bJex6MbswXV5nEZejavQav25KlUXEFSzGfCa9vGxXbanbfvgcRdrooj7AN/+GjF3
DJoBerEy4ysBBzhuw6VeI7xFm3tQwckwj9vlK3rTW/szQB6g1ZgXvIuHw4nTXaCO
sqqq9o5piAbF+okh8widaS4JM5spDUYPjMxJNLBpUb35Bs1orWZMvD6sYb0KiA7I
3z3ufARMnQpea5HW7sftKI2rTYeJc9BupNAeFosU4XZEA39jrOTNSZzFkvSrMqFI
WwIDAQAB
-----END PUBLIC KEY-----

Si os dais cuenta, todos los datos son iguales salvo el issuer y el fingerprint. Lo cual es lógico ya que en el segundo caso el issuer es Add Trust External Root CA y en el primero es el mismo certificado; y debido a esto el fingerprint también varía. Pero sin embargo, la clave pública es la misma, y el subject_hash (el valor ff783690) también es el mismo.

Ahora la duda es cuál utilizar. Bueno... por rendimiento yo recomiendo usar siempre la cadena más corta, ya que la verificación de una cadena de certificación no es que sea una tarea muy laboriosa, pero si que necesita tiempo. Por otro lado, y el más importante es discriminar por la distribución de los certificados raíces en los clientes. El problema es que de momento no tenemos datos fiables de la distribución de ambas raíces. Pero en cuanto los tengamos daremos una recomendación, tanto en esta lista, como en la web.

Saludos!


--
Daniel García Franco E-mail: daniel.garcia@rediris.es
Jabber: dani@rediris.es
Red.es/RedIRIS Tef:+34 955 05 66 23
Edificio CICA
Avenida Reina Mercedes, s/n
41012 Sevilla
SPAIN
Servicio FINALIZADO