La criptografía nació poco después de la creación de las diferentes formas de escritura, por la importancia de enviar información confidencial y especifica para un destinatario sin que esta sea comprometida por un tercero o bien para poder ocultar información personal a gente que no debiera concernir de ningún modo está información.
Las grandes civilizaciones inventaron los primeros métodos de criptografía: los monográficos o monogramicos, uno de ellos es principalmente el cesar siendo básicamente la transposición la forma de encriptar el contenido el cual era cambiar una letra por la que seguía a tres posiciones adelante en el alfabeto como ejemplo si haba una A se tenia que poner una D, en el caso de la B se ponía la E, si había una C se visualizaría la F y así sucesivamente.
Siguiendo con métodos monográficos surgieron los que usaban la sustitución como forma de ocultamiento pero de igual forma conociendo el patrón rápidamente se podría descifrar el mensaje.
Entonces para poder hacer sistemas de cifrado mas seguros se combinaron estos dos métodos y dieron paso a los métodos criptograficos poligráficos o polialfabeticos. Donde una letra en especifico se puede cambiar por 2 o mas símbolos de uno o varios alfabetos con un cierto patrón para que sea fácil su descifrado para el que conozca el patrón a seguir siendo casi imposible descifrar por un tercero por la robustes del sistema.
En la actualidad con los sistemas de informacion surgieron y algoritmos o programas de computadoras surgen los metodos de cifrado simetrico donde se tiene una clave para cifrar aquel que sepa la clave podra ver el contenido del objeto digital sea mensaje, imagen, video o etc. Pero como solo se tiene una clave se vuelve dificil compartir esta clave ademas de facil de obtener si no se comparte por una vía segura. Ahora para evitar este problema se crean los metodos de cifrado asimétrico que no es otra cosa que un cifrado con 2 llaves una privada y una publica, siendo la publica para todos aquellos que me quieran y la privada es una clave confidencia la cual por cuestiones de seguridad se vuelve importante guardarla aparte del servidor inicial ya sea en un disco duro externo o en un pendrive.
Existen ya varios Programas que te generan claves o certificados asimétricos, teniendo estos programas la capacidad de cifrar y descifrar mediante este proceso archivos, ademas de tener su propio servidor donde alojan los certificados o claves publicas para su descarga.
En este caso aprendimos a usar el programa llamado Gpg4win el cual tiene una aplicacion en especial llamada Kleopatra que tiene una interfaz sencilla pero con un alcance poderoso para este fin que es la creacion de certificados personales o verificados por una agente especializado mundialmente otorgando mas confiabilidad a la hora de manejar estas claves.
Ahora Explicare brevemente como crear y compartir un certificado, ademas de cifrar y descifrar archivos de manera muy simple y sencilla con Kleopatra. Ademas de como subir un certificado a uno de los servidores de los programas:
Crear y Compartir:
Abrimos Kleopatra que es uno de los programas de Gpg4win nos vamos al menú File y elegimos "New Certificate" o se puede accesar a esta opción con "Ctrl+N"...
Nos pedirá elegir entre 2 opciones de tipo de certificado ya sea el "OpenPgp" o "X.509" donde el primero es el certificado común y de más fácil uso, mientras que el segundo es un certificado mas formal donde este para poder ser usado primero debe ser verificado por un organismo gubernamental que da legalidad a los certificados:
La opción mas viable es la primera para fines prácticos posteriormente nos pedirá nuestros datos empezando por nombre, email son datos necesarios y un dato opcional que es el comentario.
Damos clic en "Advanced Setings..." y observamos la pantalla:
Se recomienda en el tutorial se recomienda que se deje igual la opción RSA con 2048 bits para que sea segura la contraseña con una vigencia de 2 a 4 años y al finalizar los cambios que queramos hacer se oprime en "ok".
Posteriormente nos mostrara los parámetros del certificado que se creara en una pantalla blanca... Damos clic en Create key... Nos pedirá que escribamos una contraseña con el teclado Alfanumérico y abajo nos dirá que tan segura es nuestra contraseña mientras se va llenando una barra de color verde. Nos pedirá que confirmemos la contraseña y luego visualizaremos la firma del certificado ademas de que nos mostrara otro menu:
- Donde la primera opción es recomendable usarla para guardar una copia de nuestro certificado en un dispositivo externo a nuestra computadora.
- La senda opción es para compartir nuestro certificado por medio de Email.
- Y por ultimo nos da la opción para poder compartir nuestro certificado mediante un servidor que la aplicación nos da acceso.
Por otro lado si no utilizamos ninguna de las 2 formas anteriores para compartir certificados existe una tercera forma que es la Exportación de certificado con los siguiente pasos a seguir:
- Dar clic en el certificado a compartir o en este caso a exportar.
- Se habilita la opción de exportar en la parte de arriba a un lado de "Import Certificates" y damos clic en "Export Certificates"
- Ponemos la dirección donde queremos guardar el certificado para poder compartirlo posteriormente y listo.
- Seleccionar un archivo a cifrar
- Dar clic derecho
- Seleccionar Cifrar y Firmar o si solo queremos hacer uno damos en una opcion mas abajo que dice "Más opciones de Gpg" y seleccionamos lo que queramos en especifico.
- Nos mostrara opciones de como queremos cifrarlo se recomienda que sea en "txt ascii" y ademas buscaremos la ruta donde se creara el archivo cifrado luego damos siguiente.
- Aparecerá una pantalla donde le pondremos uno o varios certificado ya sean privados o públicos para certificarlo con los datos pertinentes a este o estos y listo.
Para Descifrar se hace exactamente lo mismo de los primeros 3 pasos para Cifrar con excepción de que en vez de "cifrar y firmar" se elegirá la opción de descifrar y verificar" o alguno de ellos en "Más opciones de Gpg" y posteriormente nos pedirá la contraseña para descifrarlo para esto debe de estar cifrado con tu llave publica para que lo puedas descifrar con tu llave privada.