Autor Zpráva
Slash
Profil *
Chcem sa spýtať na váš názor.

Do db ukladám užívateľa s heslom, salt môžem pridávať "statický" ktorý budem mať natvrdo napísaný v kóde alebo si vždy pri vytváraní usera vygenerujem nový salt a ten spolu s heslom a username uložím do db. Takže každý user má vlastný salt.

Zvýši to bezpečnosť aplikácie alebo je to zbytočné. Najlepšie ak by ste svoje názory aj nejako podložili.
Jan Tvrdík
Profil
Lepší je mít pro každý záznam vlastní salt, protože pokud bude salt statický a útočník ho zjistí, může si vygenerovat rainbow tabulky pro tento daný salt. Pokud bude mít každý uživatel vlastní salt, tak by útočník musel vygenerovat rainbow tabulky pro každého uživatele zvlášť.
Joker
Profil
Další výhoda dynamické soli je, že není poznat, kteří uživatelé mají stejné heslo. U statické soli když budou mít stejné heslo, budou mít i stejný hash, u dynamické soli to tak není.

Pro zvědavého admina je nevýhoda, že to nemůže dělat ani on :-)
Kdysi jsem dělal takový pokus v databázi, která měla jen prostý hash bez soli: SELECT hash, COUNT(*) AS pocet FROM uzivatele GROUP BY hash = „žebříček popularity“ jednotlivých hesel. Tuším, že zhruba prvních 5 šlo snadno uhodnout a pokrývalo to asi tak 10% uživatelů.
Z toho je i vidět, proč je statický hash méně bezpečný než dynamický.

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: