SECURE PROGRAMMING
Prof. Stefano Bistarelli
SEMINARIO
“Authentication and key Trasport
Using Public
Key Cryptography”
Di
Roberta Tittaferrante
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols









Principles for public key protocols
ISO/IEC 11770-3
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
Beller-Yacobi MRS+DH Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
2
Introduction
Utilizzo chiave pubblica

Vantaggi: 1) per rendere sicure applicazioni commerciali.
2) protocolli per la gestione delle chiavi.

Svantaggi: 1) alto costo computazionale.
2) gestione di chiavi pubbliche.
Soluzione
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
certificati e liste certificati recovati.
5 Dicembre 2007
3
Principles for public key protocols
Anderson and Needham hanno proposto una serie di
principi sui protocolli basati su chiave pubblica.
1) Se è apposta una firma ai dati, allora si presuppone
che il firmatario ha conoscenza dei dati.
2) Evitare di utilizzare la stessa chiave per scopi diversi
(firma e decriptazione).
3) Prestare attenzione al momento della firma e della
decodifica.
4) Fare un account per tutti i bit.
5) Non inviare dati segreti se non alle Authority.
6) Non accettare messaggi in particolari forme.
7) Esplicitare i parametri crittrografati.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
4
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols









Principles for public key protocols
ISO/IEC 11770-3
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
Beller-Yacobi MRS+DH Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
5
Entity Authentication protocols:
Protocols in ISO/IEC 9798-3

ISO/IEC 9798-3 autenticazione unilaterale (un passo).
A B: TA, B, SigA( TA, B)

timestamp
ISO/IEC 9798-3 autenticazione unilaterale (due passi).
B A: NB
A B: NA, NB B, SigA(NA, NB,, B)

ISO/IEC 9798-3 mutua autenticazione (due passi).
A B: TA, B, SigA(TA, B)
B A: TB, A, SigB(TB, A)

Unione del primo protocollo
ISO/IEC 9798-3 mutua autenticazione (tre passi).
B A: NB
A B: NA, NB B, SigA(NA, NB, B)
B A: NB’, NA, A, SigB(NB’NA,,A)
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
diversi dalle
Nb usate nei
primi 2 passi
5 Dicembre 2007
CANADIAN ATTACK
6
“CANADIAN ATTACK”
1) CB
2) A
1’) CA
2’) B
3) CB
A: NC
CB: NA,NC, B, SigA(NA, NC, B)
B: NA
CA: NB, NA, SigB(NB, NA, A)
A: NB, NA, SigB(NB, NA, A)
L’attacco l'avversario C si
finge per A e B con B e A.
La prima risposta da A è
usato da C per completare la
prima esecuzione con B.
La modifica al protocollo consiste nell’autenticazione parallela dei
messaggi 1 e 1‘.
A
B
A
B
B: NA
A: NB
B: NA, NB B, SigA (NA, NB, B)
A: NB, NA, A, SigB (NB,NA,,A)
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
7
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols









Principles for public key protocols
ISO/IEC 11770-3
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
Beller-Yacobi MRS+DH Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
8
Entity Authentication protocols:
Protocols SPLICE/AS

Ideato nel ‘90 da Yamaguchi, per fornire mutua
autenticazione tra un client e un server
attraverso chiavi pubbliche certificate.
A B: A, B, TA, L, EB (NA), SigA(A, TA, L, EB, (NA))
B A : B, A, EA, (B, NA+1)
Tempo di vita del
messaggio
Quando A riceve il messaggio
controlla la N al fine di autenticare
B
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
9
Attack of Clarck-Jacobe on SPLICE/AS
protocol

Un attaccante C può modificare la chiave pubblica del
client o del server.
1) A CB:B, TA, L, EB (NA), SigA(A, TA, L, EB, (NA))
1’) C B: C, B, TA, L, EB(NA), SigC(C, TA, L, EB, (NA))
2’) B C: B, C, EC, (B, NA+1)
2) CB A: B, A, EA, (B, NA+1)

