En esta práctica vamos a cifrar ficheros utilizando cifrado asimétrico utilizando el programa gpg. Puedes encontrar el resumen de comando en esta chuleta o buscar información en internet.
Tarea 1: Generación de claves (1 punto)
Los algoritmos de cifrado asimétrico utilizan dos claves para el cifrado y descifrado de mensajes. Cada persona involucrada (receptor y emisor) debe disponer, por tanto, de una pareja de claves pública y privada.
Para generar nuestra pareja de claves con gpg utilizamos la opción --gen-key:
Para esta práctica no es necesario que indiquemos frase de paso en la generación de las claves (al menos para la clave pública).
Para enviar archivos cifrados a otras personas, necesitamos disponer de sus claves públicas. De la misma manera, si queremos que cierta persona pueda enviarnos datos cifrados, ésta necesita conocer nuestra clave pública. Para ello, podemos hacérsela llegar por email por ejemplo. Cuando recibamos una clave pública de otra persona, ésta deberemos incluirla en nuestro keyring o anillo de claves, que es el lugar donde se almacenan todas las claves públicas de las que disponemos.
Tarea 3: Cifrado asimétrico con claves públicas (3 puntos)
Tras realizar el ejercicio anterior, podemos enviar ya documentos cifrados utilizando la clave pública de los destinatarios del mensaje.
Tarea 4: Exportar clave a un servidor público de claves PGP (2 puntos)
Para distribuir las claves públicas es mucho más habitual utilizar un servidor específico para distribuirlas, que permite a los clientes añadir las claves públicas a sus anillos de forma mucho más sencilla.
Tarea 5: Cifrado asimétrico con openssl (3 puntos)
En esta ocasión vamos a cifrar nuestros ficheros de forma asimétrica utilizando la herramienta openssl.