RETI DI CALCOLATORI II
Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI
Facoltà di Ingegneria
Università degli Studi di Udine
Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi sul copyright e dalle disposizioni dei trattati internazionali. Il titolo ed i copyright relativi alle slides (ivi inclusi, ma non limitatamente, ogni immagine, fotografia, animazione, video, audio, musica e testo) sono di proprietà degli autori prof. Pier Luca Montessoro e ing. Davide Pierattoni, Università degli Studi di Udine.
Le slide possono essere riprodotte ed utilizzate liberamente dagli istituti di ricerca, scolastici ed universitari afferenti al Ministero della Pubblica Istruzione e al Ministero dell’Università e Ricerca Scientifica e Tecnologica, per scopi istituzionali, non a fine di lucro. In tal caso non è richiesta alcuna autorizzazione.
Ogni altro utilizzo o riproduzione (ivi incluse, ma non limitatamente, le riproduzioni su supporti magnetici, su reti di calcolatori e stampe) in toto o in parte è vietata, se non esplicitamente autorizzata per iscritto, a priori, da parte degli autori.
L’informazione contenuta in queste slide è ritenuta essere accurata alla data della pubblicazione. Essa è fornita per scopi meramente didattici e non per essere utilizzata in progetti di impianti, prodotti, reti, ecc. In ogni caso essa è soggetta a cambiamenti senza preavviso. L’autore non assume alcuna responsabilità per il contenuto di queste slide (ivi incluse, ma non limitatamente, la correttezza, completezza, applicabilità, aggiornamento dell’informazione).
In ogni caso non può essere dichiarata conformità all’informazione contenuta in queste slide.
In ogni caso questa nota di copyright e il suo richiamo in calce ad ogni slide non devono mai essere rimossi e devono essere riportati anche in utilizzi parziali.
Nota di Copyright
Autenticazione, firme digitali e certificati
digitali
Autenticazione, firme Autenticazione, firme
digitali e certificati digitali e certificati
digitali
digitali
Argomenti della lezione Argomenti della lezione
Î Autenticazione e non-ripudio Î Autenticazione e non-ripudio
Î Firme digitali Î Firme digitali
Î Certificati digitali
Î Certificati digitali
Autenticazione Autenticazione
Come faccio ad essere certo dell’identità della persona
con cui comunico?
Come faccio ad essere certo dell’identità della persona
con cui comunico?
Î Autenticazione del mittente
Î Autenticazione del destinatario Î Autenticazione del mittente
Î Autenticazione del destinatario
Servono:
Servono:
Integrità del messaggio Integrità del messaggio
Come posso garantire che il messaggio ricevuto sia esattamente quello
inviato (e non sia stato modificato da qualcuno?)
Come posso garantire che il messaggio ricevuto sia esattamente quello
inviato (e non sia stato modificato da qualcuno?)
Alice Alice BobBob
titi amoamo BobBob
titi odioodio
BobBob
Autenticazione Autenticazione
Esempi di possibili attacchi:
Esempi di possibili attacchi:
Î IP spoofing Î IP spoofing
Alice Alice
IP di Trudy:
158.110.253.254 IP di Trudy:
158.110.253.254 IP di Bob:
158.110.254.1 IP di Bob:
158.110.254.1
IP mittente:
158.110.254.1
Autenticazione Autenticazione
Esempi di possibili attacchi:
Esempi di possibili attacchi:
Î Lettura delle password in chiaro Î Lettura delle password in chiaro
PWD:
5XY7ZW
HELLO,
BOB
Alice Alice BobBob
Trudy Trudy
Autenticazione Autenticazione
PWD:
5XY7ZW
HELLO, BOB
Alice Alice BobBob
Trudy Trudy
Esempi di possibili attacchi:
Esempi di possibili attacchi:
Î Lettura delle password in chiaro Î Lettura delle password in chiaro
Autenticazione Autenticazione
Î Lettura e riutilizzo di password cifrate (attacco di replica)
Î Lettura e riutilizzo di password cifrate (attacco di replica)
PWD: lovealice
? ?
PWD:
%&$#*@
Esempi di possibili attacchi:
Esempi di possibili attacchi:
Alice Alice BobBob
Trudy Trudy
HELLO,
BOB
Autenticazione Autenticazione
Alice Alice BobBob
PWD:
%&$#*@
HELLO, BOB
Trudy Trudy
Î Lettura e riutilizzo di password cifrate (attacco di replica)
Î Lettura e riutilizzo di password cifrate (attacco di replica)
Esempi di possibili attacchi:
Esempi di possibili attacchi:
Bob Alice
sono Alice!
sono Alice!
K
AB(R) K
AB(R)
R R
Protocollo di autenticazione a chiave simmetrica basato
su nonce
Protocollo di autenticazione a chiave simmetrica basato
su nonce
d
A(R) d
A(R)
R R
chiav e pub blica?
chiav e pub blica?
e
Ae
AProtocollo di autenticazione a chiave pubblica
Protocollo di autenticazione a chiave pubblica
Bob Alice
sono Alice!
sono Alice!
Protocollo di autenticazione a chiave pubblica Protocollo di autenticazione (fallimento)
a chiave pubblica (fallimento)
Trudy Bob
d
T(R) d
T(R)
R R
chiav e pub blica?
chiav e pub blica?
e
Te
Tsono Alice!
sono Alice!
Man in the middle Man in the middle
BobBob dT (R)
dT (R) RR
chiave pubblica?
chiave pubblica?
eT eT Trudy
Trudy Alice
Alice
sono Alice!
sono Alice! sono Alice!sono Alice!
dA (R) dA (R)
RR
chiave pubblica?
chiave pubblica?
eA eA
dati cifrati con eT dati cifrati con eT dati cifrati con eA
dati cifrati con eA
Alice e Bob non si accorgono di nulla!
Alice e Bob non si accorgono di nulla!
Man in the middle Man in the middle
BobBob Trudy
Trudy Alice
Alice
Trudy riceve e decifra tutti i dati trasmessi
Trudy riceve e decifra tutti
i dati trasmessi
Richiede distribuzione sicura delle chiavi
Richiede distribuzione sicura Richiede distribuzione sicura
delle chiavi delle chiavi
Autenticazione basata su crittografia
Autenticazione basata su crittografia
Î Crittografia a chiavi simmetriche:
serve intermediario di fiducia (KDC, Key Distribution Center)
ÎÎ Crittografia a chiavi simmetriche: Crittografia a chiavi simmetriche:
serve intermediario di fiducia serve intermediario di fiducia
(KDC,
(KDC, Key DistributionKey Distribution Center)Center) Î Crittografia a chiave pubblica:
CA (Certification Authority)
ÎÎ Crittografia a chiave pubblica:Crittografia a chiave pubblica:
CA (CA (Certification AuthorityCertification Authority))
Key Distribution Center Key Distribution Center
Î Chiave simmetrica condivisa tra ogni utente registrato e il KDC
Î Chiave simmetrica condivisa tra ogni utente registrato e il KDC
Î Il KDC genera ed invia una chiave simmetrica per singola sessione
Î Il KDC genera ed invia una chiave
simmetrica per singola sessione
Key Distribution Center Key Distribution Center
Î Il KDC invia anche ad Alice la chiave di sessione e
l’identificativo di Alice cifrati con la chiave di Bob, che serviranno ad Alice per farsi autenticare da
Bob e per trasmettergli la chiave di sessione
Î Il KDC invia anche ad Alice la chiave di sessione e
l’identificativo di Alice cifrati con la chiave di Bob, che serviranno ad Alice per farsi autenticare da
Bob e per trasmettergli la chiave
di sessione
Key Distribution Center Key Distribution Center
KB-KDC(“Alice”, R1) KB-KDC(“Alice”, R1)
Dati cifrati con R1 Dati cifrati con R1 KA-KDC (“Alice”, “Bob”)
KA-KDC (“Alice”, “Bob”)
KDC KDC
BobBob Alice
Alice
KA-KDC (R1), KB-KDC(“Alice”, R1) KA-KDC (R1), KB-KDC(“Alice”, R1)
Î Garantisce la corrispondenza entità - chiave pubblica
Î Garantisce la corrispondenza entità - chiave pubblica
Î Crea un certificato per ogni entità registrata
(standard X.509 e RFC 1422)
Î Crea un certificato per ogni entità registrata
(standard X.509 e RFC 1422)
Certification Authority Certification Authority
Î Pubblica i certificati in siti noti senza possibilità di contraffazione
Î Pubblica i certificati in siti
noti senza possibilità di
contraffazione
Cifratura del messaggio con chiave pubblica del destinatario
Cifratura del messaggio con chiave pubblica del destinatario
Integrità Integrità
ABCD
testo in chiaro testo in
chiaro
%&*#
testo cifratotesto cifrato chiave
pubblica di Bob chiave pubblica
di Bob
BobBob Alice
Alice
tempi di cifratura/decifratura troppo lunghi
tempi di cifratura/decifratura troppo lunghi
Cifratura del solo digest (riassunto)
Cifratura del solo digest (riassunto)
Problema:
Problema:
Integrità Integrità
Cifratura del messaggio con chiave pubblica del destinatario
Cifratura del messaggio con chiave
pubblica del destinatario
Digest del messaggio Digest del messaggio
Proprietà:
Proprietà:
Î Non si può trovare y tale che H(y)=x Î Non si può trovare y tale che H(y)=x
Î Non si possono trovare due
messaggi x e y tali che H(x)=H(y) Î Non si possono trovare due
messaggi x e y tali che H(x)=H(y)
Generata con funzione di hash H(m)
Generata con funzione di hash H(m)
Stringa di lunghezza fissa
Stringa di lunghezza fissa
Algoritmo MD5 Algoritmo MD5
Î Attualmente molto usato Î Attualmente molto usato
Î RFC 1321 Î RFC 1321
Î Produce un digest di 128 bit Î Produce un digest di 128 bit
Î Processo a 4 fasi
Î Processo a 4 fasi
Digest del messaggio Digest del messaggio
messaggio messaggio
digest in chiarodigest in chiaro
chiave
privata del mittente
chiave
privata del mittente
digest cifratodigest cifrato spedizione
spedizione
Può essere usato come firma digitalePuò essere usato come firma digitale
chiave
pubblica del mittente
chiave
pubblica del mittente digest
cifratodigest
cifrato digest
in chiarodigest in chiaro
messaggio
messaggio digest
in chiarodigest in chiaro