L’attaccante C è in grado di intercettare il messaggio di
A e sostituire la firma di A la propria firma.
Nessuna delle due parti è certa dell’altra identità e, le
conversazioni non possono essere garantite.

Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
10
Variante SPLICE/AS protocol of ClarckJacobe.
A B: A,B,TA,L,EB(A, NA),SigA(A,TA,L,EB(A,NA))
B A : B, A, EA (B, NA+1)



Fornire mutua entità d’ autenticazione.
Differenza dal protocollo SPLICE/AS (base)
consiste che, l'identità di A è incluso nel primo
messaggio in un campo cifrato ke non può essere
modificata da C.
Protocollo corretto solo se l'algoritmo di crittografia a
chiave pubblica utilizzata non è non malleabile.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
11
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols









Principles for public key protocols
ISO/IEC 11770-3
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
Beller-Yacobi MRS+DH Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
12
Key Trasport Protocols ISO/IEC 11770-3
Meccanismo 1
 Protocolli dove si sceglie una chiave
di sessione.
timestamp
A B: EB(A, KAB,TA)
Identità di A


Chiave si sessione
Identità di A, il Ta (o in alternativa il contatore) e la chiave di
sessione (scelta da A e B), sono inviati e cifrati con la chiave
pubblica di B.
La crittografia a chiave pubblica deve utilizzare parametri
non malleabili, altrimenti un attaccante può modificare il
valore dei campi "A" e "TA”.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
13
Key Trasport Protocols ISO/IEC 11770-3
Meccanismo 2
A B: B, TA, EB(A, KAB),SigA(B, TA, EB (A, KAB))



Estende il meccanismo 1 con l'aggiunta di una
firma del messaggio di A.
Viola il primo principio di Anderson Needham: la
firma non da garanzia che il firmatario conosce il
testo del messaggio cifrato.
Un attaccante C potrebbe rimuovere la firma di A e
sostituirla con la propria.
ATTACCO Anderson e Needham

Algoritmi di cifratura che consentono ad un
malintenzionato di ottenere la chiave pubblica di B.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
14
Key Trasport Protocols ISO/IEC 11770-3
Meccanismo 3
1) A B: EB (B, KAB TA, SigA (B, KAB, TA))
2) A B: EB (KAB TA, SigA(KAB , TA))
ATTACCO Abadi e Needham



Un attaccante C può sostituirsi nel protocollo gestito da A
come iniziatore.
Intercetta il messaggio 1 cifrato.
C ottiene la chiave per condividere i messaggi con A.
Abadi e Needham suggeriscono di inserire l'identità di
entrambi (A e B) nella firma del messaggio 1 per impedire
questo attacco.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
15
Key Trasport Protocols ISO/IEC 11770-3
Meccanismo 4
A
B
B : NA
A : A, NA, NB, EA(B, KAB), SigB(A, NA NB, EA(B, KAB))
 Nonce NA per conseguire una chiave freschezza per
l’autenticazione di B.
Meccanismo 5
A B : NA
B A : NB NA A, EA (B, KBA), SigB( NB NA A,EA (B, KBA))
A B : NA NB B, EB (A, KAB), SigA(NA NB B, EB (A, KAB))
 Due chiavi di sessione KAB KBA scelti da A e B.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
16
Key Trasport Protocols ISO/IEC 11770-3
Meccanismo 6



La prima differenza consiste nell’ utilizzo della crittografia e
non solo le firme.
L'algoritmo di cifratura richiede non malleabilità, altrimenti i
campi utilizzati per l'autenticazione possono essere alterati
dall’ attaccante.
Lo standard stabilisce che KAB KBA sono combinati per
formare una singola chiave di sessione.
A B: EB (A, KAB, NA)
B A: EA(B, KBA, NA, NB)
A B: NB
ATTACCO Helsinky
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
17
Attacco Helsinky
A pensa di condivide la chiave con C, mentre B pensa di
condividerla con A.
 L‘ obiettivo implicito della chiave di autenticazione non è violato,
perché C non conosce KBA e, non può calcolarlo.
 Mitchell
