SA-MP Forums Archive
encriptar todas las contraseсas phpmyadmin - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: encriptar todas las contraseсas phpmyadmin (/showthread.php?tid=599100)



encriptar todas las contraseсas phpmyadmin - pep_25 - 21.01.2016

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


Respuesta: encriptar todas las contraseсas phpmyadmin - bm0z - 21.01.2016

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


Re: encriptar todas las contraseсas phpmyadmin - SickAttack - 21.01.2016

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.


Respuesta: encriptar todas las contraseсas phpmyadmin - FelipeAndres - 21.01.2016

hace una consulta como dijo sick


Respuesta: encriptar todas las contraseсas phpmyadmin - pep_25 - 21.01.2016

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;
}



Re: encriptar todas las contraseсas phpmyadmin - SickAttack - 21.01.2016

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;
}