PHP-vel szeretnék előállítani natív mysql jelszót, amit később a CREATE USER parancsban használhatok.
Órák óta küzdök vele, de nem sikerül. Tudtok segíteni hogyan lehetne csak PHP-val - mysql nélkül - a megfelelő módon elkódolni egy jelszót?
- 395 megtekintés
Hozzászólások
hát függ a mysql beállításaitól is, hogy milyen módon hasheli a jelszót.
de mondjuk csatlakozol az adatbázishoz, majd select password('pa$$word');
4 és fél éve csak vim-et használok. elsősorban azért, mert még nem jöttem rá, hogy kell kilépni belőle.
- A hozzászóláshoz be kell jelentkezni
Ugy erted, hogy valami ilyet keresel?:
select password('kdlkfjd')\G
*************************** 1. row ***************************
password('kdlkfjd'): *41575B6E7437EDB8F33B6497C558341547348BB7
1 row in set (0.00 sec)
Ezt barmely mysql szerveren le tudod futtatni.
Ez azt hiszem, így van implementalva:
SELECT UPPER( CONCAT('*', SHA1(UNHEX(SHA1('kdlkfjd')))) );
Tehat igy, PHP-ugyileg:
echo strtoupper("*".sha1(hex2bin(sha1('kdlkfjd')))).PHP_EOL;
A PHP_EOL csak az olvashatosag miatt van benne :)
Error: nmcli terminated by signal Félbeszakítás (2)
- A hozzászóláshoz be kell jelentkezni
Nem fogalmaztam elég pontosan, ezért pontosítottam. Mysql használata nélkül szeretném elkódolni a jelszót.
Nem azt szeretném, hogy a php hívja meg a mysql-t, aki elkódolja a jelszót, hanem csak php-val szeretném elkódolni.
Vagy a php csak a mysql meghívásával tudja ezt megtenni?
- A hozzászóláshoz be kell jelentkezni
Szerintem megirtam azt a sort fentebb, amit hasznalni szeretnel. :)
Error: nmcli terminated by signal Félbeszakítás (2)
- A hozzászóláshoz be kell jelentkezni
Óh, ezt benéztem!
Köszi!
- A hozzászóláshoz be kell jelentkezni
A művelt francia úgy fogalmazza ezt meg, hogy: don't
Egyrészt nagyon valószínű, hogy XY-problémáról van szó, másrészt meg így egy verziófüggő programot alkotsz, ami pont akkor fog nem működni, amikor már senki sem emlékszik az egészre.
Szerk: de mivel a 'CREATE USER'-t említetted, azt is lehet, hogy nem elkódolni akarsz jelszót (azt a csúnya szót, hogy hash, most ne is említsük), hanem generálni.
- A hozzászóláshoz be kell jelentkezni
Vagy olyan környezetben akarok jelszót elkódolni, ahol nem áll rendelkezésre a mysql.
- A hozzászóláshoz be kell jelentkezni
A CREATE USER ... IDENTIFIED BY 'authstring'
utasításban az authstring-et akarod előállítani?
- A hozzászóláshoz be kell jelentkezni
Igen
- A hozzászóláshoz be kell jelentkezni
Esetleg mondhatjuk, hogy 8-12 karakteres random alfanumerikus stringet akarsz generálni jelszónak?
- A hozzászóláshoz be kell jelentkezni
Nem. A jelszó adott. Nekem csak elkódolnom kell.
- A hozzászóláshoz be kell jelentkezni
Akkor pontosítsuk: van az IDENTIFIED BY 'jelszó'
meg az IDENTIFIED BY PASSWORD 'hash'
.
- A hozzászóláshoz be kell jelentkezni
IDENTIFIED VIA mysql_native_password USING '...';
Szerintem ezt itt engedjük el ...
- A hozzászóláshoz be kell jelentkezni
alapból sha1 van, de van sha2 plugin is... szóval, az ilyesmi nem future-proof
- A hozzászóláshoz be kell jelentkezni
Köszönöm
- A hozzászóláshoz be kell jelentkezni