e Yeun propongono di aggiungengere l'identità di
messaggio 2. (soluzione adottata nello standard finale ISO / IEC
11770)
A C: EC(A, KAB, NA)
L’attaccante C, parla con B, fingendosi A
CA B: EB(A, KAB’, NA)
B CA:EA (KAB, NA, NB)
C A: EA (KAB, NA, NB)
A C: NB
CA B: NB

Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
18
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols









Principles for public key protocols
ISO/IEC 11770-3
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
Beller-Yacobi MRS+DH Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
19
Protocolli in the X.509 Standard





Usa crittografia chiave pubblica e firma digitale.
Serie di protocolli per l'autenticazione classificati:
Simple e Strong.
Simple utilizza l'autenticazione delle password
inviate sia in chiaro o come input.
Ci sono tre protocolli specificati, con una, due e
tre, flussi di messaggio.
Ogni protocollo estende il precedente con
l'aggiunta di un ulteriore messaggio.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
20
Protocolli in the X.509 Standard: onepass authentication.

A B: TA, NA,B, EB(KAB),SigA(TA, NA, B, EB(KAB))

Manca dai dati crittografati l’identità di A
ATTACCO


Un avversario può rimuovere la firma sul messaggio e sostituirla
con una nuova firma sullo stesso messaggio.
Per risolvere questo problema si può utilizzare il Key Trasport
Protocols ISO/IEC 11770-3 Meccanismo 2
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
21
Protocolli in the X.509 Standard: twopass authentication.
A B: TA,NA,B,EB(KAB),SigA(TA, NA,B,EB(KAB))
B A: TB,NB,A,EA(KBA),SigB(TB,NB, A,EA(KBA))
 Mutua Autenticazione.
Protocolli in the X.509 Standard: three-pass
authentication.
A B: TA, NA, B, EB (KAB), SigA( TA , NA, B, EB (KAB))
B A: TB, NB, A, EA (KBA), SigB( TB , NB, A, EA (KBA))
A B: NB, SigA (NB, B)
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
22
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols










Principles for public key protocols
ISO/IEC 11770-3
Protocols Blake
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
Beller-Yacobi MRS+DH Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
23
TLS Protocol
TLS è il protocollo successivo del Secure Socket Layer (SSL),
sviluppato da Netscape Communications e implementato dai più diffusi
browser web.
Trasporta i 'premaster segreto', PMK, dal client al server.
Il TLS standard specifica uso di crittografia a chiave pubblica RSA.
La chiave di sessione è calcolata come KAB= MACPMK(NA, NB).
Il messaggio di sequenza Mess_Seq1, Mess_Seq2 e Mess_SeQ3,
consistono di un hash della sequenza di tutti i precedenti messaggi
scambiati.





A
B
A
B
B: NA
A: NB
B: EB (PMK),SigA(MESS-SEQ1), (MESS_SEQ2)KAB
A: (MESS_SEQ3)KAB
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
24
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols











Principles for public key protocols
ISO/IEC 11770-3
Protocols Blake
Needham-Schoeder Public Key Protocol
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
Beller-Yacobi MRS+DH Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
25
Beller-Chang-Yacobi Protocols


Questi protocolli sono stati progettati per
soddisfare le esigenze di comunicazioni per
dispositivi mobili.
Sono stati esaminati da Carlsen che ha
individuato alcune possibili attacchi e ha
suggerito modifiche al protocollo di evitarli.
MSR protocollo
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
26
MSR protocol
A B: A, KA
B A: EA (KAB),(B, SCB)KAB


secret certificate della
stazione mobile, B,
rilasciato da un’autorità
centrale
La chiave pubblica di KA, è utilizzata dal telefono
cellulare per cifrare la chiave di sessione KAB, e
invia il messaggio cifrato ad A.
Carlsen ha individuato due debolezze:
1) La chiave pubblica di A NON è certificata,
consentendo in tal modo a chiunque di
mascherarsi come A.
2) Non è possibile distinguere tra una nuova
comunicazione ed una vecchia.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
27
Miglioramento MRS (IMRS Protocol)

