Certificati digitali: sicurezza e identità – II

di Andrea Chiarelli

28 Maggio 2009 09:00

Tutto quello che c'è da sapere sui certificai digitali: quali tipi di certificati digitali esistono e come ottenerne uno. Seconda parte.

Dopo avere introdotto i certificati digitali ed il loro ruolo nell’ambito di una trasmissione dati sicura su Internet, vediamo che tipi di certificato esistono e quali sono le modalità generali per richiedere la loro emissione.

Tipi di certificato

Abbiamo visto che un certificato digitale garantisce l’identità dell’interlocutore in una trasmissione sicura. L’identità garantita dell’Autorità di Certificazione (detta anche più semplicemente CA) dipende dal tipo di uso che si intende fare del certificato e dal livello di certificazione richiesto.

Infatti un certificato può essere utilizzato per diversi scopi, grazie ai quali possiamo classificare quattro tipi di certificato:

  • Personal Certificates
  • Server Certificates
  • Software Publisher Certificates
  • Certificate Authority Certificates

Ciascuno di questi certificati ha un suo particolare utilizzo e determinate caratteristiche.

I Personal Certificates identificano i singoli utenti. Il loro uso principale consiste nell’invio di messaggi di posta elettronica crittografata e nell’accesso a server che richiedono un’autenticazione tramite un certificato.

I Server Certificates consentono l’identificazione di server che utilizzano un protocollo di comunicazione sicura, come ad esempio SSL. Questi certificati consentono ad un client di verificare l’identità del server prima di inviare dati riservati.

I Software Publisher Certificates identificano il produttore di un software distribuito tramite Internet. Questo tipo di certificati consente di stabilire quindi l’origine del software e nello stesso tempo che il software non abbia subito modifiche. Naturalmente non garantisce che il software sia privo di errori o non possa arrecare danno al sistema. In questo caso, comunque, è possibile risalire al produttore per eventuali contestazioni.

I Certificate Authority Certificates sono quei certificati che attestano l’identità di una autorità di certificazione.

Per quanto riguarda il livello di certificazione, prima di rilasciare un certificato le Autorità di Certificazione effettuano alcune verifiche sulle dichiarazioni fatte dal richiedente. Per i certificati standard normalmente la verifica si limita ad accertarsi dell’esistenza del dominio o dell’indirizzo di posta elettronica a cui è associato il certificato, che il dominio o l’indirizzo appartenga al richiedente ed in alcuni casi che effettivamente il richiedente possa essere contattato tramite e-mail o telefonicamente.

Tuttavia una tale verifica non esclude che il richiedente si faccia passare per un altro soggetto.

Per porre rimedio a questo potenziale pericolo è stato recentemente introdotto un livello di validazione del certificato che offre maggiori garanzie sull’identità del possessore in quanto richiede una verifica più approfondita da parte della CA. Si tratta dei certificati Extended Validation (EV).

Per il rilascio di questo tipo di certificato l’Autorità di Certificazione non si limita a verificare l’esistenza del dominio o dell’indirizzo di posta elettronica e la relativa proprietà. Essa approfondisce l’identificazione del richiedente accedendo ad eventuali registri pubblici e richiedendo documentazione specifica per verificare legalmente e fisicamente l’identità del richiedente.

I browser più recenti, come ad esempio Internet Explorer 7, 8 e Firefox 3, riconoscono questo tipo di certificati e lo evidenziano visivamente all’utente. Ad esempio, Firefox mostra sulla sinistra della barra degli indirizzi il nome del possessore del certificato su uno sfondo verde; cliccando su questa area vengono visualizzati i dettagli identificativi del sito.

Richiedere un certificato

La procedura generale per ottenere il rilascio di un certificato digitale da parte di una CA è pressoché standard. Tale procedura coinvolge attività svolte dal richiedente e attività svolte dalla CA. Nel seguito vengono evidenziati i passi fondamentali in maniera del tutto generale. Alcuni dei passaggi descritti necessitano la conoscenza delle procedure previste dal software che gestirà il certificato (programma di posta elettronica, browser, Web server, software per la firma elettronica, ecc.).

