La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Corso di Reti di Calcolatori A.A. 2005-2006 Prof. D. Rosaci Capitolo Sei: Il livello delle Applicazioni.

Presentazioni simili


Presentazione sul tema: "Corso di Reti di Calcolatori A.A. 2005-2006 Prof. D. Rosaci Capitolo Sei: Il livello delle Applicazioni."— Transcript della presentazione:

1 Corso di Reti di Calcolatori A.A. 2005-2006 Prof. D. Rosaci Capitolo Sei: Il livello delle Applicazioni

2 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Il livello delle applicazioni Nessuno dei livelli visti in precedenza effettuano compiti realmente utili per l’utente, ma forniscono soltanto un supporto di comunicazione affidabile Tuttavia, anche a livello delle applicazioni vi è la necessità di protocolli di supporto per le applicazioni reali Analizzeremo tre classi di protocolli – Sicurezza – DNS – Gestione della Rete Inoltre analizzeremo due applicazioni reali: – Il World Wide Web – La posta elettronica

3 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto La Sicurezza nelle reti Nei primi decenni di esistenza, le reti venivano usate solo dai ricercatori universitari per inviare messaggi o dai dipendenti delle industrie per condividere stampanti: scarse le necessità di sicurezza Oggni milioni di cittadini usano Internet per effettuare operazioni che coinvolgono flussi di denaro e dati personali

4 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Le problematiche Nessuno dovrebbe poter leggere o modificare messaggi destinati ad altri Nessuno dovrebbe poter accedere senza autorizzazione a servizi remoti Dovrebbe esser certa la provenienza di ogni messaggio Dovrebbe essere impossibile intercettare e riprodurre messaggi autografi Dovrebbe essere impossibile negare di aver inviato messaggi invece effettivamente spediti

5 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Gli avversari AvversarioScopo StudenteDivertirsi a curiosare nella posta altrui HackerVerificare i sistemi di sicurezza di altri; rubare dati VenditorePretendere di rappresentare tutta Europa Uomo d’affariScoprire il piano di mercato di un concorrente Ex dipendenteVendicarsi per essere stato licenziato CassiereAppropriarsi del denaro di una società Agente di cambioNegare una promessa fatta ad un cliente via e-mail TruffatoreRubare numeri di carte di credito SpiaScoprire la forza militare di un nemico terroristaRubare segreti per una guerra batteriologica

6 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Quattro aree di problemi Segretezza: riservatezza delle informazioni Autenticazione: determinare con chi si sta parlando prima di rivelare informazioni Non disconoscimento: provare che una persona abbia inviato un certo messaggio Controllo di integrità: essere sicuri che un messaggio sia davvero uguale a quello spedito e non sia stato modificato

7 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Dove si trova la sicurezza? Ogni livello contribuisce in qualche modo A livello fisico, si possono racchiudere le linee di trasmissione in tubi sigillati pieni di gas argo ad alta pressione che, se fuoriesce, fa scattare un allarme A livello data-link è possibile codificare i pacchetti appena lasciano la macchina sorgente e decodificarli sulla macchina destinazione A livello rete è possibile installare firewall per accettare o non accettare pacchetti A livello trasporto è possibile codificare l’intera connessione Nessuna di queste soluzioni risolve efficacemente i problemi di autenticazione e di non disconoscimento: occorre operare a livello delle applicazioni per affrontare tali problemi

8 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto La crittografia Storia lunga e pittoresca Quattro gruppi di persone hanno contribuito a svilupparla: – Militari – Diplomatici – Scrittori di diari – amanti I militari hanno avuto il ruolo più importante

9 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Limiti della crittografia tradizionale Difficoltà del codificatore nell’eseguire le trasformazioni necessarie Difficoltà di poter passare da un metodo crittografico ad un altro, quando il primo fosse stato scoperto

10 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Modello crittografico Intrusi passivi: ascoltano semplicemente Testo in chiaro Intruso Metodo di cifratura, E Testo cifrato, C=E K (P) Chiave di decifratura, K Chiave di cifratura, K Metodo di decifratura, D Testo in chiaro Intrusi attivi: possono modificare i messaggi

11 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Testi, chiavi, codifiche Testo in chiaro P: messaggio da codificare E: funzione di codifica, parametrizzata attraverso una chiave K C=E K (P): codifica del messaggio P D: funzione di decodifica, parametrizzata attraverso la chiave K (la stessa utilizzata per la codifica) P=D K (C): codifica di C Ovviamente P=D K (E K (P): ):

12 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Crittografia, Crittanalisi e Crittologia Crittografia: arte di progettare cifrari Crittanalisi: arte di violare cifrari Crittologia= crittografia+crittanalisi

13 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Crittografia: regole generali Si deve assumere che il crittanalista conosca il metodo di codifica E Inventare un metodo di codifica è cosa difficile: inutile pensare di tenerlo segreto, reinventandolo ogni volta che qualcuno lo scopre La forza della codifica deve stare nel parametro (la chiave) La chiave deve essere lunga: esempio della serratura a combinazione (una chiave con 3 cifre significa 1000 combinazioni possibili, una con 6 cifre genera 1.000.000 di combinazioni) Per evitare che qualcuno vi legga la posta possono bastare chiavi a 64 bit, per messaggi che coinvolgono la politica internazionale ne occorrono almeno 256

