# Generator haseł

> Darmowy generator silnych haseł, fraz, PIN-ów i kluczy API. Wybierz długość, typy znaków lub liczbę słów. Działa wyłącznie w Twojej przeglądarce.

URL: https://acrafto.com/pl/generator-hasel/  
Updated: 2026-08-29

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

## Hasła, frazy, PIN-y i klucze

Zakładki nad wynikiem przełączają między czterema rodzajami sekretu. Wszystkie korzystają z tego samego lokalnego źródła losowości — zmienia się tylko alfabet i reguły.

**Losowe** — długość od 4 do 128 znaków z dowolną kombinacją wielkich liter, małych liter, cyfr i symboli. W *Opcjach zaawansowanych* znajdziesz ustawienia, których wymagają prawdziwe strony: wykluczenie znaków podobnych do siebie (`0`/`O`, `1`/`l`/`I`) dla wszystkiego, co przepisujesz ręcznie, zakaz konkretnych znaków odrzucanych przez daną stronę, wymóg minimalnej liczby znaków każdego typu, zakaz powtórzeń lub sekwencji klawiaturowych typu `abc` i `qwe`, albo narzucenie dokładnego kształtu hasła przez szablon (`A` wielka litera, `a` mała litera, `#` cyfra, `!` symbol, `C` spółgłoska, `v` samogłoska).