Passaggi per la richiesta

  1. il passo iniziale per poter acquisire un certificato digitale consiste nella generazione della coppia di chiavi, pubblica e privata, per la codifica e decodifica dei dati. Questo passo deve essere effettuato da chi richiede il certificato utilizzando l’apposita procedura predisposta dallo specifico software. Per alcuni tipi di Personal Certificates è la CA stessa a generare la coppia di chiavi.
  2. il passo successivo consiste nel predisporre tutte le informazioni ausiliarie necessarie alla CA per poter rilasciare il certificato. Queste informazioni possono essere l’indirizzo di e-mail, l’indirizzo Web, l’indirizzo postale, ecc.
  3. la chiave pubblica e le informazioni predisposte al passo precedente vengono inviate alla CA, generalmente tramite il Web. Questo passaggio è noto come enrollment ed è stato sviluppato un apposito standard per la formulazione della richiesta di un certificato (PKCS-10). Tale richiesta viene generata dal software per la gestione dei certificati, alcuni dei quali consentono di inviare automaticamente la richiesta alla CA scelta. In alternativa occorre collegarsi al sito della CA e, seguendo le indicazioni fornite dalle pagine Web, effettuare un’operazione di taglia e incolla della richiesta di certificato nella form predisposta.
  4. l’Autorità di Certificazione procede alla verifica delle informazioni fornite. A seconda del tipo di certificato richiesto, la CA può richiedere ulteriori informazioni o documentazione cartacea per accertarsi dell’identità del richiedente. Ad esempio può essere richiesta l’iscrizione alla Camera di Commercio di un’azienda o il numero di Partita IVA, in modo da poter provare la propria identità. Queste informazioni sono genericamente note come proof of identity o proof of rights e variano da una Autorità di Certificazione all’altra.
  5. una volta accertatasi della reale identità del richiedente, la CA crea il certificato con i dati verificati e lo firma con la propria chiave privata in modo che chiunque possa verificare la fonte che ha rilasciato il certificato.
  6. la CA invia il certificato al richiedente, in genere tramite e-mail
  7. il certificato viene quindi installato dal richiedente nell’ambito del software che lo gestirà. Questa procedura dipende dal particolare software utilizzato.

Ciclo di vita di un certificato

Un certificato ha una validità temporale limitata, generalmente annuale. Questo è dovuto a vari motivi, tra i quali ci sono senz’altro i seguenti:

  • Motivi di verifica: le informazioni fornite in un certificato potrebbero non essere più valide; per esempio una azienda potrebbe aver cambiato ragione sociale o potrebbe non esistere più
  • Motivi di sicurezza: è opportuno che le chiavi pubbliche e private vengano periodicamente cambiate per ridurre i rischi di decodifica; dal momento che un certificato contiene la chiave pubblica del richiedente, è necessario rinnovare anch’esso

Quando un certificato scade, il software di verifica del certificato incapsulato nel proprio client, come ad esempio un comune browser, avverte opportunamente l’utente. Quindi collegandosi ad un sito Web che ha un certificato non più valido si ottiene un messaggio che informa della situazione, lasciando decidere all’utente se è il caso di continuare o meno.

In certi casi la CA può revocare un certificato. Questo può accadere quando il possessore del certificato si è compromesso utilizzandolo in maniera illecita o perché la CA si è resa conto in un secondo momento che sono state fornite informazioni false per ottenere il certificato o semplicemente perché c’è stato un errore che rende inattendibili le informazioni presenti nel certificato.

L’Autorità di Certificazione pubblica una lista dei certificati revocati (Certificate Revocation List o CRL) consultabile online o scaricabile direttamente dai software di gestione dei certificati.

Conclusioni

Garantire l’identità dell’interlocutore in una trasmissione dati su Internet è un requisito fondamentale per offrire un adeguato livello di sicurezza. I certificati digitali permettono di raggiungere questo obiettivo sia che si tratti di trasmettere dati via Web che tramite posta elettronica. I certificati digitali consentono anche di firmare documenti e software per garantire l’autenticità e la non modificabilità.

Al di là degli aspetti tecnici, tutto il meccanismo poggia sulla reputazione delle Autorità di Certificazione, garanti del contenuto dei certificati e quindi della fiducia che si instaura tra utente e destinatario dei dati.