Obiettivi della crittografia -...

34
CRITTOGRAFIA Giorgio Giacinto 2013 Crittografia 1 Obiettivi della crittografia ! Si applica nello scambio di messaggi ! Serve a garantire ! Segretezza ! Autenticità ! Integrità ! Il testo del messaggio viene modificato attraverso una funzione di codifica ! Chi intercetta il messaggio non deve essere in grado di comprenderne il contenuto

Transcript of Obiettivi della crittografia -...

Page 1: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

CRITTOGRAFIA

Giorgio Giacinto 2013 Crittografia 1

Obiettivi della crittografia

!  Si applica nello scambio di messaggi !  Serve a garantire

!  Segretezza !  Autenticità !  Integrità

!  Il testo del messaggio viene modificato attraverso una funzione di codifica !  Chi intercetta il messaggio non deve essere in

grado di comprenderne il contenuto

Page 2: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 2

Crittografia di un messaggio

Giorgio Giacinto 2013 Crittografia 3

Strumenti della crittografia

!  Algoritmo di crittografia !  Una funzione E che produce il messaggio crittato

C a partire dal messaggio originale M e da una chiave K C = E(K,M)

!  La chiave consente la lettura del messaggio solo all’autore e ai destinatari legittimi

Page 3: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 4

Crittografia simmetrica e asimmetrica

!  Simmetrica !  Stessa chiave per crittare e decrittare

la chiave deve restare segreta e nota solo a mittente e destinatario

!  Asimettrica !  Due chiavi, una pubblica e una privata

Giorgio Giacinto 2013 Crittografia 5

Crittografia e Chiavi

Rivest-Shamir-Adelman

Page 4: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 6

Crittoanalisi

!  Obiettivo: violazione dello schema di crittazione !  Violazione di un singolo messaggio !  Individuazione di un algoritmo per la decrittazione !  Deduzione di alcuni contenuti del messaggio !  Individuazione della chiave !  Scoprire le vulnerabilità dell’implementazione o

nell’utilizzo della crittografia !  Scoprire le vulnerabilità di un algoritmo di

crittografia

Giorgio Giacinto 2013 Crittografia 7

Tecniche principali di crittografia !  Sostituzione

!  I singoli caratteri del messaggio vengono sostituiti con altri caratteri in base a una qualche regola

!  Obiettivo di questa tecnica è la confusione del contenuto delle informazioni nel testo crittato

!  Permutazione !  Parti del messaggio vengono spostate di

posizione !  Obiettivo di questa tecnica è la diffusione del

contenuto informativo del messaggio in modo casuale nel testo crittato

Page 5: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 8

Crittazione a flussi e a blocchi

Crittazione a flussi Alta velocità Resistenza a errori Bassa diffusione Può essere alterato

Crittazione a blocchi Bassa velocità Propagazione degli errori Alta diffusione Resistenza ad alterazioni

Crittazione per sostituzione

Page 6: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 10

Cifrario di Cesare

!  Ciascun carattere del messaggio è sostituito dal carattere 3 posizioni più avanti ci = E(pi) = pi + 3 ad esempio treaty impossible diventa wuhdwb lpsrvvleoh

Giorgio Giacinto 2013 Crittografia 11

Altre sostituzioni

!  Stabilisco una chiave (es., chiave) che sostituisco alle prime lettere dell’alfabeto. ABCDEFGHIJKLMNOPQRSTUVWXYZ CHIAVEBDFGJKLMNOPQRSTUWXYZ più complicato, con una permutazione che

considera una lettera ogni 3, modulo 26 ABCDEFGHIJKLMNOPQRSTUVWXYZ ADGJMPSVYBEHKNQTWZCFILORUX

Page 7: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 12

Altre tecniche di crittazione per sostituzione

!  OTP (One Time Pad) !  Libro delle chiavi “usa&getta” !  Il messaggio viene allineato con tante chiavi

quante ne servono a coprire l’intero messaggio ad es., se le chiavi hanno lunghezza 20 caratteri, per crittare un messaggio di 300 caratteri occorrono 15 chiavi

!  Il messaggio crittato si costruisce consultando la tavola di Vigenère !  “somma” dei caratteri del messaggio e della chiave,

dove alla lettera A corrisponde la cifra 0