14 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Crittanalisi: 3 varianti principali Problema del testo cifrato semplice: a disposizione una grande quantità di testo cifrato e nessun testo in chiaro (tipo giochi nei giornali) Problema del testo in chiaro conosciuto: a disposizione del testo cifrato e il corrispondente testo in chiaro. Problema del testo in chiaro selezionato: si è in grado di codificare parti del testo in chiaro di propria scelta

15 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Metodi di codifica Cifrari a sostituzione Cifrari a trasposizione

16 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Cifrari a sostituzione Ogni lettera o gruppo di lettere vengono rimpiazzati da un’altra lettera o gruppo di lettere in modo da mascherarli Cifrario di Cesare: Es: A diventa D, B diventa E, C diventa F,…,e Z diventa C Generalizzazione del cifrario di Cesare: ogni lettera invece di essere trasposta di 3 posti è trasposta di k posti. K è la chiave del metodo Dai galli in poi, questo cifrario non ha più fatto impazzire nessuno

17 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Sostituzione monoalfabetica Miglioramento nella cifratura per sostituzione: ogni lettera è mappata in una qualunque altra lettera. La chiave è quindi lunga quanto l’intero alfabeto Nell’esempio, esistono 21! chiavi abcdefghilmnopqrstuvz ghuacbvrpsleznqotcfdi

18 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Violare la sostituzione monoalfabetica Basta una quantità sorprendentemente piccola di testo in chiaro per violarla L’attacco sfrutta le proprietà statistiche dei linguaggi naturali Ad es., in inglese la “e” è la lettera più comune, seguita da “t”, “o”, “a”, “n”, ecc. I bigrammi più comuni sono “th”, “in”, “er”, “re” e “an”. I trigrammi più comuni sono “the”, “ing” e “and”. Basta che il crittanalista conti le frequenze relative di ogni lettera del cifrato. Quindi potrebbe assegnare la lettera più frequente alla “e”, quella con seconda maggior frequenza alla “t” e così via. Quindi potrebbe fare ragionamenti analoghi con trigrammi e bigrammi Si potrebbero anche cercare nel testo parole che si sa che dovrebbero essere frequenti: ad es. “finanziamento” in un testo finanziario (si cercherebbero due “i” separate da quattro occorrenze)

19 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Cifrari a trasposizione I cifrari a sostituzione conservano l’ordine dei simboli del testo in chiaro, ma li trasformano I cifrari a trasposizione riordinano le lettere senza trasformarle Cifrario comune: trasposizione per colonne Parola chiave: MEGABYTE Lo scopo della chiave è di numerare le colonne, con la colonna 1 sotto la lettera della chiave più vicina all’inizio dell’alfabeto. Il testo in chiaro è scritto orizzontalmente per righe, quello cifrato viene letto per colonne, iniziando dalla colonna numero 1.

20 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Esempio di cifratura a trasposizione MEGABYTE 63512874 l’attacco e’fissato perlecin quedidom anightuv Testo in chiaro: lattaccoefissatoperlecinquedidomanightuv Testo cifrato: tsldgaseihafeunoonmvtireilepqa

21 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Violare un cifrario a trasposizione 1. Ipotizzare un numero di colonne 2. Ordinare le colonne: l’ordinamento migliore corrisponde alla migliore adesione che le frequenze delle parole nel cifrato manifestano rispetto al testo in chiaro

22 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Algoritmi a chiave segreta Tradizionalmente i crittografi si affidavano ad algoritmi semplici ed a chiavi molto lunghe Ai nostri giorni si cerca di rendere l’algoritmo di codifica così complesso che anche se il crittanalista riuscisse a possedere una grande mole di testo cifrato, non riuscirebbe a dare ad esso nessun senso (nessuna possibilità di usare le proprietà statistiche dei linguaggi naturali)

23 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Dispositivi a blocco P e a blocco S Un dispositivo a blocco P è usato per effettuare una trasposizione su un ingresso di 8 bit. E’ possibile creare un blocco P che effettui qualunque trasposizione, praticamente alla velocità della luce Un dispositivo a blocco S accetta un ingresso a n bit e produce un’uscita ad n bit, effettuando una cifratura per sostituzione Mettendo in cascata un’intera seriue di blocchi P ed S, possiamo ottenere un’uscita che è una funzione estremamente complicata dell’ingresso

24 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Il DES E’ un cifrario composto sviluppato dall’IBM e adottato nel 1977 dal governo statunitense Il testo in chairo viene codificato in blocchi di 64 bit L’algoritmo, parametrizzato da una chiave di 56 bit, ha 19 passi distinti Il primo passo è una tarsposizione indipendente dalla chiave sui 64 bit del testo in chiaro L’ultimo passo è l’esatto contrario di questa trasposizione Il penultimo passo scambia i 32 bit più a sinistra con i 32 bit più a destra I rimanenti 16 passi sono funzionalmente identici, ma parametrizzati da differenti funzioni della chiave

