Inviato September 5, 2007 GnuPG da riga di comando fonte Quando si ha la necessità di cifrare al meglio file o conversazioni sensibili, la scelta del metodo di cifratura ricadrà, probabilmente, tra quelli a chiave asimmetrica, considerati i più sicuri e robusti. Il tool d’eccellenza per l’ambiente Linux è sicuramente GnuPG che implementa perfettamente le migliori tecnologie di cifratura. Molto semplice da usare via terminale e comodo per eventuali script bash. Consideriamo GnuPG installato e funzionante. Chiunque voglia provare ad installare GnuPG da sorgenti può farlo servendosi della guida ufficiale del progetto, in italiano, disponibile qui. Cifratura-Decifratura simmetrica Utile per cifrare file, utilizza la stessa passphrase per cifrare e decifrare le informazioni. E’ quindi sconsigliabile il suo utilizzo su rete. Per iniziare, create un documento di testo “esempio” contenente qualche riga di testo. Per criptare il file digitare: gpg -c esempio A questo punto vi verrà chiesta la passphrase e successivamente generato il file (binario criptato) esempio.gpg. Per decriptare il file utilizzate il comando: gpg -o file_decifrato -d esempio.gpg passphrase Il comando -o dirige l’output in file_decifrato che rimarrebbe altrimenti stampato a video nel terminale. Generazione delle chiavi L’algoritmo predefinito è DSA/ElGamal con una lunghezza della chiave DSA di 1024bit e 2048bit di default per ELG-E (1024-4096). Per accedere alla creazione guidata del paio di chiavi eseguite: gpg –gen-key Il comando ci mostrerà il seguente output. Sono evidenziate le scelte che spetta a voi compiere: Please select what kind of key you want: (1) DSA and Elgamal (default) (2) DSA (sign only) (5) RSA (sign only) Your selection? 1 DSA keypair will have 1024 bits. ELG-E keys may be between 1024 and 4096 bits long. What keysize do you want? (2048) Requested keysize is 2048 bits Please specify how long the key should be valid. 0 = key does not expire <n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n months <n>y = key expires in n years Key is valid for? (0) 10 Key expires at Wed 12 Sep 2007 06:12:58 PM CEST Is this correct? (y/N) y You need a user ID to identify your key; the software constructs the user ID from the Real Name, Comment and Email Address in this form: “Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>” Real name: Domiziano Email address: xxxx@yyyyy.com Comment: un po di commenti servono per generare le chiavi You selected this USER-ID: “Domiziano (un po di commenti servono per generare le chiavi) <xxxx@yyyyy.com>” Change (N)ame, ©omment, (E)mail or (O)kay/(Q)uit? O You need a Passphrase to protect your secret key. A questo punto, dopo qualche secondo, verranno generate le vostre importanti chiavi. Quella privata non dovrà mai uscire dal vostro pc mentre quella pubblica dovrete inviarla a chi vorrà comunicare, in forma sicura, con voi. Per esportare la chiave pubblica in formato Ascii utilizzare la seguente direttiva: gpg –export -a UID > pub.key Dove UID è il nome reale, nel mio caso Domiziano, e l’output verrà girato al file pub.key che potrete successivamente inviare a chi volete. Per esportare la chiave privata ed eseguire dunque un backup, utilizzare: gpg –export-secret-key -a UID > priv.key Cifratura-Decifratura chiave asimmetrica Effettuiamo la cifratura del file “esempio” per il destinatario “gigi” che possiede la chiave pubblica oppure con destinatario il nostro UID per essere leggibile solo da noi stessi: gpg -ear Domiziano esempio Opzioni: -e per cifrare, -a per restituire un file ascii 7 bit, -r per cifrare l’utente. Se volessimo creare un file binario sostituiamo la -a con -c . A questo punto avremo il file esempio.asc (esempio.gpg se -c) pronto per essere inviato. Una volta giunto a destinazione il destinatario dovrà decifrare il file: gpg -o file_decifrato -d esempio.asc Dopo aver inserito la passphrase verrà generato il file decifrato. Attenzione, è importante che la chiave pubblica, quella cioè di chi ha inviato il file da decifrare, sia stata importata nel database delle chiavi. Per importare una chiave pubblica: gpg –import public.key Interfacce grafiche Per chi vuole tutto a portata di mouse esistono delle comode interfacce grafiche, installabili separatamente, in grado di supplire alla maggior parte delle operazioni prima trattate in modo visuale: GPA Seahorse (Gnome) Geheimnis (Kde) Condividi questo messaggio Link di questo messaggio Condividi su altri siti