Codifica una cadena de textos mediante el metodo Cesar usando Python.
El codigo es:
desplazamiento=12
def codifica(texto):
cifrado=""
if texto==texto.upper():
lista="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"
else:
lista="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"
for car in texto:
if car in lista:
cifrado += lista[(lista.index(car)+desplazamiento%(len(lista)))]
else:
cifrado+=car
print(cifrado)
return cifrado
def descodifica(texto):
descifrado=""
if texto==texto.upper():
lista="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"
else:
lista="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"
for car in texto:
if car in lista:
descifrado += lista[(lista.index(car)-desplazamiento%(len(lista)))]
else:
descifrado+=car
print(descifrado)
return descifrado
if __name__=="__main__":
cifrado=codifica('hola')
descifrado=descodifica(cifrado)
Si se quisiera descodificar con todos los desplazamientos, es decir un descodificado bruto como podría hacerse?
ResponderEliminarCambia el valor del desplazamiento y en la formula elimina el modulo.
EliminarTodo esto es un ejemplo, puedes crear la codificacion de muchas formas.
Saludos.