sábado, 1 de junio de 2019

83 Python. Cifrado Cesar

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)



2 comentarios:

  1. Si se quisiera descodificar con todos los desplazamientos, es decir un descodificado bruto como podría hacerse?

    ResponderEliminar
    Respuestas
    1. Cambia el valor del desplazamiento y en la formula elimina el modulo.
      Todo esto es un ejemplo, puedes crear la codificacion de muchas formas.
      Saludos.

      Eliminar

Se procedera a revision para su pronta publicacion en caso de que no incumpla las normas de blogger.