GPG (GNU Privacy Guard), es un software libre que nos permite, siendo una versión de PGP (Pretty Good Privacy).
GPG, nos permite encriptar y desencriptar simétrica o asimétricamente, generando la clave automáticamente gracias al los comandos que nos ofrece el programa. La encriptación se llevará a cabo mediante el funcionamiento de anillo de claves, que consiste en una serie de repositorios de claves públicas (pub) y privadas (sub), de forma que las claves públicas sólo sean accesibles para quien dispone de la clave privada correspondiente.
Para que cualquiera pueda utilizar la clave pública de forma fácil, disponemos de servidores que almacenan las claves para acceso de todo el mundo. Los servidores más populares son: » pgp.rediris.es» (español y mas cercano, pero falla aveces) o «pgp.mit.edu» (Americano, propiedad de MIT, mas lejano pero mucho mas efectivo).
Entre los comandos que nos permite utilizar para encriptar simétricamente, se encuentran:
«gpg -c [nombre del archivo]» que nos permite encriptar un archivo de forma sencilla (generando otro “.gpg”)
Y el comando para desencriptar de forma simétrica:
«gpg -d [nombre del archivo.gpg]» que transforma un archivo encriptado “.gpg” a uno tradicional “.txt” (proceso de desencriptación)
Para llevar a cabo el cifrado asimétrico, más complejo pero a la vez más efectivo, tendremos que generar la clave gracias al comando “gpg –gen-key”
Este comando nos permitirá seleccionar el algoritmo de cifrado que usaremos, (RSA y RSA de forma predeterminada) y seleccionamos la longitud de bits de la clave, entre 1024 y 3072.
Una vez generadas las claves que necesitemos, siguiendo el proceso anterior, mostraremos todas las claves disponibles dentro del sistema “gpg -k”