TLS y certificados web

Hola a todos!

Y aquí hemos lanzado con glanders silenciosos uno de los cursos más inusuales para nosotros: "Firma digital en seguridad de la información" . A pesar de todo, nos las arreglamos y conseguimos involucrar a la gente, veamos qué sucede. Hoy echaremos un vistazo al material interesante restante y veremos brevemente cómo funciona TLS, y también cuál es la diferencia entre los certificados web no confiables y confiables.

Traducción - dzone.com/articles/a-look-at-tls-transport-layer-security
Publicado por Arun Pandey

TLS: abreviatura de Transport Layer Security (Protocolo de seguridad de la capa de transporte), basado en SSL. Como su nombre lo indica, este es un protocolo que opera a nivel de transporte.
Como sabe, la seguridad de la comunicación es un dolor de cabeza muy común, pero la implementación correcta de TLS puede llevar la seguridad web a un nuevo nivel. En un entorno con TLS incorporado, un atacante puede obtener información sobre el host al que está intentando conectarse, averiguar qué cifrado se utiliza, desconectarse, pero no puede hacer nada más que esto.

Casi todos los protocolos de comunicación tienen tres partes principales: cifrado de datos, autenticación e integridad de datos.

En este protocolo, los datos se pueden cifrar de dos maneras: usando el criptosistema de clave pública o el criptosistema simétrico. Un criptosistema de clave pública, como implementación, es más perfecto que los criptosistemas simétricos.



Descripción general de criptosistemas de clave pública y criptosistemas simétricos

El criptosistema de clave pública, un tipo de cifrado asimétrico, utiliza clave pública-privada. Entonces, la clave pública B se usa para cifrar los datos A (B compartió la clave pública con A), y después de recibir los datos cifrados, B los descifra usando su propia clave privada.

Los criptosistemas simétricos utilizan la misma clave para descifrar y cifrar, por lo que A y B tendrán la misma clave secreta. Y esto es una gran desventaja.

Ahora veamos cómo funciona la autenticación en TLS. Para verificar la autenticidad del remitente del mensaje y proporcionar al destinatario los medios para cifrar la respuesta, la autenticación se puede lograr mediante certificados digitales. Los sistemas operativos y los navegadores mantienen listas de certificados confiables que pueden confirmar.

Trusted vs. Certificados no confiables

Los certificados digitales vienen en dos categorías. Los certificados de confianza están firmados por una Autoridad de certificación (CA), mientras que los certificados no confiables son autofirmados.

Certificados de confianza

Los certificados de confianza están en un navegador web y están firmados por CA. Esto es necesario para garantizar el más alto nivel de confiabilidad. Supongamos que el sitio "xyz.com" quiere recibir un certificado digital de confianza del famoso centro de certificación "Comodo".
Los pasos serán los siguientes:

  • Cree un servidor web para la aplicación: xyz.com;
  • Cree un par de claves privadas (clave pública-privada) utilizando el cifrado de clave pública (debido a su confiabilidad);
  • Generar una solicitud de firma de certificado (CSR para abreviar) para una autoridad de certificación, en mi caso, Comodo. En el disco, el archivo puede llamarse "certreq.txt";
  • Solicite en el centro de certificación, incluya CSR en él;
  • El centro de certificación (Comodo en mi caso) verificará su solicitud, incluida la clave pública-privada;
  • Si todo está en orden, el centro de certificación firmará la solicitud con su propia clave privada;
  • El centro enviará un certificado para ser instalado en el servidor web;
  • Todo esta listo!

Certificados no confiables

El propietario del sitio firma un certificado no confiable. Este método es adecuado si los problemas de fiabilidad no son relevantes.
Tenga en cuenta que no es habitual utilizar un certificado no confiable en una implementación de TLS.

Cómo funciona el reemplazo de certificados TLS

  • Abra la dirección "xyz.com" en el navegador;
  • El servidor web recibe la solicitud;
  • El servidor web en respuesta a la solicitud envía un certificado;
  • Un navegador web evalúa la respuesta y verifica el certificado;
  • Durante el proceso de validación, el navegador web descubre que el certificado está firmado por el Centro Comodo;
  • Un navegador web comprueba la base de datos de certificados (por ejemplo, IE -> Opciones de Internet -> contenido -> certificado) en busca de un certificado de Comodo;
  • Una vez que se encuentra, el navegador web utiliza la clave pública de Comodo para verificar el certificado enviado por el servidor web;
  • Si la validación tiene éxito, el navegador considera que esta conexión es segura.

El fin

Como de costumbre, estamos esperando preguntas y comentarios.

Source: https://habr.com/ru/post/es431242/


All Articles