022.1 Lección 2
Certificado: |
Fundamentos de seguridad |
---|---|
Versión: |
1.0 |
Tema: |
021 Conceptos de seguridad |
Objetivo: |
022.1 Criptografía e infraestructura de clave pública |
Lección: |
2 de 2 |
Introducción
Basándose en principios criptográficos, una infraestructura de clave pública (PKI) es fundamental para la seguridad de las comunicaciones y la verificación de identidad en el mundo digital. La PKI establece un marco para el uso de claves públicas y privadas en el cifrado, lo que garantiza que las entidades que participan en la comunicación puedan confiar entre sí.
En el núcleo de la PKI se encuentran los certificados digitales, que vinculan una clave pública a una entidad, como una persona u organización, y son administrados por las autoridades de certificación (CA). Estos certificados desempeñan un papel crucial en el cifrado de datos y la validación de identidades, lo que hace que la PKI sea indispensable para la navegación web segura, la comunicación por correo electrónico y otras actividades en línea. Las autoridades de certificación raíz de confianza (CA raíz) forman el nivel superior de este modelo de confianza y establecen la cadena de confianza que se extiende a los certificados de usuario final.
Esta relación estructurada garantiza que los usuarios y los sistemas puedan confiar en la autenticidad de los certificados digitales que encuentran. Comprender cómo funcionan las PKI y las CA es esencial para comprender el intercambio seguro de información y el papel de los certificados digitales en el mantenimiento de la integridad y la seguridad de las comunicaciones en línea.
Infraestructura de clave pública (PKI)
La infraestructura de clave pública (PKI) es fundamental para generar confianza y proteger las comunicaciones digitales. En esencia, la PKI proporciona un marco estructurado para gestionar certificados digitales y pares de claves públicas y privadas, que son esenciales para verificar identidades y proteger los intercambios de datos a través de Internet. Cuando dos entidades, como un usuario y un sitio web, necesitan comunicarse de forma segura, la PKI garantiza que cada parte pueda confiar en la identidad de la otra y en la integridad de los datos que se comparten.
La PKI permite una comunicación segura mediante la gestión de claves públicas y privadas. A entidades como sitios web, servidores o personas se les emite un certificado digital que vincula su identidad a una clave pública.
Los certificados digitales funcionan como un “pasaporte” electrónico para una entidad, ya sea una persona, un dispositivo o un servicio. Este certificado es emitido por un tercero de confianza conocido como Autoridad de Certificación (CA).
Antes de emitir un certificado, el CA realiza un exhaustivo proceso de verificación para confirmar la legitimidad de la identidad de la entidad. Este proceso evita que actores maliciosos se hagan pasar por otra persona. Una vez emitido el certificado, se puede utilizar para cifrar datos con la clave pública de la entidad. Solo la clave privada correspondiente, que la entidad guarda de forma segura, puede descifrar estos datos, lo que garantiza que la información sensible siga siendo confidencial y accesible solo para el destinatario previsto.
CA y CA raíz de confianza
En el corazón de PKI se encuentran las autoridades de certificación y las autoridades de certificación raíz de confianza, que forman la columna vertebral de la cadena de confianza que sustenta la seguridad de los certificados digitales utilizados en la navegación web, el correo electrónico seguro y otras aplicaciones.
Las CA desempeñan un papel fundamental en la PKI al emitir, validar y gestionar certificados digitales. Una vez emitidos, otros usuarios o sistemas que dependen de la autoridad de la CA pueden confiar en el certificado.
Las CA raíz forman la parte superior de la jerarquía de confianza en PKI. Las CA raíz emiten certificados a las CA intermedias, creando una cadena de confianza que se extiende a los certificados del usuario final. Los certificados raíz están preinstalados en los sistemas operativos y navegadores web, y proporcionan la base para todos los certificados emitidos en la jerarquía.
Esta cadena de confianza es esencial, ya que crea una relación jerárquica entre las CA raíz, las CA intermedias y las entidades a las que emiten certificados. Cada certificado de la cadena es validado por el que está por encima de el, y finalmente conduce a una CA raíz de confianza. Este modelo jerárquico garantiza que los usuarios y los sistemas puedan confiar en los certificados que encuentran en las interacciones digitales.
Ejemplo de la Cadena de Confianza
A continuación se muestra un ejemplo de una cadena de confianza que involucra una CA raíz, una CA intermedia y certificados de entidad final.
Certificado CA raíz
La CA raíz es la máxima autoridad de la cadena y todos los sistemas confían en ella. Está autofirmada, lo que significa que certifica su propia identidad.
- Root CA Name: "GlobalTrust Root CA" - Subject: "CN=GlobalTrust Root CA, O=GlobalTrust Inc., C=US" - Issuer: "CN=GlobalTrust Root CA, O=GlobalTrust Inc., C=US" (Self-signed) - Public Key: Contains the public key of GlobalTrust Root CA - Validity Period: 20 years (e.g., 2020-2040) - Signature: Self-signed using the Root CA's private key
El certificado CA raíz está preinstalado en la mayoría de los sistemas operativos y navegadores, lo que lo establece como una autoridad confiable.
Certificado CA intermedio
La CA intermedia recibe un certificado de la CA raíz. Esta CA actúa como puente entre la CA raíz y las entidades finales, lo que permite una mejor gestión de la seguridad y una mejor distribución de la confianza.
- Intermediate CA Name: "GlobalTrust Intermediate CA 1" - Subject: "CN=GlobalTrust Intermediate CA 1, O=GlobalTrust Inc., C=US" - Issuer: "CN=GlobalTrust Root CA, O=GlobalTrust Inc., C=US" (Signed by Root CA) - Public Key: Contains the public key of GlobalTrust Intermediate CA 1 - Validity Period: 10 years (e.g., 2022-2032) - Signature: Signed using the Root CA's private key
La CA intermedia emite certificados a entidades finales, como sitios web o aplicaciones, después de validar su identidad.
Certificado de entidad final (sitio web o aplicación)
El certificado de entidad final es emitido por la CA intermedia para un sitio web o una aplicación. Es lo que ve el usuario final cuando se conecta a un sitio web seguro.
- End-Entity Name: "example.com" - Subject: "CN=example.com, O=Example Inc., C=US" - Issuer: "CN=GlobalTrust Intermediate CA 1, O=GlobalTrust Inc., C=US" (Signed by Intermediate CA) - Public Key: Contains the public key of example.com - Validity Period: 1 year (e.g., 2023-2024) - Signature: Signed using the Intermediate CA's private key
En este ejemplo, cada certificado de la cadena es verificado por el que está por encima de el, y en última instancia conduce a una CA raíz confiable, que garantiza la integridad y seguridad de la comunicación digital (Representación visual de la cadena de confianza).
Cuando un usuario visita el sitio web example.com, su navegador recibe este certificado. A continuación, el navegador comprueba la validez del certificado siguiendo la cadena de confianza:
-
Comprobación del certificado de entidad final
El navegador verifica que el certificado de example.com esté firmado por
GlobalTrust Intermediate CA 1
. -
Comprobación del certificado de CA intermedia
El navegador comprueba que el certificado de
GlobalTrust Intermediate CA 1
esté firmado por laGlobalTrust Root CA
. -
Comprobación de CA raíz
El navegador verifica que la CA raíz sea una autoridad confiable preinstalada en su almacén de confianza.
Si todos los certificados de la cadena son válidos y están correctamente firmados, el navegador establece una conexión segura con example.com y el usuario puede interactuar de forma segura con el sitio web.
Certificados X.509
Los certificados X.509 son el formato de certificado digital estándar que se utiliza en la infraestructura de clave pública (PKI) y son esenciales para verificar la identidad de las entidades en comunicaciones seguras. Estos certificados, a los que a menudo se denomina “pasaportes digitales”, establecen una asociación fiable entre la identidad de una entidad y su clave pública mediante la certificación por parte de una autoridad de certificación (CA) de confianza.
Cada certificado X.509 contiene campos que detallan la clave pública de la entidad, el nombre de la CA emisora e información de identidad específica, como el nombre de dominio de la entidad o el nombre de la organización. Este formato estandarizado garantiza que los certificados X.509 proporcionen un método consistente y confiable para autenticar entidades en una amplia gama de aplicaciones digitales.
Comprender la función de los certificados X.509 es esencial porque se utilizan para facilitar conexiones seguras en muchas aplicaciones, incluido HTTPS para la navegación web segura, SSL/TLS para el cifrado de datos y firmas digitales para verificar la autenticidad e integridad de los documentos electrónicos.
El certificado contiene una firma digital generada por la CA utilizando su clave privada, que vincula la clave pública a la identidad de la entidad. Esta firma digital puede ser verificada por cualquier persona que utilice la clave pública de la CA, lo que garantiza que el certificado no ha sido alterado y que efectivamente proviene de la CA de confianza.
Estructura de los certificados X.509
Un certificado X.509 contiene varios campos que proporcionan información detallada sobre la entidad y el certificado en sí. Entre ellos se incluyen el asunto, que identifica la entidad a la que se emite el certificado, y el emisor, que identifica la CA que emitió el certificado. El certificado también contiene la clave pública asociada a la entidad, así como la firma digital de la CA, que verifica la autenticidad del certificado.
El certificado también incluye un período de validez, que indica el período de tiempo durante el cual el certificado se considera válido. Después de este período, el certificado debe renovarse o reemplazarse para mantener la comunicación segura. Además de estos campos, los certificados X.509 pueden incluir extensiones que especifican el uso previsto del certificado, como la autenticación del servidor o el cifrado de correo electrónico.
Solicitud y emisión de certificados X.509
El proceso de obtención de un certificado X.509 comienza con la generación de una Solicitud de Firma de Certificado (CSR). La CSR es un archivo que contiene la clave pública de la entidad junto con información de identificación, como el nombre de dominio, la organización y la ubicación de la entidad. Esta información ayuda a identificar de forma única a la entidad que solicita el certificado. Luego, la CSR se envía a una CA para su validación.
La CA desempeña un papel fundamental en la verificación de la legitimidad de la información proporcionada en la CSR. Este proceso de validación puede variar en rigor según el tipo de certificado que se solicita. Por ejemplo, un certificado Domain Validated (DV) requiere que la CA verifique que la entidad controla el dominio especificado, normalmente a través de un simple proceso de verificación por correo electrónico o DNS. En el caso de certificados más estrictos, como los certificados Organization Validated (OV) o Extended Validation (EV), la CA realiza comprobaciones adicionales, como la verificación de la existencia legal y la ubicación física de la organización.
Una vez que la CA verifica con éxito los datos de la entidad, emite el certificado X.509 firmándolo digitalmente con la clave privada de la CA. Esta firma digital garantiza la autenticidad e integridad del certificado, de modo que cualquier entidad que reconozca a la CA como autoridad de confianza pueda confiar en él. A continuación, el certificado emitido se envía de vuelta a la entidad solicitante, donde puede instalarse en un servidor o dispositivo.
Una vez instalado, el certificado X.509 se utiliza para establecer comunicaciones seguras al habilitar el cifrado SSL/TLS. Cuando un cliente (por ejemplo, un navegador web) se conecta al servidor, el servidor presenta el certificado. A continuación, el cliente verifica la autenticidad del certificado comprobando la firma de la CA con su lista de certificados raíz de confianza. Si la verificación es correcta, se establece un canal de comunicación cifrado, lo que garantiza que todos los datos intercambiados entre el cliente y el servidor permanezcan confidenciales y protegidos contra interceptaciones.
Certificados X.509 en SSL/TLS
Los certificados X.509 desempeñan un papel fundamental en el protocolo SSL/TLS, que se utiliza para proteger las comunicaciones entre clientes y servidores a través de Internet. A continuación, se muestra un ejemplo paso a paso de cómo generar una solicitud de firma de certificado (CSR) para un dominio mediante OpenSSL, una biblioteca criptográfica muy utilizada.
Cuando un usuario se conecta a un sitio web seguro, el servidor presenta su certificado X.509 al navegador del usuario como parte del protocolo de enlace SSL/TLS. A continuación, el navegador verifica la autenticidad del certificado comprobando la cadena de confianza con una CA raíz de confianza. Si el certificado es válido y de confianza, el navegador continúa con el protocolo de enlace SSL/TLS y establece una conexión cifrada entre el usuario y el servidor.
Los certificados X.509 también se utilizan en otras aplicaciones, como el cifrado de correo electrónico y las firmas digitales, para verificar la identidad del remitente y garantizar la integridad del mensaje.
Let’s Encrypt
Existen docenas de CA en todo el mundo, la mayoría de las cuales ofrecen servicios de emisión de certificados pagos. Entre las CA más conocidas se encuentra Let’s Encrypt, que ofrece certificados SSL/TLS gratuitos y automatizados y promueve la adopción generalizada de HTTPS.
Let’s Encrypt ha transformado el proceso de obtención y gestión de certificados X.509 al ofrecer certificados SSL/TLS automatizados y gratuitos. Esta iniciativa promueve la adopción generalizada de HTTPS, lo que hace que Internet sea más segura al reducir las barreras para el cifrado.
Antes de Let’s Encrypt, obtener certificados SSL/TLS solía ser un proceso costoso y técnicamente complejo. Let’s Encrypt simplifica este proceso automatizando el proceso de emisión y renovación de certificados, lo que permite a los sitios web proteger sus comunicaciones de forma sencilla y sin coste alguno.
Let’s Encrypt ha desempeñado un papel importante en el aumento de la adopción de HTTPS, mejorando la seguridad y la privacidad en la web. Sin embargo, es importante tener en cuenta que Let’s Encrypt emite certificados validados por dominio (DV), que verifican la propiedad del dominio, pero no brindan el mismo nivel de seguridad que los certificados validados por organización (OV) o los certificados de validación extendida (EV).
Los certificados Let’s Encrypt tienen una validez de solo 90 días. Este breve período de validez garantiza que los certificados se actualicen periódicamente, lo que reduce el riesgo de uso indebido en caso de vulneración. Debido a la corta duración de los certificados Let’s Encrypt, la renovación automática es crucial para mantener la seguridad.
Ejercicios guiados
-
Describa cómo la infraestructura de clave pública (PKI) establece la confianza en las comunicaciones digitales.
-
¿Cuál es el papel de los certificados X.509 en los protocolos SSL/TLS?
-
Explique el concepto de cadena de confianza en PKI. ¿Por qué es importante la cadena de confianza para establecer comunicaciones seguras y cómo garantiza que se pueda confiar en los certificados digitales?
Ejercicios exploratorios
-
Investigue la función de los certificados de validación extendida (EV) en la seguridad web y explique en qué se diferencian de los certificados validados por dominio (DV) y por organización (OV).
-
Genere una CSR para el dominio www.example.com mediante OpenSSL. Proporcione el comando que utilizaría y explique cada parte del comando.
Resumen
En esta lección se analiza la infraestructura de clave pública (PKI), y se profundiza en las funciones de las autoridades de certificación (CA), los certificados X.509 y la cadena de confianza que sustenta las comunicaciones digitales seguras. Además, se analiza la aparición de Let’s Encrypt y su impacto en la adopción generalizada de HTTPS.
Respuestas a los ejercicios guiados
-
Describa cómo la infraestructura de clave pública (PKI) establece confianza en las comunicaciones digitales.
La PKI establece confianza a través de una cadena de confianza que involucra a las autoridades de certificación (CA). Las CA emiten certificados digitales que vinculan la clave pública de una entidad con su identidad verificada. Las CA raíz, en las que confían los navegadores y los sistemas operativos, anclan la cadena de confianza y validan los certificados emitidos por las CA intermedias. Esta estructura jerárquica garantiza comunicaciones seguras al verificar la autenticidad de los certificados digitales.
-
¿Cuál es la función de los certificados X.509 en los protocolos SSL/TLS?
Los certificados X.509 se utilizan en los protocolos SSL/TLS para autenticar la identidad de los servidores y establecer una comunicación segura. Durante el protocolo de enlace SSL/TLS, el servidor presenta su certificado X.509 al cliente, que verifica la autenticidad del certificado a través de la cadena de confianza. Si el certificado es válido, se realiza el protocolo de enlace y se establece una conexión cifrada.
-
Explique el concepto de la cadena de confianza en PKI. ¿Por qué es importante la cadena de confianza para establecer comunicaciones seguras y cómo garantiza que se pueda confiar en los certificados digitales?
La cadena de confianza en PKI se refiere a la relación jerárquica entre la autoridad de certificación raíz (CA raíz), las autoridades de certificación intermedias (CA) y los certificados de entidad final. La CA raíz, en la parte superior de la jerarquía, es inherentemente confiable para los sistemas operativos y los navegadores. Emite certificados a las CA intermedias, que a su vez emiten certificados a entidades finales como sitios web y servidores. Esta estructura garantiza que cada certificado pueda ser validado por el que está por encima de él, y en última instancia se vincula de nuevo con la CA raíz de confianza.
La cadena de confianza es crucial para las comunicaciones seguras porque permite a los usuarios y sistemas verificar la autenticidad de los certificados digitales. Si la cadena se rompe o un certificado se ve comprometido, el sistema marca la comunicación como insegura, protegiendo a los usuarios de posibles amenazas.
Respuestas a los ejercicios exploratorios
-
Investigue el papel de los certificados de validación extendida (EV) en la seguridad web y explique en qué se diferencian de los certificados validados por dominio (DV) y los certificados validados por organización (OV).
Los certificados de validación extendida (EV) brindan el mayor nivel de seguridad entre los certificados digitales. A diferencia de los certificados validados por dominio (DV) y los certificados validados por organización (OV), que verifican principalmente el control del dominio y los detalles básicos de la organización, los certificados EV implican procesos de investigación rigurosos. Las autoridades de certificación (CA) deben verificar la existencia legal, la ubicación física y el estado operativo de la entidad solicitante antes de emitir un certificado EV. Si bien los certificados DV son más fáciles de obtener y suficientes para las necesidades básicas de cifrado, los certificados EV se centran en brindar capas adicionales de verificación de identidad, lo que mejora la confianza del usuario durante transacciones confidenciales como la banca en línea o las compras.
-
Genere una CSR para el dominio www.example.com mediante OpenSSL. Proporcione el comando que usaría y explique cada parte del comando.
Para generar una CSR para www.example.com mediante OpenSSL, debe utilizar el siguiente comando:
openssl req -new -key private.key -out example.csr
req -new
inicia la creación de una nueva CSR.-key private.key
especifica el archivo de clave privada que se utilizará para generar la CSR. Debe haber creado previamente esta clave privada.-out example.csr
indica el nombre del archivo CSR que se creará.Después de ejecutar el comando, se le solicitará que ingrese información como el nombre de dominio, la organización y la ubicación, que se incluirán en la CSR. Luego, este archivo se puede enviar a una Autoridad de certificación para solicitar un certificado X.509.