
Generátor hesla online
Online generátor silných hesel. Vytvořte si bezpečné heslo s nastavitelnou délkou a znaky.
Ověření síly hesla
Nejdůležitější faktor bezpečného hesla je náhodnost, nikoliv složitost. Tradiční požadavky na hesla (velké písmeno, číslo, speciální znak) jsou často kontraproduktivní – vedou k heslům typu František1!, která tyto podmínky splňují, ale jsou snadno uhodnutelná.
Útočníci totiž nemusí zkoušet jen náhodné kombinace znaků. Mohou zacílit primárně na uživatele se slabšími hesly a použít:
- Slovníkové útoky – běžná slova, jména, české výrazy
- Pravidla substituce – a→@, e→3, s→$, i→1
- Typické vzory – slovo + číslo, velké první písmeno, rok na konci
Heslo František1! tak padne během sekund, zatímco skutečně náhodné kx7$mQ2pL (i bez „pravidel") odolá podstatně déle. Nejlepší volbou je nechat si heslo vygenerovat – buď náhodné znaky, nebo passphrase z náhodných slov.
Jak vytvořit bezpečné heslo
Bezpečné heslo by mělo splňovat několik základních pravidel:
- Délka – čím delší, tím lepší. Minimum je 12 znaků, ideálně 16 a více.
- Náhodnost – heslo by nemělo obsahovat slovníková slova, jména, data narození ani jiné předvídatelné vzory.
- Rozmanitost – kombinace malých a velkých písmen, číslic a speciálních znaků výrazně zvyšuje počet možných kombinací.
- Unikátnost – pro každou službu používejte jiné heslo.
Best practices pro hesla
- Používejte správce hesel – nechte si generovat a ukládat unikátní hesla pro každou službu. Pamatujete si jen hlavní heslo.
- Zapněte dvoufaktorové ověření (2FA) – i když heslo unikne, útočník se bez druhého faktoru nepřihlásí.
- Hlavní heslo do správce hesel – použijte passphrase (4–6 náhodných slov), kterou si zapamatujete. Toto heslo musí být silné a nesmíte ho používat nikde jinde.
- Heslo k e-mailu – e-mail je často „klíč ke všemu", protože přes něj jde resetovat hesla většiny služeb. Použijte silnou passphrase (jinou než k správci hesel) a zapněte 2FA. Toto heslo byste měli znát zpaměti. Nebo viz níže.
- Neměňte hesla zbytečně – pravidelná změna hesel (např. každých 90 dní) vede k volbě slabších hesel. Měňte heslo pouze při podezření na únik.
- Zkontrolujte úniky – na Have I Been Pwned ověřte, zda vaše e-maily nefigurují v únicích. Pokud ano, změňte hesla na dotčených službách.
- Pozor na phishing – ani silné heslo nepomůže, pokud ho zadáte na podvodné stránce. Vždy kontrolujte URL.
- Neposílejte hesla e-mailem ani chatem – používejte správce hesel se sdílením nebo jednorázové odkazy.
Poznámka k e-mailu na vlastní doméně: Vlastní doména poskytuje nezávislost na poskytovateli, ale ne nutně vyšší bezpečnost. Gmail nebo Outlook s hardwarovým klíčem (YubiKey) nabízí pokročilou ochranu proti phishingu a dedikované bezpečnostní týmy. U vlastní domény hrozí risiko expirace – pokud zapomenete doménu prodloužit, útočník ji může zaregistrovat a přijímat vaše e-maily včetně resetů hesel. Slabé místo může být i hostingová společnost.
Tip – náhodný alias pro přihlášení: U Outlooku (a dalších služeb) můžete pro přihlášení používat jiný e-mail než ten veřejný. Vytvoříte si alias s náhodným řetězcem (např. xk7mq2@outlook.com) a nastavíte ho jako přihlašovací. Váš veřejný e-mail zůstane pro příjem pošty, ale útočník ho nemůže použít k pokusu o přihlášení. Podobný princip používají banky s klientským číslem. Není to náhrada za silné heslo a 2FA, ale přidává další vrstvu ochrany.
Kolik hesel si musím pamatovat?
Než zvolíte strategii, zamyslete se nad svou situací:
- Co by bylo problematické ztratit? – Přístup k e-mailu, fotkám, dokumentům, bankovnictví? Které účty jsou kritické pro váš život nebo práci?
- Co by bylo drahé ztratit? – Kryptoměny, předplacené služby, domény, licence k softwaru?
- Jak moc chcete být závislí na třetích stranách? – Apple nebo Google vám mohou zablokovat účet (omylem, kvůli porušení podmínek). Dokážete se z toho zotavit?
- Jaké jsou vaše technické schopnosti? – Zvládnete spravovat hardwarové klíče a zálohy, nebo potřebujete co nejjednodušší řešení?
Pro běžného uživatele s pár desítkami účtů stačí jednodušší varianta. Pro někoho, kdo spravuje firemní přístupy, kryptoměny nebo citlivá data, má smysl investovat do složitějšího a bezpečnějšího řešení.
Existuje několik základních obecných variant od nejjednodušší po bezpečnější:
Varianta 1: Jeden ekosystém (nejjednodušší)
Pokud používáte Apple nebo Google ekosystém, stačí si pamatovat jedno heslo:
- Apple: iCloud e-mail + aplikace Hesla (iCloud Klíčenka) – vše pod Apple ID
- Google: Gmail + Google Password Manager – vše pod Google účtem
S dvoufaktorovým ověřením (ideálně hardwarovým klíčem) je to dostatečně bezpečné pro většinu lidí. Nevýhodou je závislost na jednom poskytovateli.
Varianta 2: Samostatný správce hesel + hardwarový klíč k e-mailu
Gmail i Outlook podporují přihlášení pouze hardwarovým klíčem (passkey) bez hesla. Pak si pamatujete jen heslo do správce hesel a k e-mailu se přihlásíte pomocí YubiKey nebo jiného klíče.
- Pamatujete si: 1 heslo (správce hesel)
- E-mail: hardwarový klíč (bez hesla)
Varianta 3: Dvě oddělené passphrase (nejbezpečnější)
Pro maximální bezpečnost a nezávislost:
- Heslo do správce hesel – passphrase, kterou znáte zpaměti
- Heslo k e-mailu – jiná passphrase, kterou také znáte zpaměti
Proč dvě různá hesla? E-mail často slouží k obnově přístupu ke správci hesel. Pokud by někdo získal přístup k vašemu e-mailu a obě služby měly stejné heslo, má přístup ke všemu.
Tip: Pokud se bojíte, že heslo k e-mailu zapomenete, můžete ho zapsat a uložit na bezpečném fyzickém místě (trezor, bezpečnostní schránka v bance). Pro běžné přihlášení použijete správce hesel, papír je záloha pro případ nouze.
Co je entropie hesla
Entropie měří „náhodnost" hesla v bitech. Čím vyšší entropie, tím déle by trvalo heslo prolomit hrubou silou.
| Entropie (bity) | Hodnocení | Příklad použití |
|---|---|---|
| < 28 | Velmi slabé | Nevhodné pro jakékoli použití |
| 28–35 | Slabé | Pouze pro nepodstatné účty |
| 36–59 | Přijatelné | Běžné webové služby |
| 60–79 | Silné | E-mail, sociální sítě |
| 80–127 | Velmi silné | Bankovnictví, šifrování |
| ≥ 128 | Extrémně silné | Kryptografické klíče |
Entropie se počítá jako délka × log₂(počet možných znaků). Například 16znakové heslo ze sady 94 znaků (malá + velká písmena + číslice + symboly) má entropii přibližně 105 bitů.
Správce hesel
Pamatovat si desítky náhodných hesel je prakticky nemožné. Proto je doporučeno používat správce hesel (password manager):
- Apple Hesla – integrováno v iOS/macOS, synchronisace přes iCloud, zdarma pro uživatele Apple
- Bitwarden – open-source, zdarma, multiplatformní
- 1Password – placený, vynikající UX
- KeePassXC – offline, open-source
Správce hesel vám umožní mít pro každou službu unikátní silné heslo a pamatovat si pouze jedno hlavní heslo (master password).
Apple Hesla (iCloud Klíčenka)
Od macOS Sequoia a iOS 18 má Apple samostatnou aplikaci Hesla (Passwords), která nahrazuje dřívější správu hesel v Nastavení. Nabízí:
- Automatické generování silných hesel při registraci
- Synchronisaci přes iCloud mezi všemi Apple zařízeními
- Podporu passkeys (přihlašování bez hesla)
- Detekci uniklých hesel (upozornění pokud se heslo objevilo v úniku dat)
- Sdílení hesel s rodinou nebo skupinou
- Import/export hesel (CSV)
Pro uživatele v Apple ekosystému je to nejpohodlnější volba – hesla se automaticky vyplňují v Safari i aplikacích a jsou chráněna Face ID / Touch ID.
Jde to bez správce hesel?
Správce hesel v prohlížeči (Chrome, Firefox, Safari) nebo v systému (iCloud Klíčenka, Google Password Manager) je správce hesel – jen ho nemusíte instalovat. Pro většinu lidí je to dostačující řešení.
Pokud opravdu nechcete žádný správce hesel, existují alternativy s kompromisy:
- Passphrase + osobní algoritmus – základní fráze upravená podle služby (např. přidání prvních písmen názvu). Risiko: pokud jedno heslo unikne a útočník odhalí vzorec, má všechna.
- Papír v trezoru – hesla zapsaná na papíře v bezpečném místě. Lepší než jedno heslo všude, ale nepraktické mimo domov.
- Přihlášení přes Google/Apple – redukuje počet hesel. Risiko: vše závisí na jednom účtu.
- Kategorizace služeb – několik silných passphrase podle důležitosti: unikátní pro kritické (banka, e-mail), sdílená pro méně důležité.
Upřímná odpověď: Pro desítky unikátních silných hesel je správce hesel jediné praktické řešení. Dobrá zpráva je, že ho už pravděpodobně máte – v prohlížeči nebo telefonu.
Passphrase – heslo ze slov
Alternativou k náhodným znakům je passphrase – heslo složené z několika náhodných slov. Takové heslo je snazší zapamatovat a přitom může mít vysokou entropii.
Koncept ilustruje slavný komiks XKCD #936 s frází „correct horse battery staple".
Pozor: Tuto konkrétní frázi (ani její překlady) nikdy nepoužívejte – je známá a figuruje v každém slovníku hesel. Vždy si nechte vygenerovat vlastní náhodná slova pomocí generátoru výše.

Přeloženo z originálu.
Při použití slovníku o 7776 slovech (jako v metodě Diceware) poskytuje každé slovo přibližně 12,9 bitů entropie. Čtyři slova = ~51 bitů, šest slov = ~77 bitů.
Poznámka k entropii passphrase: Entropie se počítá jako počet slov × log₂(velikost slovníku). Diakritika v českých slovech nemá vliv na entropii – útočník provádějící slovníkový útok zná velikost slovníku bez ohledu na to, jaké znaky slova obsahují. Síla passphrase pochází z počtu možných kombinací slov, nikoli ze složitosti jednotlivých znaků.
Kerckhoffsův princip: Výpočet entropie předpokládá, že útočník zná použitý slovník i všechna pravidla (počet slov, oddělovač, velká písmena). Jediné co nezná jsou konkrétní náhodné volby. Toto je správný přístup – bezpečnost nesmí záviset na utajení algoritmu (security through obscurity), pouze na kvalitě náhodných voleb. Proto je entropie konzervativní odhad: v praxi může být útok těžší (pokud útočník neví jaký slovník používáte), ale nikdy ne snazší.
Praktické doporučení: Pro passphrase používejte slova bez diakritiky a speciálních znaků. Bezpečnost zajišťuje náhodnost a počet slov, ne složitost znaků. Heslo bez háčků a čárek snadno zadáte i na dálkovém ovladači k TV, herním ovladači nebo zahraniční klávesnici.
Mohu generovat znovu, dokud se mi heslo nebude líbit? Záleží na důvodu. Pár regenerací (2–3×) bezpečnost významně nesníží – ztratíte maximálně ~10 bitů entropie, což je u 6 slov stále bezpečné. Problém nastává, když hledáte slova, která „dávají smysl" dohromady nebo tvoří příběh – smysluplných frází je zlomek všech kombinací a útočník může mít stejnou preferenci. Ideální je vygenerovat jednou a použít.
Je bezpečné generovat heslo v prohlížeči, nebo raději házet kostkou? Pro většinu lidí je JavaScript generátor dostatečně bezpečný. Používá crypto.getRandomValues() – kryptograficky bezpečný generátor čerpající entropii z operačního systému. Stejný mechanismus používají i správci hesel. Teoretické risiko (kompromitovaný prohlížeč, škodlivé rozšíření) existuje, ale pokud je váš počítač takto napaden, keylogger zachytí heslo při zadávání tak jako tak. Fyzická kostka (Diceware) poskytuje „pravou" náhodnost bez softwaru – má smysl pro hlavní heslo do správce hesel nebo pokud se obáváte cílených útoků.
Nepoužívejte AI pro generování hesel. ChatGPT, Claude ani jiné LLM nejsou vhodné pro vytváření hesel nebo PINů:
- AI negeneruje kryptograficky náhodný výstup – používá naučené vzory, takže tíhne k určitým „náhodně vypadajícím" sekvencím
- Konversace se ukládají na serverech poskytovatele – vaše heslo může skončit v logu
- Heslo putuje po síti k třetí straně
Pro generování hesel používejte správce hesel, generátor v prohlížeči (crypto.getRandomValues), nebo fyzickou kostku.
Dvoufaktorové ověření (2FA)
I silné heslo může být kompromitováno (phishing, únik databáze). Proto je důležité používat dvoufaktorové ověření:
- TOTP aplikace – Google Authenticator, Authy, Microsoft Authenticator
- Hardwarové klíče – YubiKey, Google Titan
- SMS – nejslabší varianta, ale lepší než nic
PIN kód
PIN je specifický případ hesla s velmi nízkou entropií:
- 4 číslice = 10 000 kombinací (~13 bitů)
- 6 číslic = 1 000 000 kombinací (~20 bitů)
Bezpečnost PINu nezávisí na entropii, ale na rate limitingu – telefon nebo karta se zablokuje po 3–10 neúspěšných pokusech. Bez tohoto omezení by 4místný PIN padl za zlomek sekundy.
Doporučení pro PIN
- Používejte 6 číslic místo 4, pokud to zařízení umožňuje
- Náhodný výběr – ne datum narození, rok, PSČ, číslo telefonu
- Vyhněte se vzorům – opakování (1111, 7777), sekvence (1234, 4321), prostřední sloupec (2580)
- Unikátní PIN pro každé zařízení – jiný pro telefon, kartu, alarm
Studie ukázaly, že ~10 % lidí používá jeden z 20 nejčastějších PINů. Útočník s pouhými 3 pokusy má tak ~1,5% šanci uhodnout správný PIN.
Nejčastější PINy (nepoužívejte): 1234, 0000, 1111, 1212, 7777, 1004, 2000, 4321, 2222, 2001
Úniky hesel a proč nepoužívat stejné heslo
Největší bezpečnostní risiko není slabé heslo, ale používání stejného hesla na více službách. Úniky databází jsou běžné – každý rok uniknou miliardy přihlašovacích údajů. Na webu Have I Been Pwned si můžete ověřit, zda vaše e-mailová adresa figuruje v některém známém úniku.
Problém je, že mnoho služeb neukládá hesla bezpečně:
- Žádné hashování – hesla uložena v čitelné podobě (ano, stále se to děje)
- Slabé hashování – MD5 nebo SHA1 bez soli, lze prolomit slovníkovým útokem během sekund
- Rychlé hashovací funkce – i SHA-256 je příliš rychlý; moderní GPU zvládne miliardy pokusů za sekundu
Bezpečné služby používají pomalé hashovací funkce jako bcrypt, scrypt nebo Argon2, které záměrně zpomalují ověření hesla. I při úniku databáze pak trvá prolomení jednoho hesla hodiny až roky místo milisekund.
Když útočník získá vaše heslo z jedné služby, zkusí ho automaticky na desítkách dalších – e-mail, sociální sítě, banky. Tomuto se říká credential stuffing a je to jeden z nejúspěšnějších typů útoků.
Řešení: Pro každou službu používejte unikátní heslo. S desítkami účtů je to bez správce hesel nemožné – proto je správce hesel nutností, ne luxusem.
Časté chyby
- Používání stejného hesla na více službách (viz výše)
- Hesla založená na osobních údajích (jméno, datum narození)
- Jednoduchá substituce (p4ssw0rd místo password)
- Příliš krátká hesla (< 8 znaků)
- Zapisování hesel na papírky u monitoru
Pro tvůrce webů a aplikací
Pokud implementujete přihlašování, nevynucujte složitá pravidla pro hesla. Požadavky typu „musí obsahovat velké písmeno, číslo a speciální znak" vedou k předvídatelným heslům (Heslo123!) a frustrují uživatele se správci hesel.
Doporučené zásady (NIST SP 800–63B)
- Minimální délka 12–16 znaků – délka je důležitější než složitost
- Maximální délka alespoň 64 znaků – neomezujte uživatele správců hesel
- Žádné požadavky na typy znaků – nevyžadujte velká písmena, čísla ani symboly
- Povolte všechny znaky – včetně mezer, emoji a Unicode
- Neblokujte vkládání hesla – rozbíjí to správce hesel
- Nevyžadujte pravidelnou změnu hesla – vede ke slabším heslům
Co implementovat
- Kontrola proti seznamu uniklých hesel – Have I Been Pwned API (k-anonymity, bezpečné)
- Blokace nejčastějších hesel – top 10 000 hesel, slovníková slova
- Rate limiting – omezení počtu pokusů o přihlášení
- Pomalé hashování – bcrypt, scrypt nebo Argon2 (nikdy MD5/SHA1/SHA256)
- Podpora passkeys/WebAuthn – budoucnost přihlašování bez hesel
Příklad špatné vs. dobré politiky
| Špatně | Dobře |
|---|---|
| 8–16 znaků, musí obsahovat A-Z, a-z, 0–9, speciální znak | Minimálně 12 znaků |
| Heslo musíte změnit každých 90 dní | Změňte heslo při podezření na únik |
| Heslo nesmí obsahovat mezery | Povoleny všechny znaky včetně mezer |
| Maximálně 20 znaků | Maximálně 4096 znaků |
Kód generátoru v JavaScriptu
Generátor na této stránce používá crypto.getRandomValues() pro kryptograficky bezpečnou náhodnost. Zde je zjednodušená verse:
function generatePassword(length, charset) {
var array = new Uint32Array(length);
crypto.getRandomValues(array);
return Array.from(array, n => charset[n % charset.length]).join('');
}
var charset = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*';
var password = generatePassword(16, charset);
Související články
Přihlašování pomocí PINu
Kdy a proč používat ve webových aplikacích přihlašování pomocí PIN kódu.
HTTP autorisace v .htaccess
Jak souborem .htaccess jednoduše omezit přístup na stránku heslem.