**Fraza** — kilka losowych słów zamiast jednego pomieszanego ciągu znaków, pomysł `correct-horse-battery-staple` z [XKCD 936](https://xkcd.com/936/). Słowa pochodzą z [angielskiej listy EFF](https://www.eff.org/dice), 7776 pozycji i standard diceware, więc każde słowo dodaje 12,9 bita: pięć słów to około 65 bitów, porównywalne z 10-znakowym losowym hasłem wykorzystującym wszystkie cztery typy znaków, a w odróżnieniu od `xK9#mP2$vL5@nQ8` da się to zapamiętać na tyle długo, by wpisać je na telefonie. Ustaw separator, wielką literę na początku każdego słowa albo dopisz cyfry i symbol, gdy strona tego wymaga. Drugi styl całkowicie pomija angielskie słowa i buduje wymawialne sylaby (`tokrilmufsad`) — łatwiejsze do podyktowania przez telefon i niezależne od układu klawiatury. Lista słów jest wyłącznie angielska — fraza będzie wyglądać jak angielska niezależnie od języka strony.

**PIN** — od 3 do 12 cyfr do blokady telefonu, karty SIM, panelu alarmowego czy karty bankowej. Te przewidywalne nigdy nie wychodzą: `1234`, `0000`, same identyczne cyfry i cokolwiek, co wygląda jak rocznik urodzenia, jest odrzucane i losowane od nowa. Ten filtr ma większe znaczenie, niż mogłoby się wydawać — w analizach wyciekłych baz PIN-ów dwadzieścia najpopularniejszych czterocyfrowych kombinacji odpowiada za mniej więcej jedną czwartą wszystkich.

**Klucze** — losowe sekrety w formatach, jakich oczekuje kod: szesnastkowym, Base64 albo zwykłych liter i cyfr. Rozmiar podajesz w bajtach, więc 32 bajty dają klucz 256-bitowy (64 znaki szesnastkowe, 44 w Base64) na potrzeby klucza API, sekretu sesji, `JWT_SECRET` czy `SECRET_KEY`. Ta sama zakładka generuje też kody zapasowe 2FA w formacie znanym z GitHuba (`k7fp-2mqx`), zbudowane z alfabetu bez znaków podobnych do siebie, więc przetrwają spisanie na kartce.

## Dlaczego to narzędzie działa wyłącznie w Twojej przeglądarce

Większość generatorów haseł działa dobrze — dopóki nie zastanowisz się, co tak naprawdę się dzieje. Gdy generujesz hasło na serwerze, serwer teoretycznie je widzi. Dla większości stron to prawdopodobnie jest w porządku. Ale „prawdopodobnie” to nie ta pewność, której chcesz przy konfiguracji konta bankowego lub e-mail.

Ten generator został zbudowany wokół jednej zasady: **hasło nigdy nie opuszcza Twojego urządzenia.** Wszystko działa w JavaScript bezpośrednio w Twojej przeglądarce. Odpowiednia część kodu:

```
const array = new Uint8Array(length);
crypto.getRandomValues(array);
```

`crypto.getRandomValues()` czerpie entropię z generatora liczb losowych Twojego systemu operacyjnego — tego samego źródła, z którego korzystają biblioteki kryptograficzne. Zamknij tę kartę i hasło zniknie. Żadnych logów, żadnej bazy danych, żadnego serwera.

## Problem z hasłowymi „trikami”

Przez lata porady dotyczące bezpieczeństwa brzmiały tak: weź słowo, napisz pierwszą literę wielką, dodaj cyfrę na końcu, zamień jedną literę na symbol. Typ `H@sl0!`.

Atakujący znają te triki. Ataki słownikowe nie próbują tylko popularnych słów — próbują popularnych słów z popularnymi modyfikacjami. `H@sl0!` to nie silne hasło; to słabe hasło w przebraniu.

> *„Hasła są jak bielizna: nie pozwól innym ich widzieć, zmieniaj je często i nie powinieneś ich udostępniać obcym.”*  
> — Chris Pirillo

Prawdziwa zmiana przyszła wraz z menedżerami haseł. Gdy nie musisz pamiętać hasła — gdy żyje bezpiecznie w [Bitwarden](https://bitwarden.com), 1Password lub KeePass — nie ma powodu, by nie używać czegoś jak `xK9#mP2$vL5@nQ8` dla każdego konta. Wygeneruj, skopiuj, zapisz. To cały przepływ pracy.

Potrzeba regularnej zmiany haseł była jednym z pierwotnych powodów, dla których to narzędzie zostało stworzone. Rotacja hasła powinna zająć 30 sekund, a nie powodować ból głowy.

## Jak długie jest wystarczająco długie?

Długość jest ważniejsza niż złożoność. Dwudziestoznakowe hasło składające się wyłącznie z małych liter ma większą entropię niż dziesięcioznakowe hasło ze wszystkimi czterema typami znaków. Oba są ważne, ale długość wygrywa.

| Hasło | Długość | Czas złamania |
| --- | --- | --- |
| `password123` | 11 znaków | < 1 sekunda |
| `JanKowalski1985` | 15 znaków | 3 godziny |
| `Abc123!@#` | 9 znaków | 2 dni |
| `MyD0g!sF1uffy` | 13 znaków | 5 lat |
| `Tr$7mK@p9Lq2` | 12 znaków | 200+ lat |
| `xK9#mP2$vL5@nQ8` | 15 znaków | 34 000 lat |

[NIST Special Publication 800-63B](https://pages.nist.gov/800-63-3/sp800-63b.html) zaleca minimum 8 znaków, ale zauważa, że **długość jest głównym czynnikiem siły** — obowiązkowe wymagania dotyczące znaków specjalnych często działają odwrotnie do zamierzeń, czyniąc hasła bardziej przewidywalnymi.

## Co robią poszczególne typy znaków

- **Wielkie litery (A–Z)** — 26 możliwości na pozycję
- **Małe litery (a–z)** — kolejne 26
- **Cyfry (0–9)** — 10
- **Symbole (!@#$%…)** — 32+ w zależności od zestawu znaków

Przy 16 znakach ze wszystkimi czterema typami (94 możliwe wartości na pozycję): 94¹⁶ ≈ 3,7 × 10³¹ kombinacji. Nowoczesny klaster GPU łamiący miliard haseł na sekundę potrzebowałby dłużej niż wynosi wiek wszechświata.

## Dla programistów: klucze, sekrety i eksport masowy

Zakładka *Klucze* istnieje, bo `changeme` i `secret123` trafiają do plików `.env` częściej, niż ktokolwiek chciałby przyznać. Wygeneruj wartość w formacie, jakiego faktycznie oczekuje biblioteka — szesnastkowym dla wszystkiego, co potrzebuje surowego klucza, Base64 dla tokenów i nagłówków, alfanumerycznym tam, gdzie powłoka lub URL zakrztusiłby się na `+` i `/` — i podaj rozmiar w bajtach, a nie w znakach, bo tak właśnie określa się siłę klucza: 16 bajtów to klucz 128-bitowy, 32 bajty to 256-bitowy.

Wszystko pochodzi z `crypto.getRandomValues()`, kryptograficznie bezpiecznego generatora przeglądarki — tej samej klasy źródła co `secrets` w Pythonie czy `crypto/rand` w Go, i zdecydowanie nie `Math.random()`, które jest na tyle przewidywalne, że da się je odtworzyć.

Pod panelami *Generuj kilka naraz* tworzy do 1000 wartości i pobiera je jako TXT, CSV, JSON, YAML, `.env` lub SQL — do zasiewania kont testowych, rozdawania początkowych danych logowania albo wypełniania kolumny bez pisania jednorazowego skryptu. Eksport masowy podąża za ustawieniami losowego hasła (albo Twoim szablonem), a nie za zakładkami frazy i PIN-u.

Dwie mniejsze wygody: *Wyczyść schowek 60 sekund po skopiowaniu* ogranicza czas, przez jaki sekret leży w systemowym schowku, a *Zapisane ustawienia* przechowuje w przeglądarce nazwany zestaw reguł, dzięki czemu polityka, po którą sięgasz często — 20 znaków, bez symboli, bez znaków podobnych do siebie — jest o jedno kliknięcie. Adres URL strony również przenosi te ustawienia, nigdy wygenerowaną wartość, więc politykę można bezpiecznie zapisać w zakładkach albo wysłać koledze.

## Argument za menedżerem haseł

Generowanie silnych haseł jest bez sensu, jeśli je ponownie używasz lub przechowujesz w `hasla.txt` na pulpicie. [Raport Verizon o naruszeniach danych](https://www.verizon.com/business/resources/reports/dbir/) konsekwentnie stwierdza, że **81% naruszeń dotyczy skradzionych lub słabych haseł**. Najczęstszy powód, dla którego ludzie ponownie używają haseł: zbyt wiele kont do śledzenia.

Menedżery haseł rozwiązują to sprawnie:

- **[Bitwarden](https://bitwarden.com)** — open source, bezpłatna wersja pokrywa większość potrzeb, działa na wszystkich platformach
- **1Password** — dopracowany interfejs, doskonałe udostępnianie rodzinne/zespołowe
- **KeePass** — w pełni lokalny, bez chmury, pełna kontrola

## Gdy hasło wycieknie

1. Zmień je natychmiast na każdym koncie, gdzie go używałeś
2. Włącz 2FA na dotkniętym koncie
3. Sprawdź **[Have I Been Pwned](https://haveibeenpwned.com)** — wpisz swój e-mail, aby zobaczyć przeszłe naruszenia
4. Przejrzyj aktywne sesje i unieważnij wszystko nieznane

## Zalecenia według typu konta

### Konta finansowe

- 16+ znaków, wszystkie typy znaków
- Unikalne hasło, nigdy nie używane ponownie
- 2FA przez aplikację uwierzytelniającą (nie SMS)

### E-mail

- 14+ znaków — Twój e-mail resetuje każde inne hasło, czyniąc go klejnotem koronnym Twojego bezpieczeństwa
- Obowiązkowe 2FA
- Regularnie sprawdzaj zalogowane urządzenia

### Media społecznościowe

- 12+ znaków
- 2FA przez aplikację uwierzytelniającą — 2FA oparte na SMS jest podatne na ataki SIM-swapping

### Konta służbowe

- Postępuj zgodnie z polityką firmy (zwykle 14+)
- Nigdy nie używaj prywatnych haseł w systemach służbowych; zmień natychmiast po odejściu

## Typowe błędy warte unikania

**Przechowywanie haseł w postaci zwykłego tekstu** (`hasla.txt`, aplikacja notatek, wersje robocze e-maili) — zamiast tego użyj szyfrowanego menedżera haseł.

**Udostępnianie haseł przez czat lub e-mail** — użyj [Bitwarden Send](https://bitwarden.com/products/send/) lub podobnego bezpiecznego udostępniania, jeśli musisz udostępniać.

**Poleganie na przeglądarce jako jedynym menedżerze haseł** — przeglądarki się poprawiają, ale dedykowany menedżer z hasłem głównym oferuje lepsze szyfrowanie i obsługę wieloplatformową.

## Polskie zalecenia

CERT Polska (cert.pl) i UODO (urząd ochrony danych osobowych) regularnie publikują wytyczne dotyczące bezpieczeństwa haseł. Polskie usługi e-rządu (ePUAP, mObywatel) coraz częściej wymagają silnego uwierzytelniania. Badania CERT Polska konsekwentnie wykazują, że „qwerty123” i „polska” należą do najczęściej pojawiających się polskich haseł w wyciekach danych.

## Statystyki bezpieczeństwa haseł

- **81%** naruszeń firmowych obejmuje skradzione lub słabe hasła (Verizon DBIR)
- **59%** ludzi ponownie używa haseł na wielu kontach
- **23%** najczęstszych haseł można złamać w mniej niż 1 sekundę
- Przeciętny użytkownik ma **100+ kont online** wymagających haseł

## Często zadawane pytania

### Czy ten generator jest naprawdę prywatny?

Tak. Otwórz konsolę deweloperską przeglądarki (F12) podczas generowania hasła i sprawdź kartę Sieć — zobaczysz zero wysłanych żądań. Wszystko działa lokalnie.

### Jak często powinienem zmieniać hasła?

Gdy jest ku temu powód: znane naruszenie, podejrzenie kompromitacji lub po udostępnieniu dostępu. NIST nie zaleca już obowiązkowej okresowej rotacji dla jej własnego dobra — wymuszone częste zmiany zazwyczaj skutkują słabszymi, przewidywalnymi hasłami.

### Czy mogę używać tego samego hasła dla wielu kont?

Nie. Jedno naruszenie ujawnia każde konto dzielące to hasło. Menedżer haseł sprawia, że utrzymanie unikalnych haseł dla setek kont jest łatwe.

### Hasło czy fraza — czego używać?

Losowego hasła używaj wszędzie tam, gdzie i tak wpisuje je za Ciebie menedżer haseł, a frazy — do tych nielicznych sekretów, które musisz wpisać sam: hasła głównego menedżera, szyfrowania dysku, logowania do laptopa. Pięć słów z listy EFF to około 65 bitów entropii — porównywalne z 10-znakowym losowym hasłem wykorzystującym wszystkie cztery typy znaków — a przy tym dużo łatwiej wpisać je poprawnie na telefonie czy pilocie od telewizora.

### Czy mogę wygenerować losowy PIN?

Tak, zakładka *PIN* tworzy od 3 do 12 cyfr i odrzuca te przewidywalne: 1234, 0000, powtórzone cyfry oraz roczniki urodzenia. Sześć cyfr zamiast standardowych czterech kosztuje Cię niemal nic przy wpisywaniu, a liczbę możliwych kombinacji, jaką musi sprawdzić atakujący, mnoży przez sto.

### Czy mogę użyć tego do kluczy API i sekretów aplikacji?

Do tego służy zakładka *Klucze*: format szesnastkowy, Base64 lub alfanumeryczny, w rozmiarze podawanym w bajtach. 32 bajty to klucz 256-bitowy, czyli to, co większość bibliotek rozumie jako silny sekret dla `JWT_SECRET`, `SECRET_KEY` lub podpisu webhooka. Ta sama zakładka generuje też kody zapasowe 2FA.

### Czy mogę wygenerować więcej niż jedno na raz?

*Generuj kilka naraz* tworzy do 1000 wartości i pobiera je jako TXT, CSV, JSON, YAML, .env lub SQL. Korzysta z ustawień losowego hasła lub Twojego szablonu, więc służy do zasiewania kont i danych testowych, a nie do zakładek frazy i PIN-u.

### Co jest silniejsze — długość czy złożoność?

Długość. Dwudziestoznakowe hasło składające się wyłącznie z małych liter ma większą entropię niż dziesięcioznakowe hasło ze wszystkimi typami znaków. Używaj obu, ale priorytetyzuj długość.

### Co jeśli zapomnę hasło?

Używaj menedżera haseł, aby pamiętać tylko jedno hasło główne. Dla kont bez menedżera większość usług oferuje odzyskiwanie przez e-mail — dlatego ochrona Twojego e-maila silnym hasłem i 2FA jest niezbędna.

## Other languages

- Čeština (cs): [Generátor hesel](https://acrafto.com/cs/generator-hesel/) ([Markdown](https://acrafto.com/cs/generator-hesel/index.md))
- Slovenčina (sk): [Generátor hesiel](https://acrafto.com/sk/generator-hesiel/) ([Markdown](https://acrafto.com/sk/generator-hesiel/index.md))
- English (en): [Password Generator](https://acrafto.com/en/online-password-generator/) ([Markdown](https://acrafto.com/en/online-password-generator/index.md))
- Deutsch (de): [Passwort Generator](https://acrafto.com/de/passwort-generator/) ([Markdown](https://acrafto.com/de/passwort-generator/index.md))
- Français (fr): [Générateur de mot de passe](https://acrafto.com/fr/generateur-de-mots-de-passe/) ([Markdown](https://acrafto.com/fr/generateur-de-mots-de-passe/index.md))
- Español (es): [Generador de contraseñas](https://acrafto.com/es/generador-de-contrasenas/) ([Markdown](https://acrafto.com/es/generador-de-contrasenas/index.md))
- Italiano (it): [Generatore di password](https://acrafto.com/it/generatore-di-password/) ([Markdown](https://acrafto.com/it/generatore-di-password/index.md))
- Português (pt): [Gerador de senha](https://acrafto.com/pt/gerador-de-senhas/) ([Markdown](https://acrafto.com/pt/gerador-de-senhas/index.md))
- Nederlands (nl): [Wachtwoordgenerator](https://acrafto.com/nl/wachtwoordgenerator/) ([Markdown](https://acrafto.com/nl/wachtwoordgenerator/index.md))
- Română (ro): [Generator de parole](https://acrafto.com/ro/generator-de-parole/) ([Markdown](https://acrafto.com/ro/generator-de-parole/index.md))
- Magyar (hu): [Jelszógenerátor](https://acrafto.com/hu/jelszo-generator/) ([Markdown](https://acrafto.com/hu/jelszo-generator/index.md))
- Ελληνικά (el): [Γεννήτρια κωδικών πρόσβασης](https://acrafto.com/el/gennitria-kodikon-prosvasis/) ([Markdown](https://acrafto.com/el/gennitria-kodikon-prosvasis/index.md))
- Български (bg): [Генератор на пароли](https://acrafto.com/bg/generator-na-paroli/) ([Markdown](https://acrafto.com/bg/generator-na-paroli/index.md))
- Hrvatski (hr): [Generator lozinki](https://acrafto.com/hr/generator-lozinki/) ([Markdown](https://acrafto.com/hr/generator-lozinki/index.md))
- Slovenščina (sl): [Generator gesel](https://acrafto.com/sl/generator-gesel/) ([Markdown](https://acrafto.com/sl/generator-gesel/index.md))
- Eesti (et): [Parooligeneraator](https://acrafto.com/et/parooligeneraator/) ([Markdown](https://acrafto.com/et/parooligeneraator/index.md))
- Latviešu (lv): [Paroļu ģenerators](https://acrafto.com/lv/paroles-generatora/) ([Markdown](https://acrafto.com/lv/paroles-generatora/index.md))
- Lietuvių (lt): [Slaptažodžių generatorius](https://acrafto.com/lt/slaptazodziu-generatorius/) ([Markdown](https://acrafto.com/lt/slaptazodziu-generatorius/index.md))
- Svenska (sv): [Lösenordsgenerator](https://acrafto.com/sv/losenordsgenerator/) ([Markdown](https://acrafto.com/sv/losenordsgenerator/index.md))
- Dansk (da): [Adgangskodegenerator](https://acrafto.com/da/adgangskode-generator/) ([Markdown](https://acrafto.com/da/adgangskode-generator/index.md))
- Suomi (fi): [Salasanageneraattori](https://acrafto.com/fi/salasanageneraattori/) ([Markdown](https://acrafto.com/fi/salasanageneraattori/index.md))
- Norsk (no): [Passordgenerator](https://acrafto.com/no/passordgenerator/) ([Markdown](https://acrafto.com/no/passordgenerator/index.md))
- Українська (uk): [Генератор паролів](https://acrafto.com/uk/generator-paroliv/) ([Markdown](https://acrafto.com/uk/generator-paroliv/index.md))
- Русский (ru): [Генератор паролей](https://acrafto.com/ru/generator-paroley/) ([Markdown](https://acrafto.com/ru/generator-paroley/index.md))
- Српски (sr): [Генератор лозинки](https://acrafto.com/sr/generator-lozinki/) ([Markdown](https://acrafto.com/sr/generator-lozinki/index.md))
- Македонски (mk): [Генератор на лозинки](https://acrafto.com/mk/generator-na-lozinki/) ([Markdown](https://acrafto.com/mk/generator-na-lozinki/index.md))
- Bosanski (bs): [Generator lozinki](https://acrafto.com/bs/generator-lozinki/) ([Markdown](https://acrafto.com/bs/generator-lozinki/index.md))
- Shqip (sq): [Gjenerator fjalëkalimesh](https://acrafto.com/sq/gjenerator-fjaleakalimesh/) ([Markdown](https://acrafto.com/sq/gjenerator-fjaleakalimesh/index.md))
- Türkçe (tr): [Şifre oluşturucu](https://acrafto.com/tr/sifre-olusturucu/) ([Markdown](https://acrafto.com/tr/sifre-olusturucu/index.md))
- 日本語 (ja): [パスワード生成ツール](https://acrafto.com/ja/pasuwarudo-jenereta/) ([Markdown](https://acrafto.com/ja/pasuwarudo-jenereta/index.md))
- 한국어 (ko): [비밀번호 생성기](https://acrafto.com/ko/bimilbeonho-saengseonggi/) ([Markdown](https://acrafto.com/ko/bimilbeonho-saengseonggi/index.md))
- العربية (ar): [مولد كلمات المرور](https://acrafto.com/ar/muwallid-kalimat-al-murur/) ([Markdown](https://acrafto.com/ar/muwallid-kalimat-al-murur/index.md))
- हिन्दी (hi): [पासवर्ड जनरेटर](https://acrafto.com/hi/password-generator/) ([Markdown](https://acrafto.com/hi/password-generator/index.md))
- Bahasa Indonesia (id): [Generator password](https://acrafto.com/id/generator-kata-sandi/) ([Markdown](https://acrafto.com/id/generator-kata-sandi/index.md))
- Tiếng Việt (vi): [Trình tạo mật khẩu](https://acrafto.com/vi/trinh-tao-mat-khau/) ([Markdown](https://acrafto.com/vi/trinh-tao-mat-khau/index.md))
- ไทย (th): [สร้างรหัสผ่าน](https://acrafto.com/th/khrueang-sang-rahat-phan/) ([Markdown](https://acrafto.com/th/khrueang-sang-rahat-phan/index.md))
- עברית (he): [מחולל סיסמאות](https://acrafto.com/he/meholel-sismaot/) ([Markdown](https://acrafto.com/he/meholel-sismaot/index.md))
