Firma Digitale.

DocumentazioneTecniche di Crittografia

La firma digitale è il meccanismo crittografico che permette di autenticare un documento digitale e garantirne l'integrità. A differenza di una firma classica (che è solo un'immagine), una firma digitale è indissolubilmente legata al contenuto del documento: cambiare anche un solo bit invalida la firma.

Come funziona

La firma digitale si basa sulla crittografia asimmetrica: ogni utente ha una coppia di chiavi, una pubblica e una privata.

Il processo è in due fasi:

Firma (lato mittente):

  1. Si calcola l'hash del documento (es. SHA-512)
  2. L'hash viene cifrato con la chiave privata del mittente

Verifica (lato destinatario):

  1. Si ricalcola l'hash del documento ricevuto
  2. Si decifra la firma usando la chiave pubblica del mittente
  3. Se i due hash coincidono, la firma è valida

L'operazione funziona perché solo il possessore della chiave privata può produrre una firma che la chiave pubblica corrispondente è in grado di verificare.

Importante

Firmare un documento non lo cifra. Chiunque può leggerne il contenuto. La firma certifica solo chi lo ha prodotto e che non è stato alterato.

Uso dei certificati

La firma da sola non basta: come faccio a sapere che una certa chiave pubblica appartiene davvero a chi dice di essere?

Entra in gioco l'infrastruttura PKI (Public Key Infrastructure): un'autorità di certificazione (CA) firma a sua volta la chiave pubblica dell'utente, producendo un certificato digitale. La fiducia si propaga a catena, partendo dai certificati radice (root CA), pre-installati nel sistema operativo, fino al certificato dell'utente finale.

Qui su Cryptea si utilizza lo stesso principio per l'emissione dei certificati digitali e per la firma digitale sul dato crittografato con RSA-CBC.