# Firma digitale

La firma digitale, o firma elettronica qualificata, basata sulla tecnologia della crittografia a chiavi asimmetriche, è un sistema di autenticazione di documenti digitali analogo alla Firma autografa su carta. La firma digitale è un sistema di autenticazione forte in quanto si basa sull'uso di un certificato digitale memorizzato su di un dispositivo hardware. I certificati su cui si basa possono essere più di uno.

## Sistemi per la creazione e la verifica di firme digitali

Il sistema per la creazione e la verifica di firme digitali sfrutta le caratteristiche dei sistemi crittografici a due chiavi. Un sistema crittografico garantisce la riservatezza del contenuto dei messaggi, rendendoli incomprensibili a chi non sia in possesso di una "chiave" (intesa secondo la definizione crittologica) per interpretarli. Nei sistemi crittografici a due chiavi, detti anche a chiave pubblica o asimmetrici, ogni utente ha una coppia di chiavi: una chiave privata, da non svelare a nessuno, con cui può decodificare i messaggi che gli vengono inviati e firmare i messaggi che invia, e una chiave pubblica, che altri utenti utilizzano per codificare i messaggi da inviargli e per decodificare la sua firma e stabilirne quindi l'autenticità. Per ogni utente, le due chiavi vengono generate da un apposito algoritmo con la garanzia che la chiave privata sia la sola in grado di decodificare correttamente i messaggi codificati con la chiave pubblica associata. Lo scenario in cui un mittente vuole spedire un messaggio ad un destinatario in modalità sicura è il seguente: il mittente utilizza la chiave pubblica del destinatario per la codifica del messaggio da spedire, quindi spedisce il messaggio codificato al destinatario; il destinatario riceve il messaggio codificato e adopera la sua chiave privata per ottenere il messaggio "in chiaro".
Grazie ad un'ulteriore proprietà delle due chiavi, inversa rispetto a quella descritta, un sistema di questo tipo è adatto anche per ottenere dei documenti firmati, infatti: la chiave pubblica di un utente è la sola in grado di decodificare correttamente i documenti codificati con la chiave privata di quell'utente. Se un utente vuole creare una firma per un documento, procede nel modo seguente: con l'ausilio di una funzione hash ricava l'impronta digitale del documento, il message digest, un file di dimensione fissa che riassume le informazioni contenute nel documento, dopodiché utilizza la propria chiave privata per codificare quest'impronta digitale: il risultato di questa codifica è la creazione di una firma. La funzione hash, è fatta in modo da rendere minima la probabilità che da testi diversi si possa ottenere il medesimo valore dell'impronta, inoltre è one-way, a senso unico, questo significa che dall'impronta è pressoché impossibile ottenere nuovamente il testo originario. La firma prodotta dipende dall'impronta digitale del documento e, quindi, dal documento stesso, oltre che dalla chiave privata dell'utente. A questo punto la firma viene allegata al documento.
Chiunque può verificare l'autenticità di un documento: per farlo, decodifica la firma del documento con la chiave pubblica del mittente, ottenendo l'impronta digitale del documento, e poi confronta questa con quella che si ottiene applicando la funzione hash, pubblica, al documento; se le due impronte sono uguali, l'autenticità del documento è garantita.

## Schema di firme

Siano D un insieme finito di possibili documenti, F un insieme finito di possibili firme, K un insieme finito di possibili chiavi; se ∀ k ∈ K ∃ un algoritmo di firma sig$_k$:D→F, ∃ un corrispondente algoritmo di verifica ver$_k$:D×F→{vero, falso} tale che ∀ d ∈ D, ∀ f ∈ F : ver$_k$(d, f) = { vero se f = sig$_k$(d) ; falso se f ≠ sig$_k$(d) } allora (D, F, K, sig$_k$, ver$_k$) costituisce uno schema di firme.
I due elementi fondamentali di uno schema di firme sono l'algoritmo di firma e l'algoritmo di verifica. L'algoritmo di firma crea una firma elettronica che dipende dal contenuto del documento a cui deve essere allegata, oltre che dalla chiave dell'utente. Una coppia (documento, firma) rappresenta un documento firmato, ovvero un documento a cui è stata allegata una firma. L'algoritmo di verifica può essere utilizzato da chiunque per stabilire l'autenticità della firma digitale di un documento.
L'utente calcola la firma con un algoritmo di Hash che restituisce un numero funzione del documento. La stringa viene poi cifrata con l'algoritmo a chiave asimmetrica e con la chiave privata del mittente. il ricevente ricalcola il valore dal documento con l'algoritmo di Hash. Poi decritta la firma digitale con la chiave pubblica del mittente, e confronta i due numeri, potendo vedere se il documento è stato manipolato.
Dato un d ∈ D solo il firmatario deve essere in grado di calcolare f ∈ F tale che ver$_k$(d, f) = vero.
Uno schema di firme è detto incondizionatamente sicuro se non esiste un modo per la falsificazione di una firma f ∈ F. Segue che non esistono schemi di firme incondizionatamente sicuri poiché un malintenzionato potrebbe testare tutte le possibili firme y ∈ F di un documento d ∈ D di un utente, usando l'algoritmo pubblico ver$_k$ fino a quando non trova la giusta firma. Naturalmente questo tipo di attacco alla sicurezza dello schema di firme risulta essere enormemente oneroso computazionalmente e praticamente irrealizzabile, anche adottando gli algoritmi più raffinati ed i processori più potenti, poiché si fa in modo che la cardinalità dell'insieme di possibili firme sia enormemente elevata.

## Differenze tra firma digitale e firma convenzionale

