Re: [pgsql-es-ayuda] Como es aconsejable guardar el campo pasword (contraseña)

From: Manuel Diego <manuel(at)radiohead(dot)cl>
To: Roberto Rodríguez Pino <rodpin(at)gmail(dot)com>
Cc: "Z(dot)M(dot)" <nramire1(at)rosario(dot)gov(dot)ar>, Lista PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] Como es aconsejable guardar el campo pasword (contraseña)
Date: 2009-12-07 15:13:56
Message-ID: 3AACEA08-DF1B-48B5-AE61-DB33B01F2B71@radiohead.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Todos los MD5 son de 32 caracteres, Por tanto, el datatype debiese ser
char(32).

Lo mejor para encriptar una contraseña es jugar con los SALT, ya que
si encriptas la password a secas sera cosa de buscar el string md5 en
google y daras con la contraseña, sino por fuerza bruta.

Cabe recordar que no existe forma de hacer un reverso de un MD5, por
tanto, el SALT siempre lo debes de recordar en tu aplicación.

SELECT md5('pass123' || 'SALT2 %&/323* *');

SELECT md5('12345' || 'SALT2 %&/323* *');

SELECT md5('micasa' || 'SALT2 %&/323* *');

El 07-12-2009, a las 12:04, Roberto Rodríguez Pino escribió:

> El lun, 07-12-2009 a las 12:07 -0300, Z.M. escribió:
>
>>>>
>>>> CREATE TABLE usuario(
>>>> login varchar(8) primary key, -- nombre de usuario
>>>> codsistema int, -- codigo externo al sistema, asignado por el
>>>> sistema UMV (compativilidad)
>>>> password varchar(32), -- contraseña suministrada por el usuario
>>>> permiso varchar(2) -- codigo de los permisos del usuario
>>>> );
>>>>
>>>> ¿hay alguna manera de ocultar el campo password? Es decir hoy
>>>> abro la base de datos access y puedo ver el password de todos los
>>>> usuarios. ¿Hay alguna manera de encriptar este password para que
>>>> sea ilegible aun para el administrador de la base de datos? ¿Hay
>>>> algun tipo especial de dato que me permita hacer esto?
>>>
>>> Hace tanto tiempo que trabaje con Access, pero creo recordar que
>>> existía
>>> un tipo de datos password, que de ocultaba la contraseña ... ahora
>>> no me
>>> queda claro si era un tipo de dato o una función.
>>>
>>> En postgresql se me ocurre sin darle mucho taller que al captarlos
>>> de
>>> apliques la función MD5(md5... lo tecleado)
>>
>> Entonces la funcion MD5() me devuelve un dato de tipo varchar() ¿es
>> correcto? ¿podria decir que la estructura de la tabla esta bien
>> planteada? Mas alla que el dato que teclee el usuario, lo tenga que
>> pasar por la funcion MD5() para compararlo con el de la tabla.
>>
>
> Si. Aunque averigua de que largo queda la salida despues de pasar por
> md5 el texto ingresado (la password en si). Puede que te quede corto
> el
> campo.
> Saludos,
> Roberto
>

------------------------
Manuel Diego Paillafil Gamboa
manuel(at)radiohead(dot)cl
Móvil: 06 - 801 60 24

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2009-12-07 15:47:26 Re: [pgsql-es-ayuda] Como es aconsejable guardar el campo pasword (contraseña)
Previous Message Z.M. 2009-12-07 15:07:11 Re: [pgsql-es-ayuda] Como es aconsejable guardar el campo pasword (contraseña)