Uno schema simmetrico per lo scambio di credenziali di identità basato sul paradigma della fiducia, parte 1: Modello astratto di fiducia dell’identità

Author: Luigi Sbriz, CISM, CRISC, CDPSE, ISO/IEC 27001:2022 LA, ITIL V4, NIST CSF, UNI 11697:2017 DPO
Date Published: 20 April 2022
English

L’identità di un cittadino della rete, o netizen1, viene generalmente risolta chiedendo al cittadino digitale di comunicare i propri dati personali ad un sistema di autenticazione per ottenere le credenziali di accesso ai dati. Ma è davvero necessario diffondere i nostri dati personali su Internet, anche sui sistemi visitati solo una volta? Forse no. Indagare sul concetto di fiducia dell’identità (cioè la capacità di stabilire la fiducia dell’identità nel mondo digitale) può aiutare i professionisti a comprendere meglio il processo di identificazione.

La verifica dell’identità quando si accede a risorse di valore, in particolare per i soggetti provenienti dall’esterno del sistema di gestione della sicurezza delle informazioni, è essenziale. L’identificazione è un passo chiave nella creazione di un canale di comunicazione affidabile, che include anche la creazione del canale stesso e l’assegnazione dei diritti di accesso alle risorse. La creazione del canale sicuro e l’applicazione dei diritti di accesso possono essere processi consolidati dovuti alla disponibilità di tecnologie mature e protocolli sicuri. Tuttavia, la tematica della verifica dell’identità, presenta ancora delle difficoltà per determinare una soluzione che sia idonea a gestire ogni possibile scenario.

Questo articolo vuole introdurre un metodo di identificazione che, ponendo sullo stesso piano l’identificato e l’identificante, realizza uno schema simmetrico di fiducia reciproca per le proprie identità. Per questo dualismo, potremmo chiamarlo il metodo del “doppio fiduciario”, ma prima definiamo il contesto del riconoscimento dell’identità.

Riconoscimento dell’identità digitale

La vera sfida è riuscire ad identificare uno sconosciuto digitale senza richiedere uno scambio di dati personali o meccanismi inutilmente complicati. Gli attuali meccanismi di riconoscimento dell’identità si possono raggruppare in due grandi categoria.

La prima categoria può essere etichettata come singolo dominio (“single domain”). Prevede che il soggetto da identificare sia registrato su un sistema di autenticazione, il quale è parte di un unico ecosistema digitale di risorse condivise. Nella fase di registrazione iniziale, l’utente deve fornire al sistema i dati personali necessari per l’emissione delle credenziali di autenticazione, indipendentemente dal fatto che siano semplici, come una password o complesse, come un meccanismo a due fattori. Il sistema di autenticazione è un contenitore di tutte le identità ed un collettore di tutte le richieste di accesso. Inoltre, non ha alcuna responsabilità nello stabilire la veridicità dell’identità digitale ricevuta; ha solo il compito di verificare la correttezza delle credenziali di identificazione nell’ambito del suo ecosistema. In questo scenario, ha maggior importanza la validità delle credenziali sull’identità certa del soggetto. Ad esempio, quando attiviamo un abbonamento ad un servizio, per il gestore, è più importante verificare l’autorizzazione al pagamento, piuttosto del nome esatto di chi ha pagato.

La seconda categoria può essere etichettata il singolo fiduciario (“single trustee”). Prevede la presenza di un soggetto terzo, che agisce come fiduciario (identity provider), registra le generalità di ogni entità e quindi garantisce la loro identità nel processo di autenticazione. Tutti devono aver riposto la propria fiducia verso l’identity provider, fornendogli gli elementi necessari a determinare propriamente la loro identità. L’identity provider è responsabile di stabilire la veridicità dell’identità digitale (che corrisponda ad una entità reale) ed ha il compito di verificare la correttezza nel processo di identificazione. L’uso di questo unico fiduciario rende possibile l’accesso a diversi ecosistemi di risorse, tra loro non interdipendenti (il punto di contatto è proprio il single trustee), sempre con una stessa identità. Ha però il vincolo della reciproca condivisione dello stesso fiduciario e concretamente non è sempre possibile. Se due abbonamenti sono attivati per due differenti service provider che utilizzano due diversi identity provider, l’identità deve essere fornita ad entrambi gli identity provider.