Permutazioni

Page 8: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 14

Trasposizioni per colonna

!  Se usiamo 5 colonne, il testo THIS IS A SAMPLE MESSAGE si dispone T H I S I S A S A M P L E M E S S A G E e il risultante messaggio crittato diventa TSPS HALS ISEA SAMG IMEE

Giorgio Giacinto 2013 Crittografia 15

Combinazioni di più approcci

!  Sostituzioni e trasposizioni sono la base per la costruzione di algoritmi di crittazione sicuri

!  Non è detto che applicando consecutivamente due crittazioni diverse a un messaggio, si ottenga una crittazione più robusta

Page 9: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Algoritmi di crittografia “sicuri”

Giorgio Giacinto 2013 Crittografia 17

Cosa si intende per “sicuro”? !  Shannon (1949)

!  La quantità di lavoro necessaria per crittazione e decrittazione deve essere rapportata al livello di segretezza

!  L’insieme di chiavi e algoritmi di crittazione devono essere privi di complessità

!  L’implementazione del processo deve essere semplice

!  Gli errori della crittazione non devono propagarsi !  La dimensione del testo crittato non deve essere

superiore a quella del testo originale

Page 10: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 18

Crittoanalisi

!  Per effettuare la crittoanalisi occorre essere in possesso di una o più informazioni !  Il testo crittato !  Il testo in chiaro completo !  Un testo in chiaro parziale !  L’algoritmo

Giorgio Giacinto 2013 Crittografia 19

Cinque approcci alla crittoanalisi !  Ciphertext-only

!  Si ha a disposizione solo il testo crittato !  Known-plaintext or probable-plaintext

!  Si ha a disposizione tutto o parte del testo originale oltre al testo crittato

!  Chosen-plaintext !  L’attaccante riesce a ottenere la crittazione di un testo a

sua scelta !  Chosen-plaintext e algoritmo

!  L’analista può fare tante prove di crittazione per individuare la chiave

!  Coppie di testo crittato e testo in chiaro

Page 11: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 20

Sistemi di crittografia commerciali

!  Soddisfano i seguenti requisiti !  Solide basi matematiche !  Analizzato da esperti competenti indipendenti !  Hanno superato la “prova del tempo”

Sistemi di crittografia simmetrica

Page 12: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Algoritmi di crittografia simmetrica

!  A blocchi !  DES (Data Encryption Standard) !  3DES (Triple DES) !  AES (Advanced Encryption Standard) !  Blowfish (1993, Bruce Schneier)

!  A flussi !  RC4 (1987, Ron Rivest)

Giorgio Giacinto 2013 Crittografia 22

Giorgio Giacinto 2013 Crittografia 23

DES

!  Nato negli anni ‘70 per volontà del governo USA per finalità pubbliche

!  Nel 1974 rispose al bando l’IBM che sviluppo l’algoritmo denominato DES

!  Adottato come standard nel 1976 e successivamente adottato dall’ISO

Page 13: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 24

L’algoritmo DES

Crittazione a blocchi di 64 bit, chiave a 64 bit (efficaci solo i primi 56 bit)

Operazioni logiche e aritmetiche sui blocchi

Esempio di funzionamento dell’algoritmo http://people.eku.edu/styere/Encrypt/JS-DES.html

Giorgio Giacinto 2013 Crittografia 25

Doppio e Triplo DES

!  Doppio DES !  Si critta il messaggio 2 volte con due chiavi

diverse !  Tempo di decrittazione doppio rispetto a singolo DES

!  Triplo DES !  Si critta il messaggio con una chiave, si decritta

con una seconda chiave e si critta nuovamente con una terza chiave C = E(k3, D(k2, E(k1, m))) robustezza equivalente all’uso di una chiave di 112 bit

Page 14: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 26

Sicurezza di DES

!  L’incremento della potenza computazionale dei calcolatori ha minato la sicurezza offerta da DES !  Nel 1998 è stata costruita una macchina del

valore di circa 100.000 USD che in 4 giorni è in grado di individuare una chiave DES

!  Per questo motivo il NIST nel 1995 ha avviato la ricerca di un nuovo algoritmo: AES

Giorgio Giacinto 2013 Crittografia 27

AES !  Gara del NIST nel 1997 per un algoritmo

