Manual básico de GPG
GnuPG (GPG)
Cifrado simétrico
Cifrado
$ gpg --symmetric mensaxe
Ou
$ gpg -c mensaxe
O comando pediranos a clave que queremos utilizar. Volverá a pedila de novo para confirmala.
Se quixeramos que a saída cifrada fose ascii en lugar de binaria, empregaríamos a opción -a.
Descifrado
- Se queremos visualizar o contido por pantalla:
$ gpg --decrypt mensaxe.gpg
Ou
$ gpg -d mensaxe.gpg
- Se queremos que o contido se garde noutro arquivo:
$ gpg --decrypt mensaxe.gpg > mensaxe2
Ou
$ gpg -d mensaxe.gpg > mensaxe2
Solicitaráselle a clave que usaramos para cifrar e que temos que facerlle chegar a través dun medio seguro.
Cifrado asimétrico
Xeración da parella de claves
gpg --gen-key
Neste caso se nos solicitará o nome e apelidos do propietario das claves e o seu enderezo electrónico. E nos pedirá confirmación do seu identificador. Por último, solicitará un contrasinal para almacenar a clave privada no almacén de claves de forma cifrada.
Na versión actual, se queremos poder escoller o algoritmo de cifrado, o tamaño da clave e o período de validez da clave, debemos empregar o comando:
gpg --full-generate-key
Que nos solicitará o mesmo que no caso anterior, máis estes novos parámetros indicados.
Listado de claves
gpg -kv
Ou
gpg --list-keys
Exportación
gpg -a -o <ficheiro_no_que_exportar.asc> --export <identificador>
A opción -a fai que a exportación se faga en ASCII.
Importación
gpg --import <ficheiro_clave_publica.asc>
Cifrado
gpg -a -r <identificador_clave> --encrypt <ficheiro_a_encriptar>
Xerarase un ficheiro co mesmo nome que o orixinal pero engadíndolle a extensión .asc
En lugar de --encrypt pódese usar a opción -e
Descifrado
gpg -o <ficheiro_descifrado> -d <ficheiro_cifrado>
Xerar certificado de revocación
gpg -o <nome_certificado_revocación.asc> --gen-revoke <identificador>
Revocar a clave mediante o certificado de revocación
gpg --import <nome_certificado_revocación.asc>
Firma de documentos
Firmar un documento con firma separada
Coa firma por defecto:
gpg --output firma-documento.txt.sig --detach-sign documento-a-firmar.txt
Escollendo a firma a empregar:
gpg --output firma-documento.txt.sig --detach-sign --default-key <identidad> documento-a-firmar.txt
Verificación de firma
gpg --verify firma-documento.txt.sig documento-a-firmar.txt