Non è realistico imporre lo stesso fiduciario a due entità (cioè persona fisica, giuridica o sistema) tra loro sconosciute ma con necessità di interagire tra loro, per esempio, per l’erogazione di un servizio. Per definizione, il fiduciario va scelto liberamente. Conseguentemente, occorre ricercare un meccanismo più generale in modo da poter essere utilizzato in ogni situazione di relazione tra richiedente e fornitore di servizi, senza una reciproca conoscenza a priori. L’esigenza di farsi riconoscere su nuovi ecosistemi digitali, od accedere a quelli ove siamo già noti ma con nuovi dispositivi, è un fenomeno in continua crescita. Nella vita quotidiana, i servizi che richiedono il riconoscimento dell’utente sono innumerevoli, anche se la garanzia dell’identità certa non è sempre un requisito indispensabile. Alcuni esempi includono il pagamento per la consegna di cibo a domicilio, l’invio di un documento ad una società, il rispondere ad un sondaggio, l’accedere ad una banca online, il partecipare ad una chat online, l’acquisto di un posto per uno spettacolo, la registrazione in un hotel, la conferma della presenza ad un convegno o la prenotazione una visita medica.

Rischio relativo all’identità

L’uso frequente dell’identità digitale crea rischio, come il furto di identità digitale, che è spesso più grave del furto di un documento di identità fisica perché il furto non viene in genere scoperto fino a quando le conseguenze non saranno note. Può portare ad implicazioni legali od economiche che vanno dall’irrilevante al molto grave; pertanto, non è prudente semplicemente accettare il rischio. Tutte le attività che richiedono la verifica dell’identità hanno un rischio correlato, ma non usano tutti la stessa soluzione per mitigare tale rischio. Ad esempio, i servizi che richiedono un pagamento hanno aggirato il problema dando le priorità alla verifica se la carta di credito è attiva piuttosto che procedere al riconoscimento. Il rischio è così trasferito sul proprietario della carta di credito. Per altri servizi, il driver per la scelta il meccanismo di identificazione è il costo. Questa è una scelta valida solo se le conseguenze hanno impatto trascurabile.

Alcuni servizi, utilizzano l’identificazione come scusa per richiedere un’abbondanza di dati personali. Inoltre, la quantità di metodi diversi o di metodi complicati portano a richieste ripetute di dati personali su Internet con una bassa considerazione delle questioni sulla privacy e del principio di necessità. Pertanto, gli utenti dovrebbero fidarsi di coloro che richiedono i dati senza rassicurazione o trasparenza su come i dati vengono condivisi o utilizzati. Il consenso al trattamento non è una autorizzazione sulla quantità di dati richiesti nella registrazione, è una dichiarazione di un uso secondo finalità di legge, ma è comunque un tutela lieve rispetto alle infinite sfumature di correlazione degli algoritmi.

La registrazione dei dati personali non ha nulla a che vedere con il meccanismo di identificazione. Registrazione e identificazione si svolgono in momenti diversi e sono finalizzati a compiti ben distinti. La soluzione legale è applicare il principio di portabilità della identità digitale (cioè, il diritto di evitare nuove ripetitive registrazioni dei dati personali), comunque non c’è ancora un meccanismo pratico per implementarlo. Inoltre, l’identificazione certa di un’identità digitale non dovrebbe essere associato all’identità fisica se non per situazioni di legittima necessità e di tutela per l’interessato. Un caso potrebbe essere la comunicazione con posta elettronica certificata, è l’interessato che ha la necessità di associare la propria identità fisica all’indirizzo email per consentire un tracciamento lecito della comunicazione.

