El propósito de los certificados es probar la identidad de la parte remota con la que se está comunicando. De no ser así, se haría posible la suplantación de identidad: los atacantes activos de MITM podrían interceptar el tráfico y modificarlo para que pase como propio.
Es bastante similar a verificar la identidad de alguien al verificar un pasaporte. Supongamos que desea verificar el nombre de la persona que está frente a usted, que le está mostrando un pasaporte.
-
Desea verificar que confía en la autenticidad del pasaporte. Una tarjeta de membresía del club deportivo local podría no ser suficiente. Comprobar este aspecto de un certificado es lo que crea una ruta de certificación para una CA de confianza en la especificación PKIX (RFC 5280 / RFC 3280) es para; también proporciona otros aspectos, como el propósito por el cual la CA estaba dispuesta a permitirlo.
-
Desea verificar que el pasaporte pertenece a la persona cuya identidad está intentando verificar. (En esta analogía, el nombre del servidor es más parecido a la imagen de la persona, ya que estás tratando de encontrar el nombre de la persona, sabiendo cómo se ve (*)).
Una cosa es confiar en que el pasaporte es real, pero debe ser emitido a la persona que reclama su uso. En su defecto, cualquier persona que haya obtenido un pasaporte de un país que usted reconozca podría reclamar que es alguien en cualquier país que reconozca.
En el mundo HTTPS, esto se hace siguiendo las reglas en RFC 2818 (Sección 3.1) , y más generalmente en SSL / TLS en RFC 6125 .
-
El último punto no es estrictamente parte de la verificación del certificado en sí. Desea verificar vincular la imagen en el pasaporte a la persona que está frente a usted. En esta analogía, el enlace de imagen a persona está asegurado por el intercambio de claves autenticado en TLS , que garantiza que la parte remota tiene la clave privada que coincide con la clave pública en este certificado.
Después de haber realizado esos tres pasos con éxito, puede vincular el nombre del pasaporte a la persona física que tiene delante.
Los certificados en SSL / TLS tienen la misma función: desea asegurarse de que el certificado proviene de una CA en la que confía, asegúrese de que se emita al servidor con el que desea comunicarse y de que está hablando con el Parte a la que se expidió el certificado.
Más específicamente en su ejemplo, el certificado se emitió para DI-PRE-UFCG
, que es un nombre diferente al que está intentando contactar y sec_error_untrusted_issuer
indica que el navegador ni siquiera lo reconoce como emitido por un entidad en la que confía (lo que tiene sentido para un certificado autofirmado que no se importaría explícitamente).
(*) Solo hago una analogía en ese orden porque en mi experiencia es más natural en la práctica. Rara vez comienza buscando a una persona específica por nombre, dada la multitud y sus pasaportes, pero esto podría tener sentido en algunas circunstancias. Usted tendría problemas similares si alguien tuviera varios alias, pero el que está buscando no era el de su pasaporte.