Le Autorità di Certificazione per ottenere la chiave pubblica

Se un mittente X non può ottenere direttamente da Y la chiave pubblica di quest’ultimo Kyp, deve cercare di ottenerla da un terzo fidato W che faccia da garante. Questo dipende dalla fondamentale differenza che distingue la firma autografa da quella di tipo elettronico: la prima è direttamente riconducibile all’identità di chi l’ha prodotta, mentre la seconda non possiede questa proprietà (anche se ne ha, come abbiamo visto, altre).

 
[adsense:block:adcontenuto]
 
Un modo pratico per superare il problema è richiedere che il garante sottoscriva la chiave Kyp con la propria firma, assunto naturalmente che X disponga della chiave pubblica di W Kwp ottenuta in modo fidato. Se anche questo non è vero, il problema si sposta coinvolgendo un altro come garante, e così via fino ad arrivare ad un garante fidato (cioè di cui si dispone di una chiave pubblica affidabile).
 
Per svolgere questa funzione di garanzia in modo controllato e ad uso generale, sono state istituite le cosiddette Autorità di Certificazione (AC). La loro responsabilità è di verificare l’identità degli utenti che registrano la propria chiave pubblica, generare, per il legittimo possessore e per chiunque ne faccia richiesta, documenti elettronici detti certificati che contengono la chiave pubblica sottoscritta dalla AC, mantenere aggiornate le liste degli utenti registrati per facilitarne la ricerca nonché la lista dei certificati revocati. All’estero talvolta le autorità coinvolte sono due, quella che registra l’utente (Registration Authority) verificandone l’identità, e quella che mantiene il data base delle chiavi e certificati (AC): il legislatore italiano ha rifiutato questo sdoppiamento di ruoli.
 
[adsense:block:adcontenuto]
 

Registrazione di un utente ed emissione dei certificati

La registrazione di un utente ha lo scopo di verificarne l’identità e di istituire tra utente e AC una connessione sicura per la trasmissione delle chiavi pubbliche da parte dell’utente. Questo secondo aspetto non deve stupire perché, pur essendo le chiavi pubbliche liberamente trasmissibili, la AC deve però assicurarsi che la chiave da inserire nelle liste provenga effettivamente dall’utente registrato, e ciò è ottenuto mediante l’invio su un canale sicuro ‘personalizzato’, ad esempio utilizzando un algoritmo di cifratura simmetrica con una chiave specifica per le comunicazioni AC/utente registrato. La registrazione avviene pertanto attraverso i seguenti passi:

  • 1. l’utente fornisce, ai fini della sua identificazione, tutta la documentazione richiesta dalla AC;
  • 2. la AC attribuisce all’utente ‘validato’ un identificatore univoco che faciliterà le successive operazioni di ricerca;
  • 3. la AC inserisce l’utente nel data base degli utenti registrati;
  • 4. la AC fornisce all’utente attraverso un canale sicuro la chiave che l’utente utilizzerà per la richiesta di certificazione delle sue chiavi pubbliche.
 
Ogni volta che l’utente genera una coppia chiave pubblica/chiave privata, le fasi da attuare per ottenerne la certificazione sono le seguenti:
  • 1. l’utente invia in forma ‘autenticata’ la chiave pubblica in precedenza da lui generata, sottoscritta dalla firma ottenuta con la corrispondente chiave privata (questo dà garanzia che l’utente possieda effettivamente quest’ultima ma in più, essendo una sottoscrizione, difende l’utente da possibili modifiche della chiave pubblica presso la AC), effettuando l’invio cifrato con la chiave fornita dalla AC;
  • 2. la AC genera il certificato che include: i dati dell’utente, compreso il suo identificativo, la sua chiave pubblica, la sua firma e la firma di autenticazione della AC, altre informazioni relative all’uso del certificato nonché il suo periodo di validità (fig. 4);
  • 3. il certificato viene inviato all’utente;
  • 4. l’inclusione del nuovo certificato nel o nei cataloghi gestiti dalla AC per un accesso di prelievo pubblico.
 
La firma della AC apposta al certificato deve essere naturalmente fidata: per questo anche le AC hanno un certificato pubblico che può essere autofirmato o firmato da una AC di livello superiore. Nel primo caso, il certificato deve essere stato ottenuto attraverso un canale sicuro; è prassi, ad esempio, includere nei programmi che fanno uso di queste tecnologie (ad esempio i browser) i certificati pubblici delle principali AC mondiali, mediante i quali eventualmente verificare certificati di AC secondarie e/o di utenti finali. Per l’Italia il ruolo principale è svolto dall’AIPA (Autorità per l’Informatica nella Pubblica Amministrazione) che pubblica documentazione tecnica e normative sull’argomento , e mantiene anche il registro pubblico dei certificatori italiani.
 
[adsense:block:adcontenuto]
 
