Cifrado Cesar - Algoritmos en Python

Bienvenidos a Mi Diario Python, el blog sobre programación
con Python y algo más.
En el día de hoy trabajaremos con el “cifrado cesar”, en
tipo de cifrado por sustitución y uno de los más usados. Mi objetivo de hoy
será realizar un algoritmo que implemente el cifrado de cesar tanto para el
cifrado y el descifrado de cualquier texto.
¿Listos? Comencemos.

Cifrado Cesar: Procedimiento.
El cifrado César mueve cada letra un determinado número de espacios en el alfabeto. En este ejemplo se usa un desplazamiento de tres espacios, así que una B en el texto original se convierte en una E en el texto codificado.


Algoritmo:
Cifrado Cesar.

Comencemos abriendo nuestro editor de texto preferido. EN mi
caso, utilizare sublime text, un editor de texto muy bueno.




Comenzamos escribiendo la función principal. Primero le
pedimos el mensaje con el que el algoritmo trabajara. Luego le pedimos la llave
y el modo, cifrar o descifrar.
La función principal será la que llamara a las funciones que
realizan el procedimiento de cifrar y descifrar, dependiendo de la entrada del
usuario.

La función “encdec” tomara como argumento las entradas del
usuario (mensaje, key, modo). En esta función creamos una variable llamada
message la cual contendrá el mensaje ingresado por el usuario, la función upper
convierte el mensaje a mayúsculas.
En la translated contendrá el mensaje cifrado. La variable
LETTERS contendrá todas las letras del abecedario la cual el algoritmo
utilizara para remplazar las letras del mensaje.


Por último, llamas a la función main, la función principal.
Ahora podemos ejecutar el script:




Excelente, el mensaje está cifrado.

Como pueden ver, el procedimiento es muy sencillo, y lo
puedes utilizar para distintos propósitos.

Puedes descargar el algoritmo presentado hoy día, en mi repositorio de github: https://github.com/LuisAlejandroSalcedo/Cifrado-Cesar-Algoritmo.

¿Qué te pareció?¿Alguna duda? No olvides dejar tu
comentario.
Mi nombre es Luis y fue un placer compartir mis
conocimientos con todos ustedes :D.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir

Te has suscrito correctamente al boletín

Se produjo un error al intentar enviar tu solicitud. Inténtalo de nuevo.

Mi Diario Python will use the information you provide on this form to be in touch with you and to provide updates and marketing.