Diskuze: Jakou hashovací funkci použít
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 7 zpráv z 7.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Pokud hledáš hashovací funkci pro ukládání hesel, tak dobře poslouží kterákoliv z rodiny SHA2 (SHA-224, 256, 384, 512), ale měl bys hesla solit a hashovat iterativně. Díky tomu bude mít případný útočník problémy získat i slabší hesla.
Úplně nejlepší řešení je použít funkci, která je na hashování hesel přímo určená. Jedná se například o bcrypt, scrypt, Argon2 či PBKDF2. Nevím ale, zda některá z nich je jednoduše dostupná, možná budeš potřebovat externí knihovnu.
Moc děkuju za odpověď. Pomohla. A ty metody pracují přímo s nějakým tím hashem?
Moc děkuju za odpověď. Pomohla. A ty metody pracují přímo s nějakým tím hashem?
Pokud máš na mysli ty, co jsem jmenoval v druhém odstavci, tak ty na vstupu dostávají samotné heslo. Jejich cílem je se o všechno to hashování, solení atd. postarat automaticky, aby vývojář nemohl udělat chybu.
Jo rozumím. A ten typ toho hashe si potom zvolím sám? Koukal jsem právě na tu jednu metodu a tam byl číselník, kde nejspíš byly ty typ hashování.
Ano, třeba PBKDF2 dovoluje si zvolit hashovací funkci a další parametry (sůl, počet iterací). Myslím, že ale některé z metod používají něco vlastního a hashovací funkci volit nemusíš.
Každopádně, viz můj první příspěvek – pokud budeš muset volit hashovací funkci, tak rodina SHA-2 je dobrá volba. Samozřejmě, můžeš zkusit i SHA-3 (Keccak), ale nevím, jak moc je implementovaná v různých knihovnách atd.
Zobrazeno 7 zpráv z 7.