[[PageOutline(1-6)]] = IEEE 802.11 - Autenticazione e privacy = ,,20061114-1114 Roma,,[[BR]] 802.11 fornisce un servizio di autenticazione diviso in due sottotipi: * Open System * Shared Key I due sottotipi svolgono un algoritmo di autenticazione e sono indicati nel corpo del frame che gestisce l'autenticazione;questi tipi di frames devono essere scambiati solo tra due nodi( una stazione e un AP in un BSS,tra due stazioni in un IBSS ) e non possono essere in broadcast. == Autenticazione ''Open System'' == L'autenticazione Open System e' basata sull'algoritmo di autenticazione piu' semplice tra quelli disponibili (detto anche algoritmo ''null''). Ogni stazione che utilizza questo algoritmo puo' essere autenticata se l'authenticationType della stazione che gestisce le autenticazioni e' settato su ''Open System''. L'autenticazione ''Open System'' (o meglio l'algoritmo utilizzato da questo sottotipo) e' divisa in due sottosequenze; la prima determina l'identificazione della stazione e la richiesta di autenticazione, la seconda determina il risultato dell'autenticazione (se e' corretto le due stazioni sono mutuamente autenticate). == Autenticazione ''Shared Key'' == L'autenticazione Shared Key supporta l'autenticazione di stazioni se almeno una delle due stazioni conosce la chiave condivisa segreta, la quale e' parte fondamentale dell'algoritmo. L'algoritmo e' completato senza il bisogno di trasmettere la chiave segreta in chiaro ma servendosi del meccanismo WEP. Infatti questo meccanismo di autenticazione funziona solamente se il meccanismo WEP e' implementato e se l'algoritmo ''Shared Key'' e' implementato nelle stazioni che gia' implementano WEP. La chiave segreta viene consegnata da una stazione all'altra mediante un canale sicuro che e' indipendente da 802.11;la chiave e' contenuta in un attributo write-only denominato MIB che viene spedito dal livello MAC. [[BR]],,SoujaK: ''a quanto ne so, MIB denota l'insieme di attributi di un sottolivello e non il nome di questo specifico attributo'',,[[BR]] Dato che l'attributo e' ''write-only'' il valore della chiave rimane all'interno di MAC. Durante il processo di autenticazione tra due stazioni vengono inviati un ''challenge'' e un ''encrypted challenge'' e questo processo e' diviso in quattro fasi (un ''frame'' inviato per ogni fase): * viene settato il primo frame con tutti i parametri neccesari. * prima di spedire il secondo ''frame'' la stazione rispondente utilizza WEP per generare una stringa di ottetti che sono utilizzati come ''challenge''. [[BR]],,SoujaK: ''il concetto di ''challenge'' non e' spiegato'',, [[BR]] * il richiedente riceve il challenge dal secondo frame e lo copia nel terzo frame; a questo punto WEP (mediante la chiave segrete) cripta il terzo frame. * il rispondente riceve il terzo frame e lo decripta sempre mediante WEP; una volta decriptato il ''challenge'' lo confronta col proprio ''challenge'' (spedito nel secondo frame). Se sono uguali allora il rispondente mandata un ''frame'' di conferma e l'autenticazione e' avvenuta, altrimenti viene inviato un ''frame'' di insuccesso. == Algoritmo ''Wired Equivalent Privacy'' (WEP) == ,,20061015-1550 Roma,,[[BR]] WEP e' un particolare algoritmo utilizzato nelle reti wireless per proteggere gli utenti autorizzati da ''sniffing'' e da altri tipi di intrusioni. Il servizio fornito da WEP si prefigge l'obiettivo di provvedere alla sicurezza dei dati nella stessa maniera di come vengono protetti nei dispositivi interconnessi via cavo. La sicurezza dei dati e' data da un gestore esterno che distribuisce i dati criptati e le chiavi per decriptarli. Le proprieta' di WEP sono: * grande stabilita', perche' e' molto difficile trovare la chiave giusta mediante un attacco ''brute-force'' e il motivo sta nella lunghezza della chiave e dalla frequenza di cambio di chiave. * auto-sincronizzazione, in quanto WEP e' in grado di autosincronizzarsi per ogni transazione che deve svolgere. * efficenza, in quanto e' implementabile sia via hardware che via software * esportabilita' * opzionabilita', in quanto WEP e' un' opzione di 802.11. ,,SoujaK: ''opzionabilita'? '',, == Come funziona WEP == ,,20061117-0955 roma,,[[BR]] L'algoritmo WEP e' una sorta di libro codificato nel quale ogni blocco del testo in chiaro viene messo in XOR con una sequenza di chiave pseudo-casuale di lunghezza uguale alla lunghezza di tale blocco; tale sequenza e' generata da WEP. La cifratura dei dati avviene nel modo seguente: vi e' una chiave segreta che viene distribuita tra tutte le stazioni cooperanti da un gestore esterno e tale chiave e' utilizzata da WEP sia per cifrare che per decifrare i dati (WEP e' un algoritmo simmetrico). La chiave viene concatenata con un vettore di inizializzazione (IV) e diventa input per formare un PRNG (Pseudo Random Number Generator). PRNG, mette in output una nuova chiave composta da una sequenza di ottetti (pseudo-casuali) il cui numero e' uguale alla lunghezza dei dati da trasmettere piu' quattro (serve per ''Integrity Check Value'' o ICV). Ora i dati in chiaro vengono cifrati grazie alla concatenatura di essi con ICV e la chiave generata da PRNG. La stazione che inviera' il messaggio cifrato inviera' anche l'IV. Vi sono dettagli importanti da tenere presente: * IV consente l'auto-sicronizzazione di WEP e allunga la vita della chiave segreta che deve essere aggiornata periodicamente. * Nonostante quello detto sopra la chiave segreta e' del tutto indipendete da IV e puo' rimanere fissa mentre IV cambia. * Ad ogni cambio di IV si possono generare nuove chiavi grazie a PRNG ed e' per questo che IV viene trasmesso insieme ai dati cifrati (in quanto consente sia la cifratura che la decifratira dei dati). * IV viene trasmesso in chiaro in quanto non si puo' risalire alla chiave segreta da esso.