comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[Mi primer code] Cifrador de texto

  • 2 Respuestas
  • 1169 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado KrossPock

  • *
  • Underc0der
  • Mensajes: 9
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« en: Enero 30, 2014, 01:28:10 am »
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.

Código: Python
  1. #!/usr/bin/python
  2.  
  3. import sys
  4.  
  5. def help():
  6.         print """
  7. #################################
  8. #       [Des]Cifrador Cesar     #
  9. #       version 1.0             #
  10. #       by Krosspock            #
  11. #################################
  12.  
  13. uso: -[c|d] -n [num] -t 'texto entre comillas'
  14.  
  15. -c      Cifrar cadena
  16. -d      Descifrar cadena
  17. -n      Numero de desplazamientos
  18. -t      Texto a cifrar / descifrar
  19. -h      Muestra esto
  20.  
  21. """
  22.         sys.exit()
  23.  
  24. def cesar(cd, n, t):
  25.  
  26.         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')
  27.         i = 0
  28.         ia = 0
  29.         resultado = ''
  30.         n = int(n)
  31.  
  32.         while (i <= len(abc) - 1):
  33.        
  34.                 if (txt[ia] == abc[i]):
  35.                         if (cd == 'd'):
  36.                                 resultado = resultado + abc[i-n]
  37.                         else:
  38.                                 resultado = resultado + abc[i+n]
  39.                         ia = ia + 1
  40.                         if (ia == len(txt)):
  41.                                 return resultado
  42.                         i = 0
  43.                 else:
  44.                         i = i + 1
  45.                         if (i == len(abc) - 1):
  46.                                 resultado = resultado + txt[ia]
  47.                                 ia = ia + 1
  48.                                 if (ia == len(txt)):
  49.                                         return resultado
  50.                                 i = 0
  51.  
  52. if (len(sys.argv) <= 1):
  53.         print """
  54. #################################
  55. #       [Des]Cifrador Cesar     #
  56. #       version 1.0             #
  57. #       by Krosspock            #
  58. #################################
  59.  
  60. uso: -[c|d] -n [num] -t 'texto entre comillas'
  61.  
  62. -c      Cifrar cadena
  63. -d      Descifrar cadena
  64. -n      Numero de desplazamientos
  65. -t      Texto a cifrar / descifrar
  66. -h      Muestra esto
  67.  
  68. """
  69.         sys.exit()
  70.  
  71. i = 1
  72. n = 0
  73. txt = ''
  74.  
  75. while (i < len(sys.argv)):
  76.         if (sys.argv[i] == '-h'):
  77.                 help()
  78.         elif (sys.argv[i] == '-c'):
  79.                 q = 'c'
  80.         elif (sys.argv[i] == '-d'):
  81.                 q = 'd'
  82.         elif (sys.argv[i] == '-n'):
  83.                 num = sys.argv[i+1]
  84.                 i = i + 1
  85.         elif (sys.argv[i] == '-t'):
  86.                 txt = sys.argv[i+1]
  87.                 i = i + 1
  88.         else:
  89.                 print 'Error! los parametros usados no son correctos, escribe -h para ayuda'
  90.         i = i + 1
  91.  
  92. print cesar(q,num,txt)
  93.  
  94.  
« Última modificación: Enero 30, 2014, 11:11:46 am por KrossPock »

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5375
  • Actividad:
    73.33%
  • Reputación 31
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #1 en: Enero 30, 2014, 08:00:59 am »
Pero que bien!!
Felicitaciones por el cifrador!
Muy buen trabajo!

Saludos!
ANTRAX


Desconectado CrazyKade

  • *
  • Underc0der
  • Mensajes: 182
  • Actividad:
    0%
  • Reputación 0
  • Я только знаю что ничего не знаю!
    • Ver Perfil
« Respuesta #2 en: Enero 30, 2014, 09:47:46 am »
Muy bueno!
Interesante forma de aprender un lenguaje!
Saludos!

CrazyKade

 

¿Te gustó el post? COMPARTILO!



Mi primer juego en Pygame : UrbanWar

Iniciado por BigBear

Respuestas: 2
Vistas: 1670
Último mensaje Febrero 21, 2013, 11:06:02 am
por Hackmundy
Mi primer script en Python.

Iniciado por Matabarras

Respuestas: 7
Vistas: 2325
Último mensaje Diciembre 15, 2012, 09:19:23 am
por Flemon
Mi primer script

Iniciado por k1llu4s3x

Respuestas: 2
Vistas: 656
Último mensaje Febrero 24, 2018, 11:10:07 am
por k1llu4s3x
Pasar un texto a MD5 o a hexadecimal

Iniciado por blozzter

Respuestas: 4
Vistas: 3150
Último mensaje Julio 13, 2011, 04:04:56 pm
por blozzter
[Código-Python] Code & Decode Archivo a HEX - JaAViEr

Iniciado por JaAViEr

Respuestas: 2
Vistas: 1244
Último mensaje Agosto 01, 2011, 09:35:42 pm
por JaAViEr