Firma digitale: cos’è, come funziona

Lo sapevate che inviare un’e-mail in cui compare come mittente l’indirizzo di un altro è molto facile?

Di conseguenza, è difficile essere sicuri dell’identità di chi ci scrive e della riservatezza della corrispondenza che viaggia sul Web?

Questi sono solo alcuni dei motivi per cui si registra ancora un diffuso sentimento di sfiducia rispetto all’affidabilità Internet in alcuni ambiti.

Per esempio sono ancora tante le incertezze tecniche e giuridiche che riguardano la validità e le modalità di utilizzo di strumenti come la posta elettronica in ambito legale e amministrativo. Più in generale non è ancora chiaro come il Web potrà migliorare il rapporto del cittadino con le istituzioni e la Pubblica Amministrazione nel suo complesso.

Firma digitale

Cosa serve utilizzare la firma digitale

In questo contesto, un ruolo determinante può essere svolto dalla firma digitale che, anche grazie all’utilizzo di moderne tecniche crittografiche è in grado di favorire lo sviluppo delle attività contrattuali e il trasferimento di documenti via Internet.

La firma digitale rappresenta infatti un significativo passo avanti verso il sogno di abbandonare le montagne di carta che ancora siamo costretti a stampare, scrivere e firmare quando abbiamo bisogno d’inviare un documento con valore riconosciuto.

L’ambito di applicazione della firma digitale è molto vario: dalle comunicazioni ufficiali alle amministrazioni, alle risposte ai bandi e alle gare pubbliche, dalle dichiarazioni fiscali, alla trasmissione di documenti legali fino alle transazioni finanziarie e personali.

Il campo di applicazione che c’interessa però più da vicino è quello della posta elettronica certificata introdotta dalla Pubblica Amministrazione.

Si tratta di un servizio in grado non solo di garantire l’identificazione del mittente e la confidenzialità del messaggio, ma anche di attestare il recapito del messaggio stesso nella casella del destinatario, inviando al mittente una ricevuta di avvenuta consegna firmata digitalmente dal gestore del servizio. Ogni cittadino potrà così interagire con gli uffici pubblici da casa, oppure presso gli sportelli telematici installati in ogni quartiere o sede istituzionale. Lo stesso discorso vale per la stipula dei contratti e per il commercio elettronico (non è solo quello cui siamo abituati quando facciamo gli acquisti su Internet). L’acquirente è tutelato anche quando invia fatture e contratti, perché i dati personali e carta di credito viaggiano in forma criptata, quindi nessuno oltre al destinatario, sarà in grado di leggere.

Gli strumenti che rendono possibile la realizzazione di questi traguardi sono due: la firma e la certificazione digitale.

Vediamo di cosa si stratta e come imparare a servirsene.

La firma digitale

La firma digitale è l’equivalente informatico di una tradizionale firma apposta su carta. La sua funzione è quella di attestare la validità, la veridicità e la paternità di un documento, inteso in senso lato, come una lettera, un atto, un messaggio o, in generale, qualunque file di dati (testo, immagini, musica).

Non va confusa con altri oggetti definiti “elettronici”, come per esempio la firma autografa scandita e conservata come immagine.

La firma digitale è infatti il risultato di una procedura informatica basata su un sistema di codifica crittografica a chiavi asimmetriche (una pubblica e una privata), che consente la sottoscrizione di un documento informatico: la verifica, da parte dei destinatari, dell’identità del soggetto firmatario, la sicurezza della provenienza e della ricezione del documento, la certezza che l’informazione contenuta nel documento non sia stata alterata e infine la segretezza dell’informazione contenuta nel documento.

Un sistema di codifica di questo genere segue questo procedimento. Ogni utente riceve una coppia di chiavi: una chiave privata da tenere rigorosamente segreta e una chiave pubblica, che può essere comunicata a terzi.

Codifica del messaggio