Una nuova soluzione

Ci sono pro e contro per ciascuna delle due categorie di identificazione. La prima categoria, il single domain, è molto efficiente nell’accertare l’identità, ma la registrazione completa dei dati personali deve essere ripetuta su ogni nuovo sistema di autenticazione, anche quando non è chiaro come vengono utilizzati i dati. La seconda categoria, il single trustee, ha maggior flessibilità applicativa e complessità tecnica, e riesce a soddisfare la richiesta di identificazione con la giusta attenzione ai dati personali, a condizione che tutti riconoscano lo stesso fiduciario. Non è pertanto generalizzabile a tutte le situazioni e potrebbe essere limitata ad entità di un singolo Paese.

È necessario un differente approccio. Un metodo per cui entrambe le entità riescano ad avere fiducia una dell’altra per tramite di un proprio fiduciario, che certifica il riconoscimento dell’identità senza richiedere l’invio di dati personali, se non per i dati che sono strettamente necessari. Il nome di questo approccio potrebbe suonare come “double trustee”.

L’idea del doppio fiduciario deriva dal principio generale di identificazione digitale tramite una terza parte garante dell’identità, ossia, il meccanismo deve garantire la fiducia nella veridicità della identità digitale stessa, mentre il dato personale è usato solo in legittime circostanze. Inoltre, il meccanismo deve essere biunivoco, perché la fiducia deve essere reciproca. Questo significa che, se un utente si deve identificare su un sistema, il sistema si deve identificare all’utente. Prima di proporre un metodo che soddisfa questi concetti e per meglio comprenderne la logica, è utile considerare come questa reciproca garanzia di identità possa essere raggiunta in un mondo virtuale, com’è quello di Internet.

Esempio della foresta degli elfi saggi

L’esempio è ambientato in un mondo fantasy rappresentato da una foresta incantata di elfi saggi. Gli animali e le piante vivono una vita armoniosa in interazione continua tra loro. Le relazioni tra le diverse specie sono affidate all’arbitrato della comunità degli elfi saggi. Ogni elfo è il responsabile della convivenza civile di una specifica specie ed eticamente ne cura gli interessi nei confronti degli altri. Gli elfi comunicano in un antico linguaggio noto solo a loro, chiamato elfico. In questo esempio, ci sono due elfi: l’elfo dei fiori Amdir (colui che vigila) e l’elfo degli insetti Bor (uomo fidato) (figura 1).

Altri abitanti del bosco inclusi nell’esempio sono: Alice Aster, un fiore che produce un polline esclusivo, e Bob Bee, un insetto che produce un miele rinomato. Alice e Bob non si conoscono ancora. Bob ha necessità di comperare il particolare polline prodotto da Alice, mentre Alice deve vendere proprio a Bob, per rispettare le tradizioni della famiglia Aster con la famiglia Bee. Affinché siano sicuri della reciproca identità, in loro aiuto vengono dei garanti di comprovata fiducia, gli elfi saggi.

Nella fase 1, Alice e Bob si scambiano un ritratto d’identità (DA e DB), fatto e firmato dal proprio elfo di fiducia: Amdir per Alice e Bor per Bob. Nel retro del ritratto, in lingua elfica, ci sono dettagli aggiuntivi su Alice e Bob ed anche il nome del proprio elfo fiduciario con il suo sigillo. Nella fase 2, Alice passa il ritratto di Bob ad Amdir affinché, nella fase 3, possa contattare l’elfo citato nel retro del ritratto, Bor, per controllare se ritrae proprio Bob. Analogamente, in modo speculare, Bob passa il ritratto di Alice a Bor perché contatti il fiduciario di Alice e verificare se è proprio lei quella rappresentata nel ritratto. In fase 4, gli elfi fiduciari confermano, o rifiutano, le identità con un proprio plico sigillato personalizzato. Il sigillo del proprio elfo fiduciario, sia Alice che Bob, lo conoscono bene perché ogni mattina l’elfo passa a trovare i propri protetti e ne lascia una copia aggiornata, nel caso sia cambiato.

