Pagina iniziale | Navigazione |
Google

Firma digitale

La firma digitale, o firma elettronica, ha lo stesso scopo di quella convenzionale.

La prima cosa che può venire in mente, pensando di simulare quello che accade con carta e penna, č di creare una firma digitale partendo da una rappresentazione elettronica di quella convenzionale, per poi poterla inserire nel file di un documento da firmare. Questa soluzione naive semplicemente non garantisce alcuna sicurezza poichč chiunque può tagliare la parte di file contenente questa "firma" per poi aggiungerla illegalmente ad un altro file.
Le proprietĂ  che vorremmo avesse una firma digitale sono:

  1. semplicitĂ  di creazione da parte del leggittimo firmatario;
  2. impossibilitĂ  di falsificazione;
  3. semplicitĂ  di verifica da parte di chiunque.

Table of contents
1 Sistemi per la creazione di firme digitali
2 Schema di firme
3 Differenze tra firma digitale e firma convenzionale

Sistemi per la creazione di firme digitali

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 una chiave pubblica, che altri utenti utilizzano per codificare i messaggi da inviargli. 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, la sola in grado di effettuare una decifratura corretta, per ottenere il messaggio in chiaro.
Un sistema di questo tipo č adatto anche per lo scambio di messaggi firmati. Se il mittente vuole creare una firma per un messaggio codificato da inviare, procede nel modo seguente: con l'ausilio di una funzione hash ricava l'impronta digitale del messaggio codificato, un file di dimensione fissa che riassume le informazioni contenute nel messaggio, 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, il che significa che dall'impronta č computazionalmente arduo (pressochĂ© impossibile) ottenere nuovamente il testo originario. La firma prodotta dipende dall'impronta digitale del messaggio e quindi dal messaggio stesso, oltre che dalla chiave privata dell'utente. A questo punto la firma viene allegata al messaggio codificato e il tutto viene inviato.
Chiunque può verificare la provenienza di un messaggio: per farlo, decodifica la firma del messaggio con la chiave pubblica del mittente, ottenendo l'impronta digitale del messaggio, e poi confronta questa con quella che si ottiene applicando la funzione hash al messaggio; se le due impronte sono uguali, la provenienza č garantita.

Schema di firme

Siano M un insieme finito di possibili messaggi, F un insieme finito di possibili firme, K un insieme finito di possibili chiavi;
se ∀ k ∈ K, ∃ un algoritmo di firma sigk:M→F, ∃ un corrispondente algoritmo di verifica verk:M×F→{vero, falso} tali che
∀ m ∈ M, ∀ f ∈ F : verk(m,f) = { vero se f = sigk(m) ; falso se f ≠ sigk(m) }
allora (M, F, K, sigk, verk) 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 messaggio cui deve essere allegata, oltre che dalla chiave dell'utente. Una coppia (messaggio, firma) rappresenta un messaggio firmato, ovvero un messaggio a cui č stata allegata una firma. L'algoritmo di verifica può essere utilizzato da chiunque per stabilire l'autenticitĂ  della firma di un messaggio.

Dato un m ∈ M solo il firmatario deve essere in grado di calcolare f ∈ F tale che verk(m,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 messaggio m ∈ M di un utente, usando l'algoritmo pubblico verk fino a quando non trova la giusta firma. Naturalmente questo tipo di attacco alla sicurezza dello schema di firme risulta essere computazionalemente oneroso e praticamente irrealizzabile, anche adottando gli algoritmi piů raffinati e i processori piů potenti, poichč si fĂ  in modo che la cardinalitĂ  dell'insieme di possibili firme sia enormemente elevata.

Differenze tra firma digitale e firma convenzionale

FIRMA CONVENZIONALE FIRMA DIGITALE
CREAZIONE manuale mediante algoritmo di verifica
APPOSIZIONE sul documento: la firma diventa 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 può essere distinto non può essere distinto
AUTOMAZIONE DI PROCESSI non possibile possibile


Astronomia | Biologia | Botanica | Chimica | Ecologia | Economia | Fisica | Geometria | Informatica | Matematica | Medicina | Statistica | Telecomunicazioni


GNU Fdl - it.Wikipedia.org




Google | 

Enciclopedia |  La Divina Commedia di Dante |  Mappa | : A |  B |  C |  D |  E |  F |  G |  H |  I |  J |  K |  L |  M |  N |  O |  P |  Q |  R |  S |  T |  U |  V |  W |  X |  Y |  Z |