Il mittente codifica il messaggio con la chiave pubblica del destinatario, che è nota. Per decodificare il messaggio occorre invece che il destinatario utilizzi la propria chiave privata, conosciuta solo da lui stesso. Tutta la forza del procedimento sta dunque nel mantenere rigorosamente segreta la chiave privata.

La gestione delle chiavi è semplicissima, in quanto ogni utente deve occuparsi solamente della propria chiave privata, mentre quelle pubbliche degli altri, di un gruppo o di una particolare categoria di utenti sono facilmente consultabili in un elenco gestito da un’autorità di certificazione.

Con questo termine si identifica una società iscritta in un apposito elenco, con caratteristiche di solidità e sicurezza paragonabili a quelle di una banca, e che esercita una serie di funzionalità: l’identificazione certa della persona che richiede la certificazione, l’emissione dei certificati, la pubblicazione e conservazione della chiave pubblica e la revoca dei certificati in caso di furto o smarrimento.

Su questa azienda vigila un ente governativo chiamato CNIPA (Centro Nazionale per Informatica nella Pubblica).

Il funzionamento del sistema di firma è quindi garantito dalla presenza di una terza parte fidata, l’Ente Certificatore, che assicura l’associazione univoca tra la chiave pubblica da usare per la verifica e il titolare della corrispondente chiave privata.

Tale associazione si basa sull’emissione di un certificato digitale, che avviene solo dopo l’identificazione e registrazione certa del richiedente. In tal modo, se un qualunque individuo interessato a stabilire un rapporto per via telematica con un altro si rivolge al certificatore chiedendo la chiave pubblica di quella persona, per il solo fatto che la ottenga, è sicuro che questa esista veramente e non sia soggetta a particolari restrizioni legali.

Certificazione digitale

La garanzia che l’interlocutore sia effettivamente chi afferma di essere viene quindi fornita attraverso un certificato digitale, ossia uno strumento studiato appositamente per assicurare l’identificazione del soggetto sottoscrittore e garantire così una corrispondenza biunivoca fra la persona fisica e la sua chiave pubblica. Il certificato digitale rappresenta una sorta di documento d’identità per il mondo digitale, paragonabile a ciò che nella vita di tutti i giorni è rappresentato dalla carta d’identità.

Nel certificato compare l’identificativo del soggetto che viene certificato, la sua chiave di crittografia, alcune altre informazioni, quali la validità temporale del certificato e la firma digitale dell’autorità di certificazione. Per ottenerla il richiedente deve fornire all’Ente di Certificazione la documentazione utile per accertare la sua identità.

Basta compilare un modulo di richiesta registrazione e certificazione e inviarlo all’ente insieme alla fotocopia del proprio documento d’identità. Il certificatore, a sua volta, controlla l’esattezza dei dati forniti e ne verifica l’identità attraverso l’esame della carta d’identità o di un documento equivalente. Dopodiché, se la verifica ha avuto esito positivo, procede alla generazione della coppia di chiavi: la chiave privata viene memorizzata su un supporto sicuro (chiavetta USB o smartcard protetta da PIN di accesso) mentre la chiave pubblica viene diffusa all’esterno in modo che possa essere conosciuta da tutti i destinatari dei documenti informatici.

Richiedere la Smartcard

A tal fine, viene generato e pubblicato il certificato che contiene i dati del titolare e la sua chiave pubblica, che verrà poi utilizzata dai destinatari per la verifica della firma. A questo punto il “certificatore” fornisce al richiedente una smartcard, un codice identificativo univoco e un pacchetto software da installare sul PC.

Questo programma serve appunto per accedere ai certificati memorizzati sulla carta, firmare i documenti, codificare i messaggi e collegarsi via Internet all’autorità di certificazione per ottenere la chiave pubblica del mittente da utilizzare poi nella decodifica del messaggio.

