20
DEI - Univ. Padova (Italia) Sicurezza delle informazioni Quando vengono mandati pacchetti di informazioni sui mezzi promiscui (ad es. rete Ethernet) chiunque ha la possibilità di leggere i pacchetti inviati e ricomporre il messaggio originale: Le informazioni non sono riservate E’ possibile che un utente sottragga le informazioni anche se non ne è il destinatario Un utente potrebbe modificare il messaggio (sia il contenuto che l’identità del mittente) Pacchetti invati in internet hanno bisogno di un link fisico o software (cavallo di troia) col mittente o con il destinatario. Una volta che esso sia stabilito, ci sono gli stessi rischi che su una rete promiscua

Sicurezza delle informazioni

Embed Size (px)

DESCRIPTION

Sicurezza delle informazioni. Quando vengono mandati pacchetti di informazioni sui mezzi promiscui (ad es. rete Ethernet) chiunque ha la possibilità di leggere i pacchetti inviati e ricomporre il messaggio originale: Le informazioni non sono riservate - PowerPoint PPT Presentation

Citation preview

DEI - Univ. Padova (Italia)

Sicurezza delle informazioni

• Quando vengono mandati pacchetti di informazioni sui mezzi promiscui (ad es. rete Ethernet) chiunque ha la possibilità di leggere i pacchetti inviati e ricomporre il messaggio originale:– Le informazioni non sono riservate– E’ possibile che un utente sottragga le informazioni anche se non ne è

il destinatario – Un utente potrebbe modificare il messaggio (sia il contenuto che

l’identità del mittente)

• Pacchetti invati in internet hanno bisogno di un link fisico o software (cavallo di troia) col mittente o con il destinatario. Una volta che esso sia stabilito, ci sono gli stessi rischi che su una rete promiscua

DEI - Univ. Padova (Italia)

Crittografia: servizi richiesti

• SEGRETEZZA: evitare che i dati inviati da un soggetto A a un soggetto B vengano intercettati da un terzo soggetto C.

• AUTENTICAZIONE: verificare l’identità di chi manda o riceve i dati (evitare che un intruso si spacci per chi non è).

• INTEGRITA’: essere sicuri che i dati ricevuti siano uguali a quelli inviati (evitare cioè che un intruso o un evento accidentale alterino i dati durante la trasmissione).

• NON RIPUDIO: evitare che chi manda dei dati possa in futuro negare di averli mandati (firma digitale).

DEI - Univ. Padova (Italia)

Sicurezza: man in the middle

A

Canale di comunicazione

B

Presunta comunicazione

Effettiva comunicazionecon messaggio intercettato

C

DEI - Univ. Padova (Italia)

Sicurezza: man in the middle

• A e B vogliono scambiarsi dei messaggi e pensano che le loro comunicazioni siano sicure, corrette e che il mittente sia autentico.

• C riesce ad intercettare i messaggi in arrivo ed in uscita da A, leggendoli e modificandoli

• Per i messaggi che si scambiano A e B non è garantita l’autenticità né la segretezza in quanto C (l’uomo in mezzo, “man in the middle”) può alterare il flusso di comunicazione

DEI - Univ. Padova (Italia)

Cifratura del messaggio

A

Canale di comunicazione

B

Comunicazione cifrata

Effettiva comunicazionecon messaggio intercettato

C

Cifratura con una

chiave Ka

Cifratura con una

chiave Ka

?

DEI - Univ. Padova (Italia)

Sicurezza: cifratura

• A e B vogliono scambiarsi dei messaggi e utilizzano un algoritmo di crittografia per modificare il messaggio in modo che sia inintelleggibile per chi eventualmente intercetti il messaggio

• A e B devon essersi accordati sulla cifratura e devono essere in possesso delle chiavi di decifrazione

• C riesce ad intercettare i messaggi in arrivo ed in uscita da A, ma non riesce ad interpretarne il contenuto

DEI - Univ. Padova (Italia)

Algoritmi a chiave segreta

• Cifrario di Cesareogni lettera è sostituita da quella che la segue di k posizioni nell’alfabeto.Es: k è la chiaveSe k=3, a è sostituito con d, b con e ecc.

• Cifrario di sostituzione mono-alfabetico:generalizzazione del cifrario di Cesare ogni lettera è sostituita da un’altra, secondo uno schema “libero”

DEI - Univ. Padova (Italia)

Algoritmi a chiave segreta

• Cifrari di trasposizionele lettere sono trasposte in altre posizioni, secondo una chiave di trasposizione ad esempio, la prima lettera è sostituita con la quarta, la seconda con la terza ecc.

• One-Time Pad:il testo è codificato in binario e viene effettuata un’operazione di OR esclusivo con una chiave binaria della stessa lunghezza: l’algoritmo inattaccabile, ma c’è bisogno di chiavi di lunghezza uguale al messaggio

• Algoritmi moderni:chiavi piccole, utilizzo di più operazioni (di trasposizione, sostituzione, di XOR), in cascata, secondo logiche complesse

DEI - Univ. Padova (Italia)

Algoritmi a chiave segreta (1)

“Questo è un messaggio”

1] Algoritmo di Cesare k=4: “Uwixys i yr qixxekkms”

2] Cifrario di sostituzione mono-alfabetico con chiaveM n b v c x z a s d f g h j k l p o i u y t r e w q:“Pyciuk c yj hciimzzsk”

• A b c d e f g h i j k l m n o p q r s t u v x y w z• M n b v c x z a s d f g h j k l p o i u y t r e w q

DEI - Univ. Padova (Italia)

Algoritmi a chiave segreta: one time pad

011100010111010101100101011100110111010001101111001000001110100000100000011101010110111000100000011011010110010101110011011100110110000101100111011001110110100101101111

