[pyar] Encriptar con Django

Roberto Alsina ralsina en netmanagers.com.ar
Vie Ago 22 09:36:10 ART 2014


On 22/08/14 09:22, Andres Riancho wrote:
> Juan,
>
> 2014-08-21 17:40 GMT-03:00 Juan Rodríguez Monti <juanrodriguezmonti en gmail.com>:
>> El 21 de agosto de 2014, 15:29, Andres Riancho <andres.riancho en gmail.com>
>> escribió:
>>
>>> Creo que podes ir por dos caminos:
>>>   * Hacerlo vos mismo: Encriptar con AES-256 [0] antes de guardar, y
>>> des-encriptar al leer.
>>>   * Usar algo ya existente y probado [1]
>>>
>>> En ambos casos el problema mas dificil es como manejar la key:
>>>   - Cuales son todos los lugares donde se guarda? Que niveles de
>>> seguridad tiene cada uno?
>>>   - Como hago backup de es key?
>>>
>>> Con algo como AES-256 no me preocuparía por la performance, la
>>> cantidad de datos que estas guardando es bastante chica. Igual, nunca
>>> esta de más hacer algunas pruebas de performance.
>>
>> Andrés querido!, un placer leerte, como siempre.
>>
>> Iria por la opción de probar algo existente y probado, porque en lo que es
>> seguridad lo poco que sé, lo toco de oido.
>>
>> Me atrevo a pedirte algunas sugerencias sobre las preguntas que planteás, el
>> experto en esto sos vos acá :-) Prometo una ronda de cervezas cuando nos
>> veamos!.
>>
>> Sí, la cantidad de data es bastante chica.
>>
>> Quizás es ir siempre por el mismo lado, pero, ¿ qué conviene hacer para
>> evitar los típicos problemas de guardar la clave en el server ?, ¿ guardarla
>> en memoria ?, ¿ pedirsela al usuario ?.
> Depende de que tanto se pueda molestar al usuario realmente, pero si
> se puede creo que lo mejor en cuanto a seguridad (no usabilidad)
> sería:
>   * El usuario ingresa texto en un textarea
>   * Al hacer click en "Guardar" al usuario se le pide la contraseña
> para encriptar (debe ser larga, etc.). Cada usuario tiene su
> contraseña.
>   * El browser utiliza JS para encriptar el texto
>   * El browser envia texto encriptado al server
>   * Guardar en la DB
>   * El usuario accede a leer el texto, el server se lo manda
> encriptado, se ingresa la contraseña en JS, se desencripta usando JS,
> datos en texto claro se muestran
>
> Se puede hacer un poco menos molesto para el usuario todo esto al
> utilizar tecnologías nuevas de HTML5 como sessionStorage donde podes
> pedirle la password una unica vez, guardarla allí y despues usarla.

Eso es como guardar la password en texto plano en la maquina. O sea... yuck?

> El problema que pasas a tener ahi es si multiples usuarios quieren
> tener acceso a editar/leer el mismo texto.
>

Esto nada que ver con hacer algo que sirva para produccion, pero capaz 
que les resulta divertido... no es necesario hacer nada en el server 
para tener paginas encriptadas:

http://ralsina.me/weblog/posts/the-password-is-password-follow-the-link-to-see-what-i-mean.html


More information about the pyar mailing list