SSL (Secure Sockets Layer) e TLS (Transport Layer Security) sono due protocolli di comunicazione utilizzati nella crittografia dei dati tra server-client e tra applicazioni. Connettono i vari dispositivi con una rete sicura e crittografata.
La Storia dei protocolli SSL e TLS
La prima versione pubblica del protocollo SSL avvenne nel 1995. Il suo scopo era di proteggere le comunicazioni su Internet.
Dopo varie evoluzioni del protocollo SSL, è stato creato un nuovo tipo di protocolllo, il TLS 1.0 che, nel 1999, divenne il successore di SSL 3.0.
TLS è il successore diretto di SSL e tutte le versioni di SSL sono ora obsolete. Viene comunque ancora utilizzato il termine SSL per descrivere una connessione TLS. Comunemente, SSL e TLS si riferiscono entrambi al protocollo TLS e ai certificati TLS.
TLS con HTTPS
Il protocollo TLS utilizza certificati digitali che facilitano il processo di handshake e stabiliscono comunicazioni crittografate tra un browser e un server Web.
HTTP è un protocollo utilizzato per la comunicazione tra client e server su una rete. Diventa HTTPS quando si utilizza un protocollo SSL/TLS sicuro su una connessione HTTP non sicura.
Prima di connettersi a un sito Web, il browser utilizza TLS per verificare il certificato TLS del sito Web.
I certificati indicano che un server rispetta gli attuali standard di sicurezza. Una connessione autentica e crittografata visualizza https:// anziché http://. La “S” aggiuntiva sta per SECURE, ovvero sicuro.
Il nostro sito web utilizza HTTPS con un certificato SSL/TLS 1.3 (ultima versione disponibile) rilasciato da Cloudflare, leader nel mondo nel campo della sicurezza delle reti informatiche.
Inoltre, utilizza la tecnologia HSTS (HTTP Strict Transport Security). Si tratta di un metodo per dichiarare che il nostro sito web è accessibile solo utilizzando una connessione sicura (HTTPS).
Se un sito Web dichiara un criterio HSTS, il browser deve rifiutare tutte le connessioni HTTP e impedire agli utenti di accettare certificati SSL non sicuri. Questo non solo aumenta il livello di sicurezza, ma proteggere anche da attacchi di degrado e di dirottamenti di sessione
SSL Handshake tra Server e Client
Un handshake (letteralmente “stretta di mano”) è un processo in cui un browser autentica il certificato SSL o TLS di un server. Questo processo scambia chiavi di crittografia, diverse per ogni sessione. Vengono utilizzate per decriptare i dati inviati (e ricevuti) e verificarne l’integrità e l’autenticità.
Un handshake SSL era una connessione esplicita (non criptata), mentre un handshake TLS è criptato.
Il processo di handshake SSL prevedeva più passaggi rispetto al processo TLS. Rimuovendo passaggi aggiuntivi e riducendo il numero totale di suite di crittografia, TLS ha velocizzato il processo rendendolo anche più efficiente.