111100111000111100011110001010110000101101100101001011001111111110100100100011110100100010111011000101100011111110111110101001100100100000010010100111110000100111000010

questo

è

un

messaggio

100000101111101001111011010110000111111100001010000011000001011110000100111110100010011010011011011110110101101011001101110101010010100101110101111110000110000010101101

ú{X�

ú&

{ZÍÕ)uø`

Messaggiooriginario

Codificabinaria

Chiavedi codifica/decodifica

XOR

RisultatodelloXOR

Messaggiocodificato

DEI - Univ. Padova (Italia)

Algoritmi a chiave segreta: one time pad

011100010111010101100101011100110111010001101111001000001110100000100000011101010110111000100000011011010110010101110011011100110110000101100111011001110110100101101111

111100111000111100011110001010110000101101100101001011001111111110100100100011110100100010111011000101100011111110111110101001100100100000010010100111110000100111000010

Questo

è

un

messaggio

100000101111101001111011010110000111111100001010000011000001011110000100111110100010011010011011011110110101101011001101110101010010100101110101111110000110000010101101

ú{X�

ú&

{ZÍÕ)uø`

Messaggiocifrato

Codificabinaria

Chiavedi codifica/decodifica

XOR

RisultatodelloXOR

Messaggiodecodificato

DEI - Univ. Padova (Italia)

Algoritmi a chiave segreta

• Gli algoritmi visti finora sono simmetrici, in quanto, data la funzione di codifica/decodifica f(messaggio, chiave) si utilizza la stessa chiave K per codificare e decodificare il messaggio M:

f(M,K) messaggio cifrato

M=f(f(M,K),K) ricostruzione del messaggio originale

DEI - Univ. Padova (Italia)

Sicurezza della chiave

• E’ necessario che mittente e destinatario si scambino la chiave in qualche modo sicuro

• E’ necessario avere una chiave per ogni coppia mittente/destinatario

DEI - Univ. Padova (Italia)

Algoritmi a doppia chiave

• Chiave Pubblica/Privata: Ogni soggetto A ha una propria chiave pubblica Kpub(A), nota a chiunque ed una propria chiave privata Kpriv(A) nota solo a lui stesso.

• I requisiti che un algoritmo a chiave pubblica deve soddisfare sono:– i dati codificati con una delle chiavi possono essere decodificati solo

con l’altra– la chiave privata non deve mai essere trasmessa in rete– deve essere molto difficile ricavare una chiave dall’altra (soprattutto

la chiave privata da quella pubblica nota a tutti)

DEI - Univ. Padova (Italia)

Cifratura del messaggio

A

Canale di comunicazione

B

Comunicazione cifrata

Cifratura con la chiave privataKpriv(A)

decifratura con la chiave

pubblica Kpub(A)

Procedura per garantire la autenticità del mittente e la integrità dei dati:Il mittente codifica il messaggio con la sua chiave privata Kpriv(mitt), che solo lui conosce, ed il destinatario decodifica il messaggio con la chiave pubblica relativa Kpub(mitt).

DEI - Univ. Padova (Italia)

Cifratura del messaggio

A

Canale di comunicazione

B

Comunicazione cifrata

Cifratura con la chiave

pubblicaKpub(B)

decifratura con la chiave privata Kpriv(B)

Procedura per garantire la segretezza dei dati:Il mittente codifica il messaggio con la sua chiave pubblica del destinatario Kpub(dest). Il messaggio può essere decodificato solo utilizzando la chiave privata Kpriv(dest) del destinatario, che solo lui conosce.

DEI - Univ. Padova (Italia)

Cifratura del messaggio

A

Canale di comunicazione

Comunicazione cifrata

Cifratura con la chiave

pubblicaKpub(B)

Per garantire contemporaneamente la autenticità, la integrità e la segretezza, è necessario procedere ad una doppia codifica:

Cifratura con la chiave privataKpriv(A)

B

Cifratura con la chiave privataKpriv(B)

Cifratura con la chiave

pubblicaKpub(A)

DEI - Univ. Padova (Italia)

Algoritmi a chiave segreta e a chiave pubblica

• Vantaggi degli algoritmi a chiave segretaUn vantaggio importante: questi algoritmi sono più veloci di ordini di grandezza rispetto agli algoritmi a chiave pubblica

• Vantaggi degli algoritmi a chiave pubblica E’ eliminato il problema dello scambio della chiave segretaLe chiavi pubbliche sono diffuse e accessibili da tutti

• Uso congiunto dei due tipi di algoritmoSpesso si usa un algoritmo a chiave pubblica per scambiare la chiave segreta “di sessione” con cui poi crittografare i dati da trasmettere

DEI - Univ. Padova (Italia)

Algoritmo a chiave pubblica: RSA

RSA (Rivest-Shamir-Adleman)

RSA sfrutta le proprietà dei numeri primi ed il fatto che è molto difficile fattorizzare (cioè trovare i divisori) numeri molto grandi: più è grande il numero, più è difficile e lungo trovarne i divisori

Questo rende molto complesso ( di fatto impossibile in tempo per essere utile ) ricavare la chiave privata da quella pubblica . Il miglio algoritmo finora per decomporre un numero binario di b cifre ha un comportamento asintotico:

)(3/23/1 )log()

9

64( bbeO

DEI - Univ. Padova (Italia)

Robustezza di RSA

Dato che l’algoritmo si basa sulla fattorizzazione di numeri, la sua sicurezza deriva dalla difficoltà di tale compito.Il miglior algoritmo finora per decomporre un numero binario di b cifre ha un comportamento asintotico:

)(3/23/1 )log()

9

64( bbeO

Per un numero binario di 512 bit, si otterrebbe un numero di calcoli asintotici dell’ordine di 1022…

100000 anni con una frequenza di calcolo di 4GHz!!