From: | Horacio Miranda <hmiranda(at)gmail(dot)com> |
---|---|
To: | Leonel Nunez <lnunez(at)enelserver(dot)com>, "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: encriptacion de datos |
Date: | 2005-09-14 13:05:39 |
Message-ID: | f2b9e749050914060545ab9d09@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
ademas si no usas una capa ssl en la comunicacion del password, da lo
mismo que mecanismo uses para almacenar el password,
El 14/09/05, Leonel Nunez<lnunez(at)enelserver(dot)com> escribió:
> Victor Montenegro Isidin wrote:
>
> >¿ Como puedo guardar las claves encriptadas en una tabla?
> >
> >Almacenando el hash de la clave. Un hash es una función en
> >un sólo sentido, es decir no hay una función inversa para
> >obtener la clave a partir del hash. Cuando el usuario
> >introduce el password por 1ra vez, calculas el hash y lo
> >almacenas, posteriormente cuando el usuario se va a
> >autenticar, calculas nuevamente el hash del password
> >ingresado y lo comparas con el valor almacenado.
> >
> >Uno de los algoritmos de hash más utilizados es md5.
> >
> >¿ que tipo de dato debo usar para el campo?
> >
> >char de tamaño 32
> >
> >¿ que funcion debo utilizar para encriptar?
> >
> >md5 ()
> >
> >¿ cual funcion es la mejor ?
> >
> >De nuevo, md5(), yo recomiendo almacenar el hash del username
> >concatenado con el password concatenado con una secuencia
> >concatenado con un valor fijo, de manera que en caso de que
> >logren acceso a tu base de datos (sql injection o lo que sea),
> >e intercambian los passwords de 2 usuarios o bien calculan un
> >hash y lo almacenen en el campo password, el usuario no pueda
> >ser autenticado.
> >
> >En la práctica:
> >
> >Almacenar el password:
> >
> >insert into usuarios (id,login,password) values
> >(nextval('secuencia'),login,md5 ('password' || 'login' ||
> >currval('secuencia')|| 'tuvalorfijo' ) );
> >
> >Autenticar al usuario:
> >
> >select id from usuarios where password = md5('password_insertado' ||
> >'login_insertado' || id || 'tuvalorfijo' ) and login =
> >'login_insertado';
> >
> >
> >
>
> Creo que si alquien puede entrar a tu base de datos de las formar que
> comentas, no importa mucho como tengas encriptado ese password
>
>
> Leonel
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 5: ¿Has leído nuestro extenso FAQ?
>
> http://www.postgresql.org/files/documentation/faqs/FAQ.html
>
--
Saludos Horacio Miranda.
RedHat Certified Engineer.
From | Date | Subject | |
---|---|---|---|
Next Message | Edwin Quijada | 2005-09-14 13:38:36 | RE: [psql-ayuda]Respaldar base de datos con Php |
Previous Message | Ricardo Frydman Eureka! | 2005-09-14 12:57:29 | SIG |