GPG è un programma per cifrare i messaggi di posta elettronica utilizzando una coppia di chiavi (pubblica e privata) generate dall’utente.
Sappiamo a cosa serve il programma GnuPG: il programma d’eccellenza per cifrare file su Linux. È molto semplice da usare anche dalla riga di comando, ad esempio all’interno di script per Bash.
Per criptare un file
gpg -c filedacrittare
Per decifrare un file precedentemente cifrato
gpg -o file_decifrato -d esempio.gpg
dove -o
indica quale file verrà generato dopo la decifrazione, altrimenti il risultato viene soltanto visualizzato sul terminale comandi.
Per generare le chiavi, l’algoritmo predefinito è DSA/ElGamal
gpg -gen-key
questa funzione torna utile per esempio quando si deve impostare l’accesso SSH tra due sistemi senza dover inserire ogni volta la password.
Per esportare la chiave pubblica
gpg -export -a UID > pub.key
Per eseguire il backup della chiave privata
gpg -export-secret-key -a UID > priv.key
Per cifrare un file per il destinatario che possiede la chiave pubblica oppure per noi stessi
gpg -ear 0disse0 filediesempio
dove l’opzione -e
indica che vogliamo cifrare, -a
per impostare il formato file ASCII 7 bit e -r
per cifrare per l’utente. L’opzione -c
restituisce invece un file in formato binario.
Quando il file è giunto a destinazione si dovrà impartire
gpg -o filedadecifrare -d risultato.asc
Per importare una chiave pubblica nel proprio “portachiavi”
gpg -import public.key
Per importare la chiave da un repository pubblico (su Internet)
curl -s http://keyserver.ubuntu.com:11371/ciccopalla/pubkey.asc | gpg --import
ipotizzando nell’esempio che si voglia importare la chiave di “cicciopalla”.