webstatGSMWORLD.it

Global System for Mobile communications

Sicurezza e autenticazione

 

INDICE GENERALE
Crittografia
Algoritmi simmetrici
Algoritmi a chiave pubblica
One-way hash functions
Dimensione della chiave
Le funzioni di sicurezza e autenticazione
La SIM e il sistema di sicurezza
Autenticazione
Riservatezza dei dati e dei segnali di controllo
Riservatezza dell'identità dell'abbonato
Autenticazione del Mobile Equipment
Accesso alla SIM

Sin dal 1982, la sicurezza entrò a far parte dei precisi criteri che il sistema di comunicazione radiomobile paneuropeo, (che ci si apprestava a sviluppare), doveva soddisfare. Sicurezza e riservatezza delle conversazioni, di ogni segnale di controllo utilizzato, e prevenzione di ogni forma di frode. L'aspetto più vulnerabile di un sistema di comunicazione radiomobile è rappresentato dal canale radio al quale chiunque può accedere. Perciò passo principale nell'ottenere sicurezza end-to-end è garantire la sicurezza e riservatezza nel canale radio.

Con i sistemi cellulari analogici già sperimentati, risultava relativamente semplice, anche per un dilettante, intercettare una conversazione telefonica con un radio scanner.

Inoltre, l'autenticazione, cioè la verifica che una entità sia ciò che afferma di essere, è un elemento fondamentale in una rete radiomobile. L'uso illegittimo di un servizio comporta la frode nei confronti di un utente in riferimento alla fatturazione del servizio stesso. E può consentire di impersonare un abbonato e affermare in seguito che esso fosse in un determinato posto ad una determinata ora. Pur non essendo questo un pericolo molto diffuso può comportare serie conseguenze in determinate circostanze. La clonazione dei dati rilevanti dell'abbonamento deve perciò essere considerata inammissibile.

Le credenziali di identificazione, segnalazioni di controllo come l'Equipment Serial Number (ESN) vengono trasmessi in chiaro nei sistemi analogici, ed è perciò possibile, intercettare l'ESN e usarlo per la clonazione del telefono cellulare. Anche la fase in cui la stazione mobile (MS) comunica al sistema la propria locazione è vulnerabile alle intercettazioni che consentirebbero di monitorare la locazione dell'utente anche quando non vi fosse una chiamata in corso.

Il meccanismo di sicurezza ed autenticazione inglobato nel sistema GSM, lo rende lo standard di comunicazione radiomobile più sicuro attualmente disponibile, specie se confrontato ai sistemi analogici.

Parte dell'aumento della sicurezza è dovuto proprio alla scelta di una tecnologia digitale in antitesi con i precedenti sistemi analogici. Il sistema GSM è un sistema digitale che utilizza fra l'altro: un algoritmo di codifica vocale, modulazione digitale GMSK (Gaussian Minimum Shift Keying), frequency hopping e architettura a time slot con accesso al canale TDMA (Time Division Multiple Access). Perciò per intercettare e ricostruire il segnale sono necessari dispositivi più specializzati e costosi di un semplice radio scanner; necessari per effettuare la ricezione, la sincronizzazione e decodifica del segnale. A tutto ciò si aggiungono però specifiche procedure, algoritmi di crittografia ed autenticazione applicabili alla rappresentazione digitale delle informazioni.

 

Crittografia

Lo scopo di questo paragrafo è introdurre alcuni termini e definizioni specifiche della crittografia con riferimento soprattutto a quanto utilizzato nel sistema GSM.

Algoritmi simmetrici

Si dicono simmetrici gli algoritmi che utilizzano le stessa chiave per crittografare e decrittografare, codificare e decodificare. Ciò significa che, se indichiamo con Ti il testo iniziale "in chiaro", con Tc il testo crittografato, possiamo indicare la crittografia con chiave x con la funzione Cx( ) e la decrittografia con chiave x con Dx( ), e descrivere funzionalmente l'algoritmo simmetrico nel seguente modo:

Tc=Cx ( Ti )
Ti=Dx ( Tc )
Ti=Dx ( Cx ( Ti ))

