[Python-es] [Consulta] Error al desencriptar el texto
Ricardo Cárdenes
ricardo.cardenes en gmail.com
Lun Dic 10 16:01:52 CET 2012
Y... ¿cual es el problema? Si cambio el final por:
cifr = encripta("Texto a Encriptar",1 ,"Clave")
print encripta(cifr, 2, "Clave")
Obtengo:
Texto a Encriptar
que es lo que esperaría.
2012/12/10 Lucas Alvarez <alvarezlucas en gmail.com>
> La verdad que si.... el identado se fue al carajo.... lo puse en pastebin
> como lo sugerís..
>
>
> 1. # usr/bin/env python
> 2. # -*- coding: UTF-8 -*-
> 3. # Encripta y Desencripta un texto dependiendo de la clave de usuario
> 4.
> 5. debug = False
> 6.
> 7.
> 8. def encripta(Texto, Accion, ClaveUsuario):
> 9. temp = 0
> 10. i = 0
> 11. j = 0
> 12. n = len(ClaveUsuario)
> 13. rtn = ""
> 14. # Convierto la cadena ClaveUsuario a una lista ascii
> 15. ClaveUsuarioASCII = []
> 16. for i in range(0, n):
> 17. ClaveUsuarioASCII.append(ord(ClaveUsuario[i]))
> 18. if debug:
> 19. print
> "-----------------------------------------------------------"
> 20. print "La Lista ClaveUsuario: ---> ", ClaveUsuarioASCII
> 21. print "La Letra Seria: ---> ", ClaveUsuario[i]
> 22.
> 23. # Convierto la cadena texto a una lista ascii
> 24. TextoASCII = []
> 25. d = len(Texto)
> 26. for i in range(0, d):
> 27. TextoASCII.append(ord(Texto[i]))
> 28. if debug:
> 29. print
> "-----------------------------------------------------------"
> 30. print "La Lista TextoAsccii: ---> ", TextoASCII
> 31. print "La Letra Seria: ---> ", Texto[i]
> 32.
> 33. # Encriptar Texto
> 34. if Accion == 1:
> 35. for i in range(0, d):
> 36. if j + 1 >= n:
> 37. j = 1
> 38. else:
> 39. j = j + 1
> 40.
> 41. if debug:
> 42. print
> "-----------------------------------------------------------"
> 43. print "Letra del Texto en ASCII --->: ",
> TextoASCII[i]
> 44. print "Numero en Clave Usuario --->: ",
> ClaveUsuarioASCII[j]
> 45.
> 46. temp = TextoASCII[i] + ClaveUsuarioASCII[j]
> 47.
> 48. if temp > 255:
> 49. temp = temp + 255
> 50. if debug:
> 51. print temp
> 52. rtn = rtn + chr(temp)
> 53. if debug:
> 54. print rtn
> 55.
> 56. # Desencriptar
> 57. elif Accion == 2:
> 58. for i in range(0, d):
> 59. if j + 1 >= n:
> 60. j = 1
> 61. else:
> 62. j = j + 1
> 63. if debug:
> 64. print TextoASCII[i]
> 65. print ClaveUsuarioASCII[j]
> 66. temp = TextoASCII[i] - ClaveUsuarioASCII[j]
> 67. if debug:
> 68. print temp
> 69. if temp < 0:
> 70. temp = temp + 255
> 71. if debug:
> 72. print temp
> 73. rtn = rtn + chr(temp)
> 74.
> 75. return rtn
> 76.
> 77. print encripta("Texto a Encriptar",1 ,"Clave")
>
>
>
> 2012/12/10 G V <nadaird en gmail.com>
>
>> Creo que el indentado se ha ido al carajo, o eso o tu problema es justo
>> ese. Puedes usar herramientas como pastebin para que se pueda leer mejor el
>> codigo a la hora de compartirlo.
>>
>> Un saludo
>>
>>
>> 2012/12/10 Lucas Alvarez <alvarezlucas en gmail.com>
>>
>>> 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!
>>>
>>>
>>>
>>> _______________________________________________
>>> Python-es mailing list
>>> Python-es en python.org
>>> http://mail.python.org/mailman/listinfo/python-es
>>> FAQ: http://python-es-faq.wikidot.com/
>>>
>>>
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20121210/48d492d0/attachment.html>
Más información sobre la lista de distribución Python-es