Conceptos básicos sobre HTTPS y certificados SSL

El cifrado de datos es una parte esencial de la seguridad en Internet, de lo contrario, transmitiríamos información en texto plano, la cual podría ser manipulada o robada fácilmente.

Los certificados SSL se utilizan para darle la confianza y asegurarle al visitante de una página web que el servidor es autentico, y es una forma de probar la integridad de la comunicación.

Empezamos con un poco de teoría muy resumida y sin entrar en detalles, sobre los conceptos básicos que se encuentran involucrados:

Protocolos Seguros.

TLS (Transport Layer Security) y SSL (Secure Socket Layer) son dos protocolos criptográficos que proporcionan comunicaciones seguras por red.

Ejemplos de protocolos de red que usan estos protocolos son HTTPS, SSH o LDAPS. El uso de estos protocolos aseguran:

  • La confidencialidad de la comunicación.
  • La integridad de los datos.
  • Autenticación del interlocutor.

SSL vs. TLS

SSL y TLS significan lo mismo en términos generales. TLS 1.0 fue creado por la RFC 2246 en enero de 1999 como la siguiente versión de SSL 3.0. La mayoría de las personas están familiarizadas con el término SSL, siendo este el término utilizado para referirnos a la seguridad cifrada por certificados, aun cuando se esté usando TLS en términos prácticos.

Certificado

Es un fichero con información del emisor y su clave pública validado por una tercera parte de confianza, llamada Certificate Authority (CA). Podemos ver un certificado de cualquier sitio web, si se pulsa sobre el icono del candado que muestran la mayoría de navegadores.

En el certificado puede verse la información que comento: para quien se ha emitido el certificado, quién lo ha emitido (que es la Certificate Authority) y el tiempo de validez. Hay más información en el certificado que puede verse pulsando sobre detalles. Además de estos datos, se encuentra la clave pública del servidor web que usará el navegador para cifrar la clave simétrica de comunicación.

Protocolo HTTPS

Es el protocolo HTTP seguro, que utiliza SSL/TLS para cifrar la comunicación entre el navegador y el servidor web.

Dirección IP

Para que el certificado SSL funcione correctamente cada certificado debe tener una dirección IP individual en el servidor y esta dirección IP debe ser agregada al dominio para el que está emitido el certificado. La dirección IP se puede cambiar durante el funcionamiento del certificado SSL porque el certificado SSL no está enlazado con ella.

Funcionamiento de SSL

SSL maniobra por medio de un canje de llaves entre algún usuario y el servidor para poder interpretar toda la información que es encriptada por un cipher simétrico. Esto significa que la información encriptada solo puede ser desencriptada por el que posea la otra llave correcta.

Todos los datos que pasan por SSL Son encriptadas por diferentes tipos de algoritmos simetricos, típicamente DES, Triple DES, Rijndael, o IDEA. La palabra “simétrico” en esta ocasión involucra que la información que se encriptó, puede ser desencriptada después.

HTTPS utiliza un algoritmo de cifrado asimétrico para cifrar datos. Esto significa que la clave de cifrado y la clave de descifrado son diferentes. En términos generales, la "clave pública" es para cifrar datos y la "clave privada" es para descifrarlos.

Solo la clave clave privada, alojada en el servidor, puede descifrar datos que se han cifrado utilizando una clave pública específica.

El cliente HTTPS (navegador web) usa la clave pública almacenada en el certificado para cifrar los datos, luego los envía al servidor HTTPS (servidor Web). Después de recibir los datos del cliente, el servidor HTTPS lo descifra usando la clave privada.

Además de la clave privada, un certificado HTTPS contiene información para clientes HTTPS que permite verificar la validez del certificado, emisor de certificado, período válido de certificado, nombre común, etc.

¿Que debemos saber antes de iniciar el proceso para disponer de un certificado HTTPS válido?

¿Qué es una Autoridad de Certificación (CA)?

Una Autoridad de Certificación es una entidad que emite un certificado digital a una organización o a una persona después de validar su información. Las autoridades de certificación tienen que mantener registros detallados de lo que ha sido emitido y la información usada para emitirlo; además, se auditan regularmente para asegurar que cumplen con los procedimientos definidos. Cada autoridad de certificación provee una Declaración de Prácticas de Certificación CPS (Certification Practice Statement), que define los procedimientos que serán usados para comprobar las aplicaciones.

Un CA válido significa que la mayoría de los dispositivos (navegadores o sistemas operativos) confían en los certificados emitidos por este CA.

Los CA mas conocidos son: Symantec, GeoTrust, RapidSSL, COMODO, entre otros.Certificate Signing Request (CSR).

¿Qué es un Certificate Signing Request (CSR)?