La sicurezza del testo è affidata alla sicurezza della chiave ed è perciò un problema da non sottovalutare la gestione della chiave stessa. Gli algoritmi simmetrici possono essere suddivisi in block ciphers (cifratori a blocco) e stream ciphers (cifratori a flusso).

Block cipher

Un cifratore a blocchi codifica e decodifica il testo a blocchi o gruppi di bit. Uno dei più conosciuti è Data Encryption Standard (DES) che utilizza una chiave di 56 bit producendo un blocco codificato di 64 bit per ogni 64 bit di ingresso in chiaro e viceversa. Gli algoritmi di tipo block cipher vengono ulteriormente classificati in base all'effettivo modo di operare in : Electronic Code Book (ECB), Cipher Block Chaining (CBC) e Cipher FeedBack (CFB). Negli algoritmi CBC e CFB la codifica di un blocco è funzione della codifica di uno o più blocchi precedenti oltre che della chiave e del blocco stesso. In questo modo si viene a rompere la corrispondenza uno a uno esistente tra blocchi cifrati in uscita e blocchi in chiaro in ingresso presente invece negli algoritmi di tipo ECB (e ciò è auspicabile), e lo stesso blocco può perciò avere codifiche diverse in contesti diversi.

Stream cipher

I cifratori di tipo stream cipher operano bit a bit producendo per ogni bit del testo in chiaro un singolo bit cifrato in uscita. Uno stream cipher è tipicamente implementato come un exclusive-or (XOR) tra il flusso dei dati ed una opportuna sequenza di bit chiave (keystream), in genere ripetizione periodica di una sequenza base. L'efficacia in termini di sicurezza di un codificatore dipende perciò essenzialmente dalle proprietà della keystream: una keystream completamente casuale è certamente più efficace di una deterministica a breve periodo.

Componente base di molti codificatori a flusso è il registro a scorrimento con retroazione lineare (Linear Feedback Shift Register, LFSR), ovvero un registro a scorrimento che ad ogni passo effettua la traslazione introducendo un bit funzione degli stati precedenti. Un LFSR è facilmente implementabile in hardware. Scelta opportunamente la rete di retroazione può funzionare come generatore di numeri pseudocasuali. Si possono generare sequenze di bit che hanno una lunghezza massima di 2n-1 con n dimensione del registro.

Un esempio di LFSR è mostrato in figura. Questo registro consente di generare una sequenza periodica costituita dai seguenti stati in successione (1111, 0111, 1011, 0101, 1010, 1101, 0110, 0011, 1001, 0100, 0001, 1000, 1100, 1110).

LFSR register
Four-stage Linear Feedback Shift Register

Un codificatore è spesso costituito da più registri LFSR, diverse sono le soluzioni adottate in termini di interconnessione e sincronizzazione dei registri. Il sistema GSM adotta un algoritmo (A5) per crittografare il segnale da trasmettere sul canale radio, di tipo stream cipher a 3 registri LFSR.

Algoritmi a chiave pubblica

Differentemente dagli algoritmi simmetrici gli algoritmi a chiave pubblica sono caratterizzati da una coppia di chiavi, una detta appunto pubblica e l'altra privata. Le chiavi pubblica e privata esistono a coppie, i dati crittografati con una data chiave pubblica possono essere decrittografati solo con la corrispondente chiave privata e viceversa.

Se Tc=Cpub ( Ti ) allora Ti=Dpriv ( Tc )
Se Tc=Cpriv ( Ti ) allora Ti=Dpub ( Tc )

Idealmente per una coppia di chiavi la chiave privata non può essere dedotta in alcun modo dalla chiave pubblica. Ciò consente di poter rendere nota, di distribuire apertamente la chiave pubblica: solo il possessore della chiave privata è in grado di decrittografare il testo crittografato con chiave pubblica. Questa soluzione a due chiavi semplifica il problema della gestione della chiave: due entità possono scambiare dati crittografati senza dover scambiare alcuna informazione segreta sulle chiavi. L'esempio più conosciuto di algoritmo a chiave pubblica è l'RSA.

