Transport Layer Security ( TLS ) es un protocolo criptográfico diseñado para brindar seguridad en las comunicaciones a través de una red informática , como Internet . Este protocolo se utiliza ampliamente en aplicaciones como correo electrónico , mensajería instantánea y voz sobre IP , pero su uso para proteger HTTPS sigue siendo el más conocido públicamente.
El protocolo TLS tiene como objetivo principal proporcionar seguridad, incluyendo privacidad (confidencialidad), integridad y autenticidad mediante el uso de criptografía , como el uso de certificados , entre dos o más aplicaciones informáticas que se comunican. Se ejecuta en la capa de presentación y se compone de dos capas: el registro TLS y el protocolo de enlace TLS .
El protocolo de seguridad de la capa de transporte de datagramas (DTLS) , estrechamente relacionado, es un protocolo de comunicaciones que proporciona seguridad a las aplicaciones basadas en datagramas . En la redacción técnica, a menudo se encuentran referencias a "(D)TLS" cuando se aplica a ambas versiones. [ 1 ]
TLS es un estándar propuesto por el Grupo de Trabajo de Ingeniería de Internet (IETF), definido por primera vez en 1999, y la versión actual es TLS 1.3, definida en agosto de 2018. TLS se basa en las especificaciones SSL ( Secure Sockets Layer ) (1994, 1995, 1996), ahora obsoletas, desarrolladas por Netscape Communications para agregar el protocolo HTTPS a su navegador web Netscape Navigator .
Descripción
Las aplicaciones cliente-servidor utilizan el protocolo TLS para comunicarse a través de una red de una manera diseñada para evitar la interceptación y la manipulación .
Dado que las aplicaciones pueden comunicarse con o sin TLS (o SSL), es necesario que el cliente solicite al servidor que establezca una conexión TLS. [ 2 ] Una de las principales formas de lograr esto es usar un número de puerto diferente para las conexiones TLS. El puerto 80 se usa normalmente para el tráfico HTTP sin cifrar, mientras que el puerto 443 es el puerto común utilizado para el tráfico HTTPS cifrado . Otro mecanismo es hacer una solicitud STARTTLS específica del protocolo al servidor para cambiar la conexión a TLS, por ejemplo, cuando se utilizan algunos protocolos de correo y noticias .
Una vez que el cliente y el servidor han acordado usar TLS, negocian una conexión con estado mediante un procedimiento de intercambio de claves (véase § Intercambio de claves TLS ). [ 3 ] Los protocolos utilizan un intercambio de claves con un cifrado asimétrico para establecer no solo la configuración del cifrado, sino también una clave compartida específica de la sesión con la que se cifra la comunicación posterior mediante un cifrado simétrico . Durante este intercambio de claves, el cliente y el servidor acuerdan varios parámetros utilizados para establecer la seguridad de la conexión:
- El protocolo de enlace comienza cuando un cliente se conecta a un servidor habilitado para TLS solicitando una conexión segura y el cliente presenta una lista de conjuntos de cifrado compatibles ( cifrados y funciones hash ).
- De esta lista, el servidor selecciona un algoritmo de cifrado y una función hash que también admita, y notifica al cliente la decisión.
- El servidor suele proporcionar entonces una identificación en forma de certificado digital . El certificado contiene el nombre del servidor , la autoridad de certificación (CA) de confianza que garantiza la autenticidad del certificado y la clave de cifrado pública del servidor.
- El cliente confirma la validez del certificado antes de proceder.
- Para generar las claves de sesión utilizadas para la conexión segura, el cliente puede:
- cifra un número aleatorio ( PreMasterSecret ) con la clave pública del servidor y envía el resultado al servidor (que solo el servidor debería poder descifrar con su clave privada); luego, ambas partes utilizan el número aleatorio para generar una clave de sesión única para el posterior cifrado y descifrado de datos durante la sesión, o
- Utiliza el intercambio de claves Diffie-Hellman (o su variante de curva elíptica DH ) para generar de forma segura una clave de sesión aleatoria y única para el cifrado y descifrado, que además posee la propiedad de confidencialidad directa : si la clave privada del servidor se divulga en el futuro, no podrá utilizarse para descifrar la sesión actual, incluso si un tercero la intercepta y la graba.
Esto finaliza el protocolo de enlace y da inicio a la conexión segura, que se cifra y descifra con la clave de sesión hasta que se cierra la conexión. Si alguno de los pasos anteriores falla, el protocolo de enlace TLS falla y no se establece la conexión.
Tenga en cuenta que TLS 1.3 solo permite algoritmos de intercambio de claves que proporcionan confidencialidad directa . Por lo tanto, establecer un PreMasterSecret utilizando la clave pública y privada del servidor solo está disponible en TLS 1.2 y versiones anteriores.
TLS y SSL no encajan perfectamente en ninguna capa del modelo OSI ni del modelo TCP/IP . [ 4 ] [ 5 ] TLS se ejecuta "sobre algún protocolo de transporte fiable (p. ej., TCP )" [ 6 ] : §1 , lo que implicaría que está por encima de la capa de transporte . Proporciona cifrado a capas superiores, que normalmente es función de la capa de presentación . Sin embargo, las aplicaciones generalmente utilizan TLS como si fuera una capa de transporte, [ 4 ] [ 5 ] aunque las aplicaciones que utilizan TLS deben controlar activamente el inicio de los handshakes TLS y el manejo de los certificados de autenticación intercambiados. [ 6 ] : §1
Cuando se protegen mediante TLS, las conexiones entre un cliente (por ejemplo, un navegador web) y un servidor (por ejemplo, wikipedia.org) tendrán todas las siguientes propiedades: [ 6 ] : §1
- La conexión es privada (o confidencial ) porque se utiliza un algoritmo de clave simétrica para cifrar los datos transmitidos. Las claves para este cifrado simétrico se generan de forma única para cada conexión y se basan en un secreto compartido que se negoció al inicio de la sesión. El servidor y el cliente negocian los detalles del algoritmo de cifrado y las claves criptográficas que se utilizarán antes de que se transmita el primer byte de datos (véase más abajo). La negociación de un secreto compartido es segura (el secreto negociado no está disponible para intrusos y no puede obtenerse, ni siquiera por un atacante que se interponga en la conexión) y fiable (ningún atacante puede modificar las comunicaciones durante la negociación sin ser detectado).
- La identidad de las partes que se comunican puede autenticarse mediante criptografía de clave pública . Esta autenticación es obligatoria para el servidor y opcional para el cliente.
- La conexión es fiable (o tiene integridad ) porque cada mensaje transmitido incluye una comprobación de integridad mediante un código de autenticación de mensajes para evitar la pérdida o alteración indetectable de los datos durante la transmisión.
TLS admite diversos métodos para el intercambio de claves, el cifrado de datos y la autenticación de la integridad de los mensajes. Por consiguiente, la configuración segura de TLS implica numerosos parámetros configurables, y no todas las opciones ofrecen todas las propiedades relacionadas con la privacidad descritas en la lista anterior (véanse las tablas siguientes: § Intercambio de claves , § Seguridad del cifrado e § Integridad de los datos ).
Se han realizado intentos para vulnerar aspectos de la seguridad en las comunicaciones que TLS pretende proporcionar, y el protocolo se ha revisado varias veces para abordar estas amenazas. Los desarrolladores de navegadores web han revisado repetidamente sus productos para protegerse contra posibles vulnerabilidades de seguridad tras su descubrimiento (véase el historial de compatibilidad de los navegadores web con TLS/SSL).
Seguridad de la capa de transporte de datagramas
El protocolo de seguridad de la capa de transporte de datagramas, abreviado DTLS, es un protocolo de comunicaciones relacionado que proporciona seguridad a las aplicaciones basadas en datagramas al permitirles comunicarse de una manera diseñada [ 7 ] [ 8 ] para prevenir la interceptación , la manipulación o la falsificación de mensajes . El protocolo DTLS se basa en el protocolo de seguridad de la capa de transporte (TLS) orientado al flujo y está diseñado para proporcionar garantías de seguridad similares. Sin embargo, a diferencia de TLS, puede utilizarse con la mayoría de los protocolos orientados a datagramas, incluidos el Protocolo de datagramas de usuario (UDP), el Protocolo de control de congestión de datagramas (DCCP), el Control y aprovisionamiento de puntos de acceso inalámbricos (CAPWAP), la encapsulación del Protocolo de transmisión de control de flujo (SCTP) y el Protocolo de transporte seguro en tiempo real (SRTP).
Como el protocolo DTLS conserva la semántica del transporte subyacente, la aplicación no sufre las demoras asociadas con los protocolos de flujo. Sin embargo, la aplicación debe lidiar con la reordenación de paquetes , la pérdida de datagramas y datos mayores que el tamaño de un paquete de red de datagramas . Debido a que DTLS usa UDP o SCTP en lugar de TCP, evita el problema de colapso de TCP [9 ] [ 10 ] cuando se usa para crear un túnel VPN.
La versión original de DTLS 1.0 de 2006 no era un documento independiente. Se presentó como una serie de deltas de TLS 1.1. [ 7 ] : §4 De manera similar, la versión posterior de DTLS de 2012 es un delta de TLS 1.2. Se le asignó el número de versión de DTLS 1.2 para que coincidiera con su versión de TLS. Por último, DTLS 1.3 de 2022 es un delta de TLS 1.3. Al igual que las dos versiones anteriores, DTLS 1.3 tiene como objetivo proporcionar "garantías de seguridad equivalentes [a TLS 1.3] con la excepción de la protección de orden/no repetibilidad". [ 11 ]
Muchos clientes VPN , incluidos Cisco AnyConnect [ 12 ] e InterCloud Fabric, [ 13 ] OpenConnect , [ 14 ] ZScaler tunnel, [ 15 ] F5 Networks Edge VPN Client , [ 16 ] y Citrix Systems NetScaler [ 17 ] utilizan DTLS para proteger el tráfico UDP. Además, todos los navegadores web modernos admiten DTLS-SRTP [ 18 ] para WebRTC .
Intercambio de claves post-cuántico
Para protegerse contra ataques de "cosecha ahora, descifrado después" por parte de futuras computadoras cuánticas , se han implementado esquemas híbridos de acuerdo de clave post-cuántica para TLS 1.3. Estos combinan un intercambio ECDHE clásico con ML-KEM , el mecanismo de encapsulación de clave basado en retículo estandarizado por NIST como FIPS 203 en agosto de 2024. [ 19 ] El grupo de trabajo TLS de IETF define los grupos híbridos X25519MLKEM768, SecP256r1MLKEM768 y SecP384r1MLKEM1024 en un borrador de Internet, [ 20 ] junto con un marco general para el intercambio de claves híbridas en TLS 1.3 [ 21 ] y una especificación para el acuerdo de clave ML-KEM independiente (no híbrido). [ 22 ]
X25519MLKEM768 (y su predecesor X25519Kyber768) ha estado habilitado de forma predeterminada en Google Chrome desde la versión 131 (noviembre de 2024) [ 23 ] y en Firefox desde la versión 132, [ 24 ] y es compatible con implementaciones del lado del servidor, incluyendo OpenSSL 3.5, [ 25 ] BoringSSL y Cloudflare . [ 26 ]
Historia y desarrollo
Proyectos de investigación iniciales
Sistema de red de datos seguro
En agosto de 1986, la Agencia de Seguridad Nacional, la Oficina Nacional de Estándares y la Agencia de Comunicaciones de Defensa lanzaron un proyecto, denominado Sistema de Red de Datos Seguros (SDNS), con el objetivo de diseñar la próxima generación de redes de comunicaciones informáticas seguras y especificaciones de productos para su implementación en aplicaciones de internet públicas y privadas. Su propósito era complementar los nuevos estándares de internet OSI que surgían rápidamente, tanto en los perfiles GOSIP del gobierno estadounidense como en el enorme esfuerzo internacional de la UIT-ISO JTC1 sobre internet. [ 36 ]
Como parte del proyecto, los investigadores diseñaron un protocolo llamado SP4 ( protocolo de seguridad en la capa 4 del sistema OSI). Este fue posteriormente renombrado como Protocolo de Seguridad de la Capa de Transporte (TLSP) y publicado en 1995 como estándar internacional ITU-T X.274|ISO/IEC 10736:1995. [ 37 ] A pesar de la similitud en el nombre, este protocolo es distinto del TLS actual.
Programación de red segura (SNP)
Otros esfuerzos para la seguridad de la capa de transporte incluyeron la interfaz de programación de aplicaciones (API ) Secure Network Programming (SNP ), que en 1993 exploró el enfoque de tener una API de capa de transporte segura muy parecida a los sockets de Berkeley , para facilitar la adaptación de aplicaciones de red preexistentes con medidas de seguridad. SNP fue publicada y presentada en la Conferencia Técnica de Verano de USENIX de 1994. [ 38 ] [ 39 ] El proyecto SNP fue financiado por una subvención de la NSA al profesor Simon Lam en UT-Austin en 1991. [ 40 ] Secure Network Programming ganó el premio ACM Software System Award de 2004. [ 41 ] [ 42 ] Simon Lam fue incorporado al Salón de la Fama de Internet por "inventar los sockets seguros en 1991 e implementar la primera capa de sockets seguros, llamada SNP, en 1993". [ 43 ] [ 44 ]
SSL 1.0, 2.0 y 3.0
Netscape desarrolló los protocolos SSL originales, y Taher Elgamal , científico jefe de Netscape Communications de 1995 a 1998, ha sido descrito como el "padre de SSL". [ 45 ] [ 46 ] [ 47 ] [ 48 ] La versión 1.0 de SSL nunca se publicó debido a graves fallos de seguridad en el protocolo. La versión 2.0, tras su publicación en febrero de 1995, pronto se descubrió que contenía varios fallos de seguridad y usabilidad. Utilizaba las mismas claves criptográficas para la autenticación y el cifrado de mensajes. Tenía una construcción MAC débil que utilizaba la función hash MD5 con un prefijo secreto, lo que la hacía vulnerable a ataques de extensión de longitud. Tampoco proporcionaba protección ni para el handshake de apertura ni para un cierre explícito del mensaje, lo que significaba que los ataques de intermediario podían pasar desapercibidos. Además, SSL 2.0 asumía un único servicio y un certificado de dominio fijo, lo que entraba en conflicto con la función ampliamente utilizada de alojamiento virtual en los servidores web, por lo que la mayoría de los sitios web se veían efectivamente impedidos de utilizar SSL.
Estas fallas hicieron necesario el rediseño completo del protocolo a la versión SSL 3.0. [ 49 ] [ 47 ] Publicado en 1996, fue producido por Paul Kocher trabajando con los ingenieros de Netscape Phil Karlton y Alan Freier, con una implementación de referencia de Christopher Allen y Tim Dierks de Certicom. Las versiones más recientes de SSL/TLS se basan en SSL 3.0. El borrador de 1996 de SSL 3.0 fue publicado por IETF como un documento histórico en RFC 6101 .
SSL 2.0 fue declarado obsoleto en 2011 por RFC 6176. En 2014, se descubrió que SSL 3.0 era vulnerable al ataque POODLE que afecta a todos los cifrados de bloques en SSL; RC4 , el único cifrado que no es de bloques compatible con SSL 3.0, también es factiblemente vulnerable tal como se usa en SSL 3.0. [ 50 ] SSL 3.0 fue declarado obsoleto en junio de 2015 por RFC 7568 .
TLS 1.0
TLS 1.0 se definió por primera vez en el RFC 2246 en enero de 1999 como una actualización de SSL versión 3.0, y fue escrito por Christopher Allen y Tim Dierks de Certicom. Como se indica en el RFC, "las diferencias entre este protocolo y SSL 3.0 no son drásticas, pero sí lo suficientemente significativas como para impedir la interoperabilidad entre TLS 1.0 y SSL 3.0". Tim Dierks escribió posteriormente que estos cambios, y el cambio de nombre de "SSL" a "TLS", fueron un gesto para salvar las apariencias ante Microsoft, "para que no pareciera que el IETF simplemente estaba aprobando sin más el protocolo de Netscape". [ 51 ]
El Consejo PCI sugirió que las organizaciones migraran de TLS 1.0 a TLS 1.1 o superior antes del 30 de junio de 2018. [ 52 ] [ 53 ] En octubre de 2018, Apple , Google , Microsoft y Mozilla anunciaron conjuntamente que dejarían de usar TLS 1.0 y 1.1 en marzo de 2020. [ 30 ] TLS 1.0 y 1.1 fueron formalmente declarados obsoletos en RFC 8996 en marzo de 2021.
TLS 1.1
TLS 1.1 se definió en el RFC 4346 en abril de 2006. [ 54 ] Es una actualización de la versión 1.0 de TLS. Las diferencias significativas en esta versión incluyen:
- Se ha añadido protección contra ataques de encadenamiento de bloques de cifrado (CBC).
- El vector de inicialización (IV) implícito fue reemplazado por un IV explícito.
- Cambio en el manejo de errores de relleno .
- Soporte para el registro de parámetros en IANA . [ 55 ]
El soporte para las versiones 1.0 y 1.1 de TLS fue ampliamente descontinuado por los sitios web alrededor de 2020, [ 56 ] deshabilitando el acceso a las versiones de Firefox anteriores a la 24 y a los navegadores basados en Chromium anteriores a la 29, [ 57 ] aunque se pueden aplicar correcciones de terceros a Netscape Navigator y versiones anteriores de Firefox para agregar soporte para TLS 1.2. [ 58 ]
TLS 1.2
TLS 1.2 se definió en el RFC 5246 en agosto de 2008. [ 33 ] Se basa en la especificación anterior TLS 1.1. Las principales diferencias incluyen:
- La combinación MD5 y SHA-1 en la función pseudoaleatoria (PRF) fue reemplazada por SHA-256 , con la opción de usar PRF especificadas por el conjunto de cifrado .
- La combinación MD5 y SHA-1 en el hash del mensaje final se reemplazó por SHA-256, con la opción de usar algoritmos hash específicos del conjunto de cifrado. Sin embargo, el tamaño del hash en el mensaje final debe seguir siendo de al menos 96 bits . [ 33 ] : §7.4.9
- La combinación MD5 y SHA-1 en el elemento firmado digitalmente fue reemplazada por un único hash negociado durante el protocolo de enlace , que por defecto es SHA-1.
- Mejora en la capacidad del cliente y del servidor para especificar qué algoritmos de hash y firma aceptan.
- Ampliación de la compatibilidad con algoritmos de cifrado autenticados , utilizados principalmente para los modos Galois/Counter (GCM) y CCM del estándar de cifrado avanzado (AES).
- Se añadieron la definición de extensiones TLS y los conjuntos de cifrado AES. [ 55 ]
Todas las versiones de TLS se perfeccionaron aún más en el RFC 6176 en marzo de 2011, eliminando su retrocompatibilidad con SSL, de modo que las sesiones TLS nunca negocian el uso de Secure Sockets Layer (SSL) versión 2.0. A abril de 2025, no hay una fecha formal para la descontinuación de TLS 1.2. Las especificaciones para TLS 1.2 también se redefinieron mediante el documento de seguimiento de estándares RFC 8446 para mantenerlo lo más seguro posible; ahora debe considerarse un protocolo de conmutación por error, destinado únicamente a negociarse con clientes que no pueden usar TLS 1.3 (la definición original de RFC 5246 para TLS 1.2 está obsoleta desde entonces).
TLS 1.3
TLS 1.3 se definió en RFC 8446 en agosto de 2018. [ 6 ] Se basa en la especificación anterior TLS 1.2. Las principales diferencias con TLS 1.2 incluyen: [ 59 ]
- Separación de los algoritmos de acuerdo de claves y autenticación de los conjuntos de cifrado [ 55 ] [ 6 ] : §11
- Eliminar la compatibilidad con curvas elípticas con nombre, débiles y menos utilizadas.
- Se elimina la compatibilidad con las funciones hash criptográficas MD5 y SHA-224.
- Requerir firmas digitales incluso cuando se utiliza una configuración previa.
- Integración de HKDF y la propuesta semi-efímera de DH
- Reemplazar la reanudación con PSK y tickets
- Compatibilidad con protocolos de enlace 1- RTT y soporte inicial para 0- RTT.
- Exigir el secreto perfecto hacia adelante , mediante el uso de claves efímeras durante el acuerdo de claves (EC)DH.
- Se elimina la compatibilidad con muchas características inseguras u obsoletas, incluyendo compresión , renegociación, cifrados que no son AEAD , cifrados nulos , [ 60 ] intercambio de claves que no son PFS (entre los que se encuentran los intercambios de claves RSA estático y DH estático), grupos DHE personalizados , negociación del formato de punto EC, protocolo Change Cipher Spec, tiempo UNIX del mensaje Hello y la entrada AD del campo de longitud para los cifrados AEAD.
- Prohibir la negociación SSL o RC4 para garantizar la compatibilidad con versiones anteriores.
- Integración del uso del hash de sesión
- Se desaconseja el uso del número de versión de la capa de registro y se congela el número para mejorar la compatibilidad con versiones anteriores.
- Trasladar algunos detalles de algoritmos relacionados con la seguridad de un apéndice a la especificación y relegar ClientKeyShare a un apéndice.
- Agregar el cifrado de flujo ChaCha20 con el código de autenticación de mensajes Poly1305
- Se añaden los algoritmos de firma digital Ed25519 y Ed448.
- Agregar los protocolos de intercambio de claves x25519 y x448
- Se añade compatibilidad para enviar múltiples respuestas OCSP.
- Encriptación de todos los mensajes de handshake después de ServerHello, incluido el certificado del servidor.
Network Security Services (NSS), la biblioteca de criptografía desarrollada por Mozilla y utilizada por su navegador web Firefox , habilitó TLS 1.3 de forma predeterminada en febrero de 2017. [ 61 ] Posteriormente se añadió compatibilidad con TLS 1.3 —pero debido a problemas de compatibilidad para un pequeño número de usuarios, no se habilitó automáticamente [ 62 ] — a Firefox 52.0 , que se lanzó en marzo de 2017. TLS 1.3 se habilitó de forma predeterminada en mayo de 2018 con el lanzamiento de Firefox 60.0 . [ 63 ]
Google Chrome estableció TLS 1.3 como versión predeterminada durante un breve período en 2017. Luego la eliminó como predeterminada, debido a la incompatibilidad con intermediarios como los proxies web de Blue Coat . [ 64 ]
La intolerancia de la nueva versión de TLS fue la osificación del protocolo ; los dispositivos intermedios habían osificado el parámetro de versión del protocolo. Como resultado, la versión 1.3 imita la imagen de la red de la versión 1.2. Este cambio se produjo muy tarde en el proceso de diseño, y solo se descubrió durante el despliegue del navegador. [ 65 ] El descubrimiento de esta intolerancia también llevó a que se abandonara la estrategia de negociación de versiones anterior, en la que se elegía la versión más coincidente, debido a niveles de osificación inviables. [ 66 ] El método de " engrasar " un punto de extensión, en el que un participante del protocolo declara soporte para extensiones inexistentes para garantizar que se toleren las extensiones no reconocidas pero existentes y así resistir la osificación, se diseñó originalmente para TLS, pero desde entonces se ha adoptado en otros lugares. [ 66 ]
Durante el Hackathon IETF 100 , que tuvo lugar en Singapur en 2017, el Grupo TLS trabajó en la adaptación de aplicaciones de código abierto para usar TLS 1.3. [ 67 ] [ 68 ] El grupo TLS estaba compuesto por personas de Japón, Reino Unido y Mauricio a través del equipo cyberstorm.mu. [ 68 ] Este trabajo continuó en el Hackathon IETF 101 en Londres , [ 69 ] y el Hackathon IETF 102 en Montreal. [ 70 ]
wolfSSL habilitó el uso de TLS 1.3 a partir de la versión 3.11.1, lanzada en mayo de 2017. [ 71 ] Como la primera implementación comercial de TLS 1.3, wolfSSL 3.11.1 admitía el Borrador 18 y ahora admite el Borrador 28, [ 72 ] la versión final, así como muchas versiones anteriores. Se publicó una serie de blogs sobre la diferencia de rendimiento entre TLS 1.2 y 1.3. [ 73 ]
En, el popular proyecto OpenSSL lanzó la versión 1.1.1 de su biblioteca, en la que el soporte para TLS 1.3 fue "la principal novedad". [ 74 ]
Se agregó compatibilidad con TLS 1.3 a Secure Channel (schannel) para las versiones GA de Windows 11 y Windows Server 2022. [ 75 ]
Seguridad del transporte empresarial
La Electronic Frontier Foundation elogió TLS 1.3 y expresó su preocupación por el protocolo variante Enterprise Transport Security (ETS), que desactiva intencionadamente importantes medidas de seguridad en TLS 1.3. [ 76 ] Originalmente llamado Enterprise TLS (eTLS), ETS es un estándar publicado conocido como ' ETSI TS103523-3', "Protocolo de seguridad de caja intermedia, parte 3: Enterprise Transport Security". Está diseñado para su uso exclusivamente dentro de redes propietarias, como los sistemas bancarios. ETS no admite el secreto directo para permitir que organizaciones de terceros conectadas a las redes propietarias puedan usar su clave privada para monitorear el tráfico de red, detectar malware y facilitar la realización de auditorías. [ 77 ] [ 78 ] A pesar de los beneficios declarados, la EFF advirtió que la pérdida del secreto directo podría facilitar la exposición de datos y afirmó que existen mejores maneras de analizar el tráfico. [ 76 ]
Certificados digitales

