06.11.2014 Views

ANALISI DEL PROTOCOLLO SRP (SECURE REMOTE PASSWORD)

ANALISI DEL PROTOCOLLO SRP (SECURE REMOTE PASSWORD)

ANALISI DEL PROTOCOLLO SRP (SECURE REMOTE PASSWORD)

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Client Attaccante Server<br />

K S1 = (Ω AB ) a<br />

A<br />

−→<br />

Ω<br />

←−<br />

AB<br />

Ω AB = g i<br />

K S1 = A i<br />

K S2 = B i<br />

Ω AB<br />

−→<br />

B<br />

←−<br />

K S2 = (Ω AB ) b<br />

Tabella 2: Man-in-the-middle attack nel Diffie-Hellman Key Exchange: le operazioni si intendono modulo n.<br />

Clogging Attacks Un altro problema dello schema<br />

Diffie-Hellman è la vulnerabilità ai cosiddetti Clogging<br />

Attacks, ovvero i casi in cui un attaccante sommerga<br />

una delle parti con richieste contenenti i valori<br />

A ′ o B ′ ottenuti da esponenziazione discreta. In questo<br />

modo il ricevente è costretto a rispondere, calcolando<br />

la chiave di sessione per ogni richiesta, sprecando<br />

risorse di calcolo.<br />

Replay Attacks Così come è definito, lo schema<br />

Diffie-Hellman non offre protezione da attacchi di tipo<br />

Replay, ovvero in cui un attaccante utilizzi i dati<br />

di una precedente comunicazione tra client e Server<br />

per tentare successivamente di impersonare una delle<br />

parti.<br />

2.3 Sicurezza dei parametri<br />

L’utilizzo della funzione di esponenziazione discreta<br />

in sistemi basati sullo schema Diffie-Hellman pone<br />

degli interrogativi sulla corretta scelta dei parametri,<br />

in particolare di g ed n. Si parla in questo caso di sicurezza,<br />

poichè, senza un controllo sulle caratteristiche<br />

dei valori, si rende praticabile ad un attaccante la possibilità<br />

di ottenere la chiave simmetrica [9, Chapter<br />

12].<br />

2.3.1 Requisiti matematici<br />

Il primo aspetto legato alla sicurezza di un protocollo<br />

basato sullo schema DH è che le parti in comunicazione<br />

possano verificare l’aderenza ai requisiti<br />

matematici di n e g, ovvero:<br />

• la primalità di n;<br />

• che n verifichi le proprietá di safe prime 1 ;<br />

• che g sia effettivamente una radice primitiva per<br />

n.<br />

1 Cioé che n sia un numero primo sufficientemente<br />

grande e nella forma 2q + 1, con q anch’esso primo.<br />

Questi tipi di test sono peró computazionalmente<br />

molto onerosi, di conseguenza, nell’utilizzo pratico,<br />

si pone come requisito l’appartenenza ad un insieme<br />

predefinito di valori che già verificano le proprietà<br />

richieste. Si veda ad esempio [13].<br />

2.3.2 Dimensione di n<br />

Il secondo aspetto è quanto grande debba essere n e,<br />

di conseguenza, il numero di bit con cui lo si andrà<br />

a rappresentare. Si è visto, infatti, che l’esponenziazione<br />

discreta fonda la sua one-wayness sull’impraticabilità<br />

di effettuare i tentativi necessari per calcolare<br />

il logaritmo discreto (si veda l’esempio al paragrafo<br />

2.1): questo è fortemente dipendente dalla grandezza<br />

di n che, ai fini pratici, si lega al numero di bit che lo<br />

rappresentano.<br />

Le usuali stime di sicurezza sulla lunghezza delle<br />

chiavi crittografiche simmetriche (tipicamente di 128<br />

o 256 bit) non si possono applicare a questo contesto,<br />

in quanto le operazioni di esponenziazione sono<br />

molto più lente per un calcolatore rispetto a quelle di<br />

encryption. Infatti, obbligare un attaccante a 2 128 tentativi<br />

per attaccare lo schema Diffie-Hellman richiede<br />

circa 6800 bit per n [9].<br />

Una autorevole pubblicazione in cui si affronta<br />

questo problema è [15], dalla cui lettura ci si può convincere<br />

che una dimensione di 2048 bit dovrebbe essere<br />

il minimo assoluto e che l’utilizzo di 4096 bit<br />

offra un adeguato livello di sicurezza.<br />

3 Schema generale di <strong>SRP</strong><br />

<strong>SRP</strong> si ispira ad un schema pubblicato in [3] e<br />

formalmente noto come EKE (Encrypted Key Exchange).<br />

Da questo schema sono stati derivati poi<br />

principalmente il protocollo DH-EKE (Diffie Hellman<br />

EKE), e lo schema AKE (Asymmetric Key<br />

Exchange), che è una generalizzazione di <strong>SRP</strong>.<br />

In <strong>SRP</strong> viene adottata una forma del Diffie-<br />

Hellman Key Exchange a cui si aggiunge un mecca-<br />

4

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!