Il sistema GSM non si avvale di alcun tipo di crittografia a chiave pubblica.

One-way hash functions

Una funzione hash è una trasformazione che dato un ingresso m arbitrario di dimensione variabile, restituisce in uscita una stringa a lunghezza fissa chiamata valore hash h (h=H(m)). Le funzioni hash hanno moltissime applicazioni. Una funzione hash impiegata in crittografia deve essere sicura, i requisiti base cui deve soddisfare sono:

Una funzione hash è detta essere one-way se è "difficile" da invertire, ovvero dato un valore h è computazionalmente infattibile determinare x tale che H(x)=h ( è possibile calcolare la funzione in pochi secondi ma calcolare l'inversa può richiedere mesi o anni).

Se dato x è computazionalmente impossibile trovare y diverso da x tale che H(x)=H(y) allora H( ) è debolmente collision-free.

Se è computazionalmente infattibile determinare una qualsiasi coppia x,y tale che H(x)=H(y) allora la funzione hash è fortemente collision-free.

Possiamo pensare al valore hash come ad una rappresentazione concisa del testo più lungo o documento dal quale è stato ricavato applicando la funzione hash.

Una funzione hash key-dependent one-way necessita di una chiave per calcolare e verificare il valore hash. Ciò è utile ad esempio per propositi di autenticazione, una funzione di questo tipo può essere utilizzata dal mittente e ricevente di un messaggio in un meccanismo di tipo challenge-response.

Due processi che sono in possesso della stessa chiave segreta, possono autenticarsi vicendevolmente accordandosi su una sequenza a cui applicare la funzione hash con la chiave e confrontando i risultati ottenuti. Solo nel caso in cui le chiavi segrete siano uguali i risultati saranno identici (essendo H( ) one-way). E il processo può riconoscere il partner. Una funzione key-dependent one-way può essere implementata semplicemente appendendo all'input la chiave e calcolando il valore di una funzione one-way hash.

Il sistema GSM utilizza due algoritmi indicati con A3 e A8 che sono key-dependent one-way hash functions.

Dimensione della chiave

Supponiamo che effettuare una ricerca esaustiva di tutte le possibili chiavi sia il metodo più efficiente per decifrare un messaggio cifrato. Possiamo allora considerare la dimensione della chiave come una misura dell'affidabilità di un algoritmo di crittografia. Se assumiamo una cracking machine capace di un milione di crittografazioni al secondo, otteniamo i seguenti risultati:

Dimensione chiave in bit 32405664128
Tempo richiesto per verificare
tutte le possibili chiavi
1,19h12,7giorni2291anni584542anni10,8*1024anni

Possiamo considerare in alternativa il numero di macchine che sarebbero necessarie per decifrare il messaggio in un determinato periodo di tempo.

Dimensione chiave in bit1 giorno1 settimana1 anno
40132-
56836,788119,1322,291
642,14*1083,04*106584542
1283,9*10275,6*102610,8*1024

Nel valutare l'affidabilità di un algoritmo di crittografia deve essere perciò considerata la "durata" delle informazioni che devono essere protette. Assumendo ad esempio che l'algoritmo A5 utilizzato nel sistema GSM abbia, come sembra, una effettiva chiave di 40 bit (e non 64 bit), fornisce una adeguata protezione per informazioni che hanno un tempo di vita breve. È opinione comune che le conversazioni telefoniche cellulari abbiano un tempo di vita utile dell'ordine di qualche settimana.

 

Le funzioni di sicurezza e autenticazione

All'aspetto sicurezza nel sistema GSM sono dedicate specifiche raccomandazioni ETSI (02.09, 02.17, 03.20, 03.21) che prendono in esame aspetti quali: l'autenticazione e la riservatezza dell'identità dell'utente, la riservatezza delle conversazioni (o dati trasmessi dall'utente) e delle segnalazioni di controllo. L'abbonato è identificato univocamente dal codice IMSI (International Mobile Subscriber Identity), questo codice unitamente alla personale chiave di autenticazione Ki costituiscono le credenziali di identificazione analogamente al codice ESN (Equipment Serial Number) dei sistemi analogici (AMPS o TACS).
Le procedure di autenticazione e crittografia prevedono che queste informazioni non vengano mai trasmesse sul canale radio. Per l'autenticazione è utilizzato un meccanismo di tipo challenge-response; mentre per la crittografia dei dati trasmessi viene usata una chiave temporanea Kc ed anch'essa non viene mai trasmessa sul canale radio.

Possiamo guardare alle procedure che si occupano della sicurezza come a un sistema distribuito. È la distribuzione che fornisce una ulteriore misura di sicurezza. Gli elementi del sistema GSM che intervengono attivamente nella realizzazione delle procedure e dove quindi sono distribuite le informazioni e le risorse relative alla sicurezza, sono: la SIM (Subscriber Identity Module), il ME (Mobile Equipment) e la rete GSM.

La SIM contiene il codice IMSI, la chiave personale di autenticazione Ki, l'algoritmo A8 che genera la chiave temporanea di crittografia Kc, l'algoritmo A3 di autenticazione e il Personal Identification Number (PIN) assieme a molti altri dati. Il terminale mobile ME contiene l'algoritmo A5 di crittografia.

Nella rete GSM le informazioni sono ulteriormente distribuite. Nella Base Transceiver Station (BTS) sono contenuti l'algoritmo A5 e in fase di crittografia la chiave Kc. Alla base dei processi di crittografia e autenticazione è l'unità funzionale Authentication Center ha a disposizione i codici TMSI/IMSI, il codice LAI, la chiave Ki e gli algoritmi A3 e A8 oltre ad un algoritmo per la generazione di numeri pseudocasuali. L'AuC memorizza nei database VLR e HLR i parametri di sicurezza.

Tutti questi elementi (SIM,ME e GSM Network) sono necessari per il corretto funzionamento dei meccanismi di autenticazione e sicurezza. Ma è da sottolineare l'incredibile apporto al sistema complessivo dovuto all'introduzione della SIM.

La SIM e il sistema di sicurezza

Il sistema GSM è il primo sistema internazionale che ha impiegato una smart card (Subscriber Identity Module SIM) come dispositivo di sicurezza per l'autenticazione dell'abbonamento e dell'abbonato. L'idea di utilizzare un microprocessore per l'autenticazione in una rete radiomobile nasce in Germania nei primi anni ottanta, dove smart cards vengono utilizzate nella rete radiomobile analogica "Netz-C". Queste idee coincisero temporalmente con le prime discussioni sulla realizzazione di un sistema radiomobile multinazionale, il Global System for Mobile Communications.

Diversi comitati tecnici dal 1988 al 1994 si sono occupati di studiare, definire e sviluppare quali dovessero essere le caratteristiche della SIM. Opinione comune era che la carta dovesse avere l'aspetto di una carta di credito (formato ID-1). Per un certo tempo si considerarono altre due possibili implementazioni: un modulo plug-in, formato francobollo (25mm x 15mm) per terminali troppo piccoli per consentire l'uso di una ID-1 card e un modulo integrato che fosse parte integrante del terminale (ME). Il modulo integrato presentava il vantaggio di non richiedere alcuna interfaccia ma non venne ritenuto idoneo ai requisiti del sistema GSM. In modo particolare i problemi riguardavano la gestione dei dati correlati alla sicurezza. Sarebbe stato difficile per gli operatori del servizio usare propri specifici algoritmi di sicurezza e mantenere uno stretto controllo delle chiavi segrete e degli altri dati personali senza un modulo dedicato alla sicurezza. Infatti ciò avrebbe reso necessario lo sviluppo e la produzione da parte di ogni singolo operatore dei propri specifici terminali: si pensò che terminali non proprietari avrebbero garantito l'allargamento del mercato a tutti i produttori e ridotto le barriere commerciali in quanto ogni terminale poteva essere utilizzato su ogni rete. ID-1 card e plug in sono invece ancora utilizzate entrambe malgrado la scarsa maneggiabilità della plug-in.

La divisione della Mobile Station in Mobile Equipment (ME), sostanzialmente un sistema radio che non contiene alcuna informazione correlata all'abbonamento e SIM, dà all'operatore che si cura della programmazione e distribuzione di quest'ultima, un completo controllo su tutti i dati legati alla sicurezza. La SIM rimovibile dà inoltre una nuova dimensione alla mobilità dell'utente, ed è perciò, parte integrante del complessivo sistema di sicurezza, e "gettone" per la mobilità dell'abbonato.

Autenticazione

La procedura di autenticazione viene avviata ogniqualvolta la Mobile Station (MS) si collega alla rete, e più precisamente nei seguenti casi:

Le unità funzionali in gioco nel processo di autenticazione sono: la SIM nel terminale e l'AuC (Authentication Center) nella home network. L'autenticazione avviene adottando un meccanismo di tipo challenge-response. Nel momento in cui l'AuC riceve una richiesta di autenticazione, riconosce (vedremo in seguito come) la probabile identità dell'utente, genera e trasmette al Mobile Equipment (ME) un numero casuale di 128 bit (RAND) come sfida (challenge). Il ME riceve e trasmette alla SIM la sfida. La SIM calcola la risposta (response) SRES di 32 bit alla sfida dando in input all'algoritmo di autenticazione A3 (key-dependent one-way hash function) il numero casuale (RAND) e la chiave di autenticazione dell'utente Ki, che ha una lunghezza di 128 bit ed è memorizzata nella stessa SIM. La risposta "firmata" SRES viene trasmessa alla visited network dove viene confrontata con il valore che la home network ha calcolato applicando lo stesso algoritmo A3 al numero casuale RAND e alla chiave Ki corrispondente alla identità dichiarata dall'utente (di cui conserva copia).

L'utente è autenticato e può accedere alla rete se e solo se i due valori, quello ricevuto SRES e quello calcolato coincidono (la SIM è in possesso dell'esatta chiave di identificazione), altrimenti la connessione viene rifiutata e un messaggio di authentication failure viene notificato alla Mobile Station.

A3
Procedura di autenticazione

Possiamo notare come la chiave personale di autenticazione Ki non venga mai trasmessa sul canale radio. Essa è presente nella SIM come pure nell'AuC come descritto precedentemente. Inoltre il calcolo della response viene effettuato all'interno della SIM e le informazioni riservate dell'utente, come il codice IMSI e la chiave Ki, non vengono mai rilasciate dalla SIM durante la fase di autenticazione. Questo fornisce una sicurezza ulteriore.

Riservatezza dei dati e dei segnali di controllo

Uno dei nuovi servizi di sicurezza offerti dal sistema GSM è la possibilità di crittografare il collegamento tra la Mobile Station e la Base Transceiver Station (BTS). A questo proposito sono stati sviluppati speciali cifratori integrati nel Mobile Equipment e nelle Base Transceiver Station (BTS).

L'algoritmo che viene utilizzato per la crittografia è indicato con la sigla A5. Una parziale implementazione di A5 è trapelata e si è diffusa su Internet nel giugno del 1994. Più recentemente si è sparsa la voce che l'implementazione fosse un progetto iniziale e presentasse poche somiglianze con l'algoritmo A5 correntemente impiegato. Comunque si hanno alcune informazioni a disposizione.

A5 è un codificatore di tipo stream cipher che, utilizzando una chiave di cifratura Kc di 64 bit e il numero della trama TDMA di 22 bit, produce una sequenza di 114 bit (keystream) che viene utilizzata per crittografare i 114 bit significativi di ogni burst (cioè i due blocchi di 57 bit) attraverso un exclusive-or XOR. L'algoritmo A5 consiste di tre registri a scorrimento a retroazione lineare (LFSR) rispettivamente di 19,22 e 23 bit, sincronizzati. La sincronizzazione (clock control) di ciascun registro è una funzione limitata dei bit centrali dei tre registri. La somma dei gradi dei tre shift register è 64 (19+23+23), e la chiave di cifratura di 64 bit è utilizzata per inizializzare i tre registri ad ogni sessione.

La chiave di cifratura Kc utilizzata dall'algoritmo A5 viene generata all'interno della SIM e contemporaneamente nella home network dall'AuC attraverso l'algoritmo di generazione della chiave di cifratura A8 (specifico dell'operatore), durante la fase ci autenticazione. A8 è una key-dependent one-way hash function in ingresso alla quale vengono posti: il numero casuale utilizzato nella fase di autenticazione (RAND) e la chiave di autenticazione Ki (ovvero gli stessi input utilizzati nella fase di autenticazione).

A8
Procedura di crittografia (calcolo di Kc)

Possiamo notare come ancora una volta nessuna informazione segreta, neppure la chiave Kc, venga trasmessa sul canale radio o rilasciata dalla SIM. Perciò anche nel caso in cui si riuscisse a superare la procedura di autenticazione, ad esempio manipolando il confronto tra challenge e response, Mobile Station e Base Station utilizzerebbero chiavi di cifratura diverse risultando incomprensibili l'una all'altra.

La chiave Kc è diversa ad ogni collegamento (viene generata una nuova Kc ogni volta che si esegue la procedura di autenticazione), dipendendo da RAND. Un ulteriore livello di sicurezza può essere raggiunto consentendo di modificare la chiave Kc ad intervalli regolari di tempo, secondo le esigenze della rete.

La procedura di crittografia è avviata dalla rete GSM attraverso il comando Ciphering Mode Request. Solo dopo aver ricevuto tale comando la mobile station inizia a crittografare e decrittografare i dati utilizzando l'algoritmo A5 e la chiave Kc ed invia un messaggio cifrato (ad esempio Ciphering Mode Completed). Se questo messaggio viene correttamente decifrato dalla rete si ritiene che il passaggio in modalità di trasmissione cifrata sia andato a buon fine; la cifratura viene cosí applicata a tutte le successive informazioni inviate sulla tratta radio.

Osservazione:

L'AuC è l'unità funzionale incaricata di generare l'insieme di parametri (RAND,SRES,Kc) cui usualmente ci si riferisce come tripletta. Le triplette devono essere generate in continuazione (ne viene normalmente usata una ad ogni accesso). Ciò che accade in realtà è che esse vengono generate e memorizzate nell'HLR e fornite, dietro richiesta, ai VLR. Può capitare che esse vengano riutilizzate nel caso in cui il VLR non possa richiedere nuove triplette all'HLR (ad esempio per indisponibilità momentanea del collegamento).

L'AuC ha perciò due compiti fondamentali che sono: memorizzare in modo sicuro e protetto le chiavi Ki degli utenti e generare e fornire all'HLR, dietro richiesta, un certo numero di triplette alla volta per ogni utente. I dati trattati dall'AuC sono di fondamentale importanza per la rete e per l'utente, perciò vengono prese particolari misure di sicurezza nel loro trasferimento e per l'accesso all'AuC da parte di operatori.

Riservatezza dell'identità dell'abbonato

Abbiamo visto che le procedure di sicurezza si propongono di non trasmettere mai sul canale radio le credenziali di identificazione: codice IMSI e chiave Ki. Per evitare ad esempio che possa essere monitorata la posizione dell'utente intercettandone sul canale radio l'identità etc, etc..

D'altro canto la rete può autenticare la SIM solo se conosce l'identità della SIM. E questa identità deve essere trasmessa dalla MS sul canale radio. Vengono allora utilizzate delle identità temporanee. Chiaramente il codice IMSI che identifica univocamente l'abbonato nel mondo deve essere usato per aprire la sessione se non vi sono altri modi di identificare l'abbonato. Ciò accade ad esempio quando l'utente utilizza per la prima volta la SIM. Non appena si conclude con successo una autenticazione, la rete (specificatamente il VRL) assegna alla SIM un Temporary Mobile Subscriber Identity (TMSI), e lo trasmette, dopo che è stato attivato il processo di crittografia, in forma cifrata alla MS dove viene decifrato. La MS risponde confermando l'avvenuta ricezione e memorizza il TMSI nella SIM. Il codice TMSI viene da quel momento in poi utilizzato al posto del codice IMSI, dove ciò sia possibile, fino a che un nuovo TMSI non venga assegnato alla SIM.

Le riallocazioni avvengono in istanti prefissati specifici di ogni operatore (ad esempio ad ogni accesso alla rete). Il codice TMSI è valido nella Location Area in cui è stato rilasciato, per comunicazioni al di fuori della Location Area è necessario utilizzare il Location Area Identity (LAI) in aggiunta al TMSI. Ogni volta che si esegue una Location Updating cioè l'utente passa da una Location Area ad un'altra, il VLR assegna una nuova TMSI alla MS e la invia assieme al messaggio che comunica l'aggiornamento della localizzazione (Location Updating Accept). Alla ricezione di questo messaggio, la MS risponde con un messaggio di conferma (TMSI Reallocation Complete).

Il codice TMSI può essere riallocato anche in occasione di altri accessi alla rete quando il processo di crittografia è stato attivato: la rete trasmette una esplicita TMSI Reallocation Request cifrata assieme al codice, la MS risponde con una TMSI Reallocation Confirmation cifrata. Se per qualche motivo il codice TMSI inviato da una MS non viene riconosciuto dalla rete, ad esempio fallisce la fase di autenticazione, viene attivata la procedura di Identity Request tramite la quale viene richiesto alla MS l'invio del codice IMSI.

Autenticazione del Mobile Equipment

Un altro livello di sicurezza è implementato nel Mobile Equipment (ME). Ogni terminale GSM è identificato univocamente dall'International Mobile Equipment Identity (IMEI). Tale codice è completamente indipendente dal codice IMSI, dalla identità della persona che ha sottoscritto l'abbonamento. La SIM può essere utilizzata con una qualsiasi ME (prestata, noleggiata etc) personalizzandola, e ciò fa nascere la necessità di proteggere la rete e gli utenti, da ME non autorizzate, rubate o difettose. Come abbiamo visto è perciò previsto un particolare registro Equipment Identity Register (EIR) che consente di memorizzare i codici IMEI e verificare quelli corrispondenti a ME cui non è consentito l'accesso alla rete (black list). Il controllo dell'IMEI può essere effettuato in vari momenti : la rete (MSC) richiede l'IMEI al ME, la MS invia l'informazione alla rete che effettua una richiesta all'EIR, in base alla risposta il MSC concede l'accesso (ME autorizzato) o intraprende le azioni del caso (ME non autorizzato).

Accesso alla SIM

Come già visto la stessa SIM implementa un ulteriore livello di sicurezza confrontando il Personal Identification Number (PIN) digitato dall'utente con il valore di riferimento contenuto in memoria. Tale confronto è effettuato dalla CPU della SIM e permette, ancora una volta, di non rilasciare il valore all'esterno. Il PIN può essere scelto dall'utente (tipicamente un numero che ha dalle quattro alle otto cifre) ed è protetto dalla SIM che registra ogni eventuale tentativo, inserimento di PIN errato. Dopo il terzo tentativo il codice IMSI/TMSI non è più leggibile e ogni eventuale ME è incapace di avviare una GSM session.

Lo standard GSM ha poi previsto successivamente, oltre alla gestione dei PIN, l'introduzione di un PIN Unblocking Key (PUK) che consente di sbloccare la SIM. Quest'ultimo non può però essere modificato ed è fornito dall'operatore all'utente a specifiche condizioni di sicurezza. Dopo dieci tentativi errati di inserimento per il codice PUK la SIM risulta permanentemente bloccata.

Con le raccomandazioni GSM Phase 2 si sono introdotti nuovi servizi che hanno condotto all'introduzione di un secondo PIN e corrispondente PUK. Può essere consentita ad esempio la chiamata ai soli numeri memorizzati nella SIM, la cui modifica può essere fatta solo da chi è a conoscenza del PIN2.