Uso de llaves de cifrado GPG
La privacidad es un valor impostergable en un sistema de computo. Puedes aprender a cifrar mensajes de correo electronico en el ambiente Texto-plano.xyz. Para ello debes utilizar el criptosistema GnuPG.
Este criptosistema ofrece un mecanismo de cifrado para mensajes de punto a punto. Cada punto (remitente y receptor) posee dos tipos de clave: una llamada Clave Privada, y otra que se combina con la anterior pero que debe compartirse con el resto de tus destinatarios de correo: la Clave Publica.
En texto-plano, podras utilizar el programa de correo electronico Mutt para enviar y recibir correo electronico convencional. Pero si adicionalmente utilizas el criptosistema, podras asegurar el envio y recepcion de correo cifrado y firmado digitalmente con Mutt.
Sigue este tutorial para poder usar el criptosistema.
1. Crea un par de llaves PGP
En primer lugar, genera el necesario par de llaves (privada y publica) asociadas a tu direccion de correo electronico. Ingresa el comando:
gpg --full-generate-key
Aparecera en tu terminal el siguiente dialogo. Completa el nombre y la direccion del correo electronico:
gpg (GnuPG) 2.2.36; Copyright (C) 2022 g10 Code GmbH
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Por favor seleccione tipo de clave deseado:
(1) RSA y RSA (por defecto)
(2) DSA y ElGamal
(3) DSA (solo firmar)
(4) RSA (solo firmar)
(14) Existing key from card
Su eleccion:
Pulsa 1 para indicar tipo de llave RSA y RSA. Cuando se te solicite el tamano puedes indicar 4096. Si lo deseas, puedes elegir que el par de llaves no caduque nunca (opcion 0) y confirma que todo es correcto.
Introduce los datos para identificar la llave, por ejemplo:
- Nombre y apellidos: Fulana Mengana
- Direccion de correo electronico: fulana@texto-plano.xyz
- Comentario: en la tilde en castellano
Se te indicara:
Esta usando el juego de caracteres 'utf-8'.
Ha seleccionado este ID de usuario:
"Fulana Mengana (en la tilde en castellano) <fulana@texto-plano.xyz>"
¿Cambia (N)ombre, (C)omentario, (D)ireccion o (V)ale/(S)alir? v
Acepta los cambios presionando la tecla v.
Si estas inaugurando tu criptosistema en el entorno texto-plano, se te solicitara ahora que ingreses ahora una contrasena de criptosistema (y confirmarla), a fin de proteger tu llavero (“Key-Ring”). Naturalmente, si ya hubieses utilizado el criptosistema previamente, se te solicitara ingresar la contrasena del llavero que le introdujiste al momento de su creacion.
El Keyring ("llavero") es el programa almacenamiento del criptosistema, y te permite controlar todas tus acciones de encriptacion, de modo que toma nota de la contrasena del llavero y conservala a en un lugar seguro. Su directorio de acceso exclusivo y reservado es
~/.gnupg/
Una vez concluido se te informara:
gpg: clave XXXXXXXX marcada como de confianza absoluta
gpg: certificado de revocacion guardado como ''/home/fulana/.gnupg/openpgp-revocs.d/xxxxxxxxxx.rev''
gpg: clave publica y secreta creadas y firmadas.
pub rsa4096 aaaa-mm-dd
Huella de clave = zzzz zzzz zzzz zzzzz zzzz zzzz zzzz zzzz zzzz zzzz
uid Fulana Mengana [fulana@texto-plano.xyz]
sub rsa3072/ZZZZZZZZ aaaa-mm-dd
2. Comparte tu llave publica PGP con terceros
Quienes deseen descifrar tu correo encriptado deben contar con tu llave publica almacenada en un fichero. Primero deberas exportar una copia de tu cable publica con un comando similar a este:
gpg --export --armor fulana@texto-plano.xyz > ~/fulana_tp_publica.asc
Este ejemplo creara en tu directorio de usuari@ un fichero de llave
publica denominado fulana_tp_publica.asc
.
Hazlo publico de las manera que desees:
- Enviaselo adjunto por correo electronico a quien desees;
- Copia este fichero a tu caja de Texto-plano;
- Copialo a tu directorio
~/public_hmtl
para dejarlo disponible en tu pagina web; - Copialo a tu directorio
~/public_gopher/
para distribuirlo desde tu gopherhole; - Puedes publicarlo en tu finger de texto-plano;
Para hacer esto desde la shell, podrias modificar el siguiente bloque de comandos de ejemplo:
cp ~/fulana_tp_publica.asc ~/public_html/ ;
acthtml ;
cp ~/fulana_tp_publica.asc /var/www/caja/$USER/ ;
actcaja ;
cp ~/fulana_tp_publica.asc ~/public_gopher/ ;
cp ~/fulana_tp_publica.asc ~/.pgpkey
Tambien podrias anunciarlo a nuestra comunidad mediante gab, recurriendo a un comando similar a este:
gab -m "Agreguense mi llave publica con: gpg –-import /var/www/caja/$USER/fulana_tp_publica.asc"
3. Agrega a tu criptosistema la llave publica PGP de un tercero
Para poder enviarle correo electronico cifrado a un tercero, deberas
incorporar a tu critosistema la llave publica de dicha persona. La misma
tendra la misma forma que tu propia llave publica: es un fichero
.asc
, o eventualmente .gpg
.
Las llaves publicas suelen dejarse disponibles en un sitio web personal, o incluso puedes solicitarlas al destinatario por medio directo o electronico - incluso abierto.
Suponiendo que te hacen llegar por correo electronico no cifrado la
llave publica del destinatario pepita@texto-plano.xyz, consistente en un
fichero de llave publica denominado pepita_tp.asc
, la
incorporaras a tu criptosistema con el comando:
gpg –-import pepita_tp.asc
Solo si la llave esta intacta, el sistema la incorporara. En tal caso te devolvera algo como:
gpg: key YYYYYY: Clave publica importada.
gpg: numero total procesada: 1
gpg: importada: 1
4. Revisa las llaves almacenadas en el criptosistema
Podras revisar las llaves publicas contenidas en tu criptosistema con el comando:
gpg –k
y este informara las llaves publicas de terceros contenidas en tu llavero, de una forma similar a esta:
/home/fulana/.gnupg/pubring.gpg
------------------------------
pub 4096R/YYYYYYY aaaa-mm-dd
uid Fulana Mengana
sub 4096R/ZZZZZZ aaaa-mm-dd
pub 2048R/3DE3f869 aaaa-mm-dd
uid Pepita TP
sub 2048R/C3CFF358 aaaa-mm-dd
5. Valida las Llaves del Criptosistema
Por favor revisa Como validar las llaves de terceros ==== 6. Eliminar llave de terceros ====
Si opcionalmente deseas remover alguna llave particular de un tercero de tu llavero, utiliza:
gpg --delete-key (id. de llave)
Revisa las llaves del criptosistema para verificar que se haya eliminado.
7. Eliminar llave propia
Solo debes eliminar tu llave privada si estas absolutamente seguro. Te impedira descifrar mensajes que terceros podrian enviarte utilizando la llave publica asociada a la misma.
Si deseas eliminar tu propia llave privada (y la llave publica
asociada, naturalmente), primero listala con -K
(nota que
es K
mayuscula, en lugar de utilizar -k
, que
lista las claves publicas solamente):
gpg -K
Tras identificarla, eliminala con:
gpg --delete-secret key (id.de llave privada)
Aportado originalmente por ~peron en Uso de correo cifrado con GNUPG