Předpočítaný slovník se dá použít vždy, ale jeho použití má smysl jedině tehdy, když můžete s jedním slovníkem porovnávat větší množství hashů. Pokud by tedy někdo měl velkou databázi zahashovaných hesel a u všech byl použit stejný hash, vyplatí se mu udělat slovník slabých hesel s daným hashem.
Linux má typ použitého algoritmu uvedený u každého hesla v souboru shadow, může to být např. Blowfish, SHA-256 nebo SHA-512. Doba rozluštění nezávisí ani tak na použitém algoritmu jako hlavně na síle hesla – místo použití algoritmu, jehož výpočet trvá 10× déle, můžete k heslu přidat jednu číslici, která výpočet prodlouží také 10×. A nebo přidáte číslici nebo malé či velké písmeno anglické abecedy, a prodloužíte výpočet 62×.
U silných hesel se doba uhodnutí (se současnými technologiemi) nepočítá na roky nebo staletí, ale na doby stáří vesmíru.
Teď jsem nepochopil tu odpověď na salted hash. A nechápu o jakých stejných stejných hash mluvíte, v souvislosti se slovníkem. Stejných hash bude minimum, příp. vůbec žádné, takže je prakticky zbytečné dělat něco jako slovník hesel pro stejný hash.
Otázka tedy zůstává. Jak se tedy dá předpočítaný slovník použít na osolené heslo? To by snad šlo jen v případě, že by byla všude stejná sůl, ale to se snad nedělá, když už se solí. Jinak by sůl skoro neměla smysl (to už se snad ani nedá nazvat solení).
Ah. Už jsem asi pochopil, ta věta asi měla znít:
"... a u všech byl použit stejný SALT ..."
Nicméně zůstává podotázka. Pokud už se solí, jak moc často (v reálu) je použit stejný salt pro všechna hesla. Třeba nějaké větší služby, frameworky, ...
Je to reálné nebezpečí? (Pokud už např. jinou cestou vím, že se solí).
Ano, rozluštil jste to správně, mělo tam být „stejný salt“, omlouvám se.
Jak často se to používá nevím. Nicméně pokud má někdo systém připravený na ukládání hesel v otevřeném tvaru nebo jenom zahashovaných bez soli, bývá poměrně jednoduché tam doplnit solení jedním globálním heslem. Pokud chcete solit náhodnou solí, musí se ta sůl ukládat spolu s hashem, a při ověřování musíte načíst sůl, vypočítat hash a ověřit s uloženým hashem – je to zkrátka komplikovanější. Pokud se někomu nechtělo moc zkoumat, jak funguje crypt() v PHP nebo password() v MySQL, nejspíš použil právě globální sůl.
Načo generovanie soli, keď už tam má užívateľské meno? Znalosť soli nijak nepomôže na dúhové tabuľky, pretože aj pridanie jediného znaku zmení kompletne hash.
echo bedna | sha256sum
630d1f3c9187ba851abfd0059cf59e46cf889caf59e07b6740c76d2ea6a60e8a -
echo bedna1 | sha256sum
613779f6f179c3d05f78066f09d702aa7ddb3fb7486bad47625e1a337e09366d -
https://hashcat.net/wiki/doku.php?id=frequently_asked_questions#why_are_there_different_versions_of_hashcat - hashcat už dcl dlouho poskytuje tyhle 2 verze - starou, o které se píše v tomto článku a pak primární novou, která již nativně běží na OpenCL.
Ten výraz determinální v tomhle kontextu vážně existuje? V matematice je jednoznačnost součástí definice, chápu že programátorům to zjevné není, ale tenhle výraz nezná ani google, leda u rajčat. :)
A když už trolím, tak část tvrzení o hashích platí jen pro ty kryptografické, což se ale nikde nespecifikuje.
Je to tam napsané hodně blbě. Hned v další řádce si tu citovanou předchozí vyvrací. Takže možná že tomu rozumí, ale blbě se to čte. Je to nedůvěryhodné. Protože si pak člověk není jist, co vše mu bylo kvůli zjednodušení zamlčeno (či vysvětleno možná někdy později). Nepříjemné, obzvláště u článku o heslech a kryptování.
Proč tolik mínusů? Bych to bral jako ponaučení. Slovo kryptovat je paskvil, který by žádný člověk znalý kryptografie nepoužil. To už skoro zavání použitím slova kódování, což by bylo na úrovni TV Nova.
Působí to stejně debilně jako slovo potencionální, které neexistuje a rádi ho používají právníci.