Un certificado digital certifica la propiedad de una clave pública por parte del titular del certificado e indica ciertos usos previstos de dicha clave. Esto permite que terceros (partes confiables) confíen en las firmas o afirmaciones realizadas por la clave privada correspondiente a la clave pública certificada. Los almacenes de claves y de confianza pueden estar en diversos formatos, como .pem , .crt, .pfx y .jks .
Autoridades certificadoras
TLS normalmente se basa en un conjunto de autoridades de certificación de terceros de confianza para establecer la autenticidad de los certificados. La confianza generalmente se fundamenta en una lista de certificados distribuidos con el software del agente de usuario , [ 79 ] y puede ser modificada por la parte que confía en ellos.
Según Netcraft , que monitoriza los certificados TLS activos, la autoridad de certificación (CA) líder del mercado ha sido Symantec desde el inicio de su encuesta (o VeriSign antes de que Symantec adquiriera la unidad de negocio de servicios de autenticación). En 2015, Symantec representaba algo menos de un tercio de todos los certificados y el 44 % de los certificados válidos utilizados por el millón de sitios web más visitados, según el recuento de Netcraft. [ 80 ] En 2017, Symantec vendió su negocio de TLS/SSL a DigiCert. [ 81 ] En un informe actualizado, se mostró que IdenTrust , DigiCert y Sectigo son las tres principales autoridades de certificación en términos de cuota de mercado desde mayo de 2019. [ 82 ]
Como consecuencia de la elección de certificados X.509 , se requieren autoridades de certificación y una infraestructura de clave pública para verificar la relación entre un certificado y su propietario, así como para generar, firmar y administrar la validez de los certificados. Si bien esto puede ser más conveniente que verificar las identidades a través de una red de confianza , las revelaciones de vigilancia masiva de 2013 hicieron más evidente que las autoridades de certificación son un punto débil desde el punto de vista de la seguridad, permitiendo ataques de intermediario (MITM) si la autoridad de certificación coopera (o se ve comprometida). [ 83 ] [ 84 ]
El 11 de abril de 2025, el CA/Browser Forum aprobó una votación que exigirá que la duración de todos los certificados TLS públicos se reduzca gradualmente a 47 días para 2029. [ 85 ] La votación fue propuesta por Apple. [ 86 ]
Algoritmos
Intercambio de claves o acuerdo de claves
Antes de que un cliente y un servidor puedan comenzar a intercambiar información protegida por TLS, deben intercambiar o acordar de forma segura una clave de cifrado y un algoritmo de cifrado para usar al cifrar los datos (véase § Cifrado ). Entre los métodos utilizados para el intercambio/acuerdo de claves se encuentran: claves públicas y privadas generadas con RSA (denominadas TLS_RSA en el protocolo de enlace TLS), Diffie-Hellman (TLS_DH), Diffie-Hellman efímero (TLS_DHE), Diffie-Hellman de curva elíptica (TLS_ECDH), Diffie-Hellman de curva elíptica efímero (TLS_ECDHE), Diffie-Hellman anónimo (TLS_DH_anon), [ 33 ] clave precompartida (TLS_PSK) [ 87 ] y contraseña remota segura (TLS_SRP). [ 88 ]
Los métodos de intercambio de claves TLS_DH_anon y TLS_ECDH_anon no autentican al servidor ni al usuario y, por lo tanto, rara vez se utilizan, ya que son vulnerables a ataques de intermediario (man-in-the-middle) . Solo TLS_DHE y TLS_ECDHE proporcionan confidencialidad directa .
Los certificados de clave pública utilizados durante el intercambio/acuerdo también varían en el tamaño de las claves de cifrado públicas/privadas utilizadas durante el intercambio y, por lo tanto, en la robustez de la seguridad proporcionada. En julio de 2013, Google anunció que dejaría de usar claves públicas de 1024 bits y que, en su lugar, usaría claves de 2048 bits para aumentar la seguridad del cifrado TLS que proporciona a sus usuarios, ya que la robustez del cifrado está directamente relacionada con el tamaño de la clave . [ 89 ] [ 90 ]
Cifrar
Notas
- 1 2 3 4 Se debe implementar RFC 5746 para corregir una falla de renegociación que de otro modo rompería este protocolo.
- ↑ Si las bibliotecas implementan las correcciones enumeradas en RFC 5746 , esto viola la especificación SSL 3.0, que la IETF no puede modificar, a diferencia de TLS. La mayoría de las bibliotecas actuales implementan la corrección e ignoran la violación que esto provoca.
- 1 2 El ataque BEAST rompe todos los cifrados de bloques (cifrados CBC) utilizados en SSL 3.0 y TLS 1.0 a menos que sean mitigados por el cliente o el servidor. Véase § Navegadores web .
- ↑ El ataque POODLE rompe todos los cifrados de bloques (cifrados CBC) utilizados en SSL 3.0 a menos que el cliente o el servidor lo mitiguen. Véase § Navegadores web .
- 1 2 3 4 5 6 7 Los cifrados AEAD (como GCM y CCM ) solo se pueden usar en TLS 1.2 o posterior.
- 1 2 3 4 5 6 7 8 Los cifrados CBC pueden ser atacados con el ataque Lucky Thirteen si la biblioteca no está escrita cuidadosamente para eliminar los canales laterales de temporización.
- 1 2 3 4 5 6 El ataque Sweet32 rompe los cifrados de bloques con un tamaño de bloque de 64 bits. [ 104 ]
- ↑ Aunque la longitud de la clave de 3DES es de 168 bits, la fuerza de seguridad efectiva de 3DES es de solo 112 bits, [ 105 ] lo cual está por debajo del mínimo recomendado de 128 bits. [ 106 ]
- 1 2 IDEA y DES se han eliminado de TLS 1.2. [ 107 ]
- Los conjuntos de cifrado de 40 bits se diseñaron intencionalmente con longitudes de clave reducidas para cumplir con las regulaciones estadounidenses, ya derogadas, que prohibían la exportación de software criptográfico que contenía ciertos algoritmos de cifrado robustos (véase Exportación de criptografía desde Estados Unidos ). Estos conjuntos débiles están prohibidos en TLS 1.1 y versiones posteriores.
- ↑ El uso de RC4 en todas las versiones de TLS está prohibido porque los ataques RC4 debilitan o rompen el RC4 utilizado en SSL/TLS.
- ↑ Solo autenticación, sin cifrado.
Integridad de los datos
Se utiliza un código de autenticación de mensajes (MAC) para la integridad de los datos. HMAC se utiliza para el modo CBC de cifrados de bloques. El cifrado autenticado (AEAD), como el modo GCM y CCM , utiliza MAC integrado con AEAD y no utiliza HMAC . [ 6 ] : §8.4 Se utiliza PRF basado en HMAC o HKDF para el protocolo de enlace TLS.
Aplicaciones y adopción
En el diseño de aplicaciones, TLS se suele implementar sobre los protocolos de la capa de transporte, cifrando todos los datos relacionados con protocolos como HTTP , FTP , SMTP , NNTP y XMPP .
Históricamente, TLS se ha utilizado principalmente con protocolos de transporte fiables como el Protocolo de Control de Transmisión (TCP). Sin embargo, también se ha implementado con protocolos de transporte orientados a datagramas, como el Protocolo de Datagramas de Usuario (UDP) y el Protocolo de Control de Congestión de Datagramas (DCCP), cuyo uso se ha estandarizado de forma independiente con el término Seguridad de la Capa de Transporte de Datagramas ( DTLS ).
sitios web
Un uso principal de TLS es proteger el tráfico de la World Wide Web entre un sitio web y un navegador web codificado con el protocolo HTTP. Este uso de TLS para proteger el tráfico HTTP constituye el protocolo HTTPS . [ 110 ]
Notas
- ↑ Véase la tabla de cifrado anterior.
- ↑ Véase § Navegadores web y § Ataques contra TLS/ SSL
navegadores web
A marzo de 2025 Las versiones más recientes de los principales navegadores web son compatibles con TLS 1.2 y 1.3 y las tienen habilitadas de forma predeterminada, con la excepción de IE 11. TLS 1.0 y 1.1 están deshabilitados de forma predeterminada en las versiones más recientes de los principales navegadores.
Las medidas de mitigación contra los ataques conocidos aún no son suficientes:
- Medidas de mitigación contra el ataque POODLE : algunos navegadores ya impiden el uso de SSL 3.0 como mecanismo de reserva; sin embargo, esta mitigación debe ser compatible no solo con los clientes, sino también con los servidores. Es necesario deshabilitar SSL 3.0, implementar la técnica de "división de registros anti-POODLE" o rechazar los cifrados CBC en SSL 3.0.
- Google Chrome: completo (TLS_FALLBACK_SCSV está implementado desde la versión 33, la opción de recurrir a SSL 3.0 está deshabilitada desde la versión 39, SSL 3.0 está deshabilitado por defecto desde la versión 40. La compatibilidad con SSL 3.0 se eliminó desde la versión 44).
- Mozilla Firefox: completo (la compatibilidad con SSL 3.0 se eliminó desde la versión 39. SSL 3.0 está deshabilitado por defecto y la opción de recurrir a SSL 3.0 está deshabilitada desde la versión 34 ; TLS_FALLBACK_SCSV se implementó desde la versión 35. En ESR, SSL 3.0 está deshabilitado por defecto y TLS_FALLBACK_SCSV se implementó desde ESR 31.3.0).
- Internet Explorer: vulnerabilidad parcial (solo en la versión 11; SSL 3.0 está deshabilitado por defecto desde abril de 2015. Las versiones 10 y anteriores siguen siendo vulnerables a POODLE).
- Opera : completa (TLS_FALLBACK_SCSV está implementado desde la versión 20, la "división de registros anti-POODLE", que solo es efectiva con la implementación del lado del cliente, está implementada desde la versión 25, SSL 3.0 está deshabilitado por defecto desde la versión 27. El soporte para SSL 3.0 se eliminará a partir de la versión 31).
- Safari: completo (solo en OS X 10.8 y versiones posteriores e iOS 8, se deniega el cifrado CBC durante la conmutación a SSL 3.0, lo que implica el uso de RC4, que tampoco se recomienda. La compatibilidad con SSL 3.0 se elimina en OS X 10.11 y versiones posteriores e iOS 9).
- Medidas de mitigación contra ataques RC4 :
- Google Chrome deshabilitó RC4 excepto como alternativa desde la versión 43. RC4 está deshabilitado desde Chrome 48.
- Firefox deshabilitó RC4 excepto como alternativa desde la versión 36. Firefox 44 deshabilitó RC4 por defecto.
- Opera deshabilitó RC4 excepto como alternativa desde la versión 30. RC4 está deshabilitado desde Opera 35.
- Internet Explorer para Windows 7 /Server 2008 R2 y para Windows 8 /Server 2012 tiene la prioridad de RC4 establecida en el nivel más bajo y también puede deshabilitarse RC4, excepto como alternativa, mediante la configuración del registro. Internet Explorer 11 Mobile 11 para Windows Phone 8.1 deshabilita RC4, excepto como alternativa si ningún otro algoritmo habilitado funciona. Edge [Legacy] e IE 11 deshabilitaron RC4 por completo en agosto de 2016.
- Medidas de mitigación contra el ataque FREAK :
- El navegador de Android incluido en Android 4.0 y versiones anteriores sigue siendo vulnerable al ataque FREAK.
- Internet Explorer 11 Mobile sigue siendo vulnerable al ataque FREAK.
- Google Chrome, Internet Explorer (escritorio), Safari (escritorio y móvil) y Opera (móvil) cuentan con medidas de mitigación contra FREAK.
- Mozilla Firefox en todas las plataformas y Google Chrome en Windows no se vieron afectados por FREAK.
Bibliotecas
La mayoría de las bibliotecas de programación SSL y TLS son software libre y de código abierto .
- BoringSSL , una bifurcación de OpenSSL para Chrome/Chromium y Android, así como para otras aplicaciones de Google.
- Botan , una biblioteca criptográfica con licencia BSD escrita en C++.
- BSAFE Micro Edition Suite: una implementación multiplataforma de TLS escrita en C que utiliza un módulo criptográfico validado por FIPS.
- BSAFE SSL-J: una biblioteca TLS que proporciona tanto una API propietaria como una API JSSE , utilizando un módulo criptográfico validado por FIPS.
- cryptlib : una biblioteca de criptografía portátil de código abierto (incluye implementación de TLS/SSL)
- Los programadores de Delphi pueden usar una biblioteca llamada Indy, que utiliza OpenSSL , o bien ICS, que ahora es compatible con TLS 1.3.
- GnuTLS : una implementación gratuita ( con licencia LGPL )
- Extensión de sockets seguros de Java (JSSE): la API de Java y la implementación del proveedor (denominada SunJSSE) [ 114 ]
- LibreSSL : una bifurcación de OpenSSL del proyecto OpenBSD.
- MatrixSSL : una implementación con doble licencia
- Mbed TLS (anteriormente PolarSSL): Una pequeña implementación de biblioteca SSL para dispositivos integrados diseñada para facilitar su uso.
- Servicios de seguridad de red : biblioteca de código abierto validada según FIPS 140.
- OpenSSL : una implementación gratuita (licencia BSD con algunas extensiones)
- Rustls , una implementación de TLS 1.3 escrita en el lenguaje de programación Rust para garantizar la seguridad de la memoria.
- Schannel : una implementación de SSL y TLS de Microsoft Windows como parte de su paquete.
- Transporte seguro : una implementación de SSL y TLS utilizada en OS X e iOS como parte de sus paquetes.
- wolfSSL (anteriormente CyaSSL): Biblioteca SSL/TLS integrada con un fuerte enfoque en la velocidad y el tamaño.
Un artículo presentado en la conferencia ACM de 2012 sobre seguridad informática y de comunicaciones [ 115 ] demostró que muchas aplicaciones utilizaban incorrectamente algunas de estas bibliotecas SSL, lo que generaba vulnerabilidades. Según los autores:
La causa principal de la mayoría de estas vulnerabilidades reside en el pésimo diseño de las API de las bibliotecas SSL subyacentes. En lugar de expresar propiedades de seguridad de alto nivel de los túneles de red, como la confidencialidad y la autenticación, estas API exponen detalles de bajo nivel del protocolo SSL a los desarrolladores de aplicaciones. Como consecuencia, los desarrolladores suelen utilizar las API SSL de forma incorrecta, malinterpretando y sin comprender sus múltiples parámetros, opciones, efectos secundarios y valores de retorno.
Otros usos
El Protocolo Simple de Transferencia de Correo (SMTP) también puede protegerse mediante TLS. Estas aplicaciones utilizan certificados de clave pública para verificar la identidad de los puntos finales.
TLS también se puede usar para tunelizar toda una pila de red y crear una VPN , como es el caso de OpenVPN y OpenConnect . Muchos proveedores ya han integrado las capacidades de cifrado y autenticación de TLS con la autorización. Además, desde finales de la década de 1990 se ha producido un desarrollo sustancial en la creación de tecnología cliente fuera de los navegadores web, para habilitar la compatibilidad con aplicaciones cliente/servidor. En comparación con las tecnologías VPN IPsec tradicionales , TLS presenta algunas ventajas inherentes en el paso de firewalls y NAT que facilitan la administración para grandes poblaciones de acceso remoto.
TLS también es un método estándar para proteger la señalización de aplicaciones del Protocolo de Inicio de Sesión (SIP). TLS se puede utilizar para proporcionar autenticación y cifrado de la señalización SIP asociada con VoIP y otras aplicaciones basadas en SIP. [ 116 ]
Seguridad
Ataques contra TLS/SSL
A continuación se enumeran los ataques más importantes contra TLS/SSL.
En febrero de 2015, la IETF publicó un RFC informativo [ 117 ] que resumía los diversos ataques conocidos contra TLS/SSL.
Ataque de renegociación
En agosto de 2009 se descubrió una vulnerabilidad en el procedimiento de renegociación que puede dar lugar a ataques de inyección de texto plano contra SSL 3.0 y todas las versiones actuales de TLS. [ 118 ] Por ejemplo, permite que un atacante que pueda secuestrar una conexión HTTPS inserte sus propias solicitudes al inicio de la conversación que el cliente tiene con el servidor web. El atacante no puede descifrar la comunicación cliente-servidor, por lo que es diferente de un ataque típico de intermediario (man-in-the-middle ). Una solución a corto plazo consiste en que los servidores web dejen de permitir la renegociación, lo que normalmente no requerirá otros cambios a menos que se utilice la autenticación con certificado de cliente . Para solucionar la vulnerabilidad, se propuso una extensión de indicación de renegociación para TLS. [ 119 ] Esta requerirá que el cliente y el servidor incluyan y verifiquen información sobre los handshakes anteriores en cualquier handshake de renegociación. [ 120 ] Esta extensión ha sido implementada por varias bibliotecas. [ 121 ] [ 122 ] [ 123 ]
Ataques de degradación:Ataque FREAK yAtaque de atasco de troncos
Un ataque de degradación de protocolo (también llamado ataque de reversión de versión) engaña a un servidor web para que negocie conexiones con versiones anteriores de TLS (como SSLv2) que hace tiempo que se abandonaron por considerarse inseguras.
Modificaciones anteriores a los protocolos originales, como False Start [ 124 ] (adoptado y habilitado por Google Chrome [ 125 ] ) o Snap Start , supuestamente introdujeron ataques limitados de degradación del protocolo TLS [ 126 ] o permitieron modificaciones a la lista de conjuntos de cifrado enviada por el cliente al servidor. Al hacerlo, un atacante podría lograr influir en la selección del conjunto de cifrado en un intento de degradar el conjunto de cifrado negociado para usar un algoritmo de cifrado simétrico más débil o un intercambio de claves más débil. [ 127 ] Un artículo presentado en una conferencia de ACM sobre seguridad informática y de comunicaciones en 2012 demostró que la extensión False Start estaba en riesgo: en ciertas circunstancias podría permitir a un atacante recuperar las claves de cifrado sin conexión y acceder a los datos cifrados. [ 128 ]
Los ataques de degradación de cifrado pueden obligar a servidores y clientes a negociar una conexión utilizando claves criptográficamente débiles. En 2014, se descubrió un ataque de intermediario llamado FREAK que afectaba a la pila OpenSSL , al navegador web predeterminado de Android y a algunos navegadores Safari . [ 129 ] El ataque consistía en engañar a los servidores para que negociaran una conexión TLS utilizando claves de cifrado de 512 bits criptográficamente débiles.
Logjam es una vulnerabilidad de seguridad descubierta en mayo de 2015 que explota la opción de usar grupos Diffie-Hellman de 512 bits heredados de "grado de exportación" que datan de la década de 1990. [ 130 ] Obliga a los servidores vulnerables a degradar a grupos Diffie-Hellman de 512 bits criptográficamente débiles. Un atacante puede entonces deducir las claves que el cliente y el servidor determinan usando el intercambio de claves Diffie-Hellman .
Ataques entre protocolos: AHOGAR
El ataque DROWN es una vulnerabilidad que ataca a servidores que admiten conjuntos de protocolos SSL/TLS contemporáneos, aprovechando su compatibilidad con el protocolo SSLv2, obsoleto e inseguro, para atacar conexiones que utilizan protocolos actualizados que, de otro modo, serían seguras. [ 131 ] [ 132 ] DROWN explota una vulnerabilidad en los protocolos utilizados y en la configuración del servidor, en lugar de un error de implementación específico. Los detalles completos de DROWN se anunciaron en marzo de 2016, junto con un parche para la vulnerabilidad. En ese momento, más de 81 000 de los 1 millón de sitios web más populares se encontraban entre los sitios web protegidos con TLS que eran vulnerables al ataque DROWN. [ 132 ]
Ataque de la BESTIA
El 23 de septiembre de 2011, los investigadores Thai Duong y Juliano Rizzo demostraron una prueba de concepto llamada BEAST ( Browser Exploit Against SSL/TLS ) [ 133 ] utilizando un applet de Java para violar las restricciones de la política del mismo origen , para una vulnerabilidad de encadenamiento de bloques de cifrado (CBC) conocida desde hace mucho tiempo en TLS 1.0: [ 134 ] [ 135 ] un atacante que observa 2 bloques de texto cifrado consecutivos C0, C1 puede probar si el bloque de texto plano P1 es igual a x eligiendo el siguiente bloque de texto plano P2 = x ⊕ C0 ⊕ C1 ; según la operación CBC, C2 = E(C1 ⊕ P2) = E(C1 ⊕ x ⊕ C0 ⊕ C1) = E(C0 ⊕ x) , que será igual a C1 si x = P1 . No se habían demostrado previamente explotaciones prácticas de esta vulnerabilidad , que fue descubierta originalmente por Phillip Rogaway [ 136 ] en 2002. La vulnerabilidad del ataque se había corregido con TLS 1.1 en 2006, pero TLS 1.1 no había tenido una amplia adopción antes de esta demostración del ataque.
RC4, como cifrado de flujo, es inmune al ataque BEAST. Por lo tanto, RC4 se utilizó ampliamente como método para mitigar el ataque BEAST en el lado del servidor. Sin embargo, en 2013, los investigadores descubrieron más vulnerabilidades en RC4. A partir de entonces, dejó de recomendarse habilitar RC4 en el lado del servidor. [ 137 ]
Chrome y Firefox no son vulnerables al ataque BEAST, [ 138 ] [ 139 ] sin embargo, Mozilla actualizó sus bibliotecas NSS para mitigar ataques similares a BEAST . Mozilla Firefox y Google Chrome utilizan NSS para implementar SSL. Algunos servidores web con una implementación defectuosa de la especificación SSL podrían dejar de funcionar como consecuencia. [ 140 ]
Microsoft publicó el Boletín de seguridad MS12-006 el 10 de enero de 2012, que solucionó la vulnerabilidad BEAST cambiando la forma en que el componente Canal seguro de Windows ( Schannel ) transmite paquetes de red cifrados desde el servidor. [ 141 ] Los usuarios de Internet Explorer (anterior a la versión 11) que se ejecutan en versiones anteriores de Windows ( Windows 7 , Windows 8 y Windows Server 2008 R2 ) pueden restringir el uso de TLS a 1.1 o superior.
Apple mitigó la vulnerabilidad BEAST implementando una división 1/n-1 y activándola por defecto en OS X Mavericks , lanzado el 22 de octubre de 2013. [ 142 ]
Ataques de DELITOS y VIOLACIONES
Los autores del ataque BEAST son también los creadores del posterior ataque CRIME , que puede permitir a un atacante recuperar el contenido de las cookies web cuando se utiliza compresión de datos junto con TLS. [ 143 ] [ 144 ] Cuando se utiliza para recuperar el contenido de las cookies de autenticación secretas , permite a un atacante realizar un secuestro de sesión en una sesión web autenticada.
Aunque el ataque CRIME se presentó como un ataque general que podía funcionar eficazmente contra un gran número de protocolos, incluidos, entre otros, TLS y protocolos de capa de aplicación como SPDY o HTTP , solo se demostraron exploits contra TLS y SPDY, y estos se mitigaron en gran medida en navegadores y servidores. El exploit CRIME contra la compresión HTTP no se ha mitigado en absoluto, a pesar de que los autores de CRIME advirtieron que esta vulnerabilidad podría ser incluso más generalizada que la compresión SPDY y TLS combinadas. En 2013 se anunció una nueva instancia del ataque CRIME contra la compresión HTTP, denominada BREACH . Basado en el ataque CRIME, un ataque BREACH puede extraer tokens de inicio de sesión, direcciones de correo electrónico u otra información confidencial del tráfico web cifrado con TLS en tan solo 30 segundos (dependiendo del número de bytes a extraer), siempre que el atacante engañe a la víctima para que visite un enlace web malicioso o sea capaz de inyectar contenido en páginas válidas que el usuario esté visitando (por ejemplo, una red inalámbrica bajo el control del atacante). [ 145 ] Todas las versiones de TLS y SSL están en riesgo de BREACH independientemente del algoritmo de cifrado o cifrado utilizado. [ 146 ] A diferencia de casos anteriores de CRIME, que pueden ser contrarrestados con éxito desactivando la compresión TLS o la compresión de encabezado SPDY, BREACH explota la compresión HTTP que no puede desactivarse en la práctica, ya que prácticamente todos los servidores web dependen de ella para mejorar las velocidades de transmisión de datos para los usuarios. [ 145 ] Esta es una limitación conocida de TLS, ya que es susceptible a ataques de texto plano elegido contra los datos de la capa de aplicación que se suponía que debía proteger.
Ataques de sincronización en el relleno
Las versiones anteriores de TLS eran vulnerables al ataque de oráculo de relleno descubierto en 2002. Una nueva variante, denominada ataque Lucky Thirteen , se publicó en 2013.
Algunos expertos [ 106 ] también recomendaron evitar el triple DES CBC. Dado que los últimos cifrados compatibles desarrollados para admitir cualquier programa que utilice la biblioteca SSL/TLS de Windows XP , como Internet Explorer en Windows XP, son RC4 y Triple-DES, y dado que RC4 ahora está obsoleto (véase la discusión sobre los ataques RC4 ), esto dificulta la compatibilidad con cualquier versión de SSL para cualquier programa que utilice esta biblioteca en XP.
En 2014 se publicó una solución como la extensión Encrypt-then-MAC a la especificación TLS. [ 147 ] El ataque Lucky Thirteen se puede mitigar en TLS 1.2 utilizando solo cifrados AES_GCM; AES_CBC sigue siendo vulnerable. SSL puede proteger el correo electrónico, VoIP y otros tipos de comunicaciones a través de redes inseguras, además de su caso de uso principal de transmisión segura de datos entre un cliente y un servidor. [ 2 ]
ataque de caniche
El 14 de octubre de 2014, investigadores de Google publicaron una vulnerabilidad en el diseño de SSL 3.0 que hace que el modo de operación CBC con SSL 3.0 sea vulnerable a un ataque de relleno ( CVE - 2014-3566 ). Denominaron a este ataque POODLE ( Padding Oracle On Downgraded Legacy Encryption ). En promedio, los atacantes solo necesitan realizar 256 solicitudes SSL 3.0 para revelar un byte de mensajes cifrados. [ 113 ]
Aunque esta vulnerabilidad solo existe en SSL 3.0 y la mayoría de los clientes y servidores admiten TLS 1.0 y versiones posteriores, todos los navegadores principales cambian automáticamente a SSL 3.0 si fallan los protocolos de enlace con versiones más recientes de TLS, a menos que ofrezcan la opción de que un usuario o administrador desactive SSL 3.0 y lo haga . Por lo tanto, un atacante intermediario puede realizar primero un ataque de reversión de versión y luego explotar esta vulnerabilidad. [ 113 ]
El 8 de diciembre de 2014 se anunció una variante de POODLE que afecta a las implementaciones de TLS que no aplican correctamente los requisitos de bytes de relleno. [ 148 ]
Ataques RC4
A pesar de la existencia de ataques a RC4 que comprometieron su seguridad, los conjuntos de cifrado en SSL y TLS que se basaban en RC4 todavía se consideraban seguros antes de 2013 debido a la forma en que se utilizaban en SSL y TLS. En 2011, el conjunto RC4 se recomendó como una solución alternativa para el ataque BEAST . [ 149 ] Nuevas formas de ataque reveladas en marzo de 2013 demostraron de manera concluyente la viabilidad de romper RC4 en TLS, lo que sugiere que no era una buena solución alternativa para BEAST. [ 112 ] AlFardan, Bernstein, Paterson, Poettering y Schuldt propusieron un escenario de ataque que utilizaba sesgos estadísticos recientemente descubiertos en la tabla de claves RC4 [ 150 ] para recuperar partes del texto plano con una gran cantidad de cifrados TLS. [ 151 ] [ 152 ] El 8 de julio de 2013 se reveló un ataque a RC4 en TLS y SSL que requiere 13 × 2 20 cifrados para romper RC4, y posteriormente se describió como "factible" en la presentación adjunta en un Simposio de Seguridad de USENIX en agosto de 2013. [ 153 ] [ 154 ] En julio de 2015, las mejoras posteriores en el ataque hacen que sea cada vez más práctico derrotar la seguridad de TLS cifrado con RC4. [ 155 ]
Dado que muchos navegadores modernos se han diseñado para contrarrestar los ataques BEAST (excepto Safari para Mac OS X 10.7 o anterior, para iOS 6 o anterior y para Windows; véase § Navegadores web ), RC4 ya no es una buena opción para TLS 1.0. Los cifrados CBC, que se vieron afectados por el ataque BEAST en el pasado, se han convertido en una opción más popular para la protección. [ 106 ] Mozilla y Microsoft recomiendan deshabilitar RC4 siempre que sea posible. [ 156 ] [ 157 ] En febrero de 2015, el uso de conjuntos de cifrado RC4 se prohibió oficialmente en todas las versiones de TLS. [ 109 ]
El 1 de septiembre de 2015, Microsoft, Google y Mozilla anunciaron que los conjuntos de cifrado RC4 se deshabilitarían de forma predeterminada en sus navegadores ( Microsoft Edge [Legacy] , Internet Explorer 11 en Windows 7/8.1/10, Firefox y Chrome ) a principios de 2016. [ 158 ] [ 159 ] [ 160 ]
ataque de truncamiento
Un ataque de truncamiento TLS (cierre de sesión) bloquea las solicitudes de cierre de sesión de la víctima, de modo que el usuario permanece conectado a un servicio web sin saberlo. Cuando se envía la solicitud de cierre de sesión, el atacante inyecta un mensaje TCP FIN sin cifrar (sin más datos del remitente) para cerrar la conexión. Por lo tanto, el servidor no recibe la solicitud de cierre de sesión y desconoce la terminación anómala. [ 161 ]
Publicado en julio de 2013, [ 162 ] [ 163 ] el ataque hace que servicios web como Gmail y Hotmail muestren una página que informa al usuario que ha cerrado sesión correctamente, al tiempo que garantiza que el navegador del usuario mantiene la autorización con el servicio, lo que permite a un atacante con acceso posterior al navegador acceder y tomar el control de la cuenta iniciada del usuario. El ataque no depende de la instalación de malware en el ordenador de la víctima; los atacantes solo necesitan colocarse entre la víctima y el servidor web (por ejemplo, configurando un punto de acceso inalámbrico no autorizado). [ 161 ] Esta vulnerabilidad también requiere acceso al ordenador de la víctima. Otra posibilidad es que al usar FTP la conexión de datos puede tener un FIN falso en el flujo de datos, y si no se respetan las reglas del protocolo para el intercambio de alertas close_notify un archivo puede truncarse.
Ataque de texto plano contra DTLS
En febrero de 2013, dos investigadores de Royal Holloway, Universidad de Londres, descubrieron un ataque de temporización [ 164 ] que les permitió recuperar (partes del) texto plano de una conexión DTLS utilizando la implementación OpenSSL o GnuTLS de DTLS cuando se utilizó el cifrado en modo Cipher Block Chaining .
Ataque impío del PAC
Este ataque, descubierto a mediados de 2016, explota vulnerabilidades en el Protocolo de Autodescubrimiento de Proxy Web (WPAD) para exponer la URL a la que un usuario intenta acceder mediante un enlace web con TLS. [ 165 ] La divulgación de una URL puede vulnerar la privacidad del usuario, no solo por el sitio web al que se accede, sino también porque las URL se utilizan a veces para autenticar usuarios. Los servicios para compartir documentos, como los que ofrecen Google y Dropbox, también funcionan enviando al usuario un token de seguridad incluido en la URL. Un atacante que obtenga dichas URL podría acceder completamente a la cuenta o los datos de la víctima.
Esta vulnerabilidad funciona contra casi todos los navegadores y sistemas operativos.
Ataque de Sweet32
El ataque Sweet32 rompe todos los cifrados de bloques de 64 bits utilizados en el modo CBC, como los que se usan en TLS, mediante un ataque de cumpleaños y un ataque de intermediario (man-in-the-middle) o la inyección de JavaScript malicioso en una página web. El objetivo del ataque de intermediario o la inyección de JavaScript es permitir que el atacante capture suficiente tráfico para realizar un ataque de cumpleaños. [ 166 ]
Errores de implementación:Error de Heartbleed,Ataque BERserk, error de Cloudflare
El fallo Heartbleed es una grave vulnerabilidad específica de la implementación de SSL/TLS en la popular biblioteca de software criptográfico OpenSSL , que afecta a las versiones 1.0.1 a 1.0.1f. Esta debilidad, reportada en abril de 2014, permite a los atacantes extraer claves privadas de servidores que normalmente deberían estar protegidos. [ 167 ] El fallo Heartbleed permite a cualquier persona en Internet leer la memoria de los sistemas protegidos por las versiones vulnerables del software OpenSSL. Esto compromete las claves privadas secretas asociadas con los certificados públicos utilizados para identificar a los proveedores de servicios y para cifrar el tráfico, los nombres y contraseñas de los usuarios y el contenido real. Esto permite a los atacantes interceptar comunicaciones, extraer datos directamente de los servicios y usuarios, y suplantar la identidad de servicios y usuarios. [ 168 ] La vulnerabilidad es causada por un fallo de lectura excesiva del búfer en el software OpenSSL, en lugar de un defecto en la especificación del protocolo SSL o TLS.
En septiembre de 2014, Intel Security Advanced Threat Research anunció una variante de la vulnerabilidad de falsificación de firma RSA PKCS#1 v1.5 de Daniel Bleichenbacher [ 169 ] . Este ataque, denominado BERserk, es consecuencia de una decodificación incompleta de la longitud ASN.1 de las firmas de clave pública en algunas implementaciones SSL y permite un ataque de intermediario (man-in-the-middle) mediante la falsificación de una firma de clave pública. [ 170 ]
En febrero de 2015, después de que los medios informaran sobre la preinstalación oculta del adware Superfish en algunos portátiles Lenovo, [ 171 ] un investigador descubrió que un certificado raíz de confianza en las máquinas Lenovo afectadas era inseguro, ya que se podía acceder fácilmente a las claves utilizando el nombre de la empresa, Komodia, como contraseña. [ 172 ] La biblioteca Komodia fue diseñada para interceptar el tráfico TLS/SSL del lado del cliente para el control parental y la vigilancia, pero también se utilizaba en numerosos programas de adware, incluido Superfish, que a menudo se instalaban subrepticiamente sin el conocimiento del usuario. A su vez, estos programas potencialmente no deseados instalaban el certificado raíz corrupto, lo que permitía a los atacantes controlar completamente el tráfico web y confirmar sitios web falsos como auténticos.
En mayo de 2016, se informó que decenas de sitios web daneses protegidos con HTTPS pertenecientes a Visa Inc. eran vulnerables a ataques que permitían a los piratas informáticos inyectar código malicioso y contenido falsificado en los navegadores de los visitantes. [ 173 ] Los ataques funcionaron porque la implementación de TLS utilizada en los servidores afectados reutilizaba incorrectamente números aleatorios ( nonces ) que están destinados a usarse solo una vez, lo que garantiza que cada handshake TLS sea único. [ 173 ]
En febrero de 2017, un error de implementación causado por un solo carácter mal escrito en el código utilizado para analizar HTML provocó un error de desbordamiento de búfer en los servidores de Cloudflare . Similar en sus efectos al fallo Heartbleed descubierto en 2014, este error de desbordamiento, ampliamente conocido como Cloudbleed , permitió a terceros no autorizados leer datos en la memoria de los programas que se ejecutaban en los servidores, datos que de otro modo deberían haber estado protegidos por TLS. [ 174 ]
Análisis de sitios web vulnerables a ataques
A partir de junio de 2025 El Movimiento de Internet Confiable estimó la proporción de sitios web que son vulnerables a ataques TLS. [ 111 ]
Secreto hacia adelante
El secreto hacia adelante es una propiedad de los sistemas criptográficos que garantiza que una clave de sesión derivada de un conjunto de claves públicas y privadas no se verá comprometida si una de las claves privadas se ve comprometida en el futuro. [ 175 ] Sin secreto hacia adelante, si la clave privada del servidor se ve comprometida, no solo se verán comprometidas todas las sesiones futuras cifradas con TLS que utilicen ese certificado de servidor, sino también cualquier sesión anterior que lo haya utilizado (siempre que estas sesiones anteriores se hayan interceptado y almacenado en el momento de la transmisión). [ 176 ] Una implementación de TLS puede proporcionar secreto hacia adelante al requerir el uso del intercambio de claves Diffie-Hellman efímero para establecer claves de sesión, y algunas implementaciones notables de TLS lo hacen exclusivamente: por ejemplo, Gmail y otros servicios HTTPS de Google que utilizan OpenSSL . [ 177 ] Sin embargo, muchos clientes y servidores que admiten TLS (incluidos navegadores y servidores web) no están configurados para implementar tales restricciones. [ 178 ] [ 179 ] En la práctica, a menos que un servicio web utilice el intercambio de claves Diffie-Hellman para implementar el secreto directo, todo el tráfico web cifrado hacia y desde ese servicio puede ser descifrado por un tercero si obtiene la clave maestra (privada) del servidor; por ejemplo, mediante una orden judicial. [ 180 ]
Incluso donde se implementa el intercambio de claves Diffie-Hellman, los mecanismos de gestión de sesiones del servidor pueden afectar la confidencialidad directa. El uso de tickets de sesión TLS (una extensión de TLS) hace que la sesión esté protegida por AES128-CBC-SHA256 independientemente de cualquier otro parámetro TLS negociado, incluidos los conjuntos de cifrado de confidencialidad directa, y las claves de tickets de sesión TLS de larga duración frustran el intento de implementar la confidencialidad directa. [ 181 ] [ 182 ] [ 183 ] Una investigación de la Universidad de Stanford en 2014 también encontró que de 473.802 servidores TLS encuestados, el 82,9 % de los servidores que implementaban el intercambio de claves Diffie-Hellman efímero (DHE) para admitir la confidencialidad directa estaban utilizando parámetros Diffie-Hellman débiles. Estas elecciones de parámetros débiles podrían comprometer potencialmente la efectividad de la confidencialidad directa que los servidores buscaban proporcionar. [ 184 ]
Desde finales de 2011, Google ha proporcionado confidencialidad directa con TLS de forma predeterminada a los usuarios de su servicio Gmail , junto con Google Docs y búsqueda cifrada, entre otros servicios. [ 185 ] Desde noviembre de 2013, Twitter ha proporcionado confidencialidad directa con TLS a los usuarios de su servicio. [ 186 ] A partir de agosto de 2019 , aproximadamente el 80% de los sitios web habilitados para TLS están configurados para usar conjuntos de cifrado que proporcionan confidencialidad directa a la mayoría de los navegadores web. [ 111 ]
Intercepción TLS
La interceptación TLS (o HTTPS, si se aplica específicamente a ese protocolo) consiste en interceptar un flujo de datos cifrado para descifrarlo, leerlo y posiblemente manipularlo, para luego volver a cifrarlo y enviarlo nuevamente. Esto se realiza mediante un " proxy transparente ": el software de interceptación finaliza la conexión TLS entrante, inspecciona el texto plano HTTP y luego crea una nueva conexión TLS al destino. [ 187 ]
La interceptación TLS/HTTPS es utilizada por los operadores de red como medida de seguridad de la información para poder detectar y protegerse contra la intrusión de contenido malicioso en la red, como virus informáticos y otro malware . [ 187 ] Dicho contenido no podría detectarse de otro modo, siempre que esté protegido por cifrado, lo cual ocurre cada vez con mayor frecuencia como resultado del uso rutinario de HTTPS y otros protocolos seguros.
Una desventaja significativa de la interceptación TLS/HTTPS es que introduce nuevos riesgos de seguridad. Una limitación notable es que proporciona un punto donde el tráfico de red está disponible sin cifrar, lo que incentiva a los atacantes a atacar este punto en particular para obtener acceso a contenido que de otro modo sería seguro. La interceptación también permite al operador de red, o a las personas que acceden a su sistema de interceptación, realizar ataques de intermediario contra los usuarios de la red. Un estudio de 2017 concluyó que "la interceptación HTTPS se ha generalizado de forma alarmante y que los productos de interceptación, como clase, tienen un impacto sumamente negativo en la seguridad de la conexión". [ 187 ]
Detalles del protocolo
El protocolo TLS intercambia registros que encapsulan los datos a intercambiar en un formato específico (véase más abajo). Cada registro puede comprimirse, rellenarse, añadirse un código de autenticación de mensajes (MAC) o cifrarse, según el estado de la conexión. Cada registro tiene un campo de tipo de contenido que indica el tipo de datos encapsulados, un campo de longitud y un campo de versión TLS. Los datos encapsulados pueden ser mensajes de control o de procedimiento del propio TLS, o simplemente los datos de la aplicación que deben transferirse mediante TLS. Las especificaciones (conjunto de cifrado, claves, etc.) necesarias para intercambiar datos de la aplicación mediante TLS se acuerdan en el "apretón de manos TLS" entre el cliente que solicita los datos y el servidor que responde a las solicitudes. Por lo tanto, el protocolo define tanto la estructura de las cargas útiles transferidas en TLS como el procedimiento para establecer y supervisar la transferencia.
protocolo de enlace TLS

