No se tratará el teórico de la encriptación (simétrica, asimétrica, híbrida) pues no es el objetivo de este HowTo, para ello hay bastante material en la web. Iremos directo al grano. Esto fue realizado en Ubuntu 7.10
Primero instalar gnupg:
sudo aptitude install gnupg2 gnupg-agent
posteriormente generamos el par de claves (publica y privada)
gpg2 – -gen-key
Atención!!los – - tienen un espacio de mas para que se noten.
Nos hará preguntas, en general elegir las opciones por defecto esta bien. Cuando nos pregunte la duración podemos poner tantos años (xY) siendo x el numero de años o que no caduque nunca, si es para uso personal y “casero” podemos elegir esta opción.
Con esto ya tenemos las claves generadas ( si todo fue bien!!). Debemos dar a todos los que queramos que se comuniquen con nostros de forma segura, nuestra clave publica. La exportamos de la siguiente manera:
gpg2 -a -o nombre_archivo.asc – -export usario@servidor.com Siendo usario@servidor.com nuestro correo ingresado cuando se generó el par de claves.
Este archivo generado se lo enviamos a quien queramos o lo publicamos en nuestra pagina para que lo descarguen.
Para importar las claves publicas, paso que tienen que hacer cada persona que reciba nuestros correos, o nosotros para el de los demás, sería:
gpg2 – -import nombre_archivo.asc
Podemos ver las claves publicas importadas asi:
gpg2 – -list-keys
Posteriormente es bueno exportar nuestra clave privada y guardarla en un lugar seguro exterior a nuestra compu, por si tenemos problemas de disco o formateamos. Por ejemplo en cd o pendrive o similar:
gpg2 – -armor – -output privada.asc – -export-secret-key usuario@servidor.com Por supuesto en lugar de privada.asc pueden poner cualquier nombre.
Otra forma de “esparcir” la clave publica es subirla a un servidor de claves, por ej: gpg2 – -keyserver pgp.mit.edu – -send-key IDdeclave Puedes usar otro servidor de claves.
El IDdeClave es tu fingerprint, aunque generalmente se utiliza las ultimas 8 cifras, por ahora.
gpg2 – -fingerprint usuario@servidor.com
Un punto flaco en los algoritmos de clave asimétrica es la transmisión del código público. Es posible que una persona ponga en circulación código con un identificador de usuario falso. Si se codifican mensajes con este pseudo código, el intruso los puede descodificar y leerlos.
La solución PGP (y por consiguiente la solución GnuPG) está en firmar los códigos. La clave pública de un usuario puede estar firmada con las claves de otros usuarios. El objetivo de estas firmas es el de reconocer que el UID (identificador de usuario) de la clave pertenece al usuario a quien dice pertenecer. A partir de ahí es un problema de cada usuario de GnuPG el decidir hasta qué punto se puede fiar de la firma. Una clave se puede considerar fiable cuando se confía en el remitente y cuando se sabe con seguridad que dicha clave pertenece a éste. Sólo cuando se puede confiar plenamente en la clave del firmante, se puede confiar en la firma que acompaña a la clave de un tercero. Para tener la certeza de que la clave es correcta hay que compararla con la huella digital por medio de canales fiables (por ejemplo, podríamos buscar el teléfono en la guía y llamarle, y que nos la dijera de palabra para poder compararla), antes de darle una confianza absoluta.
para firmar claves:
gpg2 – - sign-key IDdeclave
Para ver las TODAS firmas: gpg2 – - list-sigs
si le agregamos un idDeclave veremos las firmas de esa clave:
gpg2 – - list-sigs usuario@servidor.com
Instalacion de firegpg
Es una extension para firefox, que esta totalmente integrada a gmail. Lo instalas y ya estas listo para comunicarte de forma segura! ( a traves de gmail claro, de todas formas lo anterior es util en general, aunque firegpg promete tener soporte para otros webmails proximamente) Sigue los pasos:
http://firegpg.tuxfamily.org/
Luego de instalar vas a: herramientas -> firegpg-> opciones y en la pestaña gpg activamos la casilla: “especificar manualmente la ruta….” y escribimos /usr/bin/gpg2. Reiniciamos firefox y listo
enlaces para alcarar y/o ampliar:
http://magarto.com/blog/archivo/2007/08/15/howto-cifrarencriptar-correos-usando-gnupg-en-gnulinux/
http://www.lostscene.com/manuales/gnupg.php#exportar
http://www.estrellateyarde.es/discover/gpg
Si usas thunderbird te recomiendo este tutorial:
Lo unico es que debes cambiar la ruta a: /usr/bin/gpg2 en enigmail.
gpg2 – -fingerprint usuario@servidor.com
Atención!!los – - tienen un espacio de mas para que se noten.
ok, este certificados cuando lo importemos nos invalidará nuestra clave, lo hacemos de la siguiente manera:
gpg2 – - import archivo_revocacion.asc listo con esto tenemos nuestra clave revocada, si hemos subido nuestra clave a un servidor, debemos volver a subirla para que se revoque alli.
gpg2 – -keyserver pgp.mit.edu – -send-key IDdeclave
El archivo_revocación debe quedar en un lugar segura, pues si alguien tiene acceso a él, puede revocarte la clave, lo mejor es tenerlo en otro lado distinto al disco.
Finalmente, para tener un respaldo general, de nuestras claves (no anillo de claves solo las nuestras) lo que podemos hacer es guardar en un medio ditinto de nuestro disco(cd, pendrive, internet, etc) estos 3 archivos:
publica.asc privada.asc revocacion.asc (por supuesto los nombres deben ser los que tu pusiste al exportar)
Si queremos ademas respaldar todo el anillo de claves, para asi tener todas las claves publicas de nuestros amigos y no tener que importarlas de nuevo en caso de formatear o cambiar de maquina, debemos respaldar la carpera .gnupg que esta en tu home.