El handshake de TLS
Descubra cómo comienzan las sesiones seguras
El handshake de TLS es una lección gratuita de Cyber Security Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Cyber Security Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Cyber Security Academy incluye 4 lecciones en total.
¿Qué es el handshake de TLS?
El handshake de TLS es la negociación que tiene lugar antes de que se transfieran datos cifrados.
Permite que el cliente y el servidor acuerden los parámetros de cifrado, verifiquen la identidad y establezcan claves secretas compartidas.
Objetivos del handshake
Un handshake de TLS logra tres objetivos:
- Autenticación: el cliente verifica el certificado del servidor.
- Intercambio de claves: ambas partes derivan claves de sesión compartidas.
- Negociación: eligen una suite de cifrado y una versión del protocolo.
ClientHello
El cliente inicia la comunicación con un mensaje ClientHello que contiene:
- Las versiones de TLS compatibles
- Una lista de suites de cifrado que puede utilizar
- Un valor aleatorio (aleatorio del cliente)
- Extensiones como SNI (el nombre de host)
ServerHello
El servidor responde con un mensaje ServerHello, eligiendo la versión de TLS y una suite de cifrado de la lista del cliente, además de su propio valor aleatorio.
A continuación, envía su certificado para que el cliente pueda verificar su identidad.
Verificar el servidor
El cliente valida la cadena de certificados del servidor: firmas, fechas de validez, revocación y correspondencia con el nombre de host.
Si la validación falla, el handshake se interrumpe y no se envían datos.
Intercambio de claves
El TLS moderno utiliza Diffie-Hellman efímero (ECDHE). Ambas partes intercambian partes de sus claves públicas y calculan de forma independiente el mismo secreto compartido.
Esto proporciona secreto perfecto hacia adelante: si alguien roba más adelante la clave de larga duración del servidor, no podrá descifrar las sesiones anteriores.
Derivar las claves de sesión
A partir del secreto compartido y de ambos valores aleatorios, las dos partes derivan claves de sesión simétricas.
La costosa criptografía asimétrica solo se utiliza para iniciar el cifrado simétrico rápido de los datos reales.
Mensajes Finished
Cada parte envía un mensaje Finished, cifrado con las nuevas claves, que contiene un hash de todo el handshake.
Si ambos mensajes se verifican correctamente, se demuestra que nadie manipuló la negociación y que las claves coinciden.
Aceleración de TLS 1.3
TLS 1.3 simplificó el handshake a un único viaje de ida y vuelta (1-RTT) y eliminó las opciones inseguras.
Incluso puede reanudar sesiones anteriores con 0-RTT, enviando datos en el primer mensaje.
Observar un handshake
Puede observar los detalles del handshake, incluida la versión y la suite de cifrado negociadas, mediante OpenSSL.
openssl s_client -connect example.com:443 -tls1_3Por qué es importante
El handshake es el momento en que se establece o se pierde la seguridad. Un handshake defectuoso o degradado puede exponer todo el tráfico posterior.
Comprenderlo le ayuda a diagnosticar fallos de conexión y reconocer ataques.
Comprobación rápida
¿Qué ventaja proporciona Diffie-Hellman efímero (ECDHE) en el handshake?
Resumen
Ha aprendido los pasos del handshake de TLS.
- ClientHello / ServerHello negocian la versión y la suite de cifrado.
- El cliente verifica el certificado.
- ECDHE deriva claves de sesión compartidas con secreto perfecto hacia adelante.
- TLS 1.3 lo hizo más rápido y seguro.
A continuación, examinaremos en detalle las suites de cifrado.
Preguntas frecuentes
¿La lección «El handshake de TLS» es gratis?
Sí — el texto completo de «El handshake de TLS» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Cyber Security Academy, actualiza a CoddyKit PRO. El curso de Cyber Security Academy incluye 4 lecciones en total.
¿Qué aprenderé en «El handshake de TLS»?
Descubra cómo comienzan las sesiones seguras Practicas Cyber Security Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Cyber Security Academy?
No se requiere experiencia previa. Cyber Security Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «El handshake de TLS»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Cyber Security Academy?
Sí. Cada lección de Cyber Security Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- El handshake de TLS
- Suites de cifrado
- Validación de certificados
- Ataques habituales contra TLS