TLS es el nombre "estándar" de SSL. SSL es, inicialmente, un protocolo desarrollado por personas de Netscape (el proveedor del navegador web líder en ese entonces, en 1995). Cuando SSL se convirtió en un estándar abierto, especificado como RFC 2246 , se le dio un nuevo nombre, en parte para evitar problemas legales , en parte para transmitir el mensaje de que SSL se puede aplicar a cualquier flujo de bytes bidireccional, no solo a sockets TCP; El nuevo nombre es TLS. Internamente, cuando el cliente y el servidor hablan entre sí y les dicen qué versión de protocolo utilizan, anuncian SSL 3.0 como "3.0" y TLS 1.0 como "3.1". Para todos los propósitos prácticos, SSL y TLS son dos nombres para el mismo protocolo, que puede tener varias versiones; A menudo escribo "SSL / TLS" para designarlos.
Para todas las características de seguridad, TLS 1.0 puede considerarse equivalente a SSL 3.0; las diferencias son mínimas y se relacionan más con la alineación con los estándares existentes que con los cambios funcionales (por ejemplo, el algoritmo MAC en SSL 3.0 es un "tipo de HMAC", mientras que el algoritmo MAC en TLS 1.0 es HMAC, exactamente hasta el último bit). Las versiones posteriores de TLS traen algunas mejoras para la seguridad.
Sin embargo, ninguna de las versiones de SSL / TLS es mejor o peor que las otras con respecto a Ataques DoS . La principal vulnerabilidad de SSL / TLS, en este sentido, es que el protocolo inicial implica algunos cálculos relativamente costosos en el lado del servidor, y un cliente falso puede obligar al servidor a gastar una gran cantidad de energía de la CPU en hacer el protocolo de enlace sin necesidad de invertir mucho esfuerzo en el proceso (el cliente solo tiene que enviar un mensaje basura aleatorio de aproximadamente el tamaño correcto como el mensaje ClientKeyExchange
, y el servidor pasará un tiempo tratando de descifrarlo). Una buena PC manejará unos pocos cientos o como máximo uno o dos miles de protocolos SSL por segundo, por lo que no es muy difícil hacer un servidor SSL desprotegido. Las medidas de mitigación están en la línea de rechazar demasiados intentos de conexión TCP por segundo desde una dirección IP determinada.