Al iniciarse la conexión, el registro encapsula un protocolo de control: el protocolo de enlace ( tipo de contenido 22). Este protocolo se utiliza para intercambiar toda la información necesaria para la transmisión de los datos de la aplicación mediante TLS. Define el formato de los mensajes y el orden de su intercambio, que pueden variar según las necesidades del cliente y del servidor; es decir, existen varios procedimientos posibles para establecer la conexión. Este intercambio inicial da como resultado una conexión TLS exitosa (ambas partes están listas para transferir datos de la aplicación mediante TLS) o un mensaje de alerta (según se especifica más adelante).
protocolo de enlace TLS básico
A continuación se muestra un ejemplo típico de conexión, que ilustra un protocolo de enlace en el que el servidor (pero no el cliente) se autentica mediante su certificado:
- Fase de negociación:
- Un cliente envía un mensaje ClientHello especificando la versión más alta del protocolo TLS que admite, un número aleatorio, una lista de conjuntos de cifrado sugeridos y métodos de compresión sugeridos. Si el cliente intenta reanudar el intercambio de claves, puede enviar un ID de sesión . Si el cliente puede usar la negociación del protocolo de capa de aplicación , puede incluir una lista de protocolos de aplicación compatibles , como HTTP/2 .
- El servidor responde con un mensaje ServerHello que contiene la versión del protocolo elegida, un número aleatorio, el conjunto de cifrado y el método de compresión de entre las opciones ofrecidas por el cliente. Para confirmar o permitir la reanudación del intercambio de claves, el servidor puede enviar un ID de sesión . La versión del protocolo elegida debe ser la más reciente compatible tanto con el cliente como con el servidor. Por ejemplo, si el cliente admite TLS versión 1.1 y el servidor la versión 1.2, se debe seleccionar la versión 1.1; no se debe seleccionar la versión 1.2.
- El servidor envía su mensaje de certificado (dependiendo del conjunto de cifrado seleccionado, el servidor puede omitirlo). [ 188 ]
- El servidor envía su mensaje ServerKeyExchange (dependiendo del conjunto de cifrado seleccionado, el servidor puede omitirlo). Este mensaje se envía para todos los conjuntos de cifrado DHE , ECDHE y DH_anon. [ 33 ]
- El servidor envía un mensaje ServerHelloDone , que indica que ha finalizado la negociación del protocolo de enlace.
- El cliente responde con un mensaje ClientKeyExchange , que puede contener un PreMasterSecret , una clave pública o estar vacío. (Esto depende del algoritmo de cifrado seleccionado). Este PreMasterSecret se cifra utilizando la clave pública del certificado del servidor.
- El cliente y el servidor utilizan los números aleatorios y PreMasterSecret para calcular un secreto común, denominado "secreto maestro". Todos los demás datos de clave ( claves de sesión como IV , clave de cifrado simétrico , clave MAC [ 189 ] ) para esta conexión se derivan de este secreto maestro (y de los valores aleatorios generados por el cliente y el servidor), que se pasa a través de una función pseudoaleatoria cuidadosamente diseñada .
- El cliente ahora envía un registro ChangeCipherSpec , indicándole esencialmente al servidor: "Todo lo que te diga de ahora en adelante estará autenticado (y cifrado si los parámetros de cifrado estaban presentes en el certificado del servidor)". ChangeCipherSpec es en sí mismo un protocolo de nivel de registro con tipo de contenido 20.
- El cliente envía un mensaje Finished autenticado y cifrado , que contiene un hash y un MAC sobre los mensajes de handshake anteriores.
- El servidor intentará descifrar el mensaje Finished del cliente y verificar el hash y el MAC. Si el descifrado o la verificación fallan, se considera que el protocolo de enlace ha fallado y la conexión debe finalizarse.
- Finalmente, el servidor envía un ChangeCipherSpec , indicándole al cliente: "Todo lo que te diga a partir de ahora será autenticado (y cifrado, si se negoció el cifrado)".
- El servidor envía su mensaje Finished autenticado y cifrado .
- El cliente realiza el mismo procedimiento de descifrado y verificación que el servidor realizó en el paso anterior.
- Fase de aplicación: en este punto, el protocolo de enlace se ha completado y el protocolo de aplicación está habilitado, con tipo de contenido 23. Los mensajes de aplicación intercambiados entre el cliente y el servidor también se autenticarán y, opcionalmente, se cifrarán exactamente igual que en su mensaje finalizado . De lo contrario, el tipo de contenido devolverá 25 y el cliente no se autenticará.
Intercambio de claves TLS autenticado por el cliente
El siguiente ejemplo completo muestra cómo un cliente se autentica (además del servidor, como en el ejemplo anterior; véase autenticación mutua ) mediante TLS utilizando certificados intercambiados entre ambos pares.
- Fase de negociación:
- Un cliente envía un mensaje ClientHello especificando la versión más alta del protocolo TLS que admite, un número aleatorio, una lista de conjuntos de cifrado sugeridos y métodos de compresión.
- El servidor responde con un mensaje ServerHello que contiene la versión del protocolo elegida, un número aleatorio, el conjunto de cifrado y el método de compresión, seleccionados entre las opciones proporcionadas por el cliente. El servidor también puede enviar un identificador de sesión como parte del mensaje para reanudar el protocolo de enlace.
- El servidor envía su mensaje de certificado (dependiendo del conjunto de cifrado seleccionado, el servidor puede omitirlo). [ 188 ]
- El servidor envía su mensaje ServerKeyExchange (dependiendo del conjunto de cifrado seleccionado, este mensaje puede ser omitido por el servidor). Este mensaje se envía para todos los conjuntos de cifrado DHE, ECDHE y DH_anon.
- El servidor envía un mensaje CertificateRequest para solicitar un certificado al cliente.
- El servidor envía un mensaje ServerHelloDone , que indica que ha finalizado la negociación del protocolo de enlace.
- El cliente responde con un mensaje de certificado que contiene el certificado del cliente, pero no su clave privada.
- El cliente envía un mensaje ClientKeyExchange , que puede contener un PreMasterSecret , una clave pública o estar vacío. (Esto depende del algoritmo de cifrado seleccionado). Este PreMasterSecret se cifra utilizando la clave pública del certificado del servidor.
- El cliente envía un mensaje CertificateVerify , que es una firma de los mensajes de handshake anteriores utilizando la clave privada del certificado del cliente. Esta firma se puede verificar utilizando la clave pública del certificado del cliente. Esto le permite al servidor saber que el cliente tiene acceso a la clave privada del certificado y, por lo tanto, es el propietario del mismo.
- El cliente y el servidor utilizan los números aleatorios y PreMasterSecret para calcular un secreto común, denominado "secreto maestro". Todos los demás datos de clave ("claves de sesión") para esta conexión se derivan de este secreto maestro (y de los valores aleatorios generados por el cliente y el servidor), que se procesa mediante una función pseudoaleatoria cuidadosamente diseñada.
- El cliente ahora envía un registro ChangeCipherSpec , indicándole esencialmente al servidor: "Todo lo que te diga de ahora en adelante será autenticado (y cifrado si se negoció el cifrado)". ChangeCipherSpec es en sí mismo un protocolo de nivel de registro y tiene el tipo 20 y no el 22.
- Finalmente, el cliente envía un mensaje Finished cifrado , que contiene un hash y un MAC sobre los mensajes de handshake anteriores.
- El servidor intentará descifrar el mensaje Finished del cliente y verificar el hash y el MAC. Si el descifrado o la verificación fallan, se considera que el protocolo de enlace ha fallado y se debe cerrar la conexión.
- Finalmente, el servidor envía un ChangeCipherSpec , indicándole al cliente: "Todo lo que te diga a partir de ahora será autenticado (y cifrado si se negoció el cifrado)".
- El servidor envía su propio mensaje cifrado de finalización .
- El cliente realiza el mismo procedimiento de descifrado y verificación que el servidor realizó en el paso anterior.
- Fase de aplicación: en este punto, el "apretón de manos" se ha completado y el protocolo de aplicación está habilitado, con tipo de contenido 23. Los mensajes de aplicación intercambiados entre el cliente y el servidor también se cifrarán exactamente igual que en su mensaje Finished .
Se reanudó el protocolo de enlace TLS.
Las operaciones con clave pública (por ejemplo, RSA) son relativamente costosas en términos de potencia computacional. TLS proporciona un atajo seguro en el mecanismo de establecimiento de conexión para evitar estas operaciones: las sesiones reanudadas. Las sesiones reanudadas se implementan mediante identificadores de sesión o tickets de sesión.
Además de la mejora en el rendimiento, las sesiones reanudadas también pueden utilizarse para el inicio de sesión único , ya que garantiza que tanto la sesión original como cualquier sesión reanudada se originen en el mismo cliente. Esto es de particular importancia para el protocolo FTP sobre TLS/SSL , que de otro modo sufriría un ataque de intermediario en el que un atacante podría interceptar el contenido de las conexiones de datos secundarias. [ 190 ]
Protocolo de enlace TLS 1.3
El protocolo de enlace TLS 1.3 se redujo a un solo viaje de ida y vuelta, en comparación con los dos viajes de ida y vuelta necesarios en las versiones anteriores de TLS/SSL.
Para iniciar el protocolo de enlace, el cliente adivina qué algoritmo de intercambio de claves seleccionará el servidor y envía un mensaje ClientHello al servidor que contiene una lista de cifrados compatibles (en orden de preferencia del cliente) y las claves públicas para algunos o todos sus intentos de intercambio de claves. Si el cliente adivina correctamente el algoritmo de intercambio de claves, se elimina un viaje de ida y vuelta del protocolo de enlace. Después de recibir el ClientHello , el servidor selecciona un cifrado y envía un ServerHello con su propia clave pública, seguido de los mensajes Server Certificate y Finished . [ 191 ]
Después de que el cliente recibe el mensaje final del servidor, se coordina con el servidor sobre qué conjunto de cifrado utilizar. [ 192 ]
Identificadores de sesión
En un protocolo de enlace completo estándar , el servidor envía un ID de sesión como parte del mensaje ServerHello . El cliente asocia este ID de sesión con la dirección IP y el puerto TCP del servidor, de modo que cuando se conecta nuevamente a ese servidor, puede usar el ID de sesión para abreviar el protocolo de enlace. En el servidor, el ID de sesión se corresponde con los parámetros criptográficos previamente negociados, específicamente con la clave maestra. Ambas partes deben tener la misma clave maestra; de lo contrario, el protocolo de enlace reanudado fallará (esto evita que un intruso utilice el ID de sesión ). Los datos aleatorios en los mensajes ClientHello y ServerHello prácticamente garantizan que las claves de conexión generadas serán diferentes a las de la conexión anterior. En los RFC, este tipo de protocolo de enlace se denomina protocolo de enlace abreviado . También se describe en la literatura como protocolo de enlace de reinicio .
- Fase de negociación:
- Un cliente envía un mensaje ClientHello especificando la versión más alta del protocolo TLS que admite, un número aleatorio, una lista de conjuntos de cifrado sugeridos y métodos de compresión. El mensaje incluye el ID de sesión de la conexión TLS anterior.
- El servidor responde con un mensaje ServerHello , que contiene la versión del protocolo elegida, un número aleatorio, el conjunto de cifrado y el método de compresión de entre las opciones proporcionadas por el cliente. Si el servidor reconoce el ID de sesión enviado por el cliente, responde con el mismo ID de sesión . El cliente utiliza esto para reconocer que se está reanudando el protocolo de enlace. Si el servidor no reconoce el ID de sesión enviado por el cliente, envía un valor diferente para su ID de sesión . Esto le indica al cliente que no se reanudará el protocolo de enlace. En este punto, tanto el cliente como el servidor tienen el "secreto maestro" y los datos aleatorios para generar la clave que se utilizará para esta conexión.
- El servidor ahora envía un registro ChangeCipherSpec , indicándole esencialmente al cliente: "Todo lo que te diga a partir de ahora estará cifrado". El ChangeCipherSpec es en sí mismo un protocolo de nivel de registro y tiene el tipo 20, no el 22.
- Finalmente, el servidor envía un mensaje Finished cifrado , que contiene un hash y un MAC sobre los mensajes de handshake anteriores.
- El cliente intentará descifrar el mensaje Finished del servidor y verificar el hash y el MAC. Si el descifrado o la verificación fallan, se considera que el protocolo de enlace ha fallado y se debe cerrar la conexión.
- Finalmente, el cliente envía un ChangeCipherSpec , indicándole al servidor: "Todo lo que te diga a partir de ahora estará cifrado".
- El cliente envía su propio mensaje de finalización cifrado .
- El servidor realiza el mismo procedimiento de descifrado y verificación que el cliente realizó en el paso anterior.
- Fase de aplicación: en este punto, el "apretón de manos" se ha completado y el protocolo de aplicación está habilitado, con tipo de contenido 23. Los mensajes de aplicación intercambiados entre el cliente y el servidor también se cifrarán exactamente igual que en su mensaje Finished .
Entradas para la sesión
En lugar de identificadores de sesión, TLS también puede extenderse mediante el uso de tickets de sesión. [ 193 ] Esto define una forma de reanudar una sesión TLS sin requerir que el estado específico de la sesión se almacene en el servidor TLS.
Al utilizar tickets de sesión, el servidor TLS almacena el estado específico de la sesión en un ticket y lo envía al cliente TLS para su almacenamiento. El cliente reanuda la sesión TLS enviando el ticket al servidor, y este la reanuda según el estado de la sesión que contiene el ticket. El servidor cifra y autentica el ticket de sesión y verifica su validez antes de utilizar su contenido.
Una debilidad particular de este método con OpenSSL es que siempre limita la seguridad de cifrado y autenticación del ticket de sesión TLS transmitido a AES128-CBC-SHA256, sin importar qué otros parámetros TLS se negociaron para la sesión TLS real. [ 182 ] Esto significa que la información de estado (el ticket de sesión TLS) no está tan bien protegida como la sesión TLS en sí. Es particularmente preocupante el almacenamiento de las claves por parte de OpenSSL en un contexto de toda la aplicación ( SSL_CTX), es decir, durante la vida útil de la aplicación, y no permite volver a generar claves para los AES128-CBC-SHA256tickets de sesión TLS sin restablecer el contexto de OpenSSL de toda la aplicación (lo cual es poco común, propenso a errores y a menudo requiere intervención administrativa manual). [ 183 ] [ 181 ]
Registro TLS
Este es el formato general de todos los registros TLS.
- Tipo de contenido : 8 bits
- Este campo identifica el tipo de protocolo de capa de registro contenido en este registro.
- Versión anterior : 16 bits
- Este campo identifica la versión principal y secundaria de TLS anterior a TLS 1.3 para el mensaje contenido. Para un mensaje ClientHello , no es necesario que sea la versión más reciente compatible con el cliente. Para TLS 1.3 y versiones posteriores, debe establecerse en 0x0303 y la aplicación debe enviar las versiones compatibles en un bloque de extensión de mensaje adicional.
- Longitud : 16 bits ; Longitud < 2 14
- La longitud combinada de los campos de mensaje de protocolo , MAC y relleno . La longitud no debe exceder los 2¹⁴ bytes (16 KiB).
- Mensaje(s) de protocolo : variable
- Uno o más mensajes identificados por el campo Protocolo. Tenga en cuenta que este campo puede estar cifrado dependiendo del estado de la conexión. La longitud (en bytes) de todos los mensajes se indica con la letra m .
- Código de autenticación de mensajes (MAC) : 16, 20 o 32 bytes (opcional)
- Código de autenticación de mensajes calculado sobre el campo de mensajes del protocolo , con material de clave adicional incluido. 32 bytes para el HMAC basado en SHA-256 , 20 bytes para el HMAC basado en SHA-1 , 16 bytes para el HMAC basado en MD5 . Tenga en cuenta que este campo puede estar cifrado o no incluirse por completo, dependiendo del estado de la conexión. La longitud (en bytes) del MAC se indica con la letra q .
- Relleno : variable (opcional)
- El relleno solo se añade cuando es necesario.
No puede haber campos MAC o Padding al final de los registros TLS antes de que se hayan negociado y establecido todos los algoritmos y parámetros de cifrado, y luego se hayan confirmado mediante el envío de un registro CipherStateChange (ver más abajo) para indicar que estos parámetros tendrán efecto en todos los registros posteriores enviados por el mismo par.
protocolo de apretón de manos
La mayoría de los mensajes intercambiados durante la configuración de la sesión TLS se basan en este registro, a menos que se produzca un error o una advertencia que deba ser señalizada mediante un registro de protocolo Alert (véase más abajo), o que el modo de cifrado de la sesión sea modificado por otro registro (véase el protocolo ChangeCipherSpec más abajo).
- Tipo de contenido : 8 bits ; == 22
- Este campo indica el tipo de protocolo de enlace .
- Tipo de mensaje : 8 bits
- Este campo identifica el tipo de mensaje de establecimiento de conexión.
- Longitud de los datos del mensaje de establecimiento de conexión : 24 bits
- Este es un campo de 3 bytes que indica la longitud de los datos del protocolo de enlace, sin incluir el encabezado.
- Mensaje de saludo : variable
- Datos del propio mensaje de establecimiento de conexión.
Tenga en cuenta que se pueden combinar varios mensajes de establecimiento de conexión dentro de un mismo registro.
Protocolo de alerta
Normalmente, este registro no debería enviarse durante el protocolo de enlace ni durante los intercambios entre aplicaciones. Sin embargo, puede enviarse en cualquier momento durante el protocolo de enlace y hasta el cierre de la sesión. Si se utiliza para indicar un error grave, la sesión se cerrará inmediatamente después de enviar este registro, por lo que sirve para justificar dicho cierre. Si el nivel de alerta se marca como advertencia, el servidor remoto puede decidir cerrar la sesión si considera que no es lo suficientemente fiable para sus necesidades (antes de hacerlo, también puede enviar su propia señal).
- Tipo de contenido : 8 bits ; == 21
- Este campo indica el tipo de protocolo de alerta .
- Longitud : 16 bits ; == 2
- La longitud del resto de los campos, que es 2.
- Nivel : 8 bits
- Este campo identifica el nivel de alerta. Si el nivel es crítico, el remitente debe cerrar la sesión inmediatamente. De lo contrario, el destinatario puede optar por finalizar la sesión enviando su propia alerta crítica y cerrándola inmediatamente después. El uso de registros de alerta es opcional; sin embargo, si no se registran antes del cierre de la sesión, esta podría reanudarse automáticamente (con sus respectivos protocolos de enlace).
- El cierre normal de una sesión tras la finalización de la aplicación transportada debería notificarse preferiblemente con al menos el tipo de alerta "Notificar cierre" (con un nivel de advertencia simple) para evitar la reanudación automática de una nueva sesión. Señalizar explícitamente el cierre normal de una sesión segura antes de cerrar efectivamente su capa de transporte es útil para prevenir o detectar ataques (como intentos de truncar los datos transportados de forma segura, si estos no tienen intrínsecamente una longitud o duración predeterminada que el destinatario de los datos seguros pueda esperar).
- Descripción : 8 bits
- Este campo identifica qué tipo de alerta se está enviando.
Protocolo ChangeCipherSpec
- Tipo de contenido : 8 bits ; == 20
- Este campo indica el tipo de protocolo ChangeCipherSpec .
- Longitud : 16 bits ; == 1
- La longitud del resto de los campos, que es 1.
- Tipo de protocolo CCS : 8 bits
- Este campo identifica el tipo de protocolo CCS. Actualmente solo hay uno.
Protocolo de aplicación
- Tipo de contenido : 8 bits ; == 23
- Este campo identifica el tipo de protocolo de aplicación .
- Longitud : 16 bits ; Longitud < 2 14
- Longitud combinada de los campos Datos de la aplicación , MAC y Relleno . La longitud no debe exceder los 2¹⁴ bytes (16 KiB).
- Datos de la aplicación : variable
- Datos de la aplicación. La longitud (en bytes) de los datos se indica con la letra m .
- Código de autenticación de mensajes (MAC) : 16, 20 o 32 bytes (opcional)
- Código de autenticación de mensajes calculado sobre el campo Datos de la aplicación . 32 bytes para el HMAC basado en SHA-256 , 20 bytes para el HMAC basado en SHA-1 , 16 bytes para el HMAC basado en MD5 . La longitud (en bytes) del MAC se indica con la letra q .
- Relleno : variable (opcional)
- El último byte contiene la longitud del relleno.
Compatibilidad con servidores virtuales basados en nombres
Desde el punto de vista del protocolo de aplicación, TLS pertenece a una capa inferior, aunque el modelo TCP/IP es demasiado general para mostrarlo. Esto significa que el protocolo de enlace TLS se realiza normalmente (excepto en el caso de STARTTLS ) antes de que pueda iniciarse el protocolo de aplicación. En la funcionalidad de servidor virtual basado en nombres que proporciona la capa de aplicación, todos los servidores virtuales alojados en el mismo servidor comparten el mismo certificado, ya que el servidor debe seleccionarlo y enviarlo inmediatamente después del mensaje ClientHello. Esto supone un gran problema en los entornos de alojamiento, pues implica compartir el mismo certificado entre todos los clientes o utilizar una dirección IP diferente para cada uno.
Existen dos soluciones alternativas conocidas proporcionadas por X.509 :
- Si todos los servidores virtuales pertenecen al mismo dominio, se puede utilizar un certificado comodín . [ 194 ] Además de la selección flexible del nombre de host, que podría ser un problema o no, no existe un acuerdo común sobre cómo hacer coincidir los certificados comodín. Se aplican diferentes reglas según el protocolo de aplicación o el software utilizado. [ 195 ]
- Agregue cada nombre de host virtual en la extensión subjectAltName. El principal problema es que el certificado debe volver a emitirse cada vez que se agrega un nuevo servidor virtual.
Para proporcionar el nombre del servidor, las extensiones de Transport Layer Security (TLS) permiten a los clientes incluir una extensión de Server Name Indication (SNI) en el mensaje ClientHello extendido. [ 196 ] : §3 Esta extensión le indica al servidor inmediatamente a qué nombre desea conectarse el cliente, de modo que el servidor pueda seleccionar el certificado apropiado para enviar a los clientes.
También existe un método para implementar el alojamiento virtual basado en nombres actualizando HTTP a TLS mediante un encabezado HTTP/1.1 Upgrade . [ 2 ] Normalmente, esto se hace para implementar de forma segura HTTP sobre TLS dentro del esquema URI principal "http" en lugar del esquema "https" comúnmente utilizado. Esto evitaría la bifurcación del espacio URI y reduciría la cantidad de puertos utilizados; sin embargo, pocas implementaciones lo admiten actualmente.
Véase también
- Negociación de protocolo de capa de aplicación : una extensión de TLS utilizada para SPDY y el inicio falso de TLS.
- Bullrun (programa de descifrado) : un programa secreto anti-cifrado dirigido por la Agencia de Seguridad Nacional de Estados Unidos.
- Autoridad certificadora
- Transparencia del certificado
- TLS de datagramas (DTLS)
- Credencial delegada
- Seguridad de transporte estricta HTTP – HSTS
- Archivo de llavero
- Tecnología de Comunicaciones Privadas (PCT): un competidor histórico de Microsoft para SSL 2.0.
- QUIC (Quick UDP Internet Connections) – “…fue diseñado para proporcionar una protección de seguridad equivalente a TLS/SSL”; el objetivo principal de QUIC es mejorar el rendimiento percibido de las aplicaciones web orientadas a la conexión que actualmente utilizan TCP.
- Criptografía controlada por servidor
- tcpcrypt
- Seguridad de la capa de transporte de datagramas
- aceleración TLS
Lecturas adicionales
- Wagner, David; Schneier, Bruce (noviembre de 1996). "Análisis del protocolo SSL 3.0" (PDF) . Actas del Segundo Taller USENIX sobre Comercio Electrónico . USENIX Press. págs. 29–40 . Archivado (PDF) del original el 16 de octubre de 2006. Recuperado el 12 de octubre de 2006 .
- Rescorla, Eric (2001). SSL y TLS: Diseño y construcción de sistemas seguros . Estados Unidos: Addison-Wesley Pub Co. ISBN 978-0-201-61598-2.
- Stephen A. Thomas (2000). Fundamentos de SSL y TLS para la seguridad web . Nueva York: Wiley. ISBN 978-0-471-38354-3.
- Bard, Gregory (2006). "Un ataque de texto plano elegido adaptativo por bloques desafiante pero factible contra SSL" . Asociación Internacional para la Investigación Criptológica (136). Archivado del original el 23 de septiembre de 2011. Recuperado el 23 de septiembre de 2011 .
- Canvel, Brice. "Intercepción de contraseñas en un canal SSL/TLS" . Archivado del original el 20 de abril de 2016. Consultado el 20 de abril de 2007 .
- Creación de VPN con IPsec y SSL/TLS. Archivado el 12 de abril de 2015 en Wayback Machine. Artículo de Linux Journal de Rami Rosen.
- Joshua Davies (2010). Implementación de SSL/TLS . Wiley. ISBN 978-0470920411.
- Polk, Tim; McKay, Kerry; Chokhani, Santosh (abril de 2014). "Directrices para la selección, configuración y uso de implementaciones de seguridad de la capa de transporte (TLS)" (PDF) . Instituto Nacional de Estándares y Tecnología. Archivado del original (PDF) el 8 de mayo de 2014. Consultado el 7 de mayo de 2014 .
- Abdou, AbdelRahman; van Oorschot, Paul (agosto de 2017). "Verificación de ubicación del servidor (SLV) y fijación de ubicación del servidor: aumento de la autenticación TLS" . ACM Transactions on Privacy and Security . 21 (1): 1:1–1:26. doi : 10.1145/3139294 . S2CID 5869541. Archivado del original el 22 de marzo de 2019. Recuperado el 11 de enero de 2018 .
- Ivan Ristic (2022). TLS y PKI a prueba de balas, segunda edición . Feisty Duck. ISBN 978-1907117091.
Enlaces externos
- Grupo de trabajo de ingeniería de Internet – Grupo de trabajo TLS Archivado el 11/01/2014 en Wayback Machine
Estándares primarios
La versión aprobada actualmente de (D)TLS es la versión 1.3, que se especifica en:
- RFC 8446 – " El protocolo de seguridad de la capa de transporte (TLS) versión 1.3 " , [ 6 ] Estándar propuesto.
- RFC 9147 – " El protocolo de seguridad de la capa de transporte de datagramas (DTLS) versión 1.3 " , [ 11 ] Estándar propuesto.
Las normas actuales sustituyen a estas versiones anteriores:
- RFC 5246 – " El protocolo de seguridad de la capa de transporte (TLS) versión 1.2, " [ 33 ] Obsoleto.
- RFC 6347 – " Seguridad de la capa de transporte de datagramas, versión 1.2, " [ 8 ] Obsoleto.
- RFC 4346 – " El protocolo de seguridad de la capa de transporte (TLS) versión 1.1, " [ 54 ] Histórico.
- RFC 2246 – " El protocolo TLS versión 1.0 " , [ 197 ] Histórico.
- RFC 6101 – " El protocolo Secure Sockets Layer (SSL) versión 3.0 " , [ 198 ] Histórico.
- Borrador de Internet (1995) : "El protocolo SSL"
Extensiones
Posteriormente, otros RFC extendieron (D)TLS.
Las extensiones de (D)TLS 1.3 incluyen:
- RFC 9367 – " Conjuntos de cifrado GOST para el protocolo de seguridad de la capa de transporte (TLS) versión 1.3, " [ 95 ] Informativo.
Las extensiones de (D)TLS 1.2 incluyen:
- RFC 5288 – " Conjuntos de cifrado AES Galois Counter Mode (GCM) para TLS " , [ 96 ] Estándar propuesto.
- RFC 5289 – " Conjuntos de cifrado de curva elíptica TLS con SHA-256/384 y modo de contador de Galois AES (GCM), " [ 97 ] Estándar propuesto.
- RFC 5746 – " Extensión de la indicación de renegociación de la seguridad de la capa de transporte (TLS) " , [ 119 ] Norma propuesta.
- RFC 5878 – " Extensiones de autorización de seguridad de la capa de transporte (TLS) " , [ 199 ] Experimental.
- RFC 5932 – " Conjuntos de cifrado Camellia para TLS " , [ 101 ] Estándar propuesto.
- RFC 6066 – " Extensiones de seguridad de la capa de transporte (TLS): definiciones de extensión " , [ 196 ] Norma propuesta.
- RFC 6091 – " Uso de claves OpenPGP para la autenticación de seguridad de la capa de transporte (TLS) " , [ 200 ] Informativo.
- RFC 6176 – " Prohibición de Secure Sockets Layer (SSL) versión 2.0 " , [ 27 ] Estándar propuesto.
- RFC 6209 – " Adición de los conjuntos de cifrado ARIA a la seguridad de la capa de transporte (TLS), " [ 102 ] Informativo.
- RFC 6347 – " Seguridad de la capa de transporte de datagramas, versión 1.2, " [ 8 ] Obsoleto. Esta definición forma parte ahora de la especificación DTLS 1.3.
- RFC 6367 – " Adición de los conjuntos de cifrado Camellia a la seguridad de la capa de transporte (TLS), " [ 100 ] Informativo.
- RFC 6460 – " Perfil Suite B para Transport Layer Security (TLS), " [ 201 ] Histórico. La Agencia de Seguridad Nacional ha suspendido el soporte para la criptografía de Suite B.
- RFC 6655 – " Conjuntos de cifrado AES-CCM para seguridad de la capa de transporte (TLS), " [ 98 ] Estándar propuesto.
- RFC 7027 – " Curvas de grupo cerebral de criptografía de curva elíptica (ECC) para seguridad de la capa de transporte (TLS), " [ 202 ] Informativo.
- RFC 7251 – " Conjuntos de cifrado de criptografía de curva elíptica (ECC) AES-CCM para TLS " , [ 99 ] Informativo.
- RFC 7301 – " Extensión de negociación del protocolo de capa de aplicación de seguridad de la capa de transporte (TLS) " , [ 203 ] Estándar propuesto.
- RFC 7366 – " Encriptación y luego MAC para seguridad de la capa de transporte (TLS) y seguridad de la capa de transporte de datagramas (DTLS) " , [ 147 ] Estándar propuesto.
- RFC 7465 – " Prohibición de conjuntos de cifrado RC4 " , [ 109 ] Estándar propuesto.
- RFC 7507 – " Valor de conjunto de cifrado de señalización de reserva TLS (SCSV) para prevenir ataques de degradación de protocolo " , [ 204 ] Obsoleto.
- RFC 7568 – " Descontinuación de Secure Sockets Layer versión 3.0 " , [ 28 ] Estándar propuesto.
- RFC 7627 – " Transport Layer Security (TLS) Session Hash and Extended Master Secret Extension " , [ 205 ] Estándar propuesto.
- RFC 7685 – " Una extensión de relleno ClientHello de Transport Layer Security (TLS) " , [ 206 ] Estándar propuesto.
- RFC 8422 – " Conjuntos de cifrado de criptografía de curva elíptica (ECC) para versiones 1.2 y anteriores de Transport Layer Security (TLS) " , [ 92 ] Estándar propuesto.
- RFC 9189 – " Conjuntos de cifrado GOST para el protocolo de seguridad de la capa de transporte (TLS) versión 1.2, " [ 94 ] Informativo.
Las extensiones de (D)TLS 1.1 incluyen:
- RFC 4366 – " Extensiones de seguridad de la capa de transporte (TLS) " , [ 207 ] Obsoleto. Describe tanto un conjunto de extensiones específicas como un mecanismo de extensión genérico.
- RFC 4492 – " Conjuntos de cifrado de criptografía de curva elíptica (ECC) para seguridad de la capa de transporte (TLS) " , [ 208 ] Obsoleto.
- RFC 4680 – " Mensaje de protocolo de enlace TLS para datos suplementarios " , [ 209 ] Estándar propuesto.
- RFC 4681 – “ Extensión de asignación de usuario TLS, “ [ 210 ] Estándar propuesto.
- RFC 4785 – " Conjuntos de cifrado de clave precompartida (PSK) con cifrado nulo para seguridad de la capa de transporte (TLS) " , [ 211 ] Estándar propuesto.
- RFC 5054 – " Uso del protocolo de contraseña remota segura (SRP) para la autenticación TLS " , [ 212 ] Informativo. Define los conjuntos de cifrado TLS-SRP .
- RFC 5077 – " Reanudación de sesión de Transport Layer Security (TLS) sin estado del lado del servidor " , [ 193 ] Obsoleto.
- RFC 5081 – " Uso de claves OpenPGP para la autenticación de seguridad de la capa de transporte (TLS) " , [ 213 ] Experimental.
- RFC 5216 – " El protocolo de autenticación EAP -TLS " , [ 214 ] Estándar propuesto.
Las extensiones a TLS 1.0 incluyen:
- RFC 2595 – " Uso de TLS con IMAP, POP3 y ACAP, " [ 215 ] Estándar propuesto. Especifica una extensión de los servicios IMAP, POP3 y ACAP que permite al servidor y al cliente utilizar la seguridad de la capa de transporte para proporcionar una comunicación privada y autenticada a través de Internet.
- RFC 2712 – " Adición de conjuntos de cifrado Kerberos a la seguridad de la capa de transporte (TLS), " [ 216 ] Estándar propuesto. Los conjuntos de cifrado de 40 bits definidos en este memorando aparecen únicamente con el propósito de documentar el hecho de que esos códigos de conjuntos de cifrado ya han sido asignados.
- RFC 2817 – " Actualización a TLS dentro de HTTP/1.1 " , [ 2 ] Estándar propuesto. Explica cómo usar el mecanismo Upgrade en HTTP/1.1 para iniciar la seguridad de la capa de transporte (TLS) sobre una conexión TCP existente. Esto permite que el tráfico HTTP seguro y no seguro comparta el mismo puerto conocido (en este caso, http: en el puerto 80 en lugar de https: en el puerto 443).
- RFC 2818 – " HTTP sobre TLS, " [ 217 ] Obsoleto. Distingue el tráfico seguro del tráfico no seguro mediante el uso de un "puerto de servidor" diferente.
- RFC 3207 – " Extensión del servicio SMTP para SMTP seguro sobre Transport Layer Security " , [ 218 ] Estándar propuesto. Especifica una extensión del servicio SMTP que permite que un servidor y un cliente SMTP utilicen la seguridad de la capa de transporte para proporcionar una comunicación privada y autenticada a través de Internet.
- RFC 3268 – " Conjuntos de cifrado del Estándar de Cifrado Avanzado (AES) para la Seguridad de la Capa de Transporte (TLS) " , [ 219 ] Obsoleto. Añade conjuntos de cifrado del Estándar de Cifrado Avanzado (AES) a los cifrados simétricos ya existentes.
- RFC 3546 – " Extensiones de seguridad de la capa de transporte (TLS) " , [ 220 ] Obsoleto. Agrega un mecanismo para negociar extensiones de protocolo durante la inicialización de la sesión y define algunas extensiones.
- RFC 3749 – " Métodos de compresión del protocolo de seguridad de la capa de transporte " , [ 221 ] Norma propuesta. Especifica el marco de trabajo para los métodos de compresión y el método de compresión DEFLATE .
- RFC 3943 – " Compresión del protocolo de seguridad de la capa de transporte (TLS) mediante Lempel-Ziv-Stac (LZS) " , [ 222 ] Informativo.
- RFC 4132 – " Adición de conjuntos de cifrado Camellia a la seguridad de la capa de transporte (TLS), " [ 223 ] Obsoleto.
- RFC 4162 – " Adición de conjuntos de cifrado SEED a la seguridad de la capa de transporte (TLS), " [ 103 ] Estándar propuesto.
- RFC 4217 – " Protección de FTP con TLS " , [ 224 ] Norma propuesta.
- RFC 4279 – " Conjuntos de cifrado de clave precompartida para la seguridad de la capa de transporte (TLS) " , [ 225 ] Estándar propuesto. Agrega tres conjuntos de nuevos conjuntos de cifrado para el protocolo TLS para admitir la autenticación basada en claves precompartidas.
RFC informativos
Referencias
- ↑ ie "Credenciales delegadas para (D)TLS" . Ietf . Archivado del original el 26 de junio de 2024. Recuperado el 26 de junio de 2024 .
- 1 2 3 4 R. Khare; S. Lawrence (mayo de 2000). Actualización a TLS dentro de HTTP/1.1 . Grupo de trabajo de redes IETF . doi : 10.17487/RFC2817 . RFC 2817 .Estándar propuesto. Actualizado por RFC 7230 y 7231. Actualiza RFC 2616 .
- ↑ "SSL/TLS en detalle" . TechNet . Microsoft Docs . 8 de octubre de 2009. Archivado del original el 13 de agosto de 2022. Consultado el 24 de octubre de 2021 .
- 1 2 Hooper, Howard (2012). CCNP Security VPN 642–648 Guía oficial de certificación (2.ª ed.). Cisco Press. pág. 22. ISBN 9780132966382.
- 1 2 Spott, Andrew; Leek, Tom; et al. "¿En qué capa se encuentra TLS?" . Information Security Stack Exchange . Archivado del original el 13-02-2021 . Recuperado el 13-04-2017 .
- 1 2 3 4 5 6 7 E. Rescorla (agosto de 2018). El protocolo de seguridad de la capa de transporte (TLS) versión 1.3 . Grupo de trabajo TLS de la Fuerza de Tarea de Ingeniería de Internet . doi : 10.17487/RFC8446 . RFC 8446 .Norma propuesta. Deja obsoletas las RFC 5077 , 5246 y 6961. Actualiza las RFC 5705 y 6066 .
- 1 2 E. Rescorla; N. Modadugu (abril de 2006). Seguridad de la capa de transporte de datagramas . Grupo de trabajo de redes. doi : 10.17487/RFC4347 . RFC 4347 .Obsoleto. Obsoleto según RFC 6347. Actualizado por RFC 5746 y 7507 .
- 1 2 3 E. Rescorla; N. Modadugu (enero de 2012). Seguridad de la capa de transporte de datagramas versión 1.2 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6347 . ISSN 2070-1721 . RFC 6347 . Obsoleto. Obsoleto según RFC 9147. Actualizado por RFC 7507 , 7905 , 8996 y 9146. Deja obsoleto a RFC 4347 .
- ↑ Titz, Olaf (23 de abril de 2001). "Por qué TCP sobre TCP es una mala idea" . Archivado del original el 10 de marzo de 2023. Recuperado el 17 de octubre de 2015 .
- ↑ Honda, Osamu; Ohsaki, Hiroyuki; Imase, Makoto; Ishizuka, Mika; Murayama, Junichi (octubre de 2005). "Understanding TCP over TCP: effects of TCP tunneling on end-to-end throughput and latency". En Atiquzzaman, Mohammed; Balandin, Sergey I (eds.). Performance, Quality of Service, and Control of Next-Generation Communication and Sensor Networks III . Vol. 6011. Bibcode : 2005SPIE.6011..138H . CiteSeerX 10.1.1.78.5815 . doi : 10.1117/12.630496 . S2CID 8945952 .
- 1 2 E. Rescorla; H. Tschofenig; N. Modadugu (abril de 2022). El protocolo de seguridad de la capa de transporte de datagramas (DTLS) versión 1.3 . Grupo de trabajo TLS de la Fuerza de Tarea de Ingeniería de Internet . doi : 10.17487/RFC9147 . RFC 9147 .Norma propuesta. Sustituye a RFC 6347 .
- ↑ "Preguntas frecuentes de AnyConnect: túneles, comportamiento de reconexión y temporizador de inactividad" . Cisco . Archivado del original el 26 de febrero de 2017. Consultado el 26 de febrero de 2017 .
- ↑ "Descripción general de la arquitectura InterCloud de Cisco" (PDF) . Cisco Systems . Archivado (PDF) del original el 9 de agosto de 2022. Consultado el 29 de noviembre de 2022 .
- ↑ "OpenConnect" . OpenConnect . Archivado del original el 2 de febrero de 2017. Consultado el 26 de febrero de 2017 .
- ↑ "ZScaler ZTNA 2.0 Tunnel" . ZScaler . Archivado del original el 29/11/2022 . Consultado el 29/11/2022 .
- ↑ "f5 Datagram Transport Layer Security (DTLS)" . f5 Networks . Archivado del original el 29/11/2022 . Consultado el 29/11/2022 .
- ↑ "Configuración de un servidor virtual DTLS" . Citrix Systems . Archivado del original el 21/12/2016 . Consultado el 29/11/2022 .
- ↑ "Notas de interoperabilidad de WebRTC" . Archivado del original el 11 de mayo de 2013.
- ↑ "FIPS 203: Estándar de mecanismo de encapsulación de clave basado en retícula de módulos" . Instituto Nacional de Estándares y Tecnología. 13 de agosto de 2024.
- ↑ "Acuerdo de claves híbrido post-cuántico ECDHE-MLKEM para TLSv1.3" . IETF.
- ↑ "Intercambio de claves híbrido en TLS 1.3" . IETF.
- ↑ "ML-KEM Post-Quantum Key Agreement for TLS 1.3" . IETF.
- ↑ "Avanzando en nuestra increíble apuesta por la criptografía asimétrica" . Blog de Chromium. Mayo de 2024.
- ↑ "Notas de la versión Firefox 132.0" . Mozilla. Octubre de 2024.
- ↑ "Notas de la versión 3.5 de OpenSSL" . OpenSSL.
- ↑ "El estado de Internet post-cuántico" . Cloudflare. Marzo de 2024.
- 1 2 S. Turner; T. Polk (marzo de 2011). Prohibición de Secure Sockets Layer (SSL) versión 2.0 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6176 . ISSN 2070-1721 . RFC 6176 . Estándar propuesto. Actualizado por RFC 8996. Actualiza RFC 2246 , 5246 y 4346 .
- 1 2 R. Barnes; M. Thomson; A. Pironti; A. Langley (junio de 2015). Desaprobación de Secure Sockets Layer versión 3.0 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7568 . ISSN 2070-1721 . RFC 7568 . Estándar propuesto. Actualizado por RFC 8996. Actualiza RFC 5246 .
- 1 2 M. Nottingham (marzo de 2021). Desaprobación de TLS 1.0 y TLS 1.1 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC8996 . ISSN 2070-1721 . BCP 195. RFC 8996 . Mejor práctica actual 195. Deja obsoletas las RFC 5469 y 7507 . Actualizaciones RFC 3261 , 3329 , 3436 , 3470 , 3501 , 3552 , 3568 , 3656 , 3749 , 3767 , 3856 , 3871 , 3887 , 3903 , 3943 , 3983 , 4097 , 4111 , 4162 , 4168 , 4217 , 4235 , 4261 , 4279 , 4497 , 4513 , 4531 , 4540 , 4582 , 4616 , 4642 , 4680 , 4681 , 4712 , 4732 , 4743 , 4744 , 4785 , 4791 , 4823 , 4851 , 4964 , 4975 , 4976 , 4992 , 5018 , 5019 , 5023 , 5024 , 5049 , 5054 , 5091 , 5158 , 5216 , 5238 , 5263 , 5281 , 5364 , 5415 , 5422 , 5456 , 5734 , 5878 , 5953 , 6012 , 6042 , 6083 , 6084 , 6176 , 6347 , 6353 , 6367 , 6460 , 6614 , 6739 , 6749 , 6750 , 7030 , 7465 , 7525 , 7562 , 7568 , 8261 y 8422 .
- 1 2 3 4 5 Bright, Peter (17 de octubre de 2018). "Apple, Google, Microsoft y Mozilla se unen para poner fin a TLS 1.0" . Archivado del original el 17 de octubre de 2018. Recuperado el 17 de octubre de 2018 .
- 1 2 3 4 Brinkmann, Martin (10 de marzo de 2020). "Esto es lo nuevo y lo que ha cambiado en Firefox 74.0 Stable – gHacks Tech News" . www.ghacks.net . Archivado del original el 11 de marzo de 2020. Recuperado el 10 de marzo de 2020 .
- 1 2 3 4 "TLS 1.0 y TLS 1.1 – Estado de la plataforma Chrome" . chromestatus.com . Archivado del original el 7 de julio de 2023. Consultado el 10 de marzo de 2020 .
- 1 2 3 4 5 6 T. Dierks; E. Rescorla (agosto de 2008). El protocolo Transport Layer Security (TLS) versión 1.2 . Grupo de trabajo TLS de la IETF . doi : 10.17487/RFC5246 . RFC 5246 .Obsoleto. Obsoleto según RFC 8446. Obsoleto según RFC 3268 , 4346 y 4366 ; actualiza RFC 4492 .
- 1 2 " Uso de TLS para proteger datos" . www.ncsc.gov.uk. Archivado del original el 21 de julio de 2021. Recuperado el 24 de agosto de 2022 .
- ↑ "TLS 1.3: Un año después" . IETF . Archivado del original el 8 de julio de 2020. Consultado el 24 de agosto de 2022 .
- ↑ "Creando TLS: El papel pionero de Ruth Nelson" . Archivado del original el 24 de junio de 2020. Consultado el 4 de julio de 2020 .
- ↑ "Tecnología de la información – Telecomunicaciones e intercambio de información entre sistemas – Protocolo de seguridad de la capa de transporte" . Archivado del original el 3 de mayo de 2025. Consultado el 3 de mayo de 2025 .
- ↑ Woo, Thomas YC; Bindignavle, Raghuram; Su, Shaowen; Lam, Simon S. (junio de 1994). SNP: una interfaz para programación segura de redes (PDF) . Actas de la Conferencia Técnica de Verano de USENIX. Archivado (PDF) del original el 12 de diciembre de 2014. Consultado el 5 de julio de 2023 .
- ↑ "Programa de la Conferencia Técnica de Verano de USENIX de 1994, Boston, 6-10 de junio de 1994" . Archivado del original el 6 de octubre de 2023. Consultado el 21 de enero de 2024 .
- ↑ Simon S. Lam (PI/PD), "Aplicación de una teoría de módulos e interfaces a la verificación de seguridad", subvención del Programa de Investigación Universitaria de Seguridad de la Información de la NSA n.º MDA 904-91-C-7046, del 28/6/91 al 27/6/93.
- ↑ "Mención del premio ACM Software System Award 2004" . ACM . Archivado del original el 17 de junio de 2013. Consultado el 25 de julio de 2012 .
- ↑ "Comunicado de prensa de ACM, 15 de marzo de 2005" . ACM . Archivado del original el 10 de enero de 2016. Consultado el 25 de julio de 2012 .
- ↑ "Simon S. Lam, miembro del Salón de la Fama de Internet" . Archivado del original el 6 de febrero de 2024. Consultado el 3 de marzo de 2024 .
- ↑ "Científico informático ingresa al Salón de la Fama de Internet" . Archivado del original el 8 de marzo de 2024. Consultado el 3 de marzo de 2024 .
- ↑ Messmer, Ellen. "El padre de SSL, el Dr. Taher Elgamal, encuentra proyectos de TI de rápido crecimiento en Oriente Medio" . Network World . Archivado del original el 31 de mayo de 2014. Consultado el 30 de mayo de 2014 .
- ↑ Greene, Tim. "El padre de SSL afirma que, a pesar de los ataques, el pilar de seguridad aún tiene mucha vida útil" . Network World . Archivado del original el 31 de mayo de 2014. Consultado el 30 de mayo de 2014 .
- 1 2 Oppliger, Rolf (2016). «Introducción» . SSL y TLS: Teoría y práctica (2.ª ed.). Artech House . pág. 13. ISBN 978-1-60807-999-5Recuperado el 1 de marzo de 2018 – a través de Google Libros.
- ↑ "EL PROTOCOLO SSL" . Netscape Corporation. 2007. Archivado del original el 14 de junio de 1997.
- ↑ Rescorla 2001
- ↑ "POODLE: Vulnerabilidad SSLv3 (CVE-2014-3566)" . Archivado del original el 5 de diciembre de 2014. Consultado el 21 de octubre de 2014 .
- ↑ "Estándares de seguridad y cambios de nombre en la guerra de navegadores" . Archivado del original el 29 de febrero de 2020. Consultado el 29 de febrero de 2020 .
- ↑ Laura K. Gray (18 de diciembre de 2015). "Cambio de fecha para la migración desde SSL y TLS temprano" . Blog del Payment Card Industry Security Standards Council . Archivado del original el 20 de diciembre de 2015. Consultado el 5 de abril de 2018 .
- ↑ "Los cambios en el cumplimiento de PCI entrarán en vigor el 30 de junio. ¿Está preparado su negocio de comercio electrónico?" . Forbes . Archivado del original el 21/06/2018 . Consultado el 20/06/2018 .
- 1 2 T. Dierks; E. Rescorla (abril de 2006). El protocolo de seguridad de la capa de transporte (TLS) versión 1.1 . Grupo de trabajo TLS de la Fuerza de Tarea de Ingeniería de Internet . doi : 10.17487/RFC4346 . RFC 4346 .Histórico. Obsoleto según RFC 5246. Obsoleto según RFC 2246 .
- 1 2 3 "Parámetros de seguridad de la capa de transporte: conjuntos de cifrado" . Autoridad de números asignados de Internet (IANA) . Archivado del original el 21/12/2016 . Recuperado el 16/12/2022 .
- ↑ Mackie, Kurt. "Microsoft retrasa el fin del soporte para TLS 1.0 y 1.1 -" . Revista Microsoft Certified Professional en línea . Archivado del original el 14 de junio de 2021. Consultado el 14 de junio de 2021 .
- ↑ "Preguntas frecuentes sobre TLS 1.2 – Base de conocimientos" . Answers.psionline.com . Archivado del original el 20 de febrero de 2022. Consultado el 20 de febrero de 2022 .
- ↑ "Uso de Netscape 9 en 2022" . MSFN . 22 de abril de 2022. Archivado del original el 18 de abril de 2025. Consultado el 24 de abril de 2025 .
- ↑ "Diferencias entre TLS 1.2 y TLS 1.3 (#TLS13)" . WolfSSL . 18 de septiembre de 2019. Archivado del original el 19 de septiembre de 2019. Consultado el 18 de septiembre de 2019 .
- ↑ "Copia archivada" . Archivado del original el 17 de marzo de 2024. Consultado el 17 de marzo de 2024 .
{{cite web}}: CS1 mantenimiento: copia archivada como título ( enlace ) - ↑ "Notas de la versión NSS 3.29" . Mozilla Developer Network. Febrero de 2017. Archivado del original el 22 de febrero de 2017.
- ↑ "Habilitar TLS 1.3 por defecto" . Bugzilla@Mozilla. 16 de octubre de 2016. Archivado del original el 12 de agosto de 2018. Consultado el 10 de octubre de 2017 .
- ↑ "Firefox — Notas (60.0)" . Mozilla . Archivado del original el 9 de mayo de 2018. Consultado el 10 de mayo de 2018 .
- ↑ "ProxySG, ASG y WSS interrumpirán las conexiones SSL cuando los clientes que utilizan TLS 1.3 accedan a sitios que también utilizan TLS 1.3" . BlueTouch Online . 16 de mayo de 2017. Archivado del original el 12 de septiembre de 2017. Consultado el 11 de septiembre de 2017 .
- ↑ Sullivan, Nick (26 de diciembre de 2017). "Por qué TLS 1.3 aún no está en los navegadores" . El blog de Cloudflare . Archivado del original el 26 de diciembre de 2017. Recuperado el 14 de marzo de 2020 .
- 1 2 Thomson, Martin; Pauly, Tommy (diciembre de 2021). Viabilidad a largo plazo de los mecanismos de extensión de protocolo . IETF . doi : 10.17487/RFC9170 . RFC 9170 .
- ↑ "TLS 1.3 IETF 100 Hackathon" . Archivado del original el 15 de enero de 2018.
- 1 2 IETF – Grupo de Trabajo de Ingeniería de Internet (12/11/2017), Presentaciones y premios del Hackathon de IETF , archivado del original el 28/10/2021 , recuperado el 14/11/2017
- ↑ "¡Hurra! Ya está aquí TLS 1.3. Ahora toca implementarlo y ponerlo en el software" . Archivado del original el 27 de marzo de 2018. Consultado el 28 de marzo de 2018 .
- ↑ IETF – Grupo de Trabajo de Ingeniería de Internet (15/07/2018), IETF102-HACKATHON-20180715-1400 , archivado del original el 28/10/2021 , consultado el 18/07/2018.
- ↑ "Ya está disponible la versión beta de wolfSSL TLS 1.3" . info@wolfssl.com. 11 de mayo de 2017. Archivado del original el 9 de julio de 2018. Consultado el 11 de mayo de 2017 .
- ↑ "COMPATIBILIDAD CON EL PROTOCOLO TLS 1.3" . info@wolfssl.com. 4 de agosto de 2017. Archivado del original el 9 de julio de 2018. Consultado el 9 de julio de 2018 .
- ↑ "Soporte para TLS 1.3 Draft 28 en wolfSSL" . info@wolfssl.com. 14 de junio de 2018. Archivado del original el 9 de julio de 2018. Consultado el 14 de junio de 2018 .
- ↑ "Se lanza OpenSSL 1.1.1" . Matt Caswell. 11 de septiembre de 2018. Archivado del original el 8 de diciembre de 2018. Consultado el 11 de octubre de 2024 .
- ↑ "Protocolos en TLS/SSL (Schannel SSP)" . Microsoft Docs . 25 de mayo de 2022. Archivado del original el 25 de enero de 2023. Consultado el 21 de febrero de 2023 .
- 1 2 Hoffman-Andrews, Jacob (26 de febrero de 2019). "ETS no es TLS y no deberías usarlo" . Electronic Frontier Foundation . Archivado del original el 26 de febrero de 2019. Recuperado el 27 de febrero de 2019 .
- ↑ TS 103 523-3 – V1.1.1 – CYBER; Protocolo de seguridad para dispositivos intermedios; Parte 3: Perfil para el control de acceso a redes empresariales y centros de datos ( PDF ) . ETSI.org . Archivado (PDF) del original el 14 de noviembre de 2018.
- ↑ Cory Doctorow (26 de febrero de 2019). "Temeridad monumental" . Boing Boing . Archivado del original el 27 de febrero de 2019.
- ↑ Rea, Scott (2013). "Alternativas a las autoridades de certificación para una web segura" (PDF) . RSA Conference Asia Pacific. Archivado (PDF) del original el 7 de octubre de 2016. Recuperado el 7 de septiembre de 2016 .
- ↑ "Conteo de certificados SSL" . Archivado del original el 16 de mayo de 2015. Consultado el 20 de febrero de 2022 .
- ↑ Raymond, Art (3 de agosto de 2017). "DigiCert de Lehi absorbe a un competidor de seguridad web en un acuerdo de mil millones de dólares" . Deseret News . Archivado del original el 29 de septiembre de 2018. Recuperado el 21 de mayo de 2020 .
- ↑ "Tendencias de cuota de mercado para autoridades de certificación SSL" . W3Techs . Consultado el 21 de mayo de 2020 .
- ↑ Ryan Singel (24 de marzo de 2010). "Un dispositivo policial vulnera SSL" . wired.com . Archivado del original el 12 de abril de 2014 .
- ↑ Seth Schoen (24 de marzo de 2010). «Nuevas investigaciones sugieren que los gobiernos podrían falsificar certificados SSL» . EFF.org . Archivado del original el 25 de marzo de 2010 .
- ↑ Schuman, Evan (11 de abril de 2025). "Los proveedores votan a favor de reducir drásticamente la duración de los certificados de sitios web" . Computerworld . Consultado el 28 de julio de 2025 .
- ↑ Lyons, Jessica (15 de octubre de 2024). "Los administradores de sistemas se enfurecen por el plan de Apple para reducir la vida útil de los certificados SSL/TLS, que consideran una pesadilla" . The Register . Consultado el 28 de julio de 2025 .
- ↑ P. Eronen, Ed. (diciembre de 2005). Eronen, P; Tschofenig, H (eds.). Conjuntos de cifrado de clave precompartida para la seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet. doi : 10.17487/RFC4279 . RFC 4279. Consultado el 9 de septiembre de 2013 .
- ↑ D. Taylor, Ed. (noviembre de 2007). Uso del protocolo de contraseña remota segura (SRP) para la autenticación TLS . Grupo de trabajo de ingeniería de Internet. doi : 10.17487/RFC5054 . RFC 5054. Consultado el 21 de diciembre de 2014 .
- ↑ Gothard, Peter (31 de julio de 2013). "Google actualiza los certificados SSL a cifrado de 2048 bits" . Computing . Incisive Media. Archivado del original el 22 de septiembre de 2013. Recuperado el 9 de septiembre de 2013 .
- ↑ "El valor del cifrado de 2048 bits: por qué importa la longitud de la clave de cifrado" . SearchSecurity . Archivado del original el 16 de enero de 2018. Consultado el 18 de diciembre de 2017 .
- ↑ Sean Turner (17 de septiembre de 2015). "Consenso: eliminar DSA de TLS 1.3" . Archivado del original el 3 de octubre de 2015.
- 1 2 Y. Nir; S. Josefsson; M. Pegourie-Gonnard (agosto de 2018). Conjuntos de cifrado de criptografía de curva elíptica (ECC) para las versiones 1.2 y anteriores de Transport Layer Security (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC8422 . ISSN 2070-1721 . RFC 8422 . Norma propuesta. Sustituye a RFC 4492. Actualizada por RFC 8996 .
- 1 2 3 4 5 6 7 RFC 5830 , 6986 , 7091 , 7801 , 8891
- 1 2 D. Belyavskiy; KE. Alekseev (marzo de 2022). S. Smyshlyaev (ed.). Conjuntos de cifrado GOST para el protocolo de seguridad de la capa de transporte (TLS) versión 1.2 . Presentación independiente. doi : 10.17487/RFC9189 . RFC 9189 .Informativo.
- 1 2 E. Alekseev; E. Griboedova; A. Babueva; L. Nikiforova (febrero de 2023). S. Smyshlyaev (ed.). Conjuntos de cifrado GOST para el protocolo de seguridad de la capa de transporte (TLS) versión 1.3 . Presentación independiente. doi : 10.17487/RFC9367 . RFC 9367 .Informativo.
- 1 2 J. Salowey; A. Choudhury; D. McGrew (agosto de 2008). Conjuntos de cifrado AES Galois Counter Mode (GCM) para TLS . Grupo de trabajo de redes. doi : 10.17487/RFC5288 . RFC 5288 .Norma propuesta. Actualizada por RFC 9325 .
- 1 2 E. Rescorla (agosto de 2008). Conjuntos de cifrado de curva elíptica TLS con SHA-256/384 y modo de contador de Galois AES (GCM) . Grupo de trabajo de redes. doi : 10.17487/RFC5289 . RFC 5289 .Norma propuesta.
- 1 2 D. McGrew; D. Bailey (julio de 2012). Conjuntos de cifrado AES-CCM para seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6655 . RFC 6655 .Norma propuesta.
- 1 2 D. McGrew; D. Bailey; M. Campagna; R. Dugal (junio de 2014). Conjuntos de cifrado de criptografía de curva elíptica (ECC) AES-CCM para TLS . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7251 . ISSN 2070-1721 . RFC 7251 . Informativo.
- 1 2 3 S. Kanno; M. Kanda (septiembre de 2011). Adición de los conjuntos de cifrado Camellia a la seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6367 . ISSN 2070-1721 . RFC 6367 . Informativo. Actualizado por RFC 8996 .
- 1 2 A. Kato; M. Kanda; S. Kanno (junio de 2010). Conjuntos de cifrado Camellia para TLS . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC5932 . ISSN 2070-1721 . RFC 5932 . Norma propuesta. Sustituye a RFC 4132 .
- 1 2 3 W. Kim; J. Lee; J. Park; D. Kwon (mayo de 2011). Adición de los conjuntos de cifrado ARIA a la seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6209 . ISSN 2070-1721 . RFC 6209 . Informativo.
- 1 2 H.J. Lee; JH Yoon; JI Lee (agosto de 2005). Adición de conjuntos de cifrado SEED a la seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes IETF . doi : 10.17487/RFC4162 . RFC 4162 .Estándar propuesto. Actualizado por RFC 8996 .
- ↑ "Sobre la (in)seguridad práctica de los cifrados de bloques de 64 bits: ataques de colisión en HTTP sobre TLS y OpenVPN" (PDF) . 28-10-2016. Archivado (PDF) del original el 24-04-2017 . Recuperado el 08-06-2017 .
- ↑ "Publicación especial 800-57 del NIST: Recomendación para la gestión de claves — Parte 1: General (Revisada) " (PDF) . 8 de marzo de 2007. Archivado del original (PDF) el 6 de junio de 2014. Consultado el 3 de julio de 2014 .
- 1 2 3 Qualys SSL Labs. "Mejores prácticas de implementación de SSL/TLS" . Archivado del original el 4 de julio de 2015. Recuperado el 2 de junio de 2015 .
- ↑ P. Eronen, ed. (febrero de 2009). Conjuntos de cifrado DES e IDEA para la seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes. doi : 10.17487/RFC5469 . RFC 5469 .Histórico. Obsoleto según RFC 8996 .
- ↑ A. Langley; W. Chang; N. Mavrogiannopoulos; J. Strombergson; S. Josefsson (junio de 2016). Conjuntos de cifrado ChaCha20-Poly1305 para seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7905 . ISSN 2070-1721 . RFC 7905 . Norma propuesta. Actualiza los RFC 6347 y 5246 .
- 1 2 3 A. Popov (febrero de 2015). Prohibición de conjuntos de cifrado RC4 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7465 . ISSN 2070-1721 . RFC 7465 . Estándar propuesto. Actualizado por RFC 8996. Actualiza RFC 2246 , 4346 y 5246 .
- ↑ "Http vs https" . Archivado del original el 12 de febrero de 2015. Consultado el 12 de febrero de 2015 .
- 1 2 3 4 A fecha de 1 de junio de 2025. "SSL Pulse: Encuesta sobre la implementación de SSL en los sitios web más populares" . Qualys . Archivado del original el 1 de julio de 2025. Consultado el 1 de junio de 2026 .
- 1 2 ivanr (19 de marzo de 2013). "RC4 en TLS está roto: ¿Y ahora qué?" . Qualsys Security Labs. Archivado del original el 27 de agosto de 2013. Recuperado el 30 de julio de 2013 .
- 1 2 3 Bodo Möller, Thai Duong y Krzysztof Kotowicz. "This POODLE Bites: Exploiting The SSL 3.0 Fallback" (PDF) . Archivado (PDF) del original el 14 de octubre de 2014. Recuperado el 15 de octubre de 2014 .
- ↑ "Guía de referencia de Java Secure Socket Extension (JSSE)" . Centro de ayuda de Oracle . Archivado del original el 22/01/2022 . Consultado el 24/12/2021 .
- ↑ Georgiev, Martin; Iyengar, Subodh; Jana, Suman; Anubhai, Rishita; Boneh, Dan; Shmatikov, Vitaly (2012). El código más peligroso del mundo: validación de certificados SSL en software que no es un navegador. Actas de la conferencia ACM de 2012 sobre seguridad informática y de comunicaciones (PDF) . Association for Computing Machinery. págs. 38–49 . ISBN 978-1-4503-1651-4Archivado (PDF) del original el 22/10/2017 .
- ↑ Audet, F. (2009). El uso del esquema URI SIPS en el protocolo de inicio de sesión (SIP) . IETF . doi : 10.17487/RFC5630 . RFC 5630 .
- ↑ Sheffer, Y.; Holz, R.; Saint-Andre, P. (2015). Resumen de ataques conocidos a Transport Layer Security (TLS) y Datagram TLS (DTLS) . IETF . doi : 10.17487/RFC7457 . RFC 7457 .
- ↑ "CVE – CVE-2009-3555" . Archivado del original el 4 de enero de 2016.
- 1 2 E. Rescorla; M. Ray; S. Dispensa; N. Oskov (febrero de 2010). Extensión de la indicación de renegociación de la seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC5746 . ISSN 2070-1721 . RFC 5746 . Estándar propuesto. Actualiza RFC 4346 , 4366 , 2246 , 5246 , 4347 .
- ↑ Rescorla, Eric (5 de noviembre de 2009). "Comprendiendo el ataque de renegociación TLS" . Educated Guesswork . Archivado del original el 11 de febrero de 2012. Recuperado el 27 de noviembre de 2009 .
- ↑ "SSL_CTX_set_options SECURE_RENEGOTIATION" . Documentación de OpenSSL . 25 de febrero de 2010. Archivado del original el 26 de noviembre de 2010. Consultado el 18 de noviembre de 2010 .
- ↑ "GnuTLS 2.10.0 lanzado" . Notas de la versión de GnuTLS . 25/06/2010. Archivado del original el 17/10/2015 . Consultado el 24/07/2011 .
- ↑ "Notas de la versión NSS 3.12.6" . Notas de la versión NSS . 3 de marzo de 2010. Archivado del original el 6 de marzo de 2012. Consultado el 24 de julio de 2011 .
- ↑ A. Langley; N. Modadugu; B. Moeller (2010-06-02). "Falso comienzo de la seguridad de la capa de transporte (TLS)" . Grupo de trabajo de ingeniería de Internet . IETF. Archivado del original el 5 de septiembre de 2013. Recuperado el 31 de julio de 2013 .
- ↑ Gruener, Wolfgang. "Comienzo en falso: Google propone una web más rápida, Chrome ya la soporta" . Archivado del original el 7 de octubre de 2010. Consultado el 9 de marzo de 2011 .
- ↑ Smith, Brian. "Ataques de retroceso limitados en False Start y Snap Start" . Archivado del original el 4 de mayo de 2011. Consultado el 9 de marzo de 2011 .
- ↑ Dimcev, Adrian. "Falso comienzo" . SSL/TLS aleatorio 101. Archivado del original el 4 de mayo de 2011. Recuperado el 9 de marzo de 2011 .
- ↑ Mavrogiannopoulos, Nikos; Vercautern, Frederik; Velichkov, Vesselin; Preneel, Bart (2012). Un ataque entre protocolos al protocolo TLS. Actas de la conferencia ACM de 2012 sobre seguridad informática y de comunicaciones (PDF) . Association for Computing Machinery. págs. 62–72 . ISBN 978-1-4503-1651-4Archivado (PDF) del original el 6 de julio de 2015 .
- ↑ "SMACK: Ataques a máquinas de estado" . Archivado del original el 12 de marzo de 2015.
- ↑ Goodin, Dan (2015-05-20). "Ataque que paraliza HTTPS amenaza a decenas de miles de servidores web y de correo" . Ars Technica . Archivado del original el 19 de mayo de 2017.
- ↑ Leyden, John (1 de marzo de 2016). "Un tercio de todos los sitios web HTTPS son vulnerables al ataque DROWN" . The Register . Archivado del original el 1 de marzo de 2016. Consultado el 2 de marzo de 2016 .
- 1 2 "Más de 11 millones de sitios web HTTPS en peligro por un nuevo ataque de descifrado" . Ars Technica . Marzo de 2016. Archivado del original el 1 de marzo de 2016. Recuperado el 2 de marzo de 2016 .
- ↑ Thai Duong y Juliano Rizzo (13 de mayo de 2011). "Aquí vienen los ninjas" . Archivado del original el 3 de junio de 2014.
- ↑ Goodin, Dan (19 de septiembre de 2011). "Los hackers rompen el cifrado SSL utilizado por millones de sitios" . The Register . Archivado del original el 10 de febrero de 2012.
- ↑ "Comentarios de Y Combinator sobre el tema" . 20 de septiembre de 2011. Archivado del original el 31 de marzo de 2012.
- ↑ "Seguridad de los conjuntos de cifrado CBC en SSL/TLS: problemas y contramedidas" . 20 de mayo de 2004. Archivado del original el 30 de junio de 2012.
- ↑ Ristic, Ivan (10 de septiembre de 2013). "¿Sigue siendo BEAST una amenaza?" . Archivado del original el 12 de octubre de 2014. Recuperado el 8 de octubre de 2014 .
- ↑ "Versión estable de Chrome" . Versiones de Chrome . 25/10/2011. Archivado del original el 20/02/2015 . Consultado el 01/02/2015 .
- ↑ "Ataque contra comunicaciones protegidas con TLS" . Blog de seguridad de Mozilla . Mozilla. 27 de septiembre de 2011. Archivado del original el 4 de marzo de 2015. Consultado el 1 de febrero de 2015 .
- ↑ Smith, Brian (30-09-2011). "(CVE-2011-3389) Ataque de texto plano elegido de Rizzo/Duong (BEAST) en SSL/TLS 1.0 (facilitado por websockets-76)" . Archivado del original el 10-02-2012 . Recuperado el 01-11-2011 .
- ↑ MSRC (10/01/2012). Vulnerabilidad en SSL/TLS podría permitir la divulgación de información (2643584) . Boletines de seguridad (Informe técnico). MS12-006 . Recuperado el 24/10/2021 a través de Microsoft Docs .
- ↑ Ristic, Ivan (31 de octubre de 2013). "Apple habilitó medidas de mitigación de BEAST en OS X 10.9 Mavericks" . Archivado del original el 12 de octubre de 2014. Consultado el 8 de octubre de 2014 .
- ↑ Goodin, Dan (13 de septiembre de 2012). "Una grieta en la base de confianza de Internet permite el secuestro de sesiones HTTPS" . Ars Technica . Archivado del original el 1 de agosto de 2013. Consultado el 31 de julio de 2013 .
- ↑ Fisher, Dennis (13 de septiembre de 2012). "Ataque CRIME utiliza la relación de compresión de las solicitudes TLS como canal lateral para secuestrar sesiones seguras" . ThreatPost. Archivado del original el 15 de septiembre de 2012. Consultado el 13 de septiembre de 2012 .
- 1 2 Goodin, Dan (1 de agosto de 2013). "Desaparecido en 30 segundos: Nuevo ataque extrae secretos de páginas protegidas con HTTPS" . Ars Technica . Condé Nast. Archivado del original el 3 de agosto de 2013. Recuperado el 2 de agosto de 2013 .
- ↑ Leyden, John (2 de agosto de 2013). "Entra en la brecha: Nuevo ataque desarrollado para leer datos web cifrados" . The Register . Archivado del original el 5 de agosto de 2013. Recuperado el 2 de agosto de 2013 .
- 1 2 P. Gutmann (septiembre de 2014). Cifrado y luego MAC para seguridad de la capa de transporte (TLS) y seguridad de la capa de transporte de datagramas (DTLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7366 . ISSN 2070-1721 . RFC 7366 . Norma propuesta.
- ↑ Langley, Adam (8 de diciembre de 2014). "El caniche vuelve a morder" . Archivado del original el 8 de diciembre de 2014. Recuperado el 8 de diciembre de 2014 .
- ↑ "ssl – ¿Cifrados más seguros para usar con BEAST? (Exploit de TLS 1.0) He leído que RC4 es inmune" . Serverfault.com . Archivado del original el 20 de febrero de 2022. Consultado el 20 de febrero de 2022 .
- ↑ Pouyan Sepehrdad; Serge Vaudenay; Martin Vuagnoux (2011). "Descubrimiento y explotación de nuevos sesgos en RC4". En Alex Biryukov; Guang Gong ; Douglas R. Stinson (eds.). Áreas selectas en criptografía: 17.º taller internacional, SAC 2010, Waterloo, Ontario, Canadá, 12-13 de agosto de 2010, Artículos seleccionados revisados . Lecture Notes in Computer Science. Vol. 6544. pp. 74-91 . doi : 10.1007/978-3-642-19574-7_5 . ISBN 978-3-642-19573-0.
- ↑ Green, Matthew (12 de marzo de 2013). "Ataque de la semana: RC4 está parcialmente roto en TLS" . Cryptography Engineering . Archivado del original el 14 de marzo de 2013. Recuperado el 12 de marzo de 2013 .
- ↑ AlFardan, Nadhem; Bernstein, Dan; Paterson, Kenny; Poettering, Bertram; Schuldt, Jacob. "Sobre la seguridad de RC4 en TLS" . Royal Holloway University of London. Archivado del original el 15 de marzo de 2013. Recuperado el 13 de marzo de 2013 .
- ↑ AlFardan, Nadhem J.; Bernstein, Daniel J.; Paterson, Kenneth G.; Poettering, Bertram; Schuldt, Jacob CN (8 de julio de 2013). "Sobre la seguridad de RC4 en TLS y WPA" (PDF) . Information Security Group . Archivado (PDF) del original el 22 de septiembre de 2013. Recuperado el 2 de septiembre de 2013 .
- ↑ AlFardan, Nadhem J.; Bernstein, Daniel J.; Paterson, Kenneth G.; Poettering, Bertram; Schuldt, Jacob CN (15 de agosto de 2013). Sobre la seguridad de RC4 en TLS (PDF) . 22.º Simposio de Seguridad de USENIX . pág. 51. Archivado (PDF) del original el 22 de septiembre de 2013. Recuperado el 2 de septiembre de 2013.
Los ataques de recuperación de texto plano contra RC4 en TLS son factibles, aunque no del todo prácticos
. - ↑ Goodin, Dan (15 de julio de 2015). "Un ataque criptográfico contra HTTPS, antes teórico, ahora se acerca a la práctica" . Ars Technica . Conde Nast. Archivado del original el 16 de julio de 2015. Recuperado el 16 de julio de 2015 .
- ↑ "Configuraciones recomendadas de TLS del lado del servidor de seguridad de Mozilla" . Mozilla. Archivado del original el 3 de enero de 2015. Consultado el 3 de enero de 2015 .
- ↑ "Aviso de seguridad 2868725: Recomendación de deshabilitar RC4" . Microsoft. 12 de noviembre de 2013. Archivado del original el 18 de noviembre de 2013. Consultado el 4 de diciembre de 2013 .
- ↑ "Fin de la compatibilidad con el cifrado RC4 en Microsoft Edge e Internet Explorer 11" . Equipo de Microsoft Edge. 1 de septiembre de 2015. Archivado del original el 2 de septiembre de 2015.
- ↑ Langley, Adam (1 de septiembre de 2015). "Intención de descontinuar: RC4" . Archivado del original el 23 de mayo de 2013. Recuperado el 2 de septiembre de 2015 .
- ↑ Barnes, Richard (1 de septiembre de 2015). "Intención de lanzamiento: RC4 deshabilitado por defecto en Firefox 44" . Archivado del original el 22 de enero de 2011.
- 1 2 John Leyden (1 de agosto de 2013). "Gmail, Outlook.com y el voto electrónico 'vulnerados' en el escenario en un hackeo de evasión de criptomonedas" . The Register . Archivado del original el 1 de agosto de 2013. Recuperado el 1 de agosto de 2013 .
- ↑ "Informes de BlackHat USA" . Black Hat 2013. Archivado del original el 30 de julio de 2013. Consultado el 1 de agosto de 2013 .
- ↑ Smyth, Ben; Pironti, Alfredo (2013). Truncamiento de conexiones TLS para violar creencias en aplicaciones web . 7.º Taller USENIX sobre Tecnologías Ofensivas (informe). Archivado del original el 6 de noviembre de 2015. Recuperado el 15 de febrero de 2016 .
- ↑ AlFardan, Nadhem; Paterson, Kenneth G (2012). Ataques de recuperación de texto plano contra TLS de datagramas (PDF) . Simposio sobre seguridad de redes y sistemas distribuidos (NDSS 2012). Archivado del original el 18 de enero de 2012.
- ↑ Goodin, Dan (26 de julio de 2016). "Nuevo ataque elude la protección HTTPS en Macs, Windows y Linux" . Ars Technica . Condé Nast. Archivado del original el 27 de julio de 2016. Recuperado el 28 de julio de 2016 .
- ↑ Goodin, Dan (24 de agosto de 2016). "HTTPS y OpenVPN se enfrentan a un nuevo ataque que puede descifrar cookies secretas" . Ars Technica . Archivado del original el 24 de agosto de 2016. Recuperado el 24 de agosto de 2016 .
- ↑ "¿Por qué se le llama 'el virus de la hemorragia cardíaca'?" . The Washington Post . 9 de abril de 2014. Archivado del original el 9 de octubre de 2014.
- ↑ "Vulnerabilidad Heartbleed Bug [ 9 de abril de 2014 ] " . Comodo Group . 9 de abril de 2014. Archivado del original el 5 de julio de 2014.
- ↑ Bleichenbacher, Daniel (agosto de 2006). "Falsificación de firma RSA de Bleichenbacher basada en un error de implementación" . Archivado del original el 16 de diciembre de 2014.
- ↑ "BERserk" . Intel Security: Advanced Threat Research. Septiembre de 2014. Archivado del original el 12 de enero de 2015.
- ↑ Goodin, Dan (19 de febrero de 2015). "Los ordenadores Lenovo vienen con un software publicitario de intermediario que interrumpe las conexiones HTTPS" . Ars Technica . Archivado del original el 12 de septiembre de 2017. Consultado el 10 de diciembre de 2017 .
- ↑ Valsorda, Filippo (2015-02-20). "La validación SSL de Komodia/Superfish está rota" . Filippo.io. Archivado del original el 24 de febrero de 2015.
- ^ Goodin, Dan (26 de mayo de 2016) . "Un "ataque prohibido" hace vulnerables a la manipulación a decenas de sitios HTTPS de Visa . Ars Technica . Archivado del original el 26 de mayo de 2016. Consultado el 26 de mayo de 2016 .
- ↑ Clark Estes, Adam (24 de febrero de 2017). "Todo lo que necesitas saber sobre Cloudbleed, el último desastre de seguridad en Internet" . Gizmodo . Archivado del original el 25 de febrero de 2017. Consultado el 24 de febrero de 2017 .
- ↑ Diffie, Whitfield; van Oorschot, Paul C; Wiener, Michael J. (junio de 1992). "Autenticación e intercambios de claves autenticadas" . Diseños , códigos y criptografía . 2 (2): 107– 125. CiteSeerX 10.1.1.59.6682 . doi : 10.1007/BF00124891 . S2CID 7356608. Archivado del original el 13 de marzo de 2008. Recuperado el 11 de febrero de 2008 .
- ↑ "Discusión en la lista de correo TLS en octubre de 2007" . Archivado del original el 22 de septiembre de 2013. Consultado el 20 de febrero de 2022 .
- ↑ "Protección de datos a largo plazo con confidencialidad directa" . Archivado del original el 6 de mayo de 2013. Consultado el 5 de noviembre de 2012 .
- ↑ Bernat, Vincent (28 de noviembre de 2011). "SSL/TLS y secreto perfecto hacia adelante" . Archivado del original el 27 de agosto de 2012. Recuperado el 5 de noviembre de 2012 .
- ↑ "SSL Labs: Implementación de la confidencialidad directa" . Qualys.com. 25 de junio de 2013. Archivado del original el 26 de junio de 2013. Consultado el 10 de julio de 2013 .
- ↑ Ristic, Ivan (5 de agosto de 2013). "SSL Labs: Implementación de la confidencialidad directa" . Qualsys. Archivado del original el 20 de septiembre de 2013. Consultado el 31 de agosto de 2013 .
- 1 2 Langley, Adam (27 de junio de 2013). "Cómo arruinar el secreto directo de TLS" . imperialviolet.org . Archivado del original el 8 de agosto de 2013.
- 1 2 Daignière, Florent. "TLS "Secrets": Libro blanco que presenta las implicaciones de seguridad del despliegue de tickets de sesión (RFC 5077) tal como se implementa en OpenSSL" (PDF) . Matta Consulting Limited. Archivado (PDF) del original el 6 de agosto de 2013. Recuperado el 7 de agosto de 2013 .
- 1 2 Daignière, Florent. "TLS "Secretos": Lo que todos olvidaron contarte…" (PDF) . Matta Consulting Limited. Archivado (PDF) del original el 5 de agosto de 2013. Recuperado el 7 de agosto de 2013 .
- ↑ LS Huang; S. Adhikarla; D. Boneh; C. Jackson (2014). "Un estudio experimental de implementaciones de secreto directo TLS" . IEEE Internet Computing . 18 (6): 43– 51. Bibcode : 2014IIC....18f..43H . CiteSeerX 10.1.1.663.4653 . doi : 10.1109/MIC.2014.86 . S2CID 11264303. Archivado del original el 20 de septiembre de 2015. Recuperado el 16 de octubre de 2015 .
- ↑ "Protección de datos a largo plazo con confidencialidad directa" . Archivado del original el 12 de febrero de 2014. Consultado el 7 de marzo de 2014 .
- ↑ Hoffman-Andrews, Jacob. "Secreto en Twitter" . Twitter. Archivado del original el 16 de febrero de 2014. Consultado el 7 de marzo de 2014 .
- 1 2 3 Durumeric, Zakir; Ma, Zane; Springall, Drew; Barnes, Richard; Sullivan, Nick; Bursztein, Elie; Bailey, Michael; Halderman, J. Alex; Paxson, Vern (5 de septiembre de 2017). "El impacto en la seguridad de la interceptación HTTPS" . Simposio NDSS . doi : 10.14722/ndss.2017.23456 . ISBN 978-1-891562-46-4Archivado del original el 22 de marzo de 2019. Consultado el 11 de marzo de 2019 .
- 1 2 Estos certificados son actualmente X.509 , pero RFC 6091 también especifica el uso de certificados basados en OpenPGP .
- ↑ "tls – Diferencias entre los términos "secreto pre-maestro", "secreto maestro", "clave privada" y "secreto compartido"?" . Cryptography Stack Exchange . Archivado del original el 22-09-2020 . Recuperado el 01-10-2020 .
- ↑ Chris (18 de febrero de 2009). "vsftpd-2.1.0 lanzado: uso de reanudación de sesión TLS para autenticación de conexión de datos FTPS" . Scarybeastsecurity. blogspot.com. Archivado del original el 7 de julio de 2012. Recuperado el 17 de mayo de 2012 .
- ↑ Rescorla, Eric (agosto de 2018). "Negociación criptográfica" . El protocolo Transport Layer Security (TLS) versión 1.3 . IETF. sec. 4.1.1. doi : 10.17487/RFC8446 . RFC 8446 .
- ↑ Valsorda, Filippo (23 de septiembre de 2016). "Una descripción general de TLS 1.3 y preguntas y respuestas" . El blog de Cloudflare . Archivado del original el 3 de mayo de 2019. Recuperado el 3 de mayo de 2019 .
- 1 2 J. Salowey; H. Zhou; P. Eronen; H. Tschofenig (enero de 2008). Reanudación de sesión de seguridad de la capa de transporte (TLS) sin estado del lado del servidor . Grupo de trabajo de redes. doi : 10.17487/RFC5077 . RFC 5077 .Obsoleto. Obsoleto según RFC 8446. Actualizado por RFC 8447. Deja obsoleto a RFC 4507 .
- ↑ "Certificados SSL multidominio frente a certificados comodín: diferencias y usos" , sitio web oficial de Sectigo , consultado el 6 de junio de 2025.
- ↑ Hosts virtuales SSL basados en nombres: cómo abordar el problema (PDF) , archivado (PDF) del original el 3 de agosto de 2012 , consultado el 17 de mayo de 2012.
- 1 2 D. Eastlake 3rd (octubre de 2010). Extensiones de seguridad de la capa de transporte (TLS): definiciones de extensión . Grupo de trabajo de ingeniería de Internet (IETF). doi : 10.17487/RFC6066 . ISSN 2070-1721 . RFC 6066 . Estándar propuesto. Actualizado por RFC 8446 , 9325 y 8449. Sustituye a RFC 4366 .
- ↑ T. Dierks; C. Allen (enero de 1999). El protocolo TLS versión 1.0 . Grupo de trabajo de redes. doi : 10.17487/RFC2246 . RFC 2246 .Histórico. Obsoleto según RFC 4346. Actualizado por RFC 5746 , 6176 , 3546 , 7465 , 7507 y 7919 .
- ↑ A. Freier; P. Karlton; P. Kocher (agosto de 2011). El protocolo Secure Sockets Layer (SSL) versión 3.0 . Internet Engineering Task Force . doi : 10.17487/RFC6101 . ISSN 2070-1721 . RFC 6101 . Histórico.
- ↑ M. Brown; R. Housley (mayo de 2010). Extensiones de autorización de seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC5878 . ISSN 2070-1721 . RFC 5878 . Experimental. Actualizado por RFC 8447 y 8996. Actualiza RFC 5246 .
- ↑ N. Mavrogiannopoulos; D. Gillmor (febrero de 2011). Uso de claves OpenPGP para la autenticación de seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6091 . ISSN 2070-1721 . RFC 6091 . Informativo. Sustituye a RFC 5081 .
- ↑ M. Salter; R. Housley (enero de 2012). Perfil Suite B para seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6460 . ISSN 2070-1721 . RFC 6460 . Histórico. Se cambió a histórico en 2018 porque la NSA dejó de dar soporte a la criptografía Suite B. Actualizado por RFC 8996. Deja obsoleto el RFC 5430 .
- ↑ J. Merkle; M. Lochter (octubre de 2013). Curvas de Brainpool de criptografía de curva elíptica (ECC) para seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7027 . RFC 7027 .Informativo. Actualizaciones RFC 4492 .
- ↑ S. Friedl; A. Popov; A. Langley; E. Stephan (julio de 2014). Extensión de negociación del protocolo de capa de aplicación de seguridad de la capa de transporte (TLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7301 . ISSN 2070-1721 . RFC 7301 . Estándar propuesto. Actualizado por RFC 8447 .
- ↑ B. Möller; A. Langley (mayo de 2015). Valor de conjunto de cifrado de señalización de reserva TLS (SCSV) para prevenir ataques de degradación de protocolo . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7507 . RFC 7507 .Obsoleto. Obsoleto según RFC 8996. Actualiza RFC 4347 , 2246 , 4346 , 5246 y 6347 .
- ↑ A. Delignat-Lavaud; A. Pironti; A. Langley; M. Ray (septiembre de 2015). K. Bhargavan (ed.). Seguridad de la capa de transporte (TLS) Hash de sesión y extensión de secreto maestro extendido . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7627 . ISSN 2070-1721 . RFC 7627 . Norma propuesta. Actualiza RFC 5246 .
- ↑ A. Langley (octubre de 2015). Una extensión de relleno ClientHello de Transport Layer Security (TLS) . Internet Engineering Task Force . doi : 10.17487/RFC7685 . ISSN 2070-1721 . RFC 7685 . Norma propuesta. Actualiza RFC 5246 .
- ↑ S. Blake-Wilson; M. Nystrom; D. Hopwood; J. Mikkelsen; T. Wright (abril de 2006). Extensiones de seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes de la IETF . doi : 10.17487/RFC4366 . RFC 4366 .Obsoleto. Obsoleto según RFC 5246 y 6066. Actualizado por RFC 5746. Obsoleto según RFC 3546. Actualiza RFC 4346 .
- ↑ S. Blake-Wilson; N. Bolyard; V. Gupta; C. Hawk; B. Moeller (mayo de 2006). Conjuntos de cifrado de criptografía de curva elíptica (ECC) para seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes. doi : 10.17487/RFC4492 . RFC 4492 .Obsoleto. Obsoleto según RFC 8422. Actualizado por RFC 5246 , 7027 y 7919 .
- ↑ S. Santesson (septiembre de 2006). Mensaje de protocolo de enlace TLS para datos suplementarios . Grupo de trabajo de redes. doi : 10.17487/RFC4680 . RFC 4680 .Estándar propuesto. Actualiza RFC 4346. Actualizado por RFC 8447 y 8996 .
- ↑ S. Santesson; A. Medvinsky; J. Ball (octubre de 2006). Extensión de mapeo de usuario TLS . Grupo de trabajo de redes. doi : 10.17487/RFC4681 . RFC 4681 .Estándar propuesto. Actualiza RFC 4346. Actualizado por RFC 8996 .
- ↑ U. Blumenthal; P. Goel (enero de 2007). Conjuntos de cifrado de clave precompartida (PSK) con cifrado nulo para seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes de la IETF . doi : 10.17487/RFC4785 . RFC 4785 .Estándar propuesto. Actualizado por RFC 8996 .
- ↑ D. Taylor; T. Wu; N. Mavrogiannopoulos; T. Perrin (noviembre de 2007). Uso del protocolo Secure Remote Password (SRP) para la autenticación TLS . Grupo de trabajo de redes. doi : 10.17487/RFC5054 . RFC 5054 .Informativo. Actualizado por RFC 8996 .
- ↑ N. Mavrogiannopoulos (noviembre de 2007). Uso de claves OpenPGP para la autenticación de seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes. doi : 10.17487/RFC5081 . RFC 5081 .Experimental. Obsoleto según RFC 6091 .
- ↑ B. Simon; D. Aboba; R. Hurst (marzo de 2008). El protocolo de autenticación EAP-TLS . Grupo de trabajo de redes. doi : 10.17487/RFC5216 . RFC 5216 .Norma propuesta. Actualizada por RFC 9190 y 8996. Sustituye a RFC 2716 .
- ↑ C. Newman (junio de 1999). Uso de TLS con IMAP, POP3 y ACAP . Grupo de trabajo de redes. doi : 10.17487/RFC2595 . RFC 2595 .Norma propuesta. Actualizada por RFC 4616 , 7817 y 8314 .
- ↑ A. Medvinsky; M. Hur (octubre de 1999). Adición de conjuntos de cifrado Kerberos a la seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes. doi : 10.17487/RFC2712 . RFC 2712 .Norma propuesta.
- ↑ E. Rescorla (mayo de 2000). HTTP sobre TLS . Grupo de trabajo de redes de la IETF . doi : 10.17487/RFC2818 . RFC 2818 .Obsoleto. Obsoleto según RFC 9110. Actualizado por RFC 5785 y 7230 .
- ↑ P. Hoffman (febrero de 2002). Extensión del servicio SMTP para SMTP seguro sobre Transport Layer Security . Grupo de trabajo de redes. doi : 10.17487/RFC3207 . RFC 3207 .Estándar propuesto. Actualizado por RFC 7817. Sustituye a RFC 2487 .
- ↑ P. Chown (junio de 2002). Conjuntos de cifrado del Estándar de Cifrado Avanzado (AES) para la Seguridad de la Capa de Transporte (TLS) . Grupo de Trabajo de Redes. doi : 10.17487/RFC3268 . RFC 3268 .Obsoleto. Obsoleto según RFC 5246 .
- ↑ S. Blake-Wilson; M. Nystrom; D. Hopwood; J. Mikkelsen; T. Wright (junio de 2003). Extensiones de seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes. doi : 10.17487/RFC3546 . RFC 3546 .Obsoleto. Obsoleto según RFC 4366. Actualiza RFC 2246 .
- ↑ S. Hollenbeck (mayo de 2004). Métodos de compresión del protocolo de seguridad de la capa de transporte . Grupo de trabajo de redes. doi : 10.17487/RFC3749 . RFC 3749 .Norma propuesta. Actualizada por los RFC 8996 y 8447 .
- ↑ R. Friend (noviembre de 2004). Compresión del protocolo de seguridad de la capa de transporte (TLS) mediante Lempel-Ziv-Stac (LZS) . Grupo de trabajo de redes. doi : 10.17487/RFC3943 . RFC 3943 .Informativo. Actualizado por RFC 8996 .
- ↑ S. Moriai; S. Moriai; M. Kanda (julio de 2005). Adición de conjuntos de cifrado Camellia a la seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes de la IETF . doi : 10.17487/RFC4132 . RFC 4132 .Obsoleto. Obsoleto según RFC 5932 .
- ↑ P. Ford-Hutchinson (octubre de 2005). Asegurando FTP con TLS . Grupo de trabajo de redes. doi : 10.17487/RFC4217 . RFC 4217 .Estándar propuesto. Actualizado por RFC 8996 .
- ↑ P. Eronen; H. Tschofenig, eds. (diciembre de 2005). Conjuntos de cifrado de clave precompartida para la seguridad de la capa de transporte (TLS) . Grupo de trabajo de redes. doi : 10.17487/RFC4279 . RFC 4279 .Estándar propuesto. Actualizado por RFC 8996 .
- ↑ Y. Sheffer; R. Holz; P. Saint-Andre (febrero de 2015). Resumen de ataques conocidos a Transport Layer Security (TLS) y Datagram TLS (DTLS) . Internet Engineering Task Force . doi : 10.17487/RFC7457 . ISSN 2070-1721 . RFC 7457 . Informativo.
- ↑ Y. Sheffer; P. Saint-Andre; T. Fossati (noviembre de 2022). Recomendaciones para el uso seguro de Transport Layer Security (TLS) y Datagram Transport Layer Security (DTLS) . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC9325 . BCP 195. RFC 9325 .Mejores prácticas actuales 195. Deja obsoleto el RFC 7525. Actualiza los RFC 5288 y 6066 .
- Seguridad de la capa de transporte
- Propiedades de Internet establecidas en 1999
- protocolos criptográficos
- protocolos de la capa de presentación