Un CSR o Certificate Signing Request es un bloque de texto cifrado que normalmente es generado en el servidor donde el certificado SSL será utilizado, aunque también puede ser generado externamente.

El CSR contiene información que será incluida finalmente en el certificado SSL, como por ejemplo tu nombre o el de al empresa, la dirección, el common name (dominio para el que es generado el SSL), además de estos datos también incluirá un clave pública que será incluida también en tu certificado.

La Autoridad Certificadora o Certificate Authority (CA), es decir, la empresa que generará tu SSL (Comodo, Symantec, RapidSSL,..) utilizará este CSR para generar este certificado SSL.

Solicitud de firma de certificado:

Una solicitud de firma de certificado es un mensaje que debemos enviar a un CA para firmar un certificado.

Debido a que la clave pública almacenada en el certificado debe ser “el par” de la clave privada, pero la clave privada no se puede enviar al CA, para firmar un certificado, primero tenemos que crear la clave privada, y luego usar esta clave privada para generar el CSR que enviaremos a nuestro CA. Basado en este CSR, el CA creará el Certificado para que la clave Pública sea “el par” de la Clave Privada.

El CSR también contiene otra información que se añadirá al certificado para identificar el propietario, por ejemplo, el nombre común del certificado, el código del país del certificado, el correo electrónico del propietario del certificado, etc.

¿Qué es un Common Name (CN)?

Common Name es el nombre del dominio para el que está emitido el certificado. Common name es, por ejemplo, www.dominio.es. En el certificado Code Signing para firmar las aplicaciones se indica en el campo Common name el nombre validado de la organización para la que está emitido el certificado.

El nombre común, es el nombre del certificado, generalmente es el nombre de dominio del sitio web. Por ejemplo, el CN del certificado de Google es www.google.com.

¿Cómo sabemos si un certificado es válido?

El navegador verificará si un certificado es válido en función de:

  • El período de validez:

Cuando un CA emite un certificado, le asigna un período de validez, que generalmente es de 1 o 2 años, según el precio del certificado. Si el certificado ha expirado, el navegador mostrará una alerta de seguridad.

  • Lista de certificados revocados (CRL):

Si el CA que emitió el certificado ya no es confiable, o si la clave privada del certificado se ha visto comprometida debido a un motivo como la piratería o un error humano, el certificado puede ser revocado y pasaría a formar parte de una lista conocida como CRL. Todos los certificados que formen parte de la CRL no son válidos. El navegador mostrará una alerta de seguridad cuando detecte que un certificado está en la CRL.

  • Emisor de certificado:

El navegador verificará si el CA es de confianza. Esto está determinado por el navegador en sí o por el sistema operativo.

  • Nombre común:

El navegador verificará si el CN del certificado recibido es el mismo que el dominio. Por ejemplo, si visita https://www.abc.com y el CN del certificado que recibe el navegador es www.def.com, el navegador mostrará una alerta de seguridad.

  • Huella digital:

Algunos navegadores almacenan la Huella digital de los Certificados de ciertos dominios populares, y verifica si el Certificado recibido tiene la misma Huella digital o no. Si la Huella digital no coincide con la Huella digital en la base de datos del navegador, se mostrará una alerta de seguridad en el navegador. Por ejemplo, Google Chrome almacena la Huella digital del certificado de Google.

Ejemplo de los mensajes que muestra el navegador cuando un certificado no es valido.

Los mensajes que verá en el navegador cuando un certificado no es valido, varia de acuerdo con la versión y el navegador que utilizamos (Firefox, Chrome, IE. etc.)

Si el sitio web no es de confianza:

Sitio web no es de confianza

Certificado Revocado:

Certificado Revocado

También podemos saber si el certificado es valido o no, de acuerdo con el color de la barra del navegador.

Certificado no válido:

En este caso, aparecerá una barra de color rojo en el navegador, indicando que el sitio no es seguro

Barra de color rojo en el navegador

Certificado válido:

En este caso, aparecerá una barra de color verde en el navegador, indicando que el sitio es seguro.

Barra de color verde en el navegador

Los mensajes y colores pueden variar en función del navegador y la versión del mismo.

¿Qué es un certificado Wildcard?

Un wildcard es un certificado que se puede usar para múltiples nombres de dominio. Por ejemplo, al crear un certificado wildcard, decimos que nuestro CN es *.example.com podemos utilizar este mismo wildcard para los subdominios: hotspot1.example.com, hotspot2.example.com, hotspot3.example.com, etc.



CONOCE NUESTROS PRODUCTOS Y SOLUCIONES WIRELESS

Para obtener más información, ponte en contacto con el Departamento de Soporte o el Departamento de Pedidos 902 506 100 o envía un correo electrónico a info@wifisafe.com