La firma digitale è un metodo matematico teso a dimostrare l'autenticità di un documento digitale autenticando l'autore di un documento.
Per firmare digitalmente un documento è necessario avere:
Per firmare digitalmente un documento occorre inoltre convertire il file da un formato modificabile (come per esempio un dile testuale) a uno non immediatamente modificabile (come per esempio un file vettoriale).
Il documento informatico da firmare digitalmente, infatti, deve essere redatto o previamente convertito in un formato statico
Una volta redatto o convertito il documento in formato statico bisogna
aprire il software di firma digitale del certificatore, caricare il
file interessato e cliccare sul pulsante “firma documento”.
Nella finestra che si apre verrà richiesto la password o il pin del
dispositivo che contiene il certificato di firma digitale.
Il sistema dà la possibilità di selezionare il tipo di file che si intende ottenere: a seguito dell’apposizione della firma, infatti, il file caricato si “trasformerà” in altro di estensione diversa. Più precisamente:
Il sistema per la creazione e la verifica di firme elettroniche può sfruttare le caratteristiche della crittografia asimmetrica.
Perché il sistema risulti sicuro, è necessario che solo l'utente stesso e nessun altro abbia accesso alla chiave privata. Il modo più semplice per ottenere questo è far sì che l'unica copia della chiave sia "in mano" all'utente; tuttavia, esistono soluzioni alternative
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 decifrare correttamente i messaggi cifrati con la chiave pubblica
associata e viceversa.
Lo scenario in cui un mittente vuole spedire un messaggio a un
destinatario in modalità sicura è il seguente: il mittente utilizza la
chiave pubblica del destinatario per la cifratura del messaggio da
spedire, quindi spedisce il messaggio cifrato al destinatario; il
destinatario riceve il messaggio cifrato e adopera la propria chiave
privata per ottenere il messaggio "in chiaro".
Grazie alla proprietà delle due chiavi un sistema di crittografia
asimmetrica di questo tipo è adatto anche per ottenere dei documenti
firmati, ma in modalità inversa rispetto a quella appena descritta
cioè con la chiave privata a cifrare e quella pubblica a decifrare.
Infatti, la chiave pubblica di un utente è la sola in grado di
decifrare correttamente i documenti cifrati con la chiave privata di
quell'utente.
Se un utente vuole creare una firma per un documento, procede nel modo seguente:
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 è impossibile ottenere nuovamente il testo originario ovvero essa è non invertibile. 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 insieme alla chiave pubblica.
Chiunque può verificare l'autenticità di un documento: per farlo, decifra la firma del documento con la chiave pubblica del mittente, ottenendo l'impronta digitale del documento, e quindi confronta quest'ultima con quella che si ottiene applicando la funzione hash al documento ricevuto; se le due impronte sono uguali, l'autenticità e l'integrità del documento sono garantite.