If you're seeing this message, it means we're having trouble loading external resources on our website.

Si estás detrás de un filtro de páginas web, por favor asegúrate de que los dominios *.kastatic.org y *.kasandbox.org estén desbloqueados.

Contenido principal

Seguridad de la capa de transporte (TLS)

Las computadoras envían paquetes de datos a través de Internet. Estos paquetes son como cartas en un sobre: un fisgón puede leer fácilmente los datos dentro de ellos. Si esos datos son información pública como un artículo de noticias, no es ningún problema. Pero si esos datos son una contraseña, un número de tarjeta de crédito o un correo electrónico confidencial, entonces sí es arriesgado permitir que cualquiera vea esos datos.
El protocolo Transport Layer Security (TLS) añade una capa de seguridad sobre los protocolos de transporte TCP/IP. TLS usa cifrado simétrico y cifrado de llave pública para enviar datos privados de forma segura, y añade características de seguridad adicionales, como autenticación y detección de manipulación de mensajes.
TLS agrega más pasos al proceso de enviar datos con TCP/IP, lo que aumenta la
en las comunicaciones de Internet. Sin embargo, la latencia adicional vale la pena por los beneficios de seguridad resultantes
(Observa que TLS sustituyó a un protocolo antiguo llamado SSL, por lo que los términos TLS y SSL se utilizan a menudo de forma intercambiable.)

De principio a fin

Vayamos paso a paso por el proceso de envío seguro de datos con TLS de una computadora a otra. Llamaremos a la computadora que envía el cliente y a la computadora receptora el servidor.

Apretón de manos de TCP

Dado que TLS está construido sobre TCP/IP, el cliente primero debe completar el apretón de manos de 3 vías de TCP con el servidor.
Diagrama de dos computadoras con flechas entre ellas. La computadora a la derecha es un servidor etiquetado con la dirección IP de khanacademy.org. Una sola flecha va de la computadora portátil al servidor con una caja arriba que contiene "ClientHello, ProtocolVersion: TLS 1.3, CipherSuites: TLS_RSA_WITH_RC4_128_SHA".
  • Una flecha etiquetada"SYN" va de la computadora portátil al servidor.
  • Otra flecha etiquetada "ACK SYN" va del servidor a la portátil.
  • Otra flecha etiquetada "ACK" va de la portátil al servidor.

Iniciación de TLS

El cliente debe notificar al servidor que desea una conexión TLS en vez de la conexión no segura estándar, así que envía un mensaje para describir qué versión del protocolo TLS y qué técnicas de cifrado quiere usar.
Diagrama de dos computadoras con flechas entre ellas. La computadora a la izquierda es una portátil que muestra una pantalla de inicio de sesión en khanacademy.org. La computadora a la derecha es un servidor etiquetado con la dirección IP de khanacademy.org. Una sola flecha va de la portátil al servidor con una caja sobre ella que contiene "ClientHello, ProtocolVersion: TLS 1.3, CipherSuites: TLS_RSA_WITH_RC4_128_SHA".

Confirmación del protocolo por el servidor

Si el servidor no provee las tecnologías solicitadas por el cliente, abortará la conexión. Esto puede suceder si un cliente moderno está tratando de comunicarse con un servidor antiguo.
Mientras que el servidor sea compatible con la versión de protocolo TLS y otras opciones, responderá con una confirmación, junto con un certificado digital que contiene su llave pública.
Diagrama de dos computadoras con flechas entre ellas. La computadora a la izquierda es una portátil que muestra una pantalla de inicio de sesión en khanacademy.org. La computadora a la derecha es un servidor etiquetado con la dirección IP de khanacademy.org. Una sola flecha va del servidor a la portátil con una caja sobre ella que contiene "ServerHello, ProtocolVersion: TLS 1.3, CipherSuite: TLS_RSA_WITH_RC4_128_SHA, Certificate, ServerHelloDone".

Verificación de certificado

El certificado digital del servidor es la manera de decir: "Sí, realmente soy quien piensas que soy". Si el cliente no cree que el certificado es legal, abortará la conexión, ya que no quiere enviar datos privados a un impostor.
De lo contrario, si el cliente puede verificar el certificado, continuará al siguiente paso.
Diagrama de verificación del cliente. Una portátil tiene una burbuja de pensamiento que sale de ella, que dice "Certificate = khanacademy.org?".

Generación de llaves compartidas

