Heslo je nejslabší článek skoro každého přihlášení. Lidé je recyklují, nechají si je vyfishovat, uniknou z databází. O „konci hesel" se mluví roky a byla to vždycky spíš zbožná přání než realita. Passkeys jsou první náhrada, která je zároveň bezpečnější i pohodlnější — a proto to tentokrát myslí vážně. „Konec hesel" je ale pořád silné slovo. Pojďme se podívat proč.
Co passkey vlastně je
Zapomeňte na „lepší heslo". Passkey není řetězec, který se někam ukládá a dá se ukrást. Je to pár kryptografických klíčů:
- Privátní klíč je uložený v zabezpečeném úložišti zařízení (chráněném hardwarem), pod otiskem, obličejem nebo PINem. Nikdy se neposílá webu, na který se hlásíte — podepisování vždycky probíhá u vás na zařízení.
- Veřejný klíč dostane web, kam se hlásíte. Sám o sobě je k ničemu — nedá se z něj nic zpětně odvodit.
Při přihlášení web pošle náhodnou výzvu, zařízení ji po odemčení biometrikou podepíše privátním klíčem a pošle podpis zpět. Web ho ověří veřejným klíčem. Žádné sdílené tajemství, které by se dalo odposlechnout, vyfishovat nebo uniknout z databáze — protože žádné neexistuje.
Proč se nedá vyfishovat
Tohle je ten hlavní důvod. Passkey je svázaný s adresou webu. Když vás podvržená stránka požádá o přihlášení, prohlížeč pro tu adresu prostě žádný klíč nemá — a nepodepíše nic. Uživatel nemá co „omylem prozradit". U hesla stačí, aby ho člověk napsal do falešného formuláře; u passkey se to stát nemůže. To samo o sobě eliminuje většinu reálných útoků na účty.
A protože web ukládá jen veřejné klíče, není co ukrást ani při úniku databáze. Žádné hashe hesel, žádné hromadné „změňte si prosím heslo".
Zádrhel, který je udělal použitelnými: synchronizace
Původně byl passkey svázaný s jedním zařízením — a to byl problém. Ztratíte telefon, ztratíte přístup. Průlom přišel se synchronizací: Apple (iCloud Keychain), Google (Password Manager) i správci hesel jako 1Password dnes passkeys synchronizují napříč vašimi zařízeními, a to end-to-end šifrovaně — poskytovatel synchronizace se k samotnému klíči nedostane. Passkey tak přestal být „na zařízení" a je „u vás" — v šifrovaném trezoru, ke kterému se dostanete i z nového telefonu.
Existují i passkeys vázané na hardware (bezpečnostní klíče typu YubiKey), které se zásadně nesynchronizují — vyšší bezpečnost za cenu pohodlí. Pro běžný web ale bude drtivá většina lidí používat ty synchronizované.
Realita, ne prezentace: kde to drhne
Kdyby to bylo bez háčků, psal bych vám tenhle článek z budoucnosti bez hesel. Pár věcí je potřeba říct na rovinu.
Obnova účtu. Co když uživatel přijde o všechna zařízení i o přístup ke cloudovému trezoru? Tady se láme chleba. Passkeys neruší otázku „jak dostat člověka zpět do účtu" — jen ji přesouvají. Bez rozumného záložního postupu (ověřený e-mail, druhý faktor, obnovovací kód) si zaděláváte na problém.
Napříč ekosystémy. Synchronizace funguje skvěle uvnitř Applu nebo uvnitř Googlu. Mezi nimi to léta pokulhávalo a zlepšuje se to jen pomalu. Uživatel s iPhonem a Windows notebookem to pořád nemá tak hladké, jak by chtěl.
Ne všichni jsou připravení. Část lidí passkey nezná, nemá vhodné zařízení, nebo mu prostě zatím nevěří. Nemůžete jim přihlášení sebrat.
Proto se hesla nevyhazují — passkeys se přidávají jako volba vedle stávajícího přihlášení. Kdo chce, přejde; kdo ne, jede dál po svém. A vy mezitím dáváte tu bezpečnější cestu k dispozici.
Jak to nasadit (v kostce)
Technicky za tím stojí standardy WebAuthn / FIDO2, které umí každý moderní prohlížeč. V praxi:
- Registrace: prohlížeč přes
navigator.credentials.create()vygeneruje pár klíčů, uživatel potvrdí biometrikou a vy si na serveru uložíte veřejný klíč a ID přihlašovacího údaje k účtu. - Přihlášení: pošlete náhodnou výzvu,
navigator.credentials.get()ji nechá podepsat, server ověří podpis uloženým veřejným klíčem. Hotovo — bez hesla.
Nemusíte to psát od nuly; pro všechny běžné jazyky existují ověřené knihovny. Důležité je správně ošetřit obnovu, fallback a bezpečné uložení údajů — a přesně tam se pozná, jestli to někdo dělal poprvé. Detail, který potěší: passkeys umí i „conditional UI", kdy přihlašovací pole nabídne passkey rovnou v našeptávači — pro uživatele je to často jen jedno kliknutí a otisk.
Verdikt
Konec hesel? Ještě ne úplně — spíš začátek konce. Passkeys jsou první technologie, která je zároveň bezpečnější i pohodlnější než heslo, a to je vzácné; bezpečnost obvykle něco ukousne z pohodlí. Phishing, přehrávané úniky, recyklovaná hesla — to všechno passkey řeší, ne záplatuje.
Můj postoj do praxe je střízlivý: nasadit passkeys jako plnohodnotnou volbu vedle hesla, pořádně vyřešit obnovu a fallback a nechat uživatele přejít vlastním tempem. Za rok za dva to bude výchozí volba. Kdo ji nabídne dřív, dává svým lidem tu nejlepší dostupnou ochranu — a je to znát.
Chcete passkeys u svého přihlášení? Ozvěte se — od návrhu po bezpečné nasazení včetně obnovy a fallbacku.