La risposta di B è composta da una chiave di
sessione, più una Nounce che consente la
validità del messaggio, ed elimina la possibilità
dell’ anonimato.
STESSO VALORE
A B: A, NA
A lo decifra utilizzando
B A: EA (KAB),(NA, B, SCB)KAB laKAB.chiave di sessione


Un avversario può ottenere SC e mascherarsi
come B.
La soluzione a questo problema consiste in un
ulteriore variazione del protocollo: l‘ MSR+DH
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
28
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols










Principles for public key protocols
ISO/IEC 11770-3
Protocols Blake
Needham-Schoeder Public Key Protocol
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
29
Beller-Yacobi Protocol
Protocollo per la telefonia mobile. La chiave privata del cellulare è
utilizzata per la firma digitale usando l’ algoritmo EIGamal.
Il vantaggio consiste nella generazione della firma prima di scegliere il
messaggio, così si può eseguire la maggior parte del lavoro off-line,
durante il tempo di inattività tra le chiamate.
La differenza principale è negli ultimi due messaggi, che attuano una
challenge-response basato su firme digitali.



A
B
A
B
B: A, KAB
A: EA (KAB)
B: (NA)KAB
A invia NA criptato con la chiave di sessione
A: (B,KB,Cert(B), SigB (NA))KAB
identità

Chiave
pubblica
certificato
NA firmato con la sua
chiave privata
A decifra il messaggio e verifica la firma sulla NA
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
30
Attacco


1)
2)
3)
1’)
2’)
3’)
4’)
4)
L’attaccante C inizia una sessione parallela con B, per ottenere la NA
A accetta una chiave di sessione con B, mentre in realtà la condivide con C.
A CB : A, KA
CB A: EA (KAB)
A CB: (NA)KAB
C B: C, KC
B C: EC (KAB’)
C B: (NA)KAB ’
B C: (B,KB,Cert(B), SigB (NA))KAB’
CB A: (B,KB,Cert(B), SigB (NA))KAB
MODIFICA PROTOCOLLO

A
B
A
B firmare la nuova chiave di sessione KAB, nel messaggio 2, insieme con la
NA, che garantisce la freschezza e, le due entità, attraverso una funzione
hash.
B: A, NA
A: EA (KAB), (B,KB,CERT(B))KAB,SigB(H(A,B,NA,KAB))
B: (NA)KAB
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
31
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols










Principles for public key protocols
ISO/IEC 11770-3
Protocols Blake
Needham-Schoeder Public Key Protocol
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
32
TMN Protocol

Due stazioni mobili A e B si scambiano una
chiave di sessione chiave per fornire sicurezza.

KDP1 non contiene informazioni di
autenticazione ed è vulnerabile ad alcuni
attacchi, migliorato successivamente KDP2
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
33
Indice argomenti

Introduction


Entity Authentication protocols



ISO/IEC 9798-3
SPLICE/AS
Key trasport protocols










Principles for public key protocols
ISO/IEC 11770-3
Protocols Blake
Needham-Schoeder Public Key Protocol
Protocolli in the X.509 Standard
TLS Protocol
Beller-Chang-Yacobi Protocols
MSR protocollo
Beller-Yacobi Protocol
TMN Protocol
Conclusion
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
34
Conclusion: comparision of key Trasport
Protocols




L'ISO / IEC 11770-3 standard specifica una serie di
protocolli per il trasporto di chiavi utilizzando la
crittografia asimmetrica.
Il TLS protocol fornisce un'alternativa allo standard
ISO/IEC protocolli.
Lo studio di questi protocolli, tuttavia, può essere utile
per comprendere tipici errori nella disegnazione dei
protocolli.
Le ultime ricerche si concentrano sull’utilizzo di key
agreement piuttosto che key trasport, argomento del
capitolo successivo.
Università “G. d’Annunzio”
Corso di Laurea Specialistica in
Economia Informatica
5 Dicembre 2007
35
Scarica

SECURE PROGRAMMING - Dipartimento di Matematica e