El cliente ahora conoce la llave pública del servidor, y teóricamente puede usar cifrado de llave pública para cifrar datos que el servidor puede entonces descifrar con su correspondiente llave privada.
Sin embargo, el cifrado de llave pública toma mucho más tiempo que el cifrado simétrico debido a las operaciones aritméticas más difíciles involucradas. Cuando sea posible, las computadoras prefieren usar cifrado simétrico para ahorrar tiempo.
¡Afortunadamente, sí pueden! Las computadoras pueden primero usar cifrado de llave pública para generar una llave compartida privadamente, y entonces pueden usar el cifrado simétrico con esa llave en mensajes futuros.
El cliente comienza ese proceso enviando un mensaje al servidor con una llave pre-master cifrada con la llave pública del servidor. El cliente calcula la llave compartida basada en esa llave pre-master (lo que es más seguro que enviar la llave compartida) y recuerda localmente la llave compartida.
El cliente también envía un mensaje "Finished" cuyo contenido está cifrado con la llave compartida.
Diagrama de dos computadoras con flechas entre ellas. La computadora a la izquierda es una portátil que muestra una pantalla de inicio de sesión en khanacademy.org. La computadora a la derecha es un servidor etiquetado con la dirección IP de khanacademy.org. Una sola flecha va de la portátil al servidor con una caja sobre ella que dice "ClientKeyExchange (PreMasterSecret: c3ac534fd919a0e92b966795e), ChangeCipherSpec, Finished (21c124d28a548559f0f8abd4b)".

Confirmación por el servidor de la llave compartida

El servidor ahora puede calcular la llave compartida basada en la llave pre-master e intentar descifrar el mensaje "Finished" con esa llave. Si falla, aborta la conexión.
Siempre que el servidor pueda descifrar con éxito el mensaje del cliente con la llave compartida, envía un mensaje de confirmación y su propio mensaje "Finished" con contenido cifrado.
Diagrama de dos computadoras con flechas entre ellas. La computadora a la izquierda es una portátil que muestra una pantalla de inicio de sesión en khanacademy.org. La computadora a la derecha es un servidor etiquetado con la dirección IP de khanacademy.org. Una sola flecha va de la portátil al servidor con una caja sobre ella que dice "ChangeCipherSpec, Finished (c49fe482d338760807c3c278f)".

Envío seguro de datos

Finalmente, el cliente envía de manera segura los datos privados al servidor, con cifrado simétrico y la llave compartida.
Diagrama de dos computadoras con flechas entre ellas. La computadora a la izquierda es una portátil que muestra una pantalla de inicio de sesión en khanacademy.org. La computadora a la derecha es un servidor etiquetado con la dirección IP de khanacademy.org. Una sola flecha va de la portátil al servidor con una caja sobre ella que contiene una cadena de datos cifrados.
A menudo, el mismo cliente necesita enviar datos a un servidor varias veces, como cuando un usuario llena formas en múltiples páginas de un sitio web. En ese caso, las computadoras pueden usar un proceso abreviado para establecer la sesión segura.
Comprueba tu comprensión
Como has visto, ambas computadoras deben pasar por muchos pasos para establecer una comunicación segura con TLS.
Completa la lista de pasos a continuación:
  1. Cliente y servidor completan apretón de manos de TCP
  2. El cliente envía datos cifrados con la llave compartida

TLS en todos lados

TLS se usa para muchas formas de comunicación segura en Internet, como el envío seguro de correo electrónico y la carga segura de archivos. Sin embargo, es más conocido por su uso en la navegación segura de sitios web (HTTPS).
TLS proporciona una capa segura sobre TCP/IP, gracias al uso de la llave pública y el cifrado simétrico, y es cada vez más necesario para proteger los datos privados que vuelan a través de Internet.

🙋🏽🙋🏻‍♀️🙋🏿‍♂️¿TIenes alguna pregunta sobre este tema? ¡Nos encantaría responderte; tan solo pregunta en el área de preguntas más abajo!

¿Quieres unirte a la conversación?

  • Avatar sneak peak purple style para el usuario J.
    Nota: TLS o seguridad de la capa de transporte, es una capa mas para los protocolos TCP/IP, en base a seguridad de datos en linea, manteniendo un cifrado simétrico y de llave publica.
    El proceso va así:
    1. El cliente y el servidor tienen un apretón de manos.
    2. El cliente especifica la versión TLS que se quiere usar.
    3. El servidor manda el certificado digital.
    4. El cliente revisa el certificado.
    5. Ambos generan una llave compartida.
    6. El cliente manda datos cifrados con la llave.
    (4 votos)
    Avatar Default Khan Academy avatar para el usuario
¿Sabes inglés? Haz clic aquí para ver más discusiones en el sitio en inglés de Khan Academy.