Autor Zpráva
suky
Profil
Myslite, ze bude stacit zaheshovat heslo takovym zpusobem?
$heslo = "heslo";
$uzivatel = "uzivatel";
$id = "1";
$hash = sha1($uzivatel.md5("1f".$heslo."12sd").$id."sd5");
Kde ty kratke retezcu budou nejake soli..
Joker
Profil
suky
Záleží na použití. Pro "normální použití" (třeba login do diskuse) to bude bezpečné, i když bych řekl, že to bude přibližně stejně bezpečné, jako sha1(md5($heslo)."*sůl*");

Pro nějaké opravdu vysoké zabezpečení to samozřejmě nestačí, ale předpokládám, že to není tenhle případ. Člověk třeba z banky nebo tak by se neptal tady na fóru, jak udělat zabezpečení :o)
suky
Profil
OK, to je jasny, ze to neni na bankovni ucet, ale kdybychom to srovnali s velkolepym T r a v i a n e m (h t t p : / / t r a v i a n . c z)
suky
Profil
Joker
že to bude přibližně stejně bezpečné
Jakto? Prece kdyz bude u kazdeho hesla jina sul!! Tak se pripadnemu utocnikovi bude napadat obtizneji, ne?
Joker
Profil
suky
Jakto? Prece kdyz bude u kazdeho hesla jina sul!!
No to sice jo, ale když to vezmu prakticky:
- U pokusů o "uhodnutí" hesla na tom bude obojí stejně, tam záleží jenom na samotném heslu.
- Kdyby někdo získal konečný hash z databáze, nalezení "nějakého" kolizního řetězce mu ani v jednom případě k ničemu nebude
- Pokud už útočník zná algoritmus tvorby hashe a dokáže z databáze přečíst sůl, dokáže přečíst i ty ostatní údaje, které potřebuje pro tu složitější variantu.

Ta složitější varianta by podle mě byla bezpečnější v případě, kdy by útočník dokázal prolomit SHA-1 i MD5, přičemž k SHA-1 by dokázal najít kolizní řetězec daných parametrů a k MD5 jen "nějaký" kolizní řetězec.
Ale to je dost specifický případ.
suky
Profil
Joker
V tom mas pravdu a ted se ptam jeste jednou:
ale kdybychom to srovnali s velkolepym T r a v i a n e m (h t t p : / / t r a v i a n . c z)
Joker
Profil
suky
Jako co srovnali? Jak?
suky
Profil
Joker
Jako co srovnali? Jak?
Myslim zahashovani hesla tim mym zpusobem a pripadneho ukladani na trav.anu nebo jinejch onlineovkach....

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0