[Python-es] [Consulta] Error al desencriptar el texto

Lucas Alvarez alvarezlucas en gmail.com
Lun Dic 10 02:17:50 CET 2012


Hola gente, vengo dando mis primeros pasos en python y estoy intentando
realizar un encriptador, el tema es que estoy tan quemado con el codigo que
ya no veo donde tengo el error al momento de desencriptar.

Si alguien lo ve y me puede dar una mano mas que agradecido... aqui el
codigo:

# usr/bin/env python

# -*- coding: UTF-8 -*-

# Encripta y Desencripta un texto dependiendo de la clave de usuario


debug = False



def encripta(Texto, Accion, ClaveUsuario):

    temp = 0

    i = 0

    j = 0

    n = len(ClaveUsuario)

    rtn = ""

    # Convierto la cadena ClaveUsuario a una lista ascii

    ClaveUsuarioASCII = []

    for i in range(0, n):

        ClaveUsuarioASCII.append(ord(ClaveUsuario[i]))

        if debug:

            print
"-----------------------------------------------------------"

            print "La Lista ClaveUsuario: ---> ", ClaveUsuarioASCII

            print "La Letra Seria: ---> ", ClaveUsuario[i]


    # Convierto la cadena texto a una lista ascii

    TextoASCII = []

    d = len(Texto)

    for i in range(0, d):

        TextoASCII.append(ord(Texto[i]))

    if debug:

        print "-----------------------------------------------------------"

        print "La Lista TextoAsccii: ---> ", TextoASCII

        print "La Letra Seria: ---> ", Texto[i]


    # Encriptar Texto

    if Accion == 1:

       for i in range(0, d):

if j + 1 >= n:

j = 1

else:

j = j + 1


 if debug:

print "-----------------------------------------------------------"

print "Letra del Texto en ASCII --->: ", TextoASCII[i]

print "Numero en Clave Usuario --->: ", ClaveUsuarioASCII[j]


 temp = TextoASCII[i] + ClaveUsuarioASCII[j]


 if temp > 255:

temp = temp + 255

if debug:

print temp

rtn = rtn + chr(temp)

if debug:

print rtn


 # Desencriptar

elif Accion == 2:

for i in range(0, d):

if j + 1 >= n:

j = 1

else:

j = j + 1

if debug:

print TextoASCII[i]

print ClaveUsuarioASCII[j]

temp = TextoASCII[i] - ClaveUsuarioASCII[j]

if debug:

print temp

if temp < 0:

temp = temp + 255

if debug:

print temp

rtn = rtn + chr(temp)


   return rtn


print encripta("Texto a Encriptar",1 ,"Clave")



Saludos!
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20121209/7ee1b9cb/attachment.html>


Más información sobre la lista de distribución Python-es