1. Introduzione

Il commercio dipende sempre più dalle infrastrutture delle informazioni globali, più opportunamente dall’efficienza dei costi della comunicazione elettronica con i business-partner ( società, aziende, enti governativi ecc. ). Le informazioni delicate in transito devono essere salvaguardate per prevenire la perdita delle "proprietà dei dati" e per proteggere integralmente le informazioni.

L'informazione è un punto di forza vitale, e la crittografia (la scienza degli scritti segreti e dell'integrità delle informazioni), è emersa come il più efficace mezzo di sicurezza delle informazioni in trasmissione e della memorizzazione.

La crittografia commerciale non è solo usata per la cifratura delle informazioni commerciali di dati confidenziali, ma anche per altre aree della sicurezza delle informazioni, includendo l'autenticazione dell'utente, l'integrità dei dati, l'autenticazione dei dati. Le funzioni crittografiche convertono i testi in chiaro in testi cifrati, sotto il controllo delle chiavi crittografiche. La maggior parte delle applicazioni crittografiche commerciali usano algoritmi che sono conosciuti e pubblicati, come Data encryption standard (DES) [1]. Perché ognuno con la chiave segreta può convertire i testi cifrati nuovamente nel testo in chiaro, allora sia l’autenticità che la sicurezza della chiave segreta di cifratura deve essere protetta. Ciò nonostante le chiavi, devono essere rese disponibili a parti autorizzate, per accedere al testo in chiaro. Così, le chiavi devono essere generalmente nascoste e selezionate con la dovuta accortezza. Il “Key Recovery[2] è una tecnica per il recupero delle informazioni crittografiche.  

1.1 Key Recovery

Le tecniche di "key management" (gestione della chiave) esistono per manipolare il ciclo vitale della chiavi crittografiche, includendo distribuzione, validità, memorizzazione ed uso di chiavi.

Se le chiavi venissero perse, danneggiate o rese inutilizzabili per parti autorizzate allora sarebbero necessarie delle tecniche per gestire il recupero del testo in chiaro, riottenendo la chiave attraverso la ricostruzione e/o il recupero. Alcune tecniche rappresentano una parte integrale della gestione commerciale della chiave. Un fattore indipendente dalle tecniche di Key recovery [2] è la regolazione da parte dei paesi per il loro uso, esporto o importo di cifratura forte. L'uso di particolari tecnologie di Key recovery favorite dalle autorità governative possono essere necessarie per vendere o usare prodotti in alcuni paesi.

Parecchie tecniche sono state proposte per fornire il recupero di chiavi (Key recovery)[2]: il Key escrow, commercial key recovery, backup crittografico e recupero, e tecniche di fiducia date a terze parti. Queste tecniche sono definite differentemente da varie comunità di interesse, e gli schemi associati sono stati sovrapposti e difficilmente vengono delineate le differenze. Per esempio, la definizione di escrow letteralmente significa "riporre la merce in cura di terze parti sotto certe condizioni"[2]. L'oggetto "escrowed" (immagazzinato o anche memorizzato) non necessita di essere esplicitamente posseduto da terze parti, ma "in cura di" (in un senso legale o obbligatorio). Comunque, le caratteristiche operative di un sistema escrow possono differire drasticamente, dipendendo se l'oggetto è fisicamente mantenuto da terze parti.

Mentre gli avvocati possono non essere preoccupati di questa distinzione, alcuni dettagli come la scalabilità, le prestazioni e la potenziale vulnerabilità influenzano il rilascio della chiave . In generale, l'agente escrow si può riferire ad un utente, ad un'entità interna, ad una organizzazione o esterna (a terze parti). In ultima analisi, una terza parte potrebbe essere selezionata da un utente, da una organizzazione o pre-approvata da un'agenzia esterna o governativa. Per esempio, esistono differenti schemi escrow con caratteristiche opzionali e capacità di sicurezza differenti. La definizione letterale di una terza parte fidata ( ttp, Trusted Third Party ) è alquanto vaga, in particolare un ttp è un'entità in una relazione di fiducia con varie entità primarie.

La "fiducia" è un concetto di notevole importanza nella sicurezza, essenziale alle tecniche di informazioni crittografiche ed in particolare alla chiave di recupero, ma non precisamente definita. Se la fiducia è violata, allora essa non può essere ridata, ma deve invece essere ristabilita. In tutte le relazioni commerciali la fiducia necessita di essere esplicitamente identificata e strutturata.

Contratti, licenze, leggi, ordini governativi e politiche di corporazione, aiutano a definire e limitare la fiducia e gli obblighi. A tal fine (per indicare la distribuzione della fiducia, livelli di fiducia e sue limitazioni) è necessario creare un " modello di fiducia ". Modelli fidati sono stati derivati nelle industrie e attraverso standard, usando: infrastrutture a chiave pubbliche ( IETF PKIX ), certificati con attributi estesi (cioè, X.509 V3 certificates ), gerarchie di autorità certificate ( SET ) [3] e modelli di fiducia distribuita ( ANSI X9.57 e ITU-T X.509). Da ciò si evince che non esiste una migliore tecnica di recupero dei dati, questo è dovuto al fatto che differenti caratteristiche hanno vantaggi in differenti scenari.  

1.2 Key Escrow

