Vytvorte si vlastný algoritmus vymýšľania hesiel
Nepochybujem o tom, že držíte v hlave množstvo hesiel pre rôzne webové stránky. Weblogy, hostingy, rôzne online služby, fóra… Avšak problém je zapamätať si, ktoré heslo je pre ktorú webstránku (a používanie jedného univerzálneho hesla je dosť šialený nápad z bezpečnostných dôvodov).
Password manager?
Prvá možnosť je použiť nejakého password managera. Takýto soft má svoje nevýhody, napríklad ak pracujete na viacerých počítačoch. Napadá vás nejaké lepšie riešenie?
Vlastný algoritmus odvodzovania hesiel
Uvažoval som, čo by mohlo pomôcť. A potom to prišlo… Začal som používať techniku, vďaka ktorej už nikdy nezabudnem žiadne heslo! Čo to za techniku? Vytvoril som si algoritmus pre vymýšlanie hesiel.
Znie to zaujímavo, čo?
Bez zbytočných obkecov uvediem priamo príklad (je to len príklad, môj algoritmus vyzerá trošičku inak
)…
- Prvé číslo je počet znakov názvu webovej stránky (bez TLD).
- Ak je číslo v prvom kroku deliteľné dvoma bez zvyšku (
čiže párne), ďalší znak bude “t”, v inom prípade bude “c”. - K reťazcu teraz pridáme posledné písmeno webovej stránky (bez TLD).
- Ďalší znak bude “$”, ak znak v predchádzajúcom kroku bola samohláska, ak to bola spoluhláska, dáme “%”.
- Posledné tri znaky budú tvoriť prvé tri písmená webovej stránky.
OK, povedzme, že sa chcem prihlásiť na webtrh.cz … Pri použití algoritmu uvedeného vyššie, heslo bude: 6th%web . Ak to bude facebook (ktorý mimochodom nepoužívam
), tak heslo bude vyzerať asi takto: 8tk%fac .
Chce to hlavne cvik, ale výsledok bude, že si budete pamätať všetky heslá ku všetkým webovým stránkam, ktoré využívate. Jednoducho si ich odvodíte z názvu webovej stránky. Len sa musíte uistiť, že nikto (skutočne NIKTO) nepozná váš algoritmus. Tento spôsob má svoje muchy a viem o nich (napr. ak si password pravidelne meníte alebo sa proste rozhodnete si ho zmeniť, musíte si nové heslo zapamätať ako výnimku). Ale ak popremýšlate, možno sa vám podarí vychytať ich
Potom mi napíšte vaše návrhy, ako tento spôsob vymýšlania hesiel zlepšiť.
Jedno univerzálne superdlhé heslo
Pôvodne som tento tip uvádzať nechcel, ale čítal som niekde o človeku, ktorý používa jedno jediné univerzálne heslo všade. Vytvoril ho tak, že zobral kus papiera, pero (ak nemáte, postačí aj ceruzka alebo fixka
) a začal písať náhodné znaky, ktoré ho napadali. Zastavil sa až keď napísal cca 15ty znak.
Tento spôsob vymýšľania hesiel je síce zábavný, ale má vysoké nároky na pamäť. Náhodný reťazec vám myseľ vygeneruje hravo, horšie je takú vec do hlavy vryť tak, aby sa vám vybavila kedykoľvek to budete potrebovať.
Hashovacie algoritmy typu md5 a sha1
Tí, ktorí majú skúsenosti s programovaním, vedia o týchto funkciách. Vstupom je takmer čokoľvek a výstupom je zahashovaný reťazec, ktorý vyzerá asi takto:
437b930db84b8079c2dd804a71936b5f
… toto je výstup pre reťazec: “something“. Princíp spočíva v tom, že si zapamätáte akékoľvek univerzálne heslo, ktoré potom skombinujete s url webu. Teda md5(“qwertz http://twitter.com”); . Výsledok je potom:
72c28d34e3f798b3b92454dcd2f4bbbe
Jediná nevýhoda je, že potrebujete mať všade dostupnú funkciu md5 (resp. sha1). Unixové systémy tieto knižnice ponúkajú už v defaultnej inštalácii. Stačí zadať:
$ echo "something" | md5
Ďalšia možnosť je napísať si skriptík, v ktorom bude jeden input, kam zadáte reťazec na zakódovanie, stlačíte “Vygeneruj heslo” a výstupom bude md5/sha1 verzia stringu. Teraz ma napadá… to heslo sa niekomu môže zdať pridlhé
Bezpečnosť hesiel
Odborníci na bezpečnosť sa zhodnú v tom, že rozhoduje hlavne dĺžka hesla, ani nie tak jeho zloženie. Predstavte si, že niekto skúsi brute-force útok, teda skúša všetky možné kombinácie hesla. Ak predpokladáme, že heslo obsahuje aj špeciálne znaky (teda !$?,’§ atď.), tak nám vzniká veeeeľa možností. A teraz si predstavte, že heslo je dlhé 15 znakov. Kruté, čo?
Pardon, ak teraz trepnem blbosť (to viete, kombinatorika), ale počet možností vypočítame asi takto:
A^B = P
…kde A je počet rôznych možností na jeden znak (teda ak je heslo numerické, tak prípustné sú znaky od 0 po 9, teda A = 10), B je dĺžka hesla a P je počet rôznych možností…
Z toho vyplýva, že čím je heslo dlhšie, tým lepšie pre vás. A tým horšie pre potencionálneho crackera
Záver
Povedali sme si celkom tri spôsoby, ako si heslo pamätať a nezabudnúť ho. Na záver sa vás chcem spýtať: Máte aj vy nejaký osvedčený spôsob, ako si v hlave držať všetky tie heslá? Alebo robíte tú chybu, že máte jedno univerzálne?















Vopred varujem všetkých, čo sa chcú týmto článkom inšpirovať.
V prvom rade nemožno stavať bezpečnosť na verejne neznámom algoritme ale iba na verejne neznámom kľúči – Kerckhoffs’ principle známom už z 19teho storočia. Zo spôsobu ako si to tu opísal by sa dal dokonca algoritmus ľahko odvodiť (áno, predpokladajme, že nie všetky stránky si ukladajú tvoje heslo v zahešovanej podobe). z tohto dôvodu samozrejme padá aj využívanie jedného dlhého hesla.. jedno heslo všade proste nemôže byť bezpečné za žiadnych okolností.
Díky za názor, ale myslím, že to nie je také hrozné, ako popisuješ. Ak mi povieš, prečo nie je bezpečné mať vlastný algoritmus pre vymýšlanie hesiel, som ochotný o tom diskutovať.
Pre obyčajných užívateľov je moja metóda (viem, že niektoré z nich nie sú veľmi bezpečné, ale vytvorenie vlastného algoritmu – prečo nie?) postačujúca, pretože nie každý má chuť a rozum, aby študoval nejaké zložité krypto algoritmy či pekelne prešpekulované techniky.
V prípade, že ti heslo vygeneruje systém, zabudni na tento článok a choď študovať techniky, ako si zapamätať tento typ hesiel
(náhodné reťazce). Tento článok popisuje metódy vlastného “generovania” hesiel a tie algoritmy nemusia byť vôbec také jednoduché, ako som popisoval. Kľudne ich môžeš “okoreniť” vlastnými nápadmi.
Každopádne díky za názor
Kerckhoffov princíp nebudem vysvetľovať, proste to tak je. Ale tak v krátkosti: Vezmi si, že by si túto metódu používal napr. aj pri registrácii do katalógov. Vezmi si, že tvoje heslo si uložia nezahešované. Vezmi si, že jeden človek môže vlastniť desiatky katalógov a ku všetkým mu dáš heslá vygenerované pomocou toho algoritmu a že si ich náhodou bude pozerať a objaví tam nejakú pravidelnosť. Vezmi si, že mu pri registrácii vypĺňaš aj email. Ak si už algoritmus celý nedokáže odvodiť, má však stále veľkú pravdepodobnosť uhádnuť ti heslo do mailu.. Napríklad.
Btw: Stále lepšie, ako si dať za heslo dátum svojho narodenia. Pár ľuďom už takto “spravujem” emailové schránky či ICQ čísla