Vánoční nadílka Vánoční nadílka
Vánoční akce! Daruj lepší budoucnost blízkým nebo sobě. Až +50 % zdarma na dárkové poukazy. Více informací
Avatar
Petr Kasnal
Člen
Avatar
Petr Kasnal:1. října 19:00

Zdravím programuji v .Net MVC a nyní dělám uživatele. A chtěl bych se zeptat, kterou použít hashovací funkci. Nejlépe aby byla moderní atd. Předem díky.

Zkusil jsem: Zkoušel jsem hledat všemožně na netu. A našel plno článků, ale stejně bych rád slyšel váš názor. Předem moc díky.

Chci docílit: Dobré bezpečnosti.

 
Odpovědět 1. října 19:00
Avatar
Martin Dráb
Redaktor
Avatar
Odpovídá na Petr Kasnal
Martin Dráb:2. října 1:15

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.

Nahoru Odpovědět  +1 2. října 1:15
2 + 2 = 5 for extremely large values of 2
Avatar
Petr Kasnal
Člen
Avatar
Odpovídá na Martin Dráb
Petr Kasnal:2. října 7:10

Moc děkuju za odpověď. Pomohla. A ty metody pracují přímo s nějakým tím hashem?

 
Nahoru Odpovědět 2. října 7:10
Avatar
Martin Dráb
Redaktor
Avatar
Odpovídá na Petr Kasnal
Martin Dráb:2. října 16:25

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.

Editováno 2. října 16:25
Nahoru Odpovědět  +1 2. října 16:25
2 + 2 = 5 for extremely large values of 2
Avatar
Petr Kasnal
Člen
Avatar
Odpovídá na Martin Dráb
Petr Kasnal:2. října 19:38

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í.

 
Nahoru Odpovědět 2. října 19:38
Avatar
Martin Dráb
Redaktor
Avatar
Odpovídá na Petr Kasnal
Martin Dráb:2. října 20:12

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.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět 2. října 20:12
2 + 2 = 5 for extremely large values of 2
Avatar
Petr Kasnal
Člen
Avatar
Odpovídá na Martin Dráb
Petr Kasnal:2. října 20:28

Super bezvadně vysvětlený moc děkuju. :)

 
Nahoru Odpovědět 2. října 20:28
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.