25 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Violare il DES Alla fine, per quanto complicato, il DES è essenzialmente un cifrario a sostituzione monoalfabetico che utilizza una chiave a 64 bit Ogni volta che viene dato in pasto al DES un testo in chiaro di 64 bit, si produce lo stesso testo cifrato di 64 bit Un crittoanalista può sfruttare questa proprietà per violarlo

26 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Esempio di violazione del DES Leslie può accedere al file codificato. Può cambiarlo per ovviare alla situazione a lei sfavorevole? Basta copiare il blocco 11 (quello relativo al premio di una collega che Leslie sa essere la favorita del capo) nel blocco 3 Esistono dei metodi per ovviare a questa debolezza del DES, quali il DES concatenato

27 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Macchine per violare il DES Molte proposte sono state avanzate per violare il DES Nel 1977, venne progettata una macchina da Diffie ed Helmann che poteva effettuare una ricerca nello spazio delle chiavi in meno di un giorno (la macchina sarebbe però costata 20 milioni di dollari) Esiste il metodo proposto da Quisquater e Girault nel 1991, detto della Lotteria Cinese, che propone di utilizzare congiuntamente milioni di processori per esplorare lo spazio delle chiavi. 2 56 è uno spazio che può essere così violato in pochi minuti

28 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Ancora sul DES Sono state fatte varie proposte per migliorare il DES (es., eseguire due volte il DES con due diverse chiavi da 56 bit), ma sono state trovate soluzioni per violare ognuna di tali proposte in tempi ragionevoli Eppure DES è ancora largamente utilizzato per applicazioni di sicurezza importanti, quali quelle bancarie tipo bancomat

29 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Un problema fondamentale: la segretezza della chiave Tutti i metodi finora passati in rassegna sono affetti dalla medesima problematica: la chiave deve essere conservata con grande attenzione Ma la chiave deve pure essere distribuita dal cifratore a chi deve decrittare: la distribuzione è un punto di estrema debolezza del processo crittografico Nel 1976 due ricercatori della Stanford University, Diffie ed Helmann proposero un crittosistema radicalmente nuovo, nel quale la chiave di decifratura era diversa da quella di cifratura, e non poteva essere derivata da quest’ultima. Nella loro proposta, l’algoritmo di cifratura E e quello di decifratura D devono rispettare i seguenti requisiti: 1. D(E(P))=P 2. E’ estremamente difficile dedurre D da E 3. E non può venir violato da un attacco con testo in chiaro selezionato

30 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Algoritmi a chiave pubblica Una persona (es. Alice) che vuole ricevere messaggi segreti dapprima inventa due algoritmi, E A e D A che rispettano i requisiti suddetti L’algoritmo, con la relativa chiave di cifratura, E A è reso pubblico. D A è invece mantenuto privato Se adesso un utente (es. Bob) vuole inviare un messaggio ad Alice, basta che cripti il messaggio usando l’algoritmo a chiave pubblica E A. Alice sarà in grado di leggere il messaggio decriptandolo con la sua chiave segreta D A. Un intruso che intercettasse il messaggio non conoscerebbe la chiave segreta di Alice e non potrebbe decriptare il messaggio Alice ha risolto il problema di non dover distribuire la sua chiave segreta

31 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto L’algoritmo RSA E’ stato ideato da un gruppo del MIT (Rivest, Shamir e Adleman) nel 1978 1. Scegliere due grandi numeri primi, p e q (tipicamente più grandi di 10 100 ) 2. Calcolare n=pxq e z=(p-1)x(q-1) 3. Scegliere un numero che sia primo rispetto a z e chiamarlo d 4. Trovare e tale che exd=1 mod z Quindi si divide il testo in blocchi di k bit, con 2 K <n. Per cifrare il blocco P, si calcola C=P e (mod n) Per decifrare C, si calcola P=C d (mod n) E’ possibile provare che per ogni P le funzioni di cifratura e decifratura sono inverse La chiave pubblica consiste nella coppia (e,n) La chiave privata è la coppia (d,n)

32 D. Rosaci Corso di Reti di Calcolatori Capitolo Sesto Sicurezza di RSA Si basa sulla difficoltà di fattorizzare numeri grandi Se il crittanalista riuscisse a fattorizzare n (pubblico) potrebbe trovare p e q e da questi z. Attraverso z ed e si può trovare d Ma fattorizzare un numero grande richiede tempi epocali. Ad esempio, se il numero è di 500 cifre, occorrerebbero 10 25 anni usando una macchina che impienga 1 microsecondo per istruzione.


Scaricare ppt "Corso di Reti di Calcolatori A.A. 2005-2006 Prof. D. Rosaci Capitolo Sei: Il livello delle Applicazioni."

Presentazioni simili


Annunci Google