La risposta di un elfo non viene letta dall’altro elfo perché transita tramite il plico sigillato. In fase 5, gli elfi fiduciari inoltrano direttamente ad Alice e Bob i plichi sigillati. Se i sigilli sono integri e corrispondenti alla copia posseduta, allora la reciproca identità è confermata. Poi, in fase 6, si scambiano i sigilli, a conferma che l’identificazione è conclusa ed a dimostrazione che le informazioni ricevute erano integre. Purtroppo, non si sa se Alice e Bob sono proprio le persone che dicono di essere, perché nessuno è in grado di intercettare o comprendere tutti i messaggi che sono stati scambiati. Tuttavia, Alice e Bob sanno la verità sull’identità dell’altro e gli affari possono continuare.

Per capire quanto sia robusto questo schema di identificazione, consideriamo l’esempio di Bad Wasp, della famiglia degli insetti, che è un concorrente di Bob. Bad sta cercando in modo fraudolento di comperare il polline al posto di Bob. Se Bad Wasp prova a falsificare il ritratto di Bob, non sarà autenticato da Bor Elf. Se si camuffa da Bob e prova a dirottare la spedizione a casa sua, sarà comunque smascherato perché Bor Elf invia i propri messaggi direttamente a Bob e non a lui. L’integrità del messaggio è verificata sia da Bob Bee che da Bor Elf. Anche il tentativo di falsificare il messaggio di Bor Elf non può riuscire perché Amdir Elf garantisce la provenienza e se anche ci fosse un modo di ingannare Amdir, l’ultimo destinatario è Bob che riuscirebbe a capire se il sigillo è stato alterato abusivamente. Ogni messaggio viene sempre verificato, sia come provenienza che integrità, e su ogni percorso si adopera un diverso linguaggio.

Uno schema simmetrico per l’identità digitale certificata

L’esempio di come Alice e Bob si sono identificati reciprocamente può essere applicato anche a due entità digitali: A e B (figura 2). Le identità digitali possono rappresentare una persona, una società, un sistema o qualcos’altro. Non importa cosa rappresentano ma solo che sono un riferimento per qualche cosa che esiste realmente. Inoltre, i nomi delle entità dovrebbero essere costruiti come un indirizzo email. È come se il nome dell’inquilino (nome dell’email) è associato con l’indirizzo dell’immobile (dominio dell’email) dove abita. Il proprietario dell’immobile è un soggetto ideale per garantire l’identità dei propri inquilini. In una rete informatica, il sistema di autenticazione del dominio conosce tutti gli appartenenti al dominio di rete.

In questo schema, le due entità digitali (A e B) sono collegate tra loro per mezzo di un canale di comunicazione e, nello stesso tempo, sono in grado di autenticarsi al proprio sistema di fiducia. Trustee A e B sono i gestori dei propri domini di rete e riconoscono tutte le entità incluse. I due gestori di rete, sono in contatto tra loro su una specifica overlay network, alla quale non possono accedere le entità. In questo esempio, consideriamo le due entità digitali appartenenti a domini di rete diversi, con necessità di un meccanismo affidabile per certificare la propria identità. La figura 2 illustra le sei fasi della sequenza di verifica dell’identità:

  1. Le due entità si scambiano i badge digitali, DA e DB. Il badge è un metadato che contiene informazioni sull’identità digitale. Tra i dati contenuti ci sarà almeno lo username, l’indirizzo (Internet Protocol [IP] e Media Access Control [MAC]), il nome del proprio trustee ed un marcatore d’integrità delle informazioni, generato dal proprio trustee nel momento dell’autenticazione.
  2. Le due entità inviano al proprio fiduciario il badge ricevuto dall’altra entità.
  3. I due fiduciari si scambiano i badge digitali, DA e DB, ricevuti dalla propria entità, contenente i dati di identificazione digitale dell’altra entità.
  4. I due fiduciari preparano un sigillo, SA e SB, da inoltrare al fiduciario dell’entità controparte. Il sigillo è un metadato crittografato che necessita della chiave, KA e KB, per essere aperto e contiene parte dei dati del badge ricevuto per verifiche di integrità. La chiave era stata viene inviata alla propria entità al momento dell’autenticazione.
  5. I due fiduciari inoltrano il sigillo ricevuto dall’altro fiduciario alla propria entità.
  6. Le due entità si scambiano le chiavi digitali, KA e KB, per aprire il sigillo (5) arrivato dal trustee. La chiave digitale è un token usato per aprire i messaggi del proprio trustee.

