[pyar] Como encriptar una clave en el código fuente?

Alejandro Santos listas en alejolp.com
Mie Ene 12 13:56:30 ART 2011


2010/12/30 Elias <copybin en gmail.com>:
>
> Buenas, estoy haciendo una aplicación que se conecta por FTP, la clave del
> FTP no quiero que la vean los usuarios del programa. (la clave del ftp la
> quiero dejar junto con el fuente)
> Entonces estoy buscando la forma de encriptar la clave con algo, y luego
> desencriptarla en el momento justo.
> Busco que la clave no quede legible fácilmente.
>
> Que sugieren?
>

Llego un poco tarde al thread y creo que ya respondieron tu problema,
pero no queria dejar de preguntar: ¿por qué no le podés preguntar la
clave al usuario?

a) por cuestiones de comodidad; que inicie el programa y funcione
automágicamente por si se la olvidan o para hacer tareas sin que el
usuario intervenga,
b) por cuestiones de seguridad; para que el usuario no sepa la clave del FTP.

Si es la primer opción, no hay mucho más que puedas hacer:

  SECRETO=''.join(map(lambda x: chr(ord(x) ^ 42), "zS^BED"))

Pero si es la segunda, una alternativa es guardar la clave del FTP
dentro del codigo fuente de forma cifrada, y cuando el usuario inica
el programa se le pida una segunda clave que sirva para desencriptar
la clave original del FTP.

De esa forma el usuario no tiene forma sencilla de saber la clave del
FTP, y solo los que conozcan el segundo secreto pueden usar tu
programa.

Por ejemplo:

  SECRETO2=int(raw_input("Ingrese la clave de uso del programa: "))
  SECRETO=''.join(map(lambda x: chr(ord(x) ^ SECRETO2), "zS^BED"))

Si, es muy rebuscado, pero es una forma "segura" que solo el usuario
autorizado pueda usar tu programa.

-- 
Alejandro Santos
http://alejolp.com.ar



More information about the pyar mailing list