TLS è il nome "standard" di SSL. SSL è, inizialmente, un protocollo sviluppato da persone di Netscape (il fornitore del browser Web allora leader nel 1995). Quando SSL è stato reso uno standard aperto, specificato come RFC 2246 , gli è stato dato un nuovo nome, in parte per evitare problemi legali , in parte per trasmettere il messaggio che SSL può essere applicato a qualsiasi flusso bidirezionale di byte, non solo socket TCP; il nuovo nome è TLS. Internamente, quando il client e il server comunicano tra loro e comunicano quale versione di protocollo utilizzano, annunciano SSL 3.0 come "3.0" e TLS 1.0 come "3.1". Per tutti gli scopi pratici, SSL e TLS sono due nomi per lo stesso protocollo, che può avere diverse versioni; Scrivo spesso "SSL / TLS" per designarli.
Per tutte le caratteristiche di sicurezza, TLS 1.0 può essere considerato equivalente a SSL 3.0; le differenze sono minime e riguardano più l'allineamento sugli standard esistenti rispetto alle modifiche funzionali (ad esempio, l'algoritmo MAC in SSL 3.0 è un "tipo di HMAC", mentre l'algoritmo MAC in TLS 1.0 è HMAC, esatto fino all'ultimo bit). Ulteriori versioni di TLS apportano alcuni miglioramenti per la sicurezza.
Tuttavia, nessuna delle versioni SSL / TLS è migliore o peggiore delle altre per quanto riguarda gli attacchi DoS . La principale vulnerabilità di SSL / TLS, a tale riguardo, è che l'handshake iniziale comporta alcuni calcoli relativamente costosi sul lato server, e un client falso può forzare il server a spendere molta potenza della CPU per fare l'handshake senza dover investire molto sforzo nel processo (il client deve semplicemente inviare una certa posta indesiderata di circa la dimensione giusta come il messaggio ClientKeyExchange
, e il server impiegherà del tempo a provare a decodificarlo). Un buon PC gestirà poche centinaia o al massimo uno o due migliaia di handshake SSL al secondo, quindi DoSing di un server SSL non protetto non è molto difficile. Le misure di mitigazione sono sulla falsariga di rifiutare troppi tentativi di connessione TCP al secondo da un dato indirizzo IP.