Il key recovery [2] abilita persone autorizzate ad accedere al testo in chiaro da dati cifrati quando la chiave di decifratura non è utilizzabile. A tal fine viene presentata una delle tecniche riguardanti il Key recovery: il key escrow. Il key escrow definisce la memorizzazione delle chiavi o la memorizzazione di parti della chiave con uno o più agenti escrow. Le informazioni di recupero richiedono che gli agenti escrow facilitino il recupero del testo in chiaro fornendo la chiave necessaria o parti della chiave o decifrando le informazioni usando la chiave escrowed. I possibili vantaggi di questa tecnica (dipendenti dall'implementazione) includono la selezione utente dell'agente escrow ( o agenti ) e la dispersione di parti della chiave in modo da evitare un singolo punto di attacco. I tipici svantaggi includono dialoghi superflui con una terza parte durante l'istanziazione della chiave crittografica e le richieste di memorizzazione degli agenti escrow.

 

2. Sistema di Cifratura Key Escrow

 

Un "key escrow encryption system" [4] è un sistema di cifratura con capacità di decifratura che permette a persone autorizzate ( utenti, funzionari di una organizzazione, e funzionari del governo), sotto certe condizioni prestabilite di decifrare testi cifrati con l'aiuto di informazioni fornite da uno o più parti fidate che mantengono speciali chiavi di recupero dei dati. Quest'ultime non sono, di solito, le stesse di quelle usate per cifrare e decifrare i dati, ma piuttosto forniscono un mezzo per determinare le chiavi dei dati cifrati/decifrati. Il termine Key escrow è usato per riferirsi alla salvaguardia di queste chiavi di recupero dati.

 

2.1 Componenti di un sistema di cifratura "Key Escrow"  

Un sistema di cifratura "escrowed" può essere diviso logicamente in tre principali componenti:

1. User Security Component (USC). E’ una dispositivo hardware o programma software che include capacità di cifratura e decifratura dei dati e nello stesso tempo funzioni di supporto per il key escrow. Tale supporto è realizzato utilizzando un campo di recupero dati (DRF, data recovery field ) per cifrare i dati.  

2.Key Escrow Component (KEC). Questa componente, gestita da un agente key escrow, è usata per  la memorizzazione, il rilascio e/o l'uso delle chiavi di recupero dei dati.

3. Data Recovery Component (DRC). Consiste di algoritmi, protocolli e attrezzature necessarie ad ottenere il testo in chiaro da quello cifrato.

Queste componenti logiche sono fortemente interagenti, e la scelta di progetto per una di loro influenza anche le altre. La figura seguente illustra l'interazione delle varie componenti. L'USC cifra il testo in chiaro con una chiave K e attacca un DRF al testo cifrato. Il DRC recupera il testo in chiaro usando informazioni contenute nel DRF e più informazioni fornite dal KEC.

 

2.2 User Security Component (USC)  

L'USC cifra e decifra i dati. Inoltre esso presenta funzioni di supporto al processo di recupero dei dati. Esso è caratterizzato da:

 

2.2.1 Dominio di applicazione  

L'USC può supportare uno o entrambi i seguenti domini:

1. Comunicazioni. Includono: chiamate telefoniche, e-mail, ed altre tipi di connessioni. La decifratura di emergenza è usata in osservanza alla legge in congiunzione con l'intercettazione (autorizzata dalla corte) delle comunicazioni.

2. Dati memorizzati. Possono essere semplicemente file di dati o più oggetti in generale. La decifratura di emergenza è usata da uno dei proprietari dei dati per recuperare le chiavi dimenticate o danneggiate, o da funzionari legali per decifrare file memorizzati su computer sequestrati sotto ordini giudiziari.  

2.2.2 Algoritmo di cifratura dei dati

I seguenti attributi sono di particolare rilevanza per la cifratura escrowed:

1. Il nome e la modalità di operazione. La modalità di operazione può influire sulla esportazione (cioè, la modalità di cifratura tripla potrebbe non essere permessa sotto una generale licenza di esportazione).

2. La lunghezza della chiave. Può influire sulla esportazione.

3. La classificazione. Un algoritmo potrebbe essere riservato o non riservato. Se non riservato, potrebbe essere pubblico o privato.  

2.2.3 Identificatori e chiavi memorizzate

L'USC memorizza identificatori e chiavi che sono usati per una decifratura di emergenza:

1. Identificatori. Possono includere un utente o un identificatore USC, identificatori per chiavi, e identificatori per il KEC o per agenti escrow.

2. Chiavi. Potrebbero includere chiavi uniche all'USC, chiavi appartenenti al suo utente, o un sistema di chiavi globale usato dal KEC. Queste potrebbero essere pubbliche o private. Le copie delle chiavi o le loro equivalenti private potrebbero essere mantenute in un archivio (escrow).  

2.2.4 Campo e meccanismo di recupero dati

Quando i dati sono cifrati con un chiave K, l'USC deve legare il testo cifrato e la chiave K ad uno o più chiavi di recupero dati, normalmente attaccando un campo di recupero dati (DRF), al testo cifrato. Il legame è caratterizzato da :

1. Colui che mantiene le chiavi di recupero dati. K può essere legata alle chiavi mantenute dagli agenti escrow del mittente, del ricevente, o di entrambi. La scelta influenza il recupero dei dati.

2. Ruolo nella distribuzione della chiave. Il DRF ed il meccanismo di collegamento possono essere integrati con i protocolli usati per trasmettere K. In questo caso, il mittente deve trasmettere un valido DRF per acquisire la chiave.

3. Contenuto del DRF: Normalmente, il DRF contiene la chiave K cifrata da una o più chiavi di recupero dati (cioè, una chiave prodotta, la chiave pubblica del mittente o del ricevente, una chiave pubblica "master" del KEC). In alcuni casi, solo alcuni dei bit di K possono essere resi disponibili attraverso il DRF così che i rimanenti bit devono essere determinati tramite algoritmi di forza bruta. Il DRF contiene anche informazioni che identificano le chiavi di recupero dati, il KEC o agenti escrow, gli algoritmi e le modalità di cifratura o il metodo di creazione del DRF. L'intero DRF può essere cifrato da una famiglia di chiavi associate con il DRC per proteggere identificatori trasmessi nel DRF. Possono essere usate la single-key o public-key cifrate. La lunghezza del DRF può influire sulla portabilità di un particolare schema per certe applicazioni, ad es. le comunicazioni radio, dove il tasso di errore è alto.

4. Trasmissione e frequenza: Il DRF precede il testo cifrato in un header di un messaggio o di un file. Con le connessioni aperte, esso può essere ritrasmesso ad intervalli regolari.

5. Validità: Il DRF può includere un Escrow Authenticator (EA) che viene verificato dal ricevente per determinare l'integrità del DRF. Alternativamente, se le chiavi pubbliche sono usate per creare il DRF, il ricevente potrebbe ricomputare il DRF e confrontare il risultato con il DRF ricevuto.

 

2.2.5 Implementazione  

Un USC può essere implementato in hardware, software, firmware, o con loro combinazioni. Se sono usati algoritmi "riservati", essi devono essere implementati in combinazione con hardware dedicati. Le implementazioni hardware potrebbero includere speciali processori preposti alla crittografia, generatori di numeri casuali, e/o high-integrity clock. I prodotti che implementano un USC alcune volte vengono chiamati "escrowed encryption products".  

2.2.6 Affidabilità

L'USC fornisce la garanzia che gli utenti non possono by-passare o disabilitare i meccanismi di key escrow. Un USC che può essere usato o modificato per "imbrogliare" è chiamato rogue ("mascalzone") USC. La possibilità di un rogue USC è fortemente dipendente dai meccanismi e dalle implementazioni di recupero dati. Distinguiamo tra single rogue, i quali possono interagire con quelli non-rogue e dual rogue, i quali interagiscono solo con altri rogue. I single-rogue presentano le più grandi minacce per il recupero dei dati di emergenza perché essi non richiedono collaborazione con il ricevente.  

2.3 Componente di Key escrow (KEC)

Il KEC è responsabile della memorizzazione di tutte le chiavi di recupero dati che provvedono alla richiesta dei dati o servizi. Esso è composto dai seguenti elementi:  

2.3.1 Ruolo nelle infrastrutture della gestione della chiave

Il KEC potrebbe essere un componente della Key Management Infrastructure (ovvero della infrastruttura della gestione della chiave) , che  a sua volta potrebbe essere un Single Key Infrastructure (cioè, un centro per la distribuzione della chiavi) o un Public-Key Infrastructure. D'altro canto gli agenti escrow potrebbero servire come autorità certificanti la chiave pubblica.  

2.3.2 Agenti escrow

Gli agenti escrow, (chiamati anche terze parti), sono responsabili per le operazioni del KEC. Essi possono essere registrati da un Key Escrow Center che coordina le loro operazioni o servono come un punto di contatto per l'USC o il DRC. Gli agenti escrow sono caratterizzati da:

1. Tipi di agenti. Potrebbero essere entità del governo o dei settori privati. I primi potrebbero restringere l'uso dei loro servizi alle agenzie di governo. I secondi, usualmente impiegati in sistemi commerciali, o privati di key escrow, potrebbero essere interni a compagnie indipendenti che offrono servizi commerciali (cioè, terze parti fidate).

2. Identificazione. Include nome e locazione.

3. Accessibilità. E’ determinata dalla locazione degli agenti escrow (cioè, locale o straniero) e dalle ore di operazione.

4. Sicurezza. Si riferisce alla bontà della protezione offerta dal KEC contro compromissioni, perdite o abusi di chiavi escrowed. Include la "riabilitazione" che è la misura della fiducia richiesta dagli agenti escrow per proteggere le chiavi escrowed dalla compromissione e per l'abilitazione del recupero dei dati.

5. Account. Garantisce l'identificazione di un agente escrow che manomette il recupero dei dati o che rilasci le chiavi a parti non autorizzate.

6. Responsabilità. Caratterizza la responsabilità degli agenti escrow nel caso le chiavi siano compromesse o diventino non utilizzabili.

7. Certificato\licenziato. Indica se gli agenti escrow sono certificati e licenziati da alcuni governi.  

2.3.3 Chiavi di recupero dei dati

Con la cifratura escrowed, tutti i dati cifrati sono legati alle chiavi di recupero dei dati escrow che abilitano ad accedere alle chiavi dei dati cifrati. Le chiavi di recupero dati sono caratterizzate da:

1. Granularità delle chiavi. Le opzioni includono:

a. Chiavi di dati cifrati. Includono chiavi di sessione, chiavi di rete, chiavi di file. Un "key distribution center" potrebbe generare, immagazzinare e distribuire alcune chiavi.

b. Chiavi prodotte. Sono uniche nell'USC.

c. Chiavi utente. Normalmente, queste sarebbero coppie di chiavi pubbliche-private usate per stabilire le chiavi di cifratura dei dati. Il KEC potrebbe servire come l'autorità che certifica la chiave pubblica dell'utente emettendo un certificato per le chiavi pubbliche dell'utente.

d. Chiavi master. Sono associate con il KEC e usate da multipli USC.

2. La divisone delle chiavi (divisione segreta, schema di partenza). Una chiave di recupero dei dati può essere divisa in multiple chiavi, con ogni componente mantenuta da un separato agente escrow. Le chiavi possono essere divise così che tutti gli n agenti escrow sono necessari per rimemorizzare una data chiave. Essi possono essere divisi usando una generale struttura di accesso, la quale permette la specificazione di sottoinsiemi arbitrari di agenti escrow che possono lavorare sempre per rimemorizzare una chiave.

3. Chi genera e distribuisce le chiavi. La chiavi possono essere generate dal KEC, dall'USC, o loro combinazioni. Se generato dall'USC, le chiavi possono essere divise e immagazzinate usando schemi di condivisione di segreti così che gli agenti escrow possono testare la validità dei loro componenti individuali senza conoscere la chiave originale. Le chiavi possono essere generate insieme, così che un utente non può nascondere "una chiave oscura" in una chiave escrowed e perciò by-passare il meccanismo di Key escrow.

4. Tempo di immagazzinamento. Le chiavi dovrebbero essere immagazzinate durante la generazione del prodotto, l'inizializzazione del sistema, o la registrazione dell'utente. Se una chiave privata dell'utente è immagazzinata, potrebbe esserlo  quando la corrispondente chiave pubblica è immessa in un’infrastruttura atta a contenerla,  ed è emanato un certificato. Un USC potrebbe inviare un dato cifrato solo agli utenti con chiave pubblica certificata segnata da agenti escrow.

5. Aggiornamenti della chiave. Alcuni sistemi potrebbero permettere che le chiavi di recupero dati siano cambiate. Alcuni aggiornamenti potrebbero essere rappresentati su richiesta.

6. Immagazzinamento completo o parziale. Una porzione di una chiave potrebbe essere immagazzinata invece di una chiave completa. In questo caso, la porzione non immagazzinata della chiave sarebbe determinata attraverso un attacco di forza bruta quando ciò è necessario per il recupero dei dati.

7. Memorizzazione delle chiavi. Potrebbe essere off-line (cioè memorizzato su floppy disk) o on-line.  

2.3.4 I servizi del recupero dei dati

Il KEC fornisce servizi, includendo rilascio di informazioni al DRC caratterizzato da:

1. Procedure di autorizzazione. Le procedure, con le quali le persone che operano o usano il DRC possono usare i servizi del KEC, possono decidere di stabilire le prove dall'identità e autorità legale per accedere al dato da decifrare.

2. Servizi forniti. Ci sono diverse opzioni:

a. Il rilascio delle chiavi di recupero dati. Questo approccio normalmente è usato quando le chiavi di recupero dati sono le chiavi di sessione, o di utenti, o di chiavi prodotte (le chiavi master non sono rilasciate). Le chiavi possono essere rilasciate entro una data prestabilita, dopo la quale sono automaticamente distrutte.

b. Rilascio delle chiavi derivate. Il KEC rilascia le chiavi derivate di recupero dei dati, per esempio, chiavi time-bounded (vincolate nel tempo) che abilitano la decifratura solo dei dati che sono stati cifrati durante un specifico periodo di tempo.

c. Chiavi decifrate. Questo approccio normalmente è usato quando le chiavi master di recupero dati sono usate per cifrare le chiavi di cifratura dei dati (o chiavi utente) nel DRF, così che il KEC non necessita di rilasciare le chiavi master al DRC.

d. Presentazione della decifratura iniziale. Ogni agente escrow fornisce un pezzo di una decifratura al DRC che combina i risultati per ottenere il testo in chiaro.

3. Trasmissione del dato a/da il DRC. Potrebbe essere manuale o elettronica.  

2.4 Salvaguardia per le chiavi escrowed

Il KEC protegge contro la compromissione o la perdita delle chiavi. Ciò può includere una combinazione di salvaguardie tecniche, procedurali e legali. Esempi sono la revisione, la separazione dei doveri, il controllo di due utenti, la sicurezza del computer, i sistemi fidati, i test e le ratifiche indipendenti, la certificazione, l’accreditamento, la gestione della configurazione, e leggi per uso improprio.  

2.4.1 Le chiavi di recupero dati : DRC

Il DRC supporta il recupero del testo in chiaro dai dati cifrati usando informazioni fornite dal KEC e dal DRF. Esso è costituito da:  

2.4.2 Capacità

Include:

1. Decifratura opportuna

2. Decifratura real-time di comunicazioni intercettate

3. Post-processing. Il DRC può decifrare le comunicazioni che sono state precedentemente intercettate e registrate

4. Trasparenza. La decifratura è possibile senza la conoscenza delle parti coinvolte

5. Indipendenza. Una volta che le chiavi sono state ottenute, il DRC può decifrare usando le proprie risorse, cioè indipendentemente dal KEC.  

2.4.3 La decifratura dei dati per il recupero delle chiavi

Per decifrare i dati, il DRC deve ottenere la chiave K di cifratura del dato.

1. Accede attraverso il mittente o il ricevente. Un fattore critico è se K può essere riottenuta usando le chiavi di recupero dati associate con il mittente, il ricevente, o altri parti. Se l'accesso è possibile solo attraverso le chiavi mantenute dagli agenti escrow del mittente, il DRC deve ottenere le chiavi escrowed dei dati per tutte le parti che sono trasmesse nei messaggi ad un particolare utente, possibilmente precludendo la decifratura real-time, specialmente se le parti sono in differenti paesi e usando differenti agenti escrow. Allo stesso modo, se l'accesso è possibile solo attraverso le chiavi mantenute dagli agenti escrow del ricevente, la decifratura real-time di tutti i messaggi trasmessi da un particolare utente può essere impossibile. Se il recupero dei dati è possibile usando le chiavi mantenute da altri insiemi di agenti escrow, allora il DRC può decifrare le comunicazioni intercettate a/da un particolare USC in real-time una volta che viene ottenuta la chiave usata dall'USC. Un sistema può fornire questa capacità per comunicazioni simultanee in two-way (esempio, le chiamate telefoniche) richiedendo che la stessa chiave K deve essere usata tra gli utenti della conversazione.

2. Frequenza delle iterazioni con il KEC. Il DRC può essere richiesto per interagire con il KEC una volta per la chiave di cifratura del dato, o una volta per l'USC, o una volta per l'utente. Dapprima si richiede una connessione on-line tra il DRC e il KEC allo scopo di supportare decifratura real-time delle comunicazione quando la chiave di sessione cambia durante la conversazione.

3. Necessario per forza bruta. Se gli agenti escrow restituiscono parzialmente le chiavi al DRC, allora il DRC deve usare la forza bruta per determinare i rimanenti bit.  

2.4.4 Salvaguardia della decifratura

Il DRC può usare salvaguardie tecniche, procedurali e legali per controllare che sia ristretto ad un particolare periodo di tempo (come autorizzato dalla corte).Queste salvaguardie stabiliscono restrizioni imposte dal KEC nel rilascio delle chiavi. I meccanismi di autenticazione potrebbero essere usati per prevenire che il DRC possa utilizzare le chiavi che esso acquisisce per creare e sostituire falsi messaggi. 

2.5 Sistemi di Key Escrow

Presenteremo di seguito diversi sistemi di Key Escrow progettati dai maggiori ricercatori nel campo della crittografia, clicca qui per visualizzarli.

 

3. Escrowed Encryption Standard e Key Escrow System

 

Le comunicazioni trasmesse attraverso il sistema telefonico o le reti di computer sono vulnerabili alle intercettazioni non autorizzate. Per proteggersi contro questa minaccia, le comunicazioni possono essere cifrate prima che vengano trasmesse e decifrate al momento della ricezione.  

Normalmente i processi di cifratura e decifratura sono parametrizzati da una chiave segreta che è condivisa sia dal mittente che dal ricevente per l’intera durata della comunicazione. Se il metodo di cifratura è abbastanza forte, un intruso non  sarà in grado di determinare la chiave segreta e quindi intromettersi nelle comunicazioni. La cifratura, oltre a proteggere contro l’intercettazione di informazione da parte di non autorizzati, viene usata per nascondere attività criminali. Rendendo le comunicazioni immuni da intercettazioni legali, la cifratura minaccia le forze dell’ordine e la sicurezza pubblica.  

L’AT&T commercializzò un dispositivo crittografico nel 1993. In risposta a ciò, il 16 Aprile 1993, il governo degli Stati Uniti annunciò una nuova iniziativa di cifratura che si proponeva di offrire un alto livello di sicurezza e privacy delle comunicazioni senza mettere in pericolo la sicurezza pubblica e le forze dell’ordine.

L’iniziativa è basata su di un specifico dispositivo hardware di cifratura (Clipper chip [7]) resistente alle manomissioni ed un sistema di Key Escrow che dà al governo l’accesso ad una chiave (Device Unique Key) che sblocca tutte le comunicazioni cifrate dal chip.

La chiave è generata e programmata sul chip dopo che questo viene fabbricato, ma prima che esso venga piazzato in un qualche prodotto per la sicurezza. La chiave, inoltre, viene divisa in due componenti, che sono cifrate e date in custodia a separati agenti di escrow. Un ufficiale del governo in seguito ad un’autorizzazione legale deve acquisire i componenti da entrambi gli agenti per ottenere la chiave. Questi componenti sono combinati all’interno di uno speciale processore che è capace di decifrare le comunicazioni intercettate. Il 4 febbraio 1994, il governo annunciò l’adozione della tecnologia  “Escrowed Encryption Standard” (EES) [5]. L’EES è uno standard del governo per comunicazioni telefoniche riservate, il che include voce, fax, e dati trasmessi su sistemi che usano modem o sistemi similari.  

 

3.1 EES  

Lo standard specifica che ogni dispositivo deve avere: 

1. Device Unique Identifier (UID) a 32 bit;  

2. Device Unique Key (KU) a 80 bit, fornita al momento della costruzione e “depositata” presso due agenzie;  

3. Family Key (KF) a 80 bit, comune a tutti i chip; 

4. Algoritmo di cifratura;

 

Nè la KU, nè la KF servono per cifrare, ma forniscono i mezzi con i quali un ufficiale autorizzato dal governo può ottenere la chiave segreta di cifratura e guadagnare l’accesso alle comunicazioni. 

L’algoritmo di cifratura definito dallo standard è lo SKIPJACK [6]. Esso è stato progettato dal National Security Agency (NSA) ed era riservato per prevenire che qualcuno lo rompesse. Per aumentare la fiducia degli utenti nella forza dell’algoritmo, il governo degli U.S.A. invitò vari crittoanalisti esterni a revisionare l’algoritmo. Alla fine  conclusero che non vi erano rischi significativi che l’algoritmo avesse “trapdoor” o potesse essere rotto da qualche metodo d’attacco conosciuto. 

Successivamente furono annunciati due chip: il Clipper [7] ed il Capstone che implementavano l’algoritmo SKIPJACK. Il Clipper Chip fu poi ridenominato Fortezza mentre il Capstone divenne un dispositivo crittografico chiamato Tessera. Il programma iniziale (che non aveva nome) fu chiamato Mosaic. Lo SKIPJACK fu reso pubblico nel maggio 1998. 

L’EES usa chiavi ad 80 bit ed un Law Enforcement Access Field (LEAF). Quest’ultimo è trasmesso con tutte le comunicazioni cifrate e fornisce un dispositivo per la trasmissione sicura della chiave per le comunicazioni, per esempio la chiave di sessione (KS), in modo che solo un ufficiale autorizzato dal governo possa ottenere la KS e decifrare le comunicazioni.   

 

3.2 Applicazione

Affinché due persone possano usare l’EES [5] per cifrare le loro comunicazioni telefoniche, ciascuna deve avere un dispositivo di sicurezza resistente alle manomissioni che contiene un chip di cifratura escrow. Il dispositivo di sicurezza è responsabile per l’implementazione dei protocolli necessari per  stabilire il canale sicuro.

La KS può essere negoziata, per esempio, usando un metodo di accordo su chiave pubblica, che permette ai due dispositivi di computare una chiave segreta condivisa scambiando solo i valori pubblici. Questo è l’approccio usato dalla AT&T per il “3600 Telephone Security Device (TSD)”.

Il TSD si inserisce nel telefono ed è attivato premendo un pulsante. Una volta che si è stabilita la KS per l’uso con un chip di cifratura escrow, essa è passata al chip ed è invocata un operazione per generare il LEAF dalla KS ed un vettore d’inizializzazione (IV), che può essere generato dal chip.

Il LEAF è, quindi, trasmesso insieme al IV al chip ricevente per la sincronizzazione e la validazione del LEAF. Sincronizzatisi i due chip, KS è usata per cifrare e decifrare messaggi in entrambe le direzioni. Il flusso del messaggio per le comunicazioni vocali viene prima digitalizzato. In una conversazione a due direzioni come una conversazione telefonica, il dispositivo di sicurezza di ognuno trasmette un IV ed un LEAF computato dal chip del dispositivo. Comunque, entrambi i dispositivi usano la stessa chiave di sessione per cifrare le comunicazioni trasmesse e per decifrare le comunicazioni ricevute. 

Nella figura seguente esplicitiamo lo schema di comunicazione tra i due chip dove M è il messaggio e C la sua corrispondente cifratura. Da notare l'utilizzo dell'inverso dello SKIPJACK [6] che serve a computare il messaggio iniziale.

3.3 SKIPJACK

L’algoritmo di cifratura SKIPJACK [6] trasforma un blocco di input a 64 bit in un blocco a 64 bit usando una chiave segreta a 80 bit (la stessa viene usata per la decifratura). SKIPJACK ha la stessa grandezza dei blocchi del DES [1], ma la sua chiave è più lunga di 24 bit. Esso è utilizzato da un algoritmo di scambio di chiavi (KEA) basato su un protocollo di Diffie-Hellman per ridurre i valori finali del KEA in una chiave a 80 bit.

   

3.3.1 Struttura base

SKIPJACK [6] codifica blocchi di dati di 8 byte alternando tra le due regole A e B. Esso richiede 32 iterazioni su 4 parole da 16 bit ciascuna: w1 w2 w3 w4. Inoltre vi è un contatore (counter), inizializzato ad 1, che viene utilizzato per contare le iterazioni.

L’input è wi0 , 1 £ i £ 4. L’algoritmo segue la regola A per 8 passi, poi passa alla regola B per altri 8 passi. Ritorna alla regola A per i i successivi 8 passi, poi completa la cifratura con 8 passi della regola B. Il contatore è incrementato di una unità dopo ogni passo. L’output è wi32 , 1 £ i £ 4.

 

Vediamo in dettaglio come lavorano le regole A e B: un passo della regola A, utilizza una permutazione G, per realizzare quanto segue:  

a. G permuta w1;

b. il nuovo w1 è lo xor dell’output di G, del contatore e di w4;

c. le parole w2 e w3 shiftano verso destra (diventano rispettivamente w3 e w4);

d. il nuovo w2 è l’output di G;

e. il contatore è incrementato di uno.

La regola B lavora in modo simile.  

Regola A

Regola B

REGOLA ‘A’ :

w1k+1 ¬ Gk(w1k) Å w4k Å counterk         

w2k+1 ¬ Gk(w1k)                                  

w3k+1 ¬ w2k                                         

w4k+1 ¬ w3k

 

REGOLA ‘B’ :

w1k+1 ¬ w4k

w2k+1 ¬ Gk(w1k)

w3k+1 ¬ w1k Å w2k Å counterk

w4k+1 ¬ w3k

 

3.3.2 Permutazione G  

La permutazione G prende in input una parola e ne restituisce un’altra in output. La sua struttura consiste di 4 differenti round in ognuno dei quali viene fatta una sostituzione sfruttando una tabella (F-Table) di valori prefissati; inoltre ogni round utilizza anche uno dei 10 byte della chiave cv.

Definiamo : 

Gk(w = g1||g2) = g5||g6

gi = F(gi-1Å cv4k+i-3) Å gi-2     i=3,4,5,6  

dove:

Quindi esplicitando i 4 round si ha :  

·          g3 = F(g2Å cv4k) Å g1

·          g4 = F(g3Å cv4k+1) Å g2

·          g5 = F(g4Å cv4k+2) Å g3

·          g6 = F(g5Å cv4k+3) Å g4

 

 

3.3.3 Funzione F e F-Table

La F-Table è una tavola di valori esadecimali prefissati di dimensione 16x16 :

 

La funzione F riceve in input un byte che viene diviso in due componenti di 4 bit: parte alta e parte bassa. La parte alta dell’input va ad indicizzare la riga della F-Table mentre la parte bassa indicizza la colonna, individuando così un elemento nella tabella. Ad esempio, F(7A)=d6.  

 

3.3.4 Decifratura  

La fase di decodifica qui descritta ha una struttura analoga a quella vista per la codifica. In luogo delle regole A e B, troviamo le loro rispettive inverse : regola A-1 e regola B-1 . 

REGOLA ‘A-1  

w1k-1=[Gk-1]-1(w2k)

w2k-1=w3k

w3k-1=w4k

w4k-1=w1k Å w2k Å counterk-1

 

REGOLA ‘B-1  

w1k-1=[Gk-1]-1(w2k)

w2k-1=[Gk-1]-1(w2k) Å w3k Å counterk-1

w3k-1=w4k

w4k-1=w1k

L’algoritmo ha come input il testo cifrato: w132 w232 w332 w432, in questo caso k parte da 32; il contatore è inizializzato a 32.

Si inizia con 8 iterazioni usando la regola B-1, poi 8 usando la regola A-1, si ritorna alla regola B-1 per altre 8 iterazioni per poi concludere con le ultime 8 usando nuovamente la regola A-1.

A differenza della fase di cifratura, il contatore viene decrementato ad ogni passo. Alla fine dell’algoritmo si ottiene il testo in chiaro: w10 w20 w30 w40.

Si utilizza l’inversa della permutazione G, G-1, che è così definita:  

[Gk]-1(w = g5||g6) = g1||g2

gi-2 = F(gi-1Å cv4k+i-3) Å gi      

Schematicamente:

 

   

3.3.5 Modalità operative  

SKIPJACK [6] può essere usato in una o più delle quattro modalità operative definite nel FIPS 81 per l’uso con il DES [1]: Eletronic Codebook (ECB), Cipher Block Chaining (CBC), Output Feedback (OFB) a 64 bit, e Cipher Feedback (CFB) a 1, 8, 16, 32, o 64 bit.

Nei seguenti schemi PT e CT indicano, rispettivamente, il testo in chiaro ed il testo cifrato.

Output Feedback (OFB)

Cipher feedback (CFB)

Codebook

Cipher block chaining (CBC)

 

3.4 Metodo di Creazione di un LEAF

Sebbene la KS è trasmessa nel LEAF, quest’ultimo è usato solo per consentire accessi alle forze dell’ordine e non per la distribuzione della KS. Un chip ricevente non è in grado di estrarre la KS dal LEAF. Il LEAF è computato come una funzione della chiave di sessione (KS), un vettore di inizializzazione (IV), un Device Unique Identifier (UID), e la Device Unique Key (KU). Il blocco risultante include la KS cifrata dalla KU (80 bit), UID (32 bit), e un Escrow Authenticator (EA) a 16 bit, il tutto cifrato dalla Family Key (KF). La KS è protetta da due strati di cifratura in modo che non possa essere ottenuta senza entrambe la KF e KU. Lo scopo dell’EA è proteggere il LEAF contro manomissioni che potrebbero ostacolare un ufficiale autorizzato dal governo nel recuperare la KS

Di particolare interesse sono le applicazioni rogue che interopererebbero con quelle legittime, trasmettendo un falso LEAF che è accettato come valido dal chip ricevente, ma si rivela inutile per il governo. Un'applicazione non interoperabile è di minore interesse dato che una persona intenta ad evitare l’accesso del governo ha la possibilità di usare mezzi alternativi di cifratura quando l’interoperabilità non è necessaria.

 

 

3.5 Panoramica del Key Escrow System (KES)  

Il KES [5] fornisce i mezzi con i quali un ufficiale del governo con un’autorizzazione legale può decifrare le comunicazioni cifrate da un particolare dispositivo EES [5], ma dove l’accesso non autorizzato alle comunicazioni è effettivamente prevenuto attraverso un ampio insieme di difese. L’operazione del KES coinvolge il Program Manager del Key Escrow, due Agenti del Key Escrow, due agenti del Family Key, un rappresentante delle attrezzature per la programmazione, il Dipartimento di Giustizia, e agenzie di forze dell’ordine. Le responsabilità di queste agenzie ed individui sono divise in modo che è richiesta la loro cooperazione per far funzionare il sistema.

 

3.5.1 Implementazione in fasi

Attualmente si sta implementando il KES in quattro fasi. Ci concentreremo sullo stato del sistema dopo l’implementazione della Fase 2 avvenuta nel Maggio 1994. Il sistema che va attraverso la Fase 2 è chiamato sistema provvisorio. Quest’ultimo è caratterizzato da una combinazione di procedure manuali e automatiche per gestire i dati di Key Escrow. Molte delle procedure manuali verranno automatizzate nel Sistema Finale (Target System) per fornire maggiore efficienza.

 

3.5.2 Sistema provvisorio

I chip Capstone e Clipper [7] sono programmati in lotti all’interno di una attrezzatura sicura. Durante la sessione di programmazione, gli Ufficiali di escrow rappresentanti di entrambi gli agenti di escrow devono essere presenti insieme ad un rappresentante delle attrezzature per la programmazione che opera con il dispositivo di programmazione del chip. Prima di ogni sessione di programmazione, ognuno degli agenti escrow genera un Numero Chiave ed un Seme Random per l’uso in quella sessione. Questi valori sono generati su PC usando il Sistema Avanzato di Accesso tramite Smart Card della NIST.

 Allo stesso modo, in una fase antecedente alla prima sessione, ognuno degli agenti della Family Key genera un componente della Family Key. I valori random generati dagli agenti escrow e gli agenti della Family Key sono caricati in una workstation all’inizio di una sessione di programmazione.

 I componenti della Family Key sono combinati per formare la Family Key, ed i Numeri Chiave per formare una Key Component Enciphering Key (KCK). I Semi Random sono combinati con un input addizionale random per generare un flusso di Device Unique Keys (KU) random per i chip. Ogni KU è programmata in un chip insieme con un Device Unique Identifier (UID) e la Family Key (KF). 

Quando la KU è generata, due componenti della Chiave (KC1 e KC2) sono creati in modo tale che KU sia il loro or-esclusivo (XOR). I componenti KC1 e KC2 sono cifrati con KCK e scritti su floppy disk. Un insieme di componenti è dato ad ognuno dei due agenti di Escrow per tenerli al sicuro. 

I componenti della chiave cifrata d’Escrow (EKC1 e EKC2) sono rilasciati ad un ufficiale autorizzato dal governo, solo quando il governo è stato autorizzato per intercettare le comunicazioni degli individui che usano un dispositivo con un chip contenente la KU. Quando l’ufficiale scopre delle comunicazioni cifrate in una intercettazione legalmente autorizzata, le comunicazioni sono passate ad un processore di decifratura per Key Escrow, il quale decifra il LEAF ed estrae l’UID del chip. L’UID è quindi presentato ai due agenti escrow insieme con la certificazione dell’autorità legale per condurre l’intercettazione. In tutti i casi, un rappresentante del governo coinvolto nell’investigazione deve confermare che si sta conducendo un’intercettazione legale. 

Gli ufficiali d’Escrow estraggono i componenti della chiave cifrata (EKC1 e EKC2) dai dischi di immagazzinamento, e portano i dischi con i componenti della chiave estratta ed i loro corrispondenti Numeri Chiave alla agenzia delle forze dell’ordine. I valori sono caricati nel processore di decifratura, dove i Numeri Chiave sono combinati per formare la KCK, e gli EKC1 e EKC2 sono decifrati dalla KCK e combinati per formare la Unique Key del chip (KU). Questa è quindi usata per decifrare la Chiave di Sessione (KS) per ogni comunicazione, che a sua volta è usata per decifrare la comunicazione.

 Un agente delle forze dell’ordine cancella KU dal Processore di Decifratura non più tardi della fine del periodo di sorveglianza autorizzata. A quel punto viene mandata una conferma autenticata della distruzione della chiave ad ogni agente escrow. Più registrazioni di verifiche ufficiali sono mantenute per l’intero KES [5] per essere sicuri che le chiavi vengano utilizzate solo da autorizzati e non trattenute.

 

3.5.3 Sistema finale

Il sistema finale sarà automatizzato per ridurre il coinvolgimento umano. In più, sarà costruito utilizzando prodotti apprezzati, e principi di design di software fidato per fornire un’alta garanzia che il sistema dia una forte sicurezza. La meta del design del sistema finale è quello di permettere ad un agente delle forze dell’ordine di decifrare comunicazioni cifrate entro due ore dopo che una valida certificazione viene presentata ad ogni agente Escrow.

 

3.5.4 Sicurezza del Key Escrow System

Esistono due classi principali di minacce:  

Il KES [5] è progettato per prevenire accessi non autorizzati ai dati “sensitive”. Alcuni dei dati usati dal KES, incluso l’algoritmo SKIPJACK [6] ed il metodo di creazione del LEAF, sono classificati come segreti mentre altri dati, incluso le Unique Key, i Key Component, le Family Key, i Numeri Chiave, ed i Semi Random sono considerati dati “sensitive” non riservati. Il KES protegge tutti i dati “sensitive”, che siano riservati o meno ed  è inoltre progettato per resistere ai tentativi di rendere il sistema non operabile. Questo include attacchi mirati alla distruzione dei dati di key escrow. Sono state prese misure per prevenire attacchi probabili, mentre è impossibile prevenire ogni concepibile attacco “denial of service”.

 Il KES protegge sia contro attacchi interni che esterni. Un “interno” è chiunque sia autorizzato ad usare ogni parte del sistema. Dato che questi hanno più accesso al sistema rispetto agli “esterni”, molte difese mettono in conto esplicitamente le minacce interne.  

 

3.6 Difese  

La seguente è una lista parziale di difese impiegate dal KES [5] così come opera al giorno d’oggi.

 

3.6.1 Separazione dei doveri  

Il principio della separazione dei doveri è adottato per tutto il KES [5]. Gli ufficiali di escrow rappresentanti gli agenti di escrow testimoniano la programmazione del chip, ma non hanno il permesso di programmarli. Allo stesso modo, essi inseriscono i dischi con gli Encrypted Key Component in un processore di decifratura, ma non hanno il permesso di usarlo per decifrare le comunicazioni, inoltre, essi non sono in possesso di questo processore. Gli individui che programmano i chip, non possono eseguire le funzioni né degli agenti di escrow, nè degli ufficiali delle forze dell’ordine. Gli agenti della Family Key KF, non mantengono mai i Key Component e gli agenti di escrow non hanno mai accesso alla Family Key, dato che non ne hanno bisogno, per decifrare un LEAF. Il Program Manager supervisiona l’operazione dell’intero sistema, ma non ha accesso alle Key Component, a meno che non ci sia la presenza di un’ufficiale escrow.

 

3.6.2 Segretezza della chiave

Il KES [5] è progettato cosicché nessun individuo ha mai bisogno di vedere o conoscere i valori di ogni chiave crittografica o componente di chiave. Le chiavi ed  i loro componenti, sono generati con dei computer e non sono mai visualizzate in una forma comprensibile per l’uomo.

 

3.6.3 Suddivisione della conoscenza

La suddivisione della conoscenza, è stata utilizzata dall’industria e dall’esercito per molti anni, essa viene impiegata dividendo la conoscenza di qualche valore critico tra due o più persone; per es. una banca potrebbe richiedere due combinazioni per aprire la cassaforte, una conosciuta da un vicepresidente e l’altra da un secondo vicepresidente. Un sistema missilistico, potrebbe richiedere che due codici siano inseriti da differenti individui per lanciare un missile. Il KES [5] usa la conoscenza suddivisa per proteggere chiavi critiche. La conoscenza di un Device Unique Key (KU) è divisa in due Key Component, ed ogni componente è mantenuto da un differente agente escrow. Così perfino se uno dei componenti è compromesso, KU sarà ancora sicura. Solo quando i due Key Component sono combinati all’interno di un processore di decifratura allora la KU sarà recuperabile. Allo stesso modo, le Key Component Enciphering Keys sono divise tra i due agenti escrow e la Family Key è divisa tra i due agenti della Family Key.

 

3.6.4 Ridondanza

La ridondanza è usata nel KES [5] per proteggere contro "denial of service" accidentali o intenzionali. Ogni agente escrow fa un backup delle chiavi che può essere usato se le Key Component vengono distrutte. Quando le Key Component vengono generate, vengono prodotte quattro copie delle Key Component cifrate dell’agente di escrow. Ognuno dei due ufficiali di escrow rappresentanti gli agenti di escrow, porta due copie, che inseriscono un paio nell’unità principale, e l’altro paio nell’unità di backup.

 

3.6.5 Verifica

Il KES [5] fa largo uso di logging e verifica. Per ogni occorrenza dei seguenti eventi viene fatto un log:  

a. Generazione delle componenti necessarie alla generazione delle chiavi.

b. Immagazzinamento di queste ultime.

c. Richieste dei componenti chiave.

d. Conferma della certificazione del rilascio di una chiave.

e. Notifica che una Unique Key è stata cancellata nel processore di decifratura.  

Gli originali dei log sono conservati in casseforti per proteggerli da perdite, distruzioni e manomissioni.

 

3.6.6 Generazione delle chiavi

I semi Random sono combinati con input arbritari dalla tastiera per generare un flusso di coppie di valori. Uno di questi valori forma una Unique Key (KU) e l’altro un Key Component (KC1). Di questi valori viene fatto lo XOR per formare un secondo Key Component (KC2); in questo modo KU è lo XOR di KC1 e KC2. KC1 e KC2 sono cifrati con KCK per formare i Key Componet cifrati (EKC1 e EKC2). Tutti e tre i valori sono separati , ed ognuno è accoppiato con il prossimo UID nella sequenza. Il flusso di coppie KU/UID viene passato al Dispositivo di Programmazione, dove ogni coppia è programmata in un chip insieme alla Family Key. Il primo insieme di Key Component cifrati viene salvato insieme ad i corrispondenti UID in quattro identici floppy. Questi floppy sono assemblati in contenitori anti-manomissione e conservati in casseforti finché la sessione di programmazione non è completa.

 

3.7 Procedure di autorizzazione per il rilascio delle Key Component

I Key Component possono essere rilasciati solo in congiunzione con un’autorizzazione all’intercettazione legittima e solo in accordo alle procedure stabilite dall’U.S. Attorney General. Quest’ultimo specifica diverse procedure per il rilascio di Key Component per intercettazioni, poi una richiesta viene sottoposta agli agenti escrow. La richiesta (è essenzialmente un certificato) deve contenere gli estremi per identificare l’agenzia che richiede l’investigazione e gli individui su cui si vuole indagare, specificando la legittima autorizzazione all’intercettazione, la sua durata, il Device Unique Identifier (UID) delle Key Component e il numero seriale del processore di decifratura del Key Escrow che è stato utilizzato. Inoltre, un procuratore governativo deve essere coinvolto nel procedimento. Il dipartimento di giustizia condurrà delle inchieste atte a verificare che le Key Component per un chip sono state rilasciate solo in congiunzione con un’autorizzazione all’intercettazione legittima, che sono state utilizzate solo dall’agenzia abilitata all’intercettazione della comunicazione cifrata con il chip, e che l’abilitazione dell’agenzia per la decifratura delle comunicazioni è terminata alla fine della fase di sorveglianza elettronica dell’investigazione.

 

3.7.1 Estrazione e trasporto delle Key Component

Una volta che un agente di escrow ha ricevuto la richiesta delle Key Component associate con uno o più UID, gli ufficiali escrow designati, si occupano di localizzare i dischi associati con le Key Component cifrate, che si trovano in casseforti. Poiché le casseforti hanno un doppio meccanismo di protezione,due ufficiali escrow devono essere presenti per accedere ai dischi immagazzinati. Essi rimuovono i dischi che contengono i Numeri Chiave necessari a decifrare le particolari Key Component. Gli ufficiali escrow inseriscono i dischi rimossi in un PC ed eseguono un programma di estrazione della chiave che localizza le Key Component cifrate per i dati UID e le riscrive, insieme ai loro UID, in un altro disco. Gli ufficiali ripongono la chiave estratta e i dischi delle Key Components cifrate in un contenitore resistente alle manomissioni e restituiscono i dischi contenenti le Key Component cifrate alle casseforti. Nel Sistema Finale, l’intero procedimento è automatizzato.

 

3.7.2 Key Escrow Decryption

Una volta che un’agenzia ha ottenuto l’ordine ad intercettare una particolare linea telefonica, l’ordine viene passato ad un provider delle telecomunicazioni per ottenere l’accesso all’associata comunicazione. Normalmente, l’agenzia affitta una linea dal provider che trasmette le comunicazioni intercettate al centro di monitoraggio designato dal governo. Se le comunicazioni sospette sono state cifrate, la linea consentirà di trasferire il flusso della comunicazione al processore di decifratura del Key Escrow. Per comunicazioni vocali, un ulteriore dispositivo convertirà il flusso digitale decifrato in flusso vocale.

 

3.7.3 Inizializzazione del processore di decifratura di Key Escrow

Prima che il processore di decifratura venga utilizzato per decifrare le comunicazioni fra Clipper [7], deve essere inizializzato con la Key Family (KF) che viene ottenuta facendo lo XOR delle Family Key Component contenute in dischi appartenenti agli agenti di Family Key.

 

3.7.4 Estrazione del LEAF e dell’UID

Il processore di decifratura riconosce le comunicazioni cifrate con un escrowed encryption chip, estrae il LEAF trasmesso in ogni direzione e decifra i due LEAF utilizzando la Family Key per ottenere gli UID. Una volta che gli UID sono stati estratti, vengono visualizzati sullo schermo. Sebbene il processore di decifratura estrae gli UID sia per il chiamante che per il chiamato, la Unique Key dell’uno è sufficiente per decifrare entrambe alla fine della conversazione. Ciò perché la stessa chiave di sessione è utilizzata per le comunicazioni in entrambe le direzioni.  

 

3.7.5 Caricamento delle Key Component e Numeri Chiave

Una volta che gli ufficiali escrow giungono con i loro dischi dei Numeri chiave (KN1 e KN2) e i dischi contenenti la chiave estratta dai Key Components cifrati (EKC1 e EKC2), essi verificano che il numero seriale del processore di decifratura sia identico a quello specificato nel certificato di richiesta. Se ciò è vero, allora rimuovono i dischi dai loro contenitori anti-manomissione e li caricano nel processore di decifratura che combina ogni coppia di valori KN1 e KN2 ed utilizza il risultante Key Component Enciphering Key (KCK) per decifrare i valori EKC1 e EKC2 che erano stati cifrati con la chiave. 

I Key Components (KC1 e KC2) vengono poi combinati con lo XOR per formare l’Unique Key. I dischi contenenti la chiave estratta vengono quindi distrutti ed i dischi contenenti i Numeri Chiave vengono restituiti agli ufficiali di escrow che li ripongono in nuovi contenitori resistenti alle manomissioni.

 

3.7.6 Decifratura

Una volta che il processore di decifratura ha ottenuto l’Unique Key (KU) per un dato chip, è pronto per decifrare le comunicazioni cifrate con il chip. Per fare ciò, il processore di decifratura intercetta ogni LEAF trasmesso dal chip all’inizio di una conversazione. Utilizzando la Family Key, esso decifra il LEAF ed estrae l’UID e la chiave di sessione cifrata (KS). Utilizza poi KU per decifrare KS e verifica l’Escrow Authenticator (EA). Assunto che l’EA è valido, KS è utilizzata per decifrare le comunicazioni trasmesse in entrambe le direzioni.

 

3.7.7 Termine della decifratura

Quando la fase di sorveglianza elettronica di un’investigazione è terminata, l’ufficiale delle forze dell’ordine, manda un segnale per distruggere l’Unique Key nel processore di decifratura cosicché le successive comunicazioni non possono essere decifrate. Quando le chiavi vengono cancellate, una conferma autenticata della loro distruzione è mandata agli agenti di escrow. Se questi ultimi non riceveranno la notifica dell’avvenuta distruzione della Unique Key entro un dato periodo di tempo, notificheranno l’accaduto al dipartimento di giustizia che investigherà sull’incidente.