Il periodo di validità del certificato garantisce, ai fini della sicurezza, che una coppia chiave pubblica/privata ‘scada’ trascorso un certo tempo dalla sua generazione. Quando ciò accade, il certificato viene revocato, costringendo a quel punto l’utente a generare una nuova coppia di chiavi, e rendendo in questo modo meno probabili attacchi da parte di intrusi grazie al periodico rinnovo delle chiavi.
 
Poiché la sicurezza è però strettamente legata anche al grado di segretezza con cui l’utente conserva la sua chiave privata valida, qualora egli per qualsiasi ragione ritenga non più sicuro l’utilizzo di questa chiave (per esempio ha dimenticato il supporto su cui era memorizzata in luogo accessibile e non sorvegliato per un certo tempo, oppure lo ha smarrito), può darne segnalazione alla AC che immediatamente provvede a dichiarare revocato il certificato anche se non scaduto.
 
Un certificato revocato dichiara non più autorizzato l’uso della corrispondente chiave pubblica da parte di potenziali mittenti, né di quella privata da parte del possessore ai fini di firma. Per rendere consapevoli tutti della revoca, la AC mantiene un catalogo dei certificati revocati: è responsabilità di un mittente verificare che, qualora sia in possesso della chiave pubblica del destinatario, questa non sia stata invalidata, controllando prima di usarla che il relativo certificato non sia stato nel frattempo revocato. Resta comunque valido, ai fini della verifica a posteriori della sottoscrizione, un certificato che, al momento della firma, fosse valido ma successivamente revocato. Per questo è conveniente mantenere collegati un messaggio firmato e il certificato del mittente valido al momento della firma.
 
Quando un mittente deve inviare un messaggio cifrato, si procura il certificato del destinatario da cui ricavare la chiave pubblica con cui cifrare il messaggio; se vi acclude la propria firma, conviene che il mittente vi aggiunga anche il proprio certificato per facilitare le operazioni di riconoscimento della firma da parte del destinatario. Per garantire che varie applicazioni possano far uso agevolmente dei servizi di certificazione è stato sviluppato uno standard denominato X.509: grazie alla standardizzazione le informazioni vengono prodotte in formati riconoscibili e facilmente estensibili.
 
[adsense:adblock:adcontenuto]

Servizio di marcatura temporale

La garanzia del non ripudio da parte del mittente di un messaggio prodotto ed inviato al destinatario, non è ottenibile con la sola sottoscrizione del documento da parte del mittente, anche assumendo la validità del certificato che contiene la chiave pubblica del mittente e la sottoscrizione con la corrispondente chiave privata, perché manca la qualificazione temporale in forma fidata che, ovviamente, può essere fornita solo da una autorità terza. Per questo le AC svolgono solitamente anche un servizio di ‘marcatura temporale’. Esso consiste nei seguenti passi:

  • 1. l’utente invia al servizio l’impronta del documento da marcare: questo non inficia la riservatezza del messaggio grazie alle proprietà dell’impronta, da cui non è possibile ricavare il messaggio stesso ma al quale è intimamente legata;
  • 2. la marcatura dell’impronta consiste nell’aggiungere ad essa, da parte del servizio, data e ora;
  • 3. l’impronta marcata viene cifrata con una chiave privata del servizio; il mittente e quello che sarà il destinatario del messaggio possono ricavare impronta e marcatura temporale decifrando con la chiave pubblica del servizio;
  • 4. l’impronta marcata viene reinviata all’utente che la allega al messaggio.
 
Una volta inviati, in chiaro o cifrati, il messaggio, la firma del mittente e la corrispondente marcatura temporale, il mittente non potrà in alcun modo ripudiare tale invio (nemmeno parzialmente, dicendo che è avvenuto ma in altro momento) o sostituire messaggio e firma con altri in un momento successivo. Di norma, la AC usa chiavi diverse per la autenticazione e per la marcatura temporale.

 

Risorse per sviluppo: 

Ti potrebbero anche interessare:

Il Cifrario di Vernam e l’importanza della chiave

Come brevemente accennato sopra, un cifrario si basa su due presupposti: un algoritmo che definisce le regole per l’operazione di cifratura e per quella di decifratura, e una chiave che rende il risultato dell’applicazione dell’algoritmo parametricamente dipendente dalla chiave stessa. Ad esempio, nel codice di Cesare l’algoritmo è la regola di trasposizione letterale e la chiave è il fattore di trasposizione (1..25).

Risorse per sviluppo: 

Storia della crittografia: Primo cifrario e cifrario di trasposizione

 

La più antica forma conosciuta di crittografia è la scitala lacedemonica, data da Plutarco come in uso dai tempi di Licurgo (IX sec a.C.) ma più sicuramente usata ai tempi di Lisandro (verso il 400 a.C.). Consisteva in un bastone su cui si avvolgeva ad elica un nastro di cuoio; sul nastro si scriveva per colonne parallele all'asse del bastone, lettera per lettera, il testo da rendere segreto.
Risorse per sviluppo: