Buenas, andaba sin saber que hacer y dije, "porque no me aprendo algun lenguaje" y entonces me puse a leer sobre python, la verdad que me gusto bastante el lenguaje.
El cifrador es algo que hago siempre que aprendo un lenguaje, seria como un "hola mundo" un poco mas complejo. Utiliza el cifrado cesar, o por desplazamiento, uno de los mas basicos y antiguos cifrados, osea que si quieren seguridad este no es el script adecuado, lo hice unicamente para aprender el lenguaje
A medida que vaya aprendiendo mas cosas las ire agregando al codigo, como por ejemplo cifrar y descifrar archivos de textos, o hacer un chat cifrado.
El codigo no esta comentado, espero que lo sepan comprender
Cualquier recomendacion para este codigo o sugerencias para agregar a las proximas versiones y asi aprender mas son bienvenidas.
#!/usr/bin/python
import sys
def help():
print """
#################################
# [Des]Cifrador Cesar #
# version 1.0 #
# by Krosspock #
#################################
uso: -[c|d] -n [num] -t 'texto entre comillas'
-c Cifrar cadena
-d Descifrar cadena
-n Numero de desplazamientos
-t Texto a cifrar / descifrar
-h Muestra esto
"""
sys.exit()
def cesar(cd, n, t):
abc = ('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9')
i = 0
ia = 0
resultado = ''
n = int(n)
while (i <= len(abc) - 1):
if (txt[ia] == abc[i]):
if (cd == 'd'):
resultado = resultado + abc[i-n]
else:
resultado = resultado + abc[i+n]
ia = ia + 1
if (ia == len(txt)):
return resultado
i = 0
else:
i = i + 1
if (i == len(abc) - 1):
resultado = resultado + txt[ia]
ia = ia + 1
if (ia == len(txt)):
return resultado
i = 0
if (len(sys.argv) <= 1):
print """
#################################
# [Des]Cifrador Cesar #
# version 1.0 #
# by Krosspock #
#################################
uso: -[c|d] -n [num] -t 'texto entre comillas'
-c Cifrar cadena
-d Descifrar cadena
-n Numero de desplazamientos
-t Texto a cifrar / descifrar
-h Muestra esto
"""
sys.exit()
i = 1
n = 0
txt = ''
while (i < len(sys.argv)):
if (sys.argv[i] == '-h'):
help()
elif (sys.argv[i] == '-c'):
q = 'c'
elif (sys.argv[i] == '-d'):
q = 'd'
elif (sys.argv[i] == '-n'):
num = sys.argv[i+1]
i = i + 1
elif (sys.argv[i] == '-t'):
txt = sys.argv[i+1]
i = i + 1
else:
print 'Error! los parametros usados no son correctos, escribe -h para ayuda'
i = i + 1
print cesar(q,num,txt)
Pero que bien!!
Felicitaciones por el cifrador!
Muy buen trabajo!
Saludos!
ANTRAX
Muy bueno!
Interesante forma de aprender un lenguaje!
Saludos!
CrazyKade