Autor | Zpráva | ||
---|---|---|---|
Ohyeah Profil * |
#1 · Zasláno: 30. 4. 2015, 14:31:28 · Upravil/a: Moderátor (editace znemožněna) 30. 4. 2015, 17:42:56
Hojas, Mám tady takovej problé dělal jsem podle návodu ale prostě to nefunguje ! :(
Registrační formulář funguje : Registrují se přes username a password Login formulář funguje taktéž po přihlášení je to vezme do členské části ALE !!!! Když dám že to má vzít z databáze 'Password' tak to funguje ale když to zašifruju do enc_password md5 Tak zaboha NE !!! Díky |
||
lionel messi Profil |
Ohyeah:
1. Skús písať trošku kultivovanejšie, šetri výkričníkmi (mimochodom, pred interpunkciou sa nepíše medzera) a VEĽKÝMI písmenami. Problém to síce nevyrieši, ale zvýši počet ľudí ochotný sa ním zaoberať. 2. Ukáž konkrétny kód. Malá poznámka, keď heslo hashuješ (použitím md5 ho nešifruješ) napr. pomocou md5("123456") , musíš pri výbere z databázy prehnať užívateľský vstup zodpovedajúcou hashovacou funkciou, napr.: SELECT * FROM uzivatele WHERE jmeno = md5('$_POST[jmeno]') .
|
||
juriad Profil |
#3 · Zasláno: 30. 4. 2015, 14:39:44
Jaká je definice (velikost) sloupce
enc_password v databázi?
|
||
Keeehi Profil |
#4 · Zasláno: 30. 4. 2015, 15:52:58
lionel messi:
Od kdy se prosím tebe hashuje uživatelské jméno. Ohyeah: Když už to chceš dělat bezpečné, tak prosím rovnou pořádně. md5 je dnes už zastaralé a nebezpečné. Na kontrolní součty u souborů to stačí ale na hashování hesel ani náhodou. Spolehlivé řešení je dnes funkcí crypt, jejíž chování se však nastavuje druhým parametrem a je velmi důležité to udělat správně. Pro inspiraci se můžeš podívat, jak to dělá nette. Funkce crypt interně také využívají PHP funkce password_hash() a password_verify() které pro tebe budou asi přívětivější. |
||
Ohyeah Profil * |
#5 · Zasláno: 30. 4. 2015, 17:33:51 · Upravil/a: Ohyeah
Díky Keeehi rozhodně se na to podívám !
juriad Podívám se nato a hned odpovím Ješte bych se chtěl zeptat na co to kryptování vlastně je. Na mojí stránce si nemůžou to heslo změnit takže kdyby to někdo hacknut naco by mu to bylo ?? |
||
Joker Profil |
#6 · Zasláno: 30. 4. 2015, 23:47:23
Ohyeah:
„Ješte bych se chtěl zeptat na co to kryptování vlastně je.“ Tak v první řadě MD5 ani jiný hash není šifrování. Šifrování je od toho, aby si tajná data nemohl nikdo nepovolaný přečíst cestou k příjemci a naopak příjemce je mohl dešifrovat do původní podoby. Naopak při hashování se část informace ztratí, takže z hashe (otisku) už nejde získat původní data, ze kterých byl vytvořen. Nicméně stejná data dají vždycky stejný hash. Takže z hashe nevím, jaké je uživatelovo heslo, ale umím porovnat, jestli zadal stejné, nebo jiné. (Resp. teoreticky existují i jiná hesla, která dají stejný hash. Tomu se říká kolize. Ale kvalitní hashovací algoritmus by neměl umožňovat nějaké vypočítání kolize z hashe a pravděpodobnost náhodného zadání kolizního hesla je prakticky nulová.) Čili tímhle způsobem můžu ověřit uživatelovo heslo aniž bych to heslo znal. Ani člověk s přístupem do databáze (oprávněným nebo neoprávněným) nedokáže zjistit hesla uživatelů. |
||
Časová prodleva: 9 let
|
0