Título: [Guía] Generación de claves para cifrado asimétrico Publicado por: madpitbull_99 en 21 Noviembre 2010, 21:47 pm Introducción a la criptografía asimétrica
La idea principal de la criptografía asimétrica es que en una comunicación segura se usan una pareja de claves. Una de ellas, que es la publica, que deberá ser intercambiada con cada una de las entidades con las que quiera comunicarse mensajes secretos, y otra de ellas, que es la privada, y que por tanto no debe ser compartida con nadie. Para cifrar un mensaje, el emisor utilizara la clave publica del receptor, y a su vez, el receptor descifrara este mensaje usando su clave privada. Ejemplo: Supongamos que Fernando y Julia quieren intercambiarse información confidencial usando la criptografía asimétrica. Lo primero que deben hacer, es obtener una pareja de claves propias (privada + publica), cada uno comunica su clave publica al otro, ya que no pasaría nada si cayera en manos de un tercero. Cuando Fernando quiera enviarle un mensaje cifrado a Julia debera usar la clave que le a sido proporcionada anteriormente para cifrar el mensaje. Como es lógico pensar, estas claves (privada y publica) se generan a la vez y se encuentran relacionadas matemáticamente entre si mediante funciones de un solo sentido. Resulta prácticamente imposible descubrir la clave privada a partir de la publica. En la imagen de abajo podemos ver un esquema gráfico con el proceso de cifrado: (http://madzone.comoj.com/image_host/images/asimetrico.jpg) Generación de claves para uso de cifrado asimétrico Para la creación de claves asimétricas usare la herramienta GNUPG (http://www.gnupg.org/) que se puede descargar desde la pagina oficial . (http://www.gnupg.org/download/index.es.html) En mi caso usare una distribución GNU/Linux, pero el proceso es igual para Windows. 1. Abrimos una consola y ejecutamos la instrucción gpg con el parámetro --gen-key . 2. Nos aparecerá este menú: Código Donde tenemos que elegir el tipo de cifrado, en nuestro caso usaremos RSA y RSA, o sea el numero 1. 3. Elegir el tamaño de la clave. Usaremos 2048 (por defecto). Código
4. Indicar el periodo de validez de la clave. Código
Código Ponemos <s> si elegimos que nuca caduque. 5. Introducir Nombre y Apellidos. Código
6. Dirección de Correo Electrónico. Código
7. Poner comentarios. Código
8. Proceso final. Nos preguntara si todos nuestros datos son correctos. Ponemos v (vale) si es así. Código
9. Introducir contraseña. Recordadla o mejor apuntadla en algún lado. 10. Paso final. Sera necesario cargar el microprocesador con algo de carga y esperar a que se genere la clave. Exportar clave publica Para exportar nuestra clave publica en un fichero de texto usaremos la instruccion de abajo: Código Eso exportara la clave publica en un fichero de texto llamado clave_publica_ehn.pub . Si lo abrimos veremos nuestra clave: (http://madzone.comoj.com/image_host/images/seleccin00.png) Esa es la clave que tendremos que pasar a la persona que quiera enviarnos un mensaje cifrado. Importar clave publica El emisor debera importar nuestra clave publica en su anillo de claves (base de datos de claves) para que luego pueda cifrar un documento y enviarlo. Código
Cifrar ficheros Para que el emisor puede cifrar un documento deberá tener instalado el GPG (http://www.gnupg.org/) pero no tiene porque crearse su propia clave privada si no la necesita. Usaremos este comando para cifrar un documento de texto: Código
Donde documento.txt es el fichero a cifrar. Despues de ejecutar este comando nos habrá creado un fichero con un nombre igual que el anterior pero acabado en la extensión .asc (documento.txt.asc) Ese es el fichero que el emisor deba enviar al receptor de forma segura (cifrado) Descifrar ficheros Para descifrar un fichero necesitaremos la clave privada que hemos introducido en el primer paso. Ponemos el comando de abajo y después introduciremos la contraseña privada. Código
Resumen
Enlaces externos con mas información: GNU Privacy Guard (GnuPG) Official How-To (http://www.dewinter.com/gnupg_howto/spanish/gpgminicomo.html) Pretty Good Privacy (Wikipedia) (http://en.wikipedia.org/wiki/Pretty_Good_Privacy) Encrypt your mail using Thunderbird (Lifehacker) (http://lifehacker.com/180878/how-to-encrypt-your-email) Criptografía Asimétrica (Wikipedia) (http://es.wikipedia.org/wiki/Criptograf%C3%ADa_asim%C3%A9trica) Solo se aceptan criticas constructivas. Cualquier mejora a este tutorial/guía es bienvenida. |