Il meccanismo di comunicazione è perfettamente simmetrico, basato su quattro nodi, due entità e due trustees. Ogni nodo ne ha uno speculare che fa esattamente le stesse operazioni, in genere molto semplici, dove il tempo maggiore è legato al transito del messaggio da mittente a destinatario. L’entità ed il trustee inviano e ricevono esattamente un totale di tre messaggi ciascuno. Questo processo è il seguente:

  • Ciascuna entità, durante l’autenticazione con il proprio fiduciario, invia i dati della propria locazione in rete e riceve il proprio badge oltre alla chiave di decodifica dei messaggi sigillati dal proprio fiduciario. Le entità si scambiano tra loro i badge e quando lo ricevono, lo inoltrano al trustee indicato nel badge. Se ricevono un sigillo da un trustee, inoltrano la chiave di decrittografia all’altra entità. Se ricevono la chiave da un entità, aprono il corrispondente sigillo e confermano o meno l’identità.
  • I trustee ricevono messaggi, elaborano le risposte e le inoltrano. Se ricevono un badge da un entità, lo inoltrano al trustee indicato nel badge. Se ricevono un badge da un trustee, inoltrano a quel trustee il proprio sigillo personalizzato per quel badge. Se ricevono un sigillo da un trustee, lo inoltrano all’entità indicata dal sigillo.

Considerazioni sulla sicurezza

La sicurezza è garantita dalla presenza di più percorsi indipendenti tra loro per veicolare i messaggi, che sono poi soggetti a verifiche di integrità, utilizzando informazioni in parte in arrivo ed in parte già presenti nel nodo. Il livello di sicurezza complessivo dell’identificazione delle due entità, è pari al livello di sicurezza della singola autenticazione tra entità e fiduciario. Questo meccanismo stabilisce il riconoscimento dell’entità, che poi viene garantito all’altra entità. Se fallisce un passaggio, fallisce l’identificazione. Ogni entità decide con il trustee quale metodo di autenticazione utilizzare in funzione dell’analisi di rischio per quell’identità. Attualmente è disponibile un’ampia gamma di soluzioni, soddisfacenti per ogni esigenza, sia come costo che beneficio, può essere una semplice password, un Short Message Service (SMS) di conferma oppure un metodo più sofisticato.

L’intercettazione di messaggi è resa inefficace dalla presenza di quattro distinti canali di comunicazione che operano su percorsi diversi ed attuano test di integrità. Il modo di comunicare tra le due entità è una scelta imposta dalle circostanze, senza garanzie sul livello di protezione. Non rappresenta una vulnerabilità perché i messaggi di validazione devono transitare su ogni canale, rendendo inutile l’eventuale compromissione iniziale.

Ogni entità si autentica sul proprio fiduciario, su un canale sicuro e con un protocollo predefinito. I trustee comunicano tra loro su una rete dedicata, con monitoraggio di intrusione ed uno specifico processo per ammettere nuovi nodi. Tutti i nodi sono selezionati dopo un processo preliminare di rispondenza ai requisiti specifici di quella rete. Se i domini dei due trustee coincidono allora il meccanismo si semplifica perché non ci saranno messaggi inoltrati nella rete dei trustee ma sarà tutto gestito internamente dal singolo trustee.

