encriptar todas las contraseсas phpmyadmin
#1

estoy intentando pasar mi sv a mysql y quiero ver la forma de que todas las cuentas registradas en la base de datos les pueda encriptar la contraseсa en whirlpool mediante una consulta o alguna otra forma, es que son muchas o lo haria uno por uno
si me ayudaran se los agradeceria mucho
Reply
#2

No creo que puedas usar whirlpool en mysql, pero la consulta serнa algo asн:

Код:
UPDATE `accounts` SET `password` =  MD5(`password`);
Con esto cifras todas las contraseсas usando md5, tambiйn puedes usar sha1, pero whirlpool me da que no. Si de todas formas quieres usar whirlpool, entonces no te quedarнa otra que actualizar una por una (no quiere decir que sea de forma manual, puedes crear un script para que lo haga automбticamente).

https://dev.mysql.com/doc/refman/5.5...functions.html
Reply
#3

Eso no es encryption, es hashing (hash) - los hashes solo son de una direccion, no hay forma de invertir el proceso.

Y estas guardando contraseсas como tal (raw text)? >.<

Eso va contra las reglas del uso de SA-MP.

Esta muy sencillo hacer esto. Ocupas hacer un query de SELECT, usar la funcion de whirlpool y otro query de UPDATE.

SELECT `PASSWORD` FROM `USERS`

Luego un bucle que pasa por todos los resultados. Y luego, actualizala:

format(query, sizeof(query), "UPDATE `USERS` SET `PASSWORD` = '%q' WHERE `NAME` = '%q'", hash, username);

Es solo un ejemplo, aver que haces. El proceso se hara una vez nomas.
Reply
#4

hace una consulta como dijo sick
Reply
#5

md5 no me sirve

intente hacer lo qe me dijiste SickAttack, me ha funcionado bien pero me gustaria que revisaras el codigo para ver que todo este en orden, te lo agradesco
Код:
CMD:actualizar1(playerid, params[])
{
    mysql_tquery(Conecction, "SELECT * FROM `players`", "Transformar");
	return 1;
}

public Transformar()
{
    for(new i = 1; i <= cache_get_row_count(); i++)
	{
	    new name[30], pass2[150], buf[50];
	    cache_get_field_content(i, "nombre", name, Conecction, 32);
        cache_get_field_content(i, "password", pass2, Conecction, 32);

        WP_Hash(buf, 129, pass2);
        new Query[400];
    	format(Query, sizeof(Query), "UPDATE `players` SET password = '%s' WHERE `nombre` = '%s'", buf, name);
		mysql_function_query(Conecction, Query, true, "", "");
	}
	return 1;
}
Reply
#6

pawn Код:
CMD:actualizar(playerid, params[])
{
    mysql_tquery(Conecction, "SELECT `nombre`, `password` FROM `players`", "Transformar");
    return 1;
}

public Transformar()
{
    for(new i = 0, j = cache_get_row_count(); i < j; i ++)
    {
        new name[MAX_PLAYER_NAME], password[21], hash[129];
        cache_get_field_content(i, "nombre", name, Conecction, MAX_PLAYER_NAME);
        cache_get_field_content(i, "password", password, Conecction, 21);

        WP_Hash(hash, sizeof(hash), password);

        new Query[400];
        format(Query, sizeof(Query), "UPDATE `players` SET `password` = '%q' WHERE `nombre` = '%q'", hash, name);
        mysql_query(Conecction, Query, false);
    }
    return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)