GnuPG: cifrare e firmare
Cifratura
Per cifrare un file è necessario che il mittente posseda la chiave pubblica. Usando la chiave pubblica del ricevente il mandante cifra il file e lo invia al destinatario che solo adoperando la chiave segreta può decifrare il contenuto del file.
Quindi per cifrare un documento si deve indicare la chiave pubblica di colui che riceverà il file.
gpg –output doc.txt.gpg –encrypt –recipient blake@cyb.org doc.txt
Con il comando viene cifrato il file doc.txt, il suo output è doc.txt.gpg (per cui l’originale non verrà cancellato), il file sarà accessibile solamente da Blake. Non sarà possibile più ritornare all’originale, a meno che non si sia indicato come recipient anche la propria chiave pubblica. Si possono elencare anche più destinatari.
Decifrazione
Per decifrare il file, Blake deve usare il seguente comando, poi inserire la passphrase:
gpg –output doc.txt –decrypt doc.txt.gpg
Ti serve una passphrase per sbloccare la chiave segreta
dell’utente: “Blake (esecutore) <blake@cyb.org>”
chiave ELG-E di 1024 bit, ID 5C8CBD41, creata il 1999-06-04 (key ID principale 9E98BC16)
Inserisci la passphrase:
Il file doc.txt.gpg verrà trasformato nel file doc.txt leggibile in chiaro.
Firmare e cifrare
L’utilità di cifrare un file è molto sentita, mentre molte persone ignorano i vantaggi forniti dalla firma di un messaggio. Un messaggio di posta elettronica è facilmente falsificabile (es: phishing); uno dei metodi migliori per autenticare un mittente e l’integrità del contenuto di un messaggio è quello di firmarlo.
Con il parametro –sign Frank genera un file con il contenuto di doc.txt e la firma.
gpg –output doc.txt.sig –sign doc.txt
Ti serve una passphrase per sbloccare la chiave segreta
dell’utente: “Frank (office) <frank@willer.com>”
chiave DSA di 1024 bit, ID BB3576AC, creata il 2006-06-04
Inserisci la passphrase:
Ora Blake decifra il doc.txt e ne controlla la firma. Il confronto viene fatto con le chiavi contenute nel portachiavi, se la chiave pubblica di Frank non è nel mazzo di Blake non sarà possibile controllare la chiave, ma il file sarà decifrato.
gpg –output doc.txt –decrypt doc.txt.sig
gpg: Firma fatta ven 04 feb 2007 12:02:38 CDT usando la chiave DSA con ID BB3576AC
gpg: Firma valida da “Frank Willer (office) <frank@willer.com>”
Firmare in chiaro
Quando si inviano messaggi di posta elettronica (sui newsgroup, mailing list…) non conviene firmarli e cifrarli, ma solo firmarli. Per “in chiaro” si intende non cifrato.
Con il comando –cleansign, verrà stampato a video il messaggio con la firma, è necessario inserire la passphrase.
gpg –clearsign doc.txt
Ti serve una passphrase per sbloccare la chiave segreta
dell’utente: “Frank Willer (office) <frank@willer.com>”
chiave DSA di 1024 bit, ID BB3576AC, creata il 2006-06-04
—–BEGIN PGP SIGNED MESSAGE—–
Hash: SHA1
Questo messaggio è stato firmato da Frank Willer.
—–BEGIN PGP SIGNATURE—–
Version: GnuPG v1.4.7 (GNU/Linux)
Comment: For info see http://www.gnupg.org
iEYEARECAAYFAjdYCQoACgkQJ9S6ULt1dqz6IwCfQ7wP6i/i8HhbcOSKF4ELyQB1
oCoAoOuqpRqEzr4kOkQqHRLE/b8/Rw2k
=y6kj
—–END PGP SIGNATURE—–
Per inviare un e-mail basta copiare il contenuto stampato a video a partire da —–BEGIN… fino a SIGNATURE—– in un nuovo messaggio.
Probabilmente ci saranno ulteriori articoli su questo argomento…