Holas...
Tengo un problema, hasta el momento tengo una aplicacion que me crea usuarios y a partir del usuario me crea una clave (en realidad son cuentas de correo para sendmail)
el problema que tengo es que como lo estoy haciendo solo puedo tener claves de 8 caracteres maximo YA que estoy utilizando el parametro "-p" en el "adduser" y la contraseña la genero aleatoriamente con crypt(); y por lo general la contraseña contiene mas de 8 caracteres.
Esto me lleva a que si se saben el nombre del usuario y los primeros 8 caracteres pueden entrar al sistema sin problemas. entonces lo que me he planteado hacer es crear contraseñas MD5; pero no he podido hacer que me funcionen si alguien me pudiera hechar una ayuda ? estoy programando en lenguaje C.
int main()
{
char *resultado1,cuenta[100],passwd[100];
printf ("Entre la cuenta de usuario a crear:");
scanf ("%s",cuenta);
resultado1=crypt(cuenta,"ac");
printf ("\n\neste es la cuenta encryptada por CRYPT(%s)",resultado1);
strcpy(passwd,MD5(cuenta,32,0));
printf ("\n\neste es la cuenta encryptada por MD5 (%s)",passwd);
printf ("\n");
}
este es mi codigo como notaran estan las 2 formas cryp y md5;
* la 1º me funciona es decir al hacer un :
# adduser user -p pass_generado_crypt
Luego me logeo y funca de maravilla con clave menores a 8 caracteres
* la 2º no me funciona es decir al hacer un :
# adduser user -p pass_generado_md5