Lo scambio di identità può introdurre nodi fasulli o messaggi falsi; pertanto, i messaggi devono superare una serie di controlli di integrità per cercare anomalie nei messaggi contraffatti, bloccando conseguentemente il processo di identificazione. Questo meccanismo di messaggi scambiati e verifiche incrociate, consente ai trustee di riconoscere se il badge è stato compromesso od alle entità di riconoscere se i sigilli non sono originali. Inoltre, se anche un falso badge riesce a superare la verifica dell’identità da parte del trustee, la risposta viene comunque inviata all’entità reale (e non a quella contraffatta) perché le informazioni di contatto con l’entità sono determinate dai rispettivi trustee durante l’autenticazione.

Il vantaggio è la sicurezza derivata dal poter disporre di informazioni da sorgenti diverse per attuare le verifiche di integrità. Le informazioni salvate staticamente, nella cassaforte del dispositivo, devono essere rigenerate periodicamente. Un lungo periodo di conservazione espone le informazioni a maggiori possibilità di attacco rispetto ad un’informazione che vive per il tempo necessario all’uso e poi perde validità. Per motivi di performance, le credenziali di autenticazione dell’entità con il proprio fiduciario potrebbero durare nel tempo per più identificazioni consecutive o finché le condizioni di rischio lo consentono, poi si forza l’aggiornamento.

Conclusioni

Il meccanismo di base del “double trustee” ha molti vantaggi, ma ci possono essere delle situazioni reali più complesse che richiedono una espansione di questa soluzione. Ad esempio, anziché avere una entità che eroga uno o più servizi, un servizio potrebbe richiedere un interfaccia con molte entità interscambiabili tra loro, oppure, anziché usare identità digitali totalmente prive di dati personali, potrebbe richiedere la gestione di categorie particolari di dati personali. Quest’ultimo caso, è possibile solo dopo aver ottenuto il consenso dell’interessato ed in modalità controllata da assicurate la tutela di tali dati. L’implementazione pratica di una situazione concreta ed eterogenea, completa delle esigenze di protezione dei dati personali in ambienti non sicuri, sarà discussa della parte 2 di questa serie “Implementazione del servizio di fiducia dell’identità”2.

Riferimenti

1 Merriam-Webster Dictionary, “Netizen,” https://www.merriam-webster.com/dictionary/netizen
2 Sbriz, L.; “A Symmetrical Framework for the Exchange of Identity Credentials Based on the Trust Paradigm, Part 2,” ISACA® Journal, vol. 2, 2022, https://www.isaca.org/archives

LUIGI SBRIZ | CISM, CRISC, CDPSE, ISO/IEC 27001 LA, ITIL V4, UNI 11697:2017 DPO

È stato responsabile del monitoraggio dei rischi presso un’azienda multinazionale del settore automotive per oltre sette anni. In precedenza, è stato responsabile della gestione dei servizi e delle risorse ICT nell’area Asia-Pacific (Cina, Giappone e Malesia) e, prima ancora, è stato responsabile della sicurezza delle informazioni a livello mondo per più di sette anni. Per quanto attiene al monitoraggio interno del rischio, ha sviluppato una metodologia originale integrando tra loro, analisi del rischio operativo, valutazione del livello di maturità dei controlli e risk-based Internal Audit. I processi aziendali sono paragonati a servizi cooperanti basati sui principi guida del framework ITIL 4 e del Manifesto Agile. Inoltre, ha progettato uno strumento di cyber monitoring e un sistema integrato per monitoraggio del rischio, modello di maturità e audit interno. Sbriz è stato anche consulente per sistemi di business intelligence per parecchi anni. Può essere contattato su LinkedIn https://it.linkedin.com/in/luigisbriz oppure tramite http://sbriz.tel.