Che materia stai cercando?

Fondamenti di sicurezza - SSL e sicurezza in rete Appunti scolastici Premium

Appunti di Fondamenti di sicurezza per l’esame della professoressa Carminati. Gli argomenti trattati sono i seguenti: SSL e sicurezza in rete, Protocollo SSL Record, Protocollo Alert, Protocollo Change Cipher Spec, Metodo per lo scambio della chiave con RSA.

Esame di Fondamenti di sicurezza docente Prof. B. Carminati

Anteprima

ESTRATTO DOCUMENTO

Protocollo SSL Record

Fornisce: tramite la cifratura simmetrica (DES, AES…) utilizzando una chiave segreta condivisa e

- riservatezza

definita dal protocollo Handshake (il msg è 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 2^14 byte

-

- comprime 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, lengh:

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

in cui:

- seq_num è il numero sequenziale associato al msg su cui si computa MAC

- SSLCompressed.type è il tipo del protocollo ad alto livello utilizzato per elaborare il frammento (alert,

changhe_cypher_spec, handshake, application data)

- SSLCompressed.lengh è la lunghezza del frammento

- SSLCompressed.fragment è il frammento

nello specifico…

Protocollo Alert

Costituito da 2 byte, viene utilizzato per mandare msg di alert di due tipi, distinti dal primo byte in:

1. “warning” (primo byte = 1)

2. “fatal” (primo byte = 2)

Il secondo byte specifica il msg di alert:

- fatal può essere: unexpected message, bad record mac, decompression failure, handshake failure,

illegal parameter

- warning può essere: close notify, no certificate, bad cartificate, unsupported certificare, certificate

revoked, certificate expired, certificate unknown

(anche i msg alert vengono compressi e cifrati come tutti i dati SSL)

Protocollo Change Cipher Spec

Costituito da un msg di 1 byte, contiene un unico valore, ha lo scopo di rendere definitiva la scelta degli

schemi crittografici che si utilizzeranno durante la connessione (chiudere la fase handshake)

Protocollo Handshake

Protocollo che viene eseguito prima di inviare qualunque dato applicativo, è la parte che garantisce

interoperabilità e permette a client e server di:

1. Negoziare gli algoritmi di cifratura (cipher suite) che verranno utilizzati nella sessione:

- il metodo per lo scambio delle chiavi

l’algoritmo di cifratura (utilizzato nel protocollo SSL Record)

- l’algoritmo per il

- MAC (utilizzato nel protocollo SSL Record)

2. Autenticarsi a vicenda, solo il server o nessuna autenticazione (sconsigliato), la verifica dell0identità

avviene attraversi i certificati digitali.

3. Scambiare informazioni necessarie per la generazione di una chiave segreta. (queste info

permettono la generazione di un segreto “premaster da cui poi si genera la

secret” master key lunga

48byte.) TLS/SSL prevede però chiavi diverse da parte del server e client per MAC e cifratura, sono

necessarie 4 chiavi diverse:

- server write MAC

- server write key

- client write MAC

- client write key

Più 2 eventuali vettori di inizializzazione (uno per client e uno per server) da utilizzare in CBC, tutti

questi 6 valori sono generati partendo dalla master key.

Il protocollo Handshake è composto da un insieme di messaggi, ed è suddiviso in 4 grandi fasi:

1. Fase di Attivazione delle funzionalità di sicurezza per negoziare gli algoritmi che verranno

utilizzati nella sessione (serve a negoziare la cipher suite utilizzata nella sessione)

1

Il msg di testo in chiaro “ClientHello” contiene:

- la versione di protocollo più alta supportata;

- un valore di nonce di 32 byte che viene utilizzato nella generazione della master key e nella

generazione delle keyblock

- un ID di sessione nel caso si volesse riaprire una sessione già negoziata

- gli algoritmi crittografici supportati

Il msg “ServerHello” ha la stessa struttura del client, ma indica la versione del protocollo più alta

supportata da entrambi e la cipher suite più sicura tra quelle offerte dal client e supportate dal server.

Nella cipher suite vengono specificate terne di algoritmi per:

- metodo per lo scambio della chiave (key exchange algorithm), il segreto che si intende scambiare è il

premaster secret, da questo, eseguendo gli stessi processi, client e server ottengono la master secret

key, usata per generare le chiavi per cifrare e per generare il MAC. (i metodi di scambio supportati

sono: RSA, RSA temp, Fixed Diffie-Hellmann, Ephemeral Diffie-Hellmann, Anonymous Diffie-Hellmann)

- algoritmi di cifratura

- algoritmi per il calcolo del MAC

n.b. Il contenuto dei messaggi scambiati nelle fasi successive dipende dal metodo di scambio delle

chiavi adottato.

Metodo per lo scambio della chiave con RSA

Dopo il “ServerHello”, e quindi aver scelto RSA come metodo di trasferimento, il segreto

(premaster secret) viene generato dal client e crittografato con chiave pubblica (RSA) del

server, è previsto lo scambio del certificato della chiave pubblica del server.

Metodo per lo scambio della chiave con RSA temporaneo

Dopo il “ServerHello”, il server potrebbe avere un certificato per una chiave pubblica valida solo

per la firma, ma non per la cifratura. Il server genera quindi una coppia di chiavi (privata e

pubblica) RSA temporanee e invia al client la nuova chiave pubblica firmata con la chiave RSA

iniziale allegandone il certificato, il client genera quindi il premaster secret e lo cifra con la nuova

chiave pubblica.


PAGINE

7

PESO

404.74 KB

AUTORE

koganzjo

PUBBLICATO

+1 anno fa


DETTAGLI
Corso di laurea: Corso di laurea in informatica
SSD:
A.A.: 2014-2015

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à Insubria Como Varese - Uninsubria o del prof Carminati Barbara.

Acquista con carta o conto PayPal

Scarica il file tutte le volte che vuoi

Paga con un conto PayPal per usufruire della garanzia Soddisfatto o rimborsato

Recensioni
Ti è piaciuto questo appunto? Valutalo!

Altri appunti di Fondamenti di sicurezza

Fondamenti di sicurezza - AES Advanced Encryption Standard
Appunto
Fondamenti di sicurezza - applicazioni della cifratura asimmetrica
Appunto
Fondamenti di sicurezza - Attacchi e Requisiti di Sicurezza
Appunto
Fondamenti di sicurezza - autenticatori
Appunto