| | Firma autografa | Firma digitale |
| Creazione | manuale | mediante algoritmo di creazione |
| Apposizione | sul documento: la firma è parte integrante del documento | come allegato: il documento firmato è costituito dalla coppia (documento, firma) |
| Verifica | confronto con una firma autenticata: metodo insicuro | mediante algoritmo di verifica pubblicamente noto: metodo sicuro |
| Documento copia | distinguibile | indistinguibile |
| Validità temporale | illimitata | limitata |
| Automazione dei processi | non possibile | possibile |

## Valore giuridico della firma digitale in Italia

Nell'ordinamento giuridico italiano la firma digitale a crittografia asimmetrica è riconosciuta ed equiparata a tutti gli effetti di legge alla firma autografa su carta.
Il primo atto normativo che ha stabilito la validità della firma digitale per la sottoscrizione dei documenti elettronici è stato il D.P.R. 10 novembre 1997 n. 513 (regolamento recante criteri e modalità per la formazione, l'archiviazione e la trasmissione di documenti con strumenti informatici e telematici), emanato in attuazione dell'articolo 15 della legge 15 marzo 1997, n. 59. Successivamente, tale normativa è stata trasposta nel D.P.R. 28 dicembre 2000 n. 445 (il Testo Unico sulla documentazione amministrativa), più volte modificato negli anni successivi all'emanazione, per conformare la disciplina italiana alla normativa comunitaria contenuta nella Direttiva 99/93 in materia di firme elettroniche. Oggi, la legge che disciplina la firma digitale è il "Codice dell'amministrazione digitale" (Decreto Legislativo 7 marzo 2005, n. 82, così come modificato dal D.Lgs. 4 aprile 2006, n. 159). Il Codice, all'articolo 1, distingue i concetti di "firma elettronica", "firma elettronica qualificata" e "firma digitale".
a) Per "firma elettronica" la legge intende qualunque sistema di autenticazione del documento informatico.
b) La "firma elettronica qualificata" è definita come la firma elettronica basata su una procedura che permetta di identificare in modo univoco il titolare, attraverso mezzi di cui il firmatario deve detenere il controllo esclusivo, e la cui titolarità è certificata da un soggetto terzo. Qualunque tecnologia che permetta tale identificazione univoca, rientra nel concetto di "firma elettronica qualificata".
c) La "firma digitale", è considerata dalla legge come una particolare specie di "firma elettronica qualificata", basata sulla tecnologia della crittografia a chiavi asimmetriche.
Il D.Lgs. 82/2005, quindi, è impostato come se si potessero avere più tipi di firma elettronica qualificata, ossia più sistemi che consentano l'identificazione univoca del titolare, uno solo dei quali è la firma digitale a chiavi asimmetriche. Di fatto, però, nella realtà concreta, la firma digitale è l'unico tipo di firma elettronica qualificata oggi conosciuto e utilizzato, per cui i due concetti tendono a coincidere.
All'articolo 21, il D.Lgs. 82/2005 stabilisce, con un rimando al Codice Civile, che la firma digitale (o altra firma elettronica qualificata) fa piena prova fino a querela di falso se colui contro il quale la scrittura è prodotta ne riconosce la sottoscrizione, ovvero se questa è legalmente considerata come riconosciuta , equiparando così il documento informatico sottoscritto con firma digitale alla scrittura privata sottoscritta con firma autografa (e non, come avveniva in precedenza, all'atto pubblico). Sulla questione del valore probatorio del documento informatico c'è stata in Italia una lunga discussione che è sfociata in modifiche normative contraddittorie.
La titolarità della firma digitale è garantita dai "certificatori " (disciplinati dagli articoli 26-32): si tratta di soggetti con particolari requisiti di onorabilità, accreditati presso il Centro Nazionale per l'Informatica nella Pubblica Amministrazione (CNIPA), che tengono registri delle chiavi pubbliche, presso i quali è possibile verificare la titolarità del firmatario di un documento elettronico. Fra le caratteristiche per svolgere l'attività di certificatore di firma digitale vi è quella per cui occorre essere una società con capitale sociale non inferiore a quello richiesto per svolgere l'attività bancaria. I certificatori non sono quindi soggetti singoli (come i notai), ma piuttosto grosse società (per esempio, un certificatore è l'ente "Poste italiane").
L'acquisizione di una chiave privata è a pagamento ed ha una scadenza, nonostante il fatto che la firma (sia manuale che digitale) sia un mezzo legale per l'esercizio di diritti naturali della persona.
Inoltre la chiave privata, per periodi temporanei, è acquistabile via Internet, senza una verifica della maggiore età della persona.
È fondamentale che il rilascio avvenga previo invio di documenti da parte dell'interessato perché sia associata ad una persona maggiorenne e ai dati anagrafici in modo che sia sua responsabilità la vendita o affitto, durante periodi di inutilizzo, a terzi della chiave privata.
Il beneficiario di ciò potrebbe firmare richieste di attivazione di servizi, invio di merci e altri contratti a suo favore (col suo indirizzo) a spese del titolare della chiave privata. Per esercitare rivalsa, il creditore potrebbe chiedere all'autorità che ne ha effettuato il rilascio, la chiave privata e i dati anagrafici del cedente. L'autorità è in grado di risalire a questi dati dalla firma digitale, nota la chiave pubblica con cui decifrare la firma.

## Valore giuridico del documento informatico

Il tema del valore giuridico per la formazione e conservazione di documenti informatici deve ancora, in Italia Trovare una regolamentazione legislativa. È stata avanzata una proposta di fissazione delle regole tecniche che dovrebbe portare a profonde novità nella materia.