Práctica 5: Cifrado con GPG
Transcripción
Práctica 5: Cifrado con GPG
PRÁCTICA 5: CLAVES PRIVADAS y PÚBLICAS Objetivo: Este práctica contempla una serie de ejercicios cuyo objetivo principal es familiarizar al alumno con los principales conceptos y técnicas del cifrado. Como ya sabemos, existen dos técnicas de cifrado: cifrado simétrico (o de clave privada) y cifrado asimétrico (compuesto por dos claves, una pública y otra privada). Pues bien, vamos a utilizar una herramienta de software libre llamada GPG (GNU Privacy Guard) que viene con la distribución de Ubuntu 11, con la que vamos a trabajar en clase por medio de una Máquina Virtual. Herramientas de Cifrado: Como ya se ha indicado, trabajaremos con la herramienta GPG, que es una implementación libre del estándar OpenGPG Message para preservar la confidencialidad tanto en el almacenamiento como en la comunicación de la información. En el mercado existen otras soluciones de cifrado, pero no son gratuitas. La más conocida en el mundo de la seguridad informática es PGP (Pretty Good Privacy), que es una especie del Office en la seguridad. Otra herramienta (un poco menos conocida) que sigue los mismos propósitos que estamos describiendo es TrueCrypt. Por último vamos a comentar un software un tanto especial: se llama John the Ripper, y no es más que es programa que trata de romper contraseñas por el uso de la fuerza bruta, es decir, probando las diferentes posibilidades de una en una, utilizando un diccionario de datos con los nombres más comunes utilizados como claves. Realmente no es una herramienta de cifrado, más bien es una herramienta de cracking, que los administradores de sistemas utilizan para comprobar la robustez de las contraseñas de los usuarios de forma sencilla. Caso Práctico 1: Cifrado de Documentos con clave privada En este caso vamos a generar un par de documentos que vamos a proteger con la herramienta GPG y una clave privada (denominada frase de paso). El procedimiento que vamos a seguir es cifrar los documentos originales para hacerlos ilegibles y guardarlos en una carpeta común en la carpeta compartida “\\SMR2W7-00\Práctica 5\Caso 1”. 1 de 4 1 de 4 Los pasos que debemos seguir en este apartado son: a) Creación de la carpeta “Criptografía/Caso 1” en el 'home' del usuario. b) Nos situamos en el directorio creado. c) Creación de los documentos ([Nombre] es el nombre del alumno): Documento-[Nombre].txt (con el editor gedit). Documento-[Nombre].odt (con el editor de FreeOffice). d) Cifrado de los documentos con una frase secreta: Comando > gpg - c [File] e) Verificación de los tamaños de los ficheros .gpg obtenidos. f) Visualización de los ficheros cifrados o encriptados con el editor gedit. g) Generación el fichero cifrado en modo ASCII: Comando > gpg - c - a [File] h) Visualización del fichero encriptado en ASCII (.asc) con el comando Linux “cat”. i) Guarda los ficheros encriptados con extensiones .gpg y .asc en la carpeta compartida en el equipo Windows 7 del profesor: “\\SMR2W7-00\Práctica 5\Caso 1”. j) Utilizando la ayuda del comando “gpg” indaga cómo es el comando para desencriptar, y prueba a descifrar el fichero de alguno de tus compañeros. Caso Práctico 2: Obtención de claves para cifrado asimétrico Ahora vamos utilizar la herramienta GPG para obtener un par de claves asimétricas para nuestro uso personal. Con el formato de comando adecuado, GPG genera una clave privada en el equipo (que debemos conocer solo nosotros mismos) y una clave pública relacionada con la privada, que distribuiremos entre nuestros contactos. En este caso seguiremos el siguiente guión: a) Generación de las claves asimétricas: Comando > gpg - - gen - key (1) Selección del algoritmo de encriptación: RSA. (2) Tamaño de la clave: 2048 (3) Tiempo de validez de la clave: 1 semana. (4) Información Personal: Nombre, correo y comentario. El nombre nos servirá como identificador de nuestra clave. (5) Frase de paso: introducimos nuestra clave privada secreta. (6) El programa nos pide que sigamos trabajando normalmente en otra ventana para generar bits aleatorios que se van a incluir en las claves. b) Una vez generadas las claves, las listamos: Comando > gpg -k 2 de 4 2 de 4 c) Si queremos eliminar alguna clave, el comando es: Comando > gpg - - delete - key [ID-Clave] , o Comando > gpg - - delete - secret- key [ID-Clave] , d) Creamos la carpeta “Criptografía/Caso 2” en el 'home' del usuario. e) Nos situamos en el directorio creado. f) Ahora vamos a exportar nuestra clave pública para distribuirla entre todos nuestros compañeros. Para ello, usaremos el siguiente comando, junto al fichero de exportación (.key) y el Id. de la clave: Comando > gpg - o [Nombre].key - - export [ID-Clave] g) La clave pública exportada la copiamos en la carpeta “\\SMR2W7-00\Práctica 5\Caso 2”. h) Copiamos las claves exportadas por nuestros compañeros de la carpeta compartida. i) Importamos las claves públicas de nuestros compañeros a nuestro “anillo de claves”. Comando > gpg - - import [Nombre].key j) Visualizamos el contenido del anillos de claves: Comando > gpg - k Caso Práctico 3: Cuando alguien nos quiera enviar un documento cifrado por un canal inseguro (como Internet), para asegurarse que solo nosotros lo podemos descifrar, utilizará la clave pública que le hemos enviado para encriptar el documento. Para probar esta posibilidad de encriptación haremos lo siguiente: a) Creamos la carpeta “Criptografía/Caso 3” en el 'home' del usuario. b) Nos situamos en el directorio creado. c) Creamos un documento de texto con 4 ó 5 líneas: Documento[Nombre].txt d) Encriptamos el documento generado para cada uno de nuestros compañeros, utilizando sus claves públicas, que en el caso anterior hemos importado en nuestro anillo de claves: Comando > gpg - er [ID-Clave] [FileName] Como nombre de fichero utilizaremos el fichero anterior y se generará otro fichero con el mismo nombre al que añade la extensión .gpg al que nosotros le añadiremos a mano “[Destino]”, para saber a quién va dirigido (es decir quien puede desencriptarlo). 3 de 4 3 de 4 Ejemplo: Creo el fichero DocumentoJesús.txt Genero los documentos encriptados: DocumentoJesús-Iñigo.txt.gpg DocumentoJesús-Grisolia.txt.gpg DocumentoJesús-Toledano.txt.gpg … e) Copiamos los documentos encriptados en la carpeta “\\SMR2W7-00\Práctica 5\Caso 3”. Caso Práctico 4: En este caso vamos a desencriptar los documentos que nuestros compañeros han encriptado utilizando nuestra clave pública, y que están en la carpeta compartida en el equipo Windows 7 del profesor: “\\SMR2W7-00\Práctica 5\Caso 3”. Por último, seguiremos los siguientes pasos: a) Creamos la carpeta “Criptografía/Caso 4” en el 'home' del usuario. b) Nos situamos en el directorio creado. c) Copiamos de la carpeta compartida aquellos documentos que nos interesen a nuestra máquina, en la carpeta creada en el apartado a). d) Desencriptamos los documentos de nuestros compañeros: Comando > gpg - o [FileName] - d [FileName].gpg (La opción -o indica el nombre del fichero en claro y -d contiene el fichero cifrado) e) Visualizamos los ficheros de nuestros compañeros (presuntamente con extensión .txt) ENTREGA DE LA PRÁCTICA: Una vez resueltos los ejercicios de la práctica, redactar un Manual en Word llamado ManualGPG, con la descripción de las diferentes opciones que admite el comando GPG y hemos probado en esta práctica. El manual junto con los ficheros desencriptados de vuestros compañeros me los enviáis por correo a mi dirección. Fecha tope de entrega: Jueves 19 de Enero de 2012 4 de 4 4 de 4
Documentos relacionados
Criptografía asimétrica
http://www.joseberenguel.com/archivos/imrl/practicas/guion_pr10gpg.pdf http://www.asturlinux.org/archivos/jornadas2001/charla-gnupg.pdf Ejecutamos el comando “ gpg -gen-key”. (1)Mediante el parámet...
Más detalles