Estratto del documento

SSL (Secure Socket Layer) / TLS (Transport Layer Security)

SSL (Secure Socket Layer) / TLS (Transport Layer Security) è un servizio di sicurezza a livello di trasporto, con lo scopo di fornire riservatezza, integrità ed autenticazione tra due applicazioni che comunicano via internet. L'utilizzo principale è per proteggere informazioni trasmesse tra browser e web servers.

Brevi cenni storici

Sviluppato da Netscape, la 3a versione è stata sviluppata con revisione pubblica, diventando uno standard IETF noto come TLS (Transport Layer Security, ora TLS v 1.2 ha stesso protocollo ma cambiano gli algoritmi supportati è resistente agli attacchi noti) (protegge quindi a livello di applicazioni, ultimo livello, layer 7).

SSL: l'autenticazione

Permette tramite certificati, del server ed eventualmente del client e la cifratura di tutti i dati scambiati tra server e client per garantire autenticazione, riservatezza, integrità. SSL implementa diverse fasi (negoziazioni chiavi, scambio certificati…) e protocolli.

Sessione SSL

Una sessione SSL è un’associazione tra client e server creata tramite il protocollo con cui si negoziano i parametri di sicurezza (Protocollo Handshake), la sessione può essere usata da più connessioni.

Connessione SSL

Ogni connessione viene associata ad una sola sessione, la connessione identifica una relazione transiente tra nodi (una forma di trasporto).

Protocolli SSL

SSL è costituito da 2 livelli di protocolli:

  • Protocollo SSL Record, che fornisce servizi di base (riservatezza, integrità…) per i protocolli di livello superiore (come HTTP).
  • Tre protocolli di alto livello:
    1. Protocollo Handshake, che negozia i parametri di sicurezza e autentica server e client
    2. Protocollo Change Cipher Spec, che termina negoziazione e autenticazione
    3. Protocollo Alert (gestisce gli errori)

Protocollo SSL Record

Fornisce: tramite la cifratura simmetrica (DES, AES…) utilizzando una chiave segreta condivisa, riservatezza definita dal protocollo Handshake (il messaggio è compresso prima della cifratura), integrità/autenticazione utilizzando MAC con chiave segreta condivisa (le operazioni di cifratura simmetrica e generazione del codice MAC vengono eseguite con chiavi diverse!).

Funzionamento:

  • Frammenta l'input in blocchi di dimensione 214 byte
  • Comprimi i dati (i blocchi)
  • Computa un codice MAC sul blocco
  • Cifra il blocco con chiave simmetrica in modalità CBC
  • Aggiunge un'intestazione contenente il protocollo di livello più alto (es. Handshake, HTTP, alert…), la lunghezza in byte del frammento e la versione di SSL/TLS
  • Trasmette il risultato in un segmento TCP

n.b. La funzione MAC si computa oltre che sul frammento anche su type, version, length:

MAC(MAC_write_key, seq_num||SSLCompressed.type||SSLCompressed.length||SSLCompressed.fragment)

in cui:

  • seq_num è il numero sequenziale associato al messaggio su cui si computa MAC
  • SSLCompressed.type è il tipo del protocollo ad alto livello utilizzato per elaborare il frammento (alert, ...)
Anteprima
Vedrai una selezione di 3 pagine su 7
Fondamenti di sicurezza - SSL e sicurezza in rete Pag. 1 Fondamenti di sicurezza - SSL e sicurezza in rete Pag. 2
Anteprima di 3 pagg. su 7.
Scarica il documento per vederlo tutto.
Fondamenti di sicurezza - SSL e sicurezza in rete Pag. 6
1 su 7
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher koganzjo di informazioni apprese con la frequenza delle lezioni di Fondamenti di sicurezza e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi dell' Insubria o del prof Carminati Barbara.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community