GPG o GnuPG, si tratta di un software per lo scambio di file crittografati, tramite la generazione e l’uso di una coppia di chiavi: chiave pubblica e chiave privata.
La chiave pubblica viene usata per la cifratura dei file.
La chiave privata viene custodita segretamente e usata per decifrare i file che sono stati cifrati con la chiave pubblica.
Per lo scambio di dati sensibili questo strumento può essere veramente utile.
Procediamo alla sua installazione.
Per distribuzione Ubuntu e derivate diamo il seguente comando:
sudo apt-get install gpg
Per distribuzioni RHEL e derivate diamo il seguente comando:
yum install gpg
Creiamo adesso la coppia di chiavi:
gpg --gen-key
Durante la procedura vengono richieste una serie di informazioni, mentre per la generazione delle chiave può essere richiesto l’attesa di qualche minuto.
Per accelerare il processo di generazione delle chiavi possiamo eseguire delle attività sulla macchina tra le quali muovere il mouse piuttosto che dare da terminale i seguenti comandi:
cd / ls -R / find *
Una volta terminato il processo, avremo le nostre chiavi.
Andiamo a visualizzarle:
gpg --list-key
Adesso possiamo inviare la nostra chiave pubblica su una macchina remota o locale, dove verrà usata per la cifratura di file.
Questa operazione viene eseguita esportando in un file la chiave pubblica che abbiamo generato in precedenza tramite il seguente comando:
gpg --export UID > nome_file_esportato.pub
Nel caso specifico sarà:
michele@michele-mmul ~ $ gpg --list-key /home/michele/.gnupg/pubring.gpg -------------------------------- pub 2048R/867736BD 2014-10-31 uid Michele Milaneschi sub 2048R/0B8DF373 2014-10-31 pub 2048R/8CE43AB0 2011-03-10 uid Raoul Scarazzini sub 2048R/3A40F0BC 2011-03-10 michele@michele-mmul ~ $ gpg --export Michele Milaneschi > pubkey.pub
Se vogliamo essere precisi, nel caso specifico sarà:
gpg --export 867736BD > pubkey.pub
Il metodo di copia della chiave sulla macchina in questione potrà essere effettuato nei metodi più consoni.
Una volta che la chiave è stata copiata dobbiamo procedere alla sua importazione.
Questo lo facciamo tramite il seguente comando:
gpg --import pubkey.pub
Fatto questo lo scambio dei file potrà avvenire in maniera cifrata, usando la chiave pubblica per cifrare i file e la chiave privata per decifrarli.
Vediamo un banale esempio di cifratura:
gpg --encrypt --recipient UID nome_file_da_cifrare
Nel caso specifico sarà:
gpg --encrypt --recipient 867736BD utenze
Una volta che il file ci viene inviato dobbiamo decifrarlo usando la nostra chiave privata.
Questo lo facciamo tramite il seguente comando:
gpg --decrypt utenze.gpg
Se durante la creazione delle chiavi abbiamo inserito una passphare, questa ci verrà chiesta durante la decifratura del file.
Per concludere se volessimo cancellare le chiavi generate daremo i seguenti comandi.
Per la rimozione della chiave pubblica usiamo il seguente comando:
gpg --delete-key UID
Per la rimozione della chiave privata usiamo il seguente comando:
gpg --delete-secret-keys UID
Lascia un commento