Discussion:
crypt & md5
(demasiado antiguo para responder)
Angel Diego
2004-12-29 08:32:42 UTC
Permalink
Hola a todos,

Estoy haciendo un programa en C (para un cgi) para añadir usuarios LDAP
desde una web. Estos usuarios luego podrán autenticarse en el sistema
(Linux), gracias a la herramienta authconfig.

Bien lo tengo todo hecho. La adición de usuarios funciona correctamente.
Lo que me está dando dolores de cabeza es la encriptación de la password
en md5. No consigo que crypt me devuelva exactamente lo mismo que el
comando slappasswd.

Por ejemplo para encriptar en md5 "123456"

/usr/sbin/slappasswd -v -u -s 123456 -c md5

devuelve por linea de comandos el siguiente resultado:

{CRYPT}mdlcLmLJA3EYc

Por mas semillas (salt) que pruebo con la función crypt no consigo que
el resultado de encriptar "123456" sea "mdlcLmLJA3EYc".

He probado metiendo en salt $1$<cadena>$ siendo cadena de menos de 6
caracteres, de menos de 8 caracteres y de más de 8 caracteres. También
que cadena sea estática y/o aleatoria. También he probado suprimendo en
último $.

Muchas gracias avanzadas y FELICES FIESTAS para todos.
--
____________________________________________________________________________
\ )
)
/ __ _ __ ( Angel Diego Pacheco Reyes (
\ / | __ __ __| | | \ _ ___ __ __ ) Telf.: 952 13 2628
)
/ / - |/ \(- ) -_)|_ | | |_| -_)- ) _\ ( Direccion Enseñanza Virtual (
\ /_/|_|_|\_/ /\__/___) |__/\_\__// /\__/ ) Y Laboratorios
Tecnologicos )
/ /_/ /_/ ( Universidad de Malaga (
\___________________________________________)_______________________________)
J.A. Gutierrez
2005-01-03 09:03:38 UTC
Permalink
In es.comp.lenguajes.c Angel Diego <***@uma.es> wrote:

: Por ejemplo para encriptar en md5 "123456"

: /usr/sbin/slappasswd -v -u -s 123456 -c md5

: devuelve por linea de comandos el siguiente resultado:

: {CRYPT}mdlcLmLJA3EYc

[ Followup-To: recortado a es.comp.os.linux.programacion ]

Pues no se si el comando ese sabra usar md5 o no, pero claramente
te esta generando un password crypt DES de toda la vida, generado
pasandole como salt "md" a crypt(3).

$ perl -e 'print crypt("123456","md");'
mdlcLmLJA3EYc

Eso me hace sospechar que el "-c md5" que le pasas como argumento,
lo unico que hace es pasar las dos primeras letras como sal...
--
PGP and other useless info at \
http://webdiis.unizar.es/~spd/ \
finger://daphne.cps.unizar.es/spd \ Timeo Danaos et dona ferentes
ftp://ivo.cps.unizar.es/pub/ \ (Virgilio)
Angel Diego
2005-01-11 10:12:14 UTC
Permalink
Finalmente lo resolví y por cierto, llevas toda la razón. Ese era el
problema.

Gracias, un saludo.
Post by J.A. Gutierrez
: Por ejemplo para encriptar en md5 "123456"
: /usr/sbin/slappasswd -v -u -s 123456 -c md5
: {CRYPT}mdlcLmLJA3EYc
[ Followup-To: recortado a es.comp.os.linux.programacion ]
Pues no se si el comando ese sabra usar md5 o no, pero claramente
te esta generando un password crypt DES de toda la vida, generado
pasandole como salt "md" a crypt(3).
$ perl -e 'print crypt("123456","md");'
mdlcLmLJA3EYc
Eso me hace sospechar que el "-c md5" que le pasas como argumento,
lo unico que hace es pasar las dos primeras letras como sal...
--
____________________________________________________________________________
\ )
)
/ __ _ __ ( Angel Diego Pacheco Reyes (
\ / | __ __ __| | | \ _ ___ __ __ ) Telf.: 952 13 2628
)
/ / - |/ \(- ) -_)|_ | | |_| -_)- ) _\ ( Direccion Enseñanza Virtual (
\ /_/|_|_|\_/ /\__/___) |__/\_\__// /\__/ ) Y Laboratorios
Tecnologicos )
/ /_/ /_/ ( Universidad de Malaga (
\___________________________________________)_______________________________)
Loading...