!  Non segreto !  Divulgato pubblicamente !  Disponibile per l’utilizzo mondiale senza diritti di

sfruttamento !  Simmetrico con crittazione a blocchi (128 bit) !  Utilizzabile con chiavi di dimensione 128, 192 e 256 bit

!  Nell’agosto del 1998, 15 algoritmi in gara !  Nel 1999, 5 finalisti. !  Nel 2001 l’algoritmo vincitore è adottato

ufficialmente negli USA

Page 15: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 28

L’algoritmo AES Nome dell’algoritmo: Rijndael dal nome degli autori Rijmen e Daemen Basato su sostituzioni, trasposizioni e operazioni di scorrimento, XOR e addizioni Esempio di codice sorgente http://www.hoozi.com/post/829n1/advanced-encryption-standard-aes-implementation-in-c-c-with-comments-part-1-encryption

openssl

!  openssl (http://www.openssl.org) è uno strumento che realizza i principali algoritmi di crittografia per la comunicazione Internet !  sono disponibili gli algoritmi di crittografia

simmetrica e asimmetrica !  possono essere utilizzati anche per la cifratura di file

!  sono disponibili le funzioni per la comunicazione client – server sicura

Giorgio Giacinto 2013 Crittografia 29

Page 16: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Crittografia simmetrica con openssl

!  Crittare un messaggio con triplo des openssl des3 -salt -in file.txt -out file.des3

!  Decrittare un messaggio crittato con triplo

des openssl des3 -d -salt -in file.des3 -out file.txt

Giorgio Giacinto 2013 Crittografia 30

L’algoritmo RSA per la crittografia asimmetrica

Page 17: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 32

Problema della distribuzione delle chiavi

!  Nel caso di crittografia simmetrica, il destinatario deve conoscere l’algoritmo e la chiave segreta per decrittare il messaggio

!  Nel 1976 Diffie e Hellman proposero un nuovo sistema di crittografia !  Ogni utente ha due chiavi, di cui una privata e una

pubblica, da distribuire !  La coppia di chiavi pubblica e privata è generata

da un algoritmo di generazione delle chiavi

Giorgio Giacinto 2013 Crittografia 33

Funzionamento sistemi a chiave pubblica

kpub Chiave pubblica kpriv Chiave privata E(k,M) Funzione di crittazione D(k,M) Funzione di decrittazione P messaggio in chiaro

P = D(kpriv,E(kpub,P)) per alcuni algoritmi inoltre vale anche

P = E(kpub,D(kpriv,P))

Page 18: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 34

L’algoritmo RSA

!  RSA (Rivest-Shamir-Adelman) algoritmo a chiave pubblica introdotto nel 1978 e ancora ritenuto sicuro basato sulla teoria dei numeri (scomposizioni in fattori primi) Vale la proprietà P = D(E(P)) = E(D(P))

Il progetto openssl contiene la realizzazione di RSA

Generazione della coppia di chiavi privata e pubblica

!  Generazione di una chiave privata RSA openssl genrsa –out key.pem

!  Generazione della corrispondente chiave pubblica openssl rsa -in key.pem -pubout -out pubkey.pem

Giorgio Giacinto 2013 Crittografia 35

Page 19: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Crittografia asimmetrica con openssl

!  Per crittare e decrittare con l’algoritmo RSA si usa il comando openssl rsautl seguito da parametri !  -in filename

nome del file contenente il messaggio in ingresso !  -out filename

nome del file contenente il messaggio in uscita

!  -inkey file nome del file che contiene la chiave, di default la chiave privata

!  -pubin specifica che la chiave in ingresso è quella pubblica

Giorgio Giacinto 2013 Crittografia 36

Crittografia asimmetrica con openssl

!  -encrypt esegue la crittazione del file in ingresso usando la chiave pubblica

!  -decrypt esegue la decrittazione del file in ingresso usando la chiave privata

Giorgio Giacinto 2013 Crittografia 37

Page 20: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Esempio di uso della crittografia asimmetrica

!  Per crittare con la chiave pubblica openssl rsautl –encrypt -inkey pubkey.pem -pubin –in <infile> -out <file_enc>

!  Per decrittare con la chiave privata openssl rsautl –decrypt –inkey key.pem –in <file_enc> -out <file_dec>

Giorgio Giacinto 2013 Crittografia 38

Uso delle funzioni crittografiche nelle comunicazioni via Internet

Page 21: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 40

Funzioni di hash crittografiche !  Utilizzate per provare l’integrità di un file

!  Denominata checksum !  Basata su funzioni hash che calcolano un

“riassunto” (digest) del file in un numero prefissato di bit (es., 128)

!  La modifica di un solo bit nel documento originario si ripercuote in modo non banale nel valore del digest

!  Collisioni possibili !  Algoritmi popolari (presenti in molti sistemi operativi)

!  MD5 (Message-Digest algorithm 5) !  SHA/SHS (Secure Hash Algorithm / Secure Hash Standard)

Giorgio Giacinto 2013 Crittografia 41

Scambio delle chiavi

Consente di verificare l’autenticità del mittente e di garantire la riservatezza del contenuto Il mittente M critta il messaggio P C = D(kpub-D,E(kpriv-M,P)) Il destinatario D verifica l’autenticità di M usando la chiave pubblica di M e legge il messaggio riservato usando la propria chiave privata P = D(kpub-M,E(kpriv-D,C))

Page 22: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 42

Firma digitale !  Non deve consentire la contraffazione

!  Se la persona P invia un messaggio M con la firma S(P,M), nessun altro deve essere in grado di produrre la coppia [M, S(P,M)]

!  Deve garantire l’autenticità !  Il destinatario deve poter verificare che la firma

provenga da P e che questa è legata al documento M

!  Documento e firma non devono poter essere alterati da nessuno (compresi mitt e dest)

!  La firma non deve essere riutilizzabile

Giorgio Giacinto 2013 Crittografia 43

Firma digitale - protocollo a chiave pubblica

!  Se voglio firmare il doc M ma non riservarne il contenuto, posso !  Usare la mia chiave privata kpriv !  Creare la firma come D(kpriv,M) !  Inviare il doc M insieme con la firma

!  Il destinatario può verificare l’autenticità della firma e la sua relazione al doc M utilizzando la mia chiave pubblica !  M = E(kpub, D(kpriv,M))

Page 23: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 44

Firma digitale - schema Firma Verifica

Esempio di firma digitale con openssl

!  Firmare un file con la propria chiave privata openssl rsautl -sign -in file -inkey key.pem -out sig

!  Verificare l’autenticità di un file firmato

digitalmente usando la chiave pubblica openssl rsautl -verify -in sig -inkey pubkey.pem -pubin

Giorgio Giacinto 2013 Crittografia 45

Page 24: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 46

Firma digitale - segretezza

Scambio di messaggi riservati

!  La crittazione di un messaggio si realizza in modo efficiente attraverso gli algoritmi simmetrici !  efficienti in termini di costo computazionale e di

sicurezza !  Lo scambio della chiave simmetrica avviene

con meccanismi basati su algoritmi di crittazione asimmetrici

Giorgio Giacinto 2013 Crittografia 47

Page 25: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 48

Buste digitali

Giorgio Giacinto 2013 Crittografia 49

Certificati !  Nella vita reale identità e autenticità di persone e

comunicazioni dipendono spesso da autorità fidate riconosciute reciprocamente, la cui autorità è stabilita in modo gerarchico !  Carte d’identità !  Passaporti !  Notai !  Uffici anagrafici !  Timbri !  Carta intestata !  ecc…

Page 26: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 50

Certificati digitali

!  Nelle transazioni informatiche esistono autorità di certificazione analoghe !  Distribuiscono certificati !  Garantiscono l’autenticità !  Catene di autorità di certificazione

!  Certificati basati su !  Firme digitali !  Funzioni di hash

Giorgio Giacinto 2013 Crittografia 51

Struttura di un certificato digitale

PKI - Public Key Infrastructure !  Contiene l’identità dell’utente e la sua chiave

pubblica !  Il certificato è firmato da una autorità di

certificazione (CA - Certification Authority) !  VeriSign, SecureNet…

!  E’ possibile creare certificati self-signed !  http://www.akadia.com/services/ssh_test_certificate.html

non vi è una autorità che certifica l’autenticità, ma la comunicazione è comunque crittata

Page 27: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Esempio di creazione di un certificato con openssl

!  Creazione di un certificato openssl req -new -key server.key -out server.csr !  server.key è la chiave privata del server

!  Generazione di un certificato auto-firmato openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

Giorgio Giacinto 2013 Crittografia 52

Applicazioni alle comunicazioni Internet

Page 28: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 54

Link encryption !  Il messaggio viene crittato appena prima che il

sistema lo invii attraverso il collegamento fisico !  è esposto nei livelli superiori a quello fisico

Giorgio Giacinto 2013 Crittografia 55

Messaggio inviato attraverso link encryption

Page 29: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 56

Crittazione end-to-end !  La crittazione viene applicata ai livelli più alti

della pila OSI !  livello 7, applicazione, o livello 6, presentazione

Giorgio Giacinto 2013 Crittografia 57

Messaggio crittato end-to-end

Page 30: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 58

Confronto fra le due modalità di crittazione

!  Nel caso end-to-end le applicazioni utente che devono comunicare condividono algoritmo di crittazione e chiavi !  Gli host intermedi non devono crittare/decrittare

!  Link encryption richiede la condivisione dell’algoritmo di crittazione e chiavi a livello di coppie di host !  Crittazione eseguita di solito in hardware

Giorgio Giacinto 2013 Crittografia 59

VPN - Virtual Private Network

!  Utilizza link encryption !  Il collegamento fra sedi remote di una stessa

organizzazione avviene su un canale crittato !  Il canale crittato si comporta come un tunnel

attraverso il quale fluisce il traffico !  Le sedi remote possono operare come se fossero

all’interno di una stessa rete fisica !  VPN spesso implementata da firewall

Page 31: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 60

Schema di funzionamento di una VPN

Giorgio Giacinto 2013 Crittografia 61

Public Key Infrastructure (PKI)

!  Una PKI fornisce agli utenti i servizi di !  Creazione di certificati che associno identità degli

utenti a chiave crittografica !  Assegna certificati dalla propria base dati !  Firma i certificati !  Conferma/Nega validità a certificati !  Invalida i certificati per gli utenti non più

autorizzati !  Necessità di una Autorità di certificazione

Page 32: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 62

Crittografia SSH

!  SSH (secure shell) è una coppia di protocolli definita originariamente per UNIX

!  Sostituisce le utility non crittate telnet, rsh, rlogin per l’accesso remoto

!  Negoziazione fra siti remoti e locali per !  l’algoritmo di crittazione (DES, DEA, ecc.) !  autenticazione (chiave pubblica e Kerberos)

Giorgio Giacinto 2013 Crittografia 63

Crittografia SSL

!  SSL (Secure Socket Layer) progettato originariamente da Netscape per proteggere comunicazione fra browser e server !  Noto anche come TLS (Transport Layer Security)

!  Si interfaccia fra applicazioni e protocollo TCP per fornire !  autenticazione del server !  canale crittato fra browser e server

Page 33: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 64

Protocollo SSL !  Alla richiesta del browser, il server risponde

con il proprio certificato a chiave pubblica !  Il client invia al server parte di una chiave

simmetrica crittata con la chiave pubblica del server

!  Client e server calcolano la parte rimanente della chiave di sessione

!  La comunicazione avviene crittando i messaggi in modo simmetrico

Giorgio Giacinto 2013 Crittografia 65

Posta elettronica crittografata

!  Si può usare SSL per invio credenziali posta !  Protocolli per garantire la riservatezza del

messaggio !  mittente, destinatario, corpo del messaggio

!  Problema: scambio delle chiavi Due soluzioni principali !  PGP (Pretty Good Privacy) !  S/MIME

Page 34: Obiettivi della crittografia - pralab.diee.unica.itpralab.diee.unica.it/sites/default/files/03SEC.Crittografia.pdf · Giorgio Giacinto 2013 Crittografia 32 Problema della distribuzione

Giorgio Giacinto 2013 Crittografia 66

Schema di massima Posta elettronica crittata

Giorgio Giacinto 2013 Crittografia 67

IPSec

!  Parte della suite IPv6 sviluppata da IETF !  IPSec è una suite di protocolli di IP Security

!  Implementato nello strato IP !  Simile a SSL

(a) Pacchetto convenzionale - (b) pacchetto IPSec