En esta publicación realizaremos un programa con algunos de los cifrados más comunes que se pueden hacer (SHA1, MD5, SHA256, SHA512) y así descifrar contraseñas. Primero hagámonos una idea de cómo cifra una clave al conjunto de caracteres que tiene una palabra lo recibe y me devuelve una cadena alfanumérica por ejemplo para la palabra contraseña me devuelve esto en MD5 “4c882dcb24bcb1bc225391a602feca7c” en teoría no hay ningún método que permita regresar del cifrado a la palabra original, pero siempre está la posibilidad de cifrar una palabra con el mismo cifrador y si al meter contraseña nos devuelve una cadena que teníamos antes pues habremos encontrado una coincidencia.
Pues para empezar importaremos nuestras librerías que serán hashlib y sys.
Después evitaremos errores y daremos el KeyboardInterrupt.
Y ahora comenzaremos el método main, lo haremos algo interactivo hare que en la pantalla de consola me escriba que es un cifrador y que elija el método de ciframiento eligiendo en un menú.
Ahora empleando el input pediré que introduzcan tanto el número del modo de ciframiento así como la palabra a cifrar y encadenare los if para que elijan el modo y lo envíen a la función adecuada.
Por último, escribiremos las funciones de cada función criptográfica, simplemente le diremos que pase la variable palabra por el haslib y el cifrador que corresponda y me devuelva por pantalla la palabra que ahora está en la variable encrypted por pantalla. En programas interactivos suelo añadir cadenas de “*” o “+” para encontrar más fácilmente el resultado.
Comprobaremos el resultado de nuestro programa en consola eligiendo la opción/modo 1 e insertando la palabra “contraseña”.
Este sería el resultado final de nuestro cifrador .