All’atto pratico l’utilizzo della firma digitale risulta molto semplice e immediato. Una volta predisposta la procedura, l’apposizione di una firma elettronica su di un documento non richiede all’interessato molto più che inserire una parola chiave e premere un tasto.

Penserà il PC a compiere tutte le operazioni necessarie: prelevare il documento, codificarlo, generare la firma con l’indicazione dell’autorità di certificazione alla quale il destinatario dovrà fare riferimento, eccetera.

Pensiamo però che non ci sia niente di meglio di un caso pratico per mostrare quanto sia semplice.

smart card firma digitale

Come firmare in digitale

Supponiamo che si voglia mandare un messaggio firmato, per assicurarlo che quel messaggio è stato veramente mandato, si deve procedere con la codifica del messaggio con la chiave pubblica e lo firma con la propria chiave privata. Il ricevente a sua volta decodificherà la firma utilizzando la chiave pubblica del mittente per verificare che si tratti veramente della persona indicata.

Successivamente si potrà decodificare il messaggio ricevuto, utilizzando la propria chiave privata. Se si vuole però aggiungere la garanzia che il messaggio sia integro, cioè che lungo il tragitto non sia stato in alcun modo alterato, la procedura diventa più complessa.

In questo caso si provvede a codificare preventivamente non solo la firma, ma l’intero messaggio, con la propria chiave privata, poi lo codifica una seconda volta con la chiave pubblica del destinatario.

Poi, il messaggio ricevuto, lo si decodifica una prima volta con la propria chiave privata e una seconda volta con la chiave pubblica del mittente.

Se il messaggio risulta intelligibile per il destinatario, si possiede la garanzia che sia autentico, veramente spedito dal mittente e soprattutto integro. Onde però evitare la formazione di messaggi molto lunghi e difficilmente gestibili, la chiave privata del mittente non viene applicata a tutto il testo del messaggio, ma solo a una parte di esso, grazie a una particolare funzione matematica, detta hash, che produce una stringa binaria di dati chiamata “impronta” (o “Message digest”).

Impronta riconducibile all’identità

Questa “impronta” viene poi cifrata con la chiave privata del mittente e il risultato corrisponde alla firma digitale apposta al documento. In questo modo, la firma digitale come quella autografa è legata sia al soggetto sottoscrittore, perché è sempre riconducibile all’identità di colui che la appone (attraverso la chiave segreta usata per la generazione), sia al testo sottoscritto tramite l’impronta.

L’impronta viene quindi crittografata e inviata insieme al messaggio originale.

Immagine in basso, renderà meglio l’idea di quanto descritto.

certificato chiave privata

L’ente certificatore associa la chiave pubblica agli estremi identificativi dell’utente, li inserisce in un certificato e lo rende pubblico. Trasmette poi copia del certificato al titolare che provvederà a inserirlo all’interno della smartcard. La smartcard diventa quindi un tesserino con due componenti fondamentali: la chiave privata e il certificato.

mittente destinatario messaggio

Il Mittente invia un messaggio al Destinatario e lo accompagna con l’impronta del documento e con la propria firma.

Entrambe codificate con la chiave privata di Anna (KsA). Destinatario “ricalcola” l’impronta partendo dal messaggio ricevuto e decodifica sia l’impronta sia la firma. Se le impronte sono identiche il documento è integro; se la firma risulta veramente quella del mittente, il messaggio è autentico.

decrita firma digitale

Chi riceve il messaggio procederà all’apertura e/o verifica dello stesso mediante il proprio software di firma. Il programma acquisirà dal certificato annesso al documento firmato, la chiave pubblica del mittente.

La chiave viene decifrata la stringa della firma digitale che da come risultato l’impronta del documento. Il destinatario prenderà il documento originario, lo farà passare attraverso la funzione di hash e genererà l’impronta: se coincide allora sarà sicuro della genuinità e provenienza del documento.

Potrebbe esserti utile:

Client di posta elettronica
Servizi email temporanea