Hasło generuje się w Twojej przeglądarce i nigdzie nie jest wysyłane. Włącz JavaScript, żeby je wylosować.
Jak generujemy hasło
Każdy znak losuje funkcja crypto.getRandomValues z przeglądarki (kryptograficzny generator liczb losowych), bez Math.random. Hasło zawiera co najmniej jeden znak z każdej wybranej grupy. Założenia:
| Grupa znaków | Liczba znaków | Uwagi |
|---|---|---|
| Małe litery | 26 | a–z, bez polskich liter, żeby hasło działało wszędzie |
| Wielkie litery | 26 | A–Z |
| Cyfry | 10 | 0–9 |
| Znaki specjalne | 22 | !@#$%&*()-_=+[]{}:;,.?, bez cudzysłowów i ukośników, które przeszkadzają w części formularzy |
| Znaki łatwe do pomylenia | 5 | O, 0, l, 1, I; można je pominąć |
Siłę hasła mierzymy w bitach: długość × log₂(liczba znaków w puli). 16 znaków z puli 84 znaków to ok. 102 bity, co przy atakach brute force jest poza zasięgiem.
W skrócie
- Długość ważniejsza niż ozdobniki. 16 losowych znaków z małych i wielkich liter, cyfr i symboli to ok. 100 bitów entropii, co przy atakach brute force jest poza zasięgiem.
- Losuje przeglądarka, nie serwer. Hasło powstaje na Twoim urządzeniu z kryptograficznego generatora liczb losowych (crypto.getRandomValues) i nigdzie nie jest wysyłane ani zapisywane.
- Jedno hasło na jedno konto i zapis w menedżerze haseł. Wygenerowanego hasła nie trzeba pamiętać.
- Włącz logowanie dwuskładnikowe, gdzie się da. Nawet silne hasło może wyciec razem z bazą serwisu.
Sam dzisiaj nie wyobrażam sobie życia bez menadżera haseł. Korzystam z iCloud, które jest zsynchronizowane z moim MacBookiem, iPhone oraz iPadem. Założone konto czy nowe logowanie jest od razu widoczne na innych urządzeniach. Wcześniej miałem kilka różnych haseł. Dzisiaj to nie do pomyślenia. Na każdym serwisie mam inne hasło. Co do długości generowanych haseł, to ma ono długość 16 znaków. Oczywiście są serwisy, szczególnie banki, które mają swoją politykę haseł. Wtedy wygenerowane hasło przez menadżera haseł modyfikuję i zapisuję w chmurze.
Jak korzystać z generatora
Generator tworzy hasło w trzech krokach: wybierasz długość, grupy znaków i opcjonalnie pomijanie łatwych do pomylenia znaków, a on losuje hasło i pokazuje jego siłę.
- Długość: do ważnych kont (poczta, bank, menedżer haseł) 16 znaków lub więcej. Do mało ważnych wystarczy 12.
- Grupy znaków: małe litery, wielkie litery, cyfry i znaki specjalne. Hasło zawiera co najmniej jeden znak z każdej wybranej grupy.
- Znaki łatwe do pomylenia: O, 0, l, 1 i I. Pomiń je, gdy hasło trzeba przepisać ręcznie (np. do telewizora czy routera).
- Siła: pokazujemy entropię w bitach (długość razy logarytm z liczby znaków w puli). Od 80 bitów hasło jest bardzo silne.
Jak długie hasło wygenerować
Poniższa tabela pokazuje, ile bitów entropii daje hasło o danej długości z różnych pul znaków (liczby wynikają ze wzoru, nie z pomiaru):
| Hasło | Pula znaków | Entropia | Ocena |
|---|---|---|---|
| 8 znaków, same litery małe | 26 | ok. 38 bitów | średnie |
| 12 znaków, małe i wielkie litery oraz cyfry | 62 | ok. 71 bitów | dobre |
| 16 znaków, wszystkie grupy (84 znaki) | 84 | ok. 102 bity | bardzo dobre |
| 20 znaków, wszystkie grupy | 84 | ok. 128 bitów | bardzo dobre |
| 32 znaki, wszystkie grupy | 84 | ok. 204 bity | przesada, ale bez wad |
Widać, że każdy kolejny znak daje więcej niż dodanie kolejnej grupy znaków, więc przy ograniczeniu długości (np. 12 znaków) wybierz wszystkie grupy, a przy dowolnej długości po prostu wydłuż hasło.
Co zrobić z wygenerowanym hasłem
- Zapisz je w menedżerze haseł. Hasła losowe są niemożliwe do zapamiętania, więc trzymaj je w menedżerze (przeglądarkowym lub osobnym programie), zabezpieczonym długim hasłem głównym i logowaniem dwuskładnikowym.
- Nie wysyłaj ich mailem ani komunikatorem. Hasło wklejone do czatu zostaje w historii. Jeśli musisz je komuś przekazać, użyj jednorazowego linku z menedżera.
- Jedno hasło, jedno konto. Ten sam wygenerowany ciąg nie powinien się pojawiać w dwóch serwisach.
- Włącz logowanie dwuskładnikowe przez aplikację albo klucz sprzętowy, zamiast SMS.
- Zmień hasła po wycieku, a nie „dla porządku”.
Kiedy generator nie wystarczy
- Serwisy z ograniczeniami. Niektóre serwisy nie przyjmują długich haseł albo wybranych znaków specjalnych. Wtedy skróć hasło, wyłącz symbole i zrekompensuj to długością tam, gdzie to możliwe.
- Hasło, które trzeba pamiętać. Do menedżera haseł lub szyfrowania dysku lepsze jest kilka losowych słów niż 20 losowych znaków. Tę funkcję generator na razie nie obsługuje.
- Bezpieczeństwo urządzenia. Silne hasło nie pomoże, jeśli komputer ma keyloggera lub rozszerzenie przeglądarki wykrada dane. Aktualizuj system i instaluj dodatki tylko z zaufanych źródeł.