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

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