Hlavní navigace

Názor k článku SuperGenPass: neukládejte si hesla, generujte je od Vít Šesták (v6ak) - Proč je bezpečnější? Jestli je to delší - ale...

  • Článek je starý, nové názory již nelze přidávat.
  • 16. 1. 2012 10:14

    Vít Šesták (v6ak)

    Proč je bezpečnější?

    Jestli je to delší - ale zase je to pravidelnější, může využít bigramy a různé pravděpodobnostní znaky. A i hash lze pro dnešní účely vyrobit dostatečně dlouhý (třeba SHA512 a kódování aspoň base64). Kdyby byl hash příliš krátký, z principu by kolize šly počítat snadno a i hashovací funkce jako taková by nebyla bezpečná.

    Při útoku hrubou silou nebo slovníkem ale nemůže být zahashovaná verze bezpečnější nebo ne o moc (ledaže by s tím útočník nepočítal). vždy totiž mohu dělat útok srubou silou a zakončit to hashem. Jeden náhodný znak nakonec by heslo proti tomuto útoku zřejmě zabezpečil lépe než hash na konci.

    Zatím zahashovaná a nezahashovaná hesla vycházejí zhruba nastejno, jen u zahashovaných hesel je menší pravděpodobnost, že by s tím útočník počítal.

    Při útoku ze strany poskytovatele ale jasně vítězí v bezpečnosti zahashovaná hesla, pokud přidáváme doménu. Řekněme, že by root.cz chtěl moje heslo zneužít pro přihlášení ke Google. Z kyticka.root.cz by viděl, že asi má použít kyticka.google.com, kyticka.mail.go­ogle.com, kyticka.docs.go­ogle.com nebo něco takového. Možností zas až tolik není. Pokud ale uvidí c9238f28af458­b8d3cb9cfbcc1f8b399, těžko si z toho odvodí 789893b9f74d3­a0f9d1d4788c1b2b494, ec6b55754312ec­f27bcbbfcc47d50e1b nebo 8af1185fe85f2­be0c3f48afb2f78d942. Zde používám MD5, kdo chce, může použít třeba zmíněné SHA512. Pak z toho budou obludnosti jako
    aee4b4193725be­549dde892cd1935cd830094d­a84aa5c903cbbb5f­072f191a3bc0e6508f2f19f0­4477438a2b54015de­eb3a36601c6b1ce19f39a577­34d0c8362, ale princip bude stále stejný.

    Kdo by nazážel na maximální délku hesla, může zkusit třeba base64 nebo nějaký větší kalibr. Není problém vymyslet baseXXX, kde XXX je počet prvků množiny všech povolených znaků.