Co je přístupový klíč a co to znamená pro vaši spotřebitelskou aplikaci?

Hesla jsou dlouhodobým problémem. Je notoricky známo, že mnozí z nás standardně používají předvídatelná, slabá hesla, a i když ne, zapamatování složitých hesel se stává problémem.

Znepokojivým faktem je, že ani silná hesla se složitými kombinacemi nejsou imunní vůči phishingu a podvodům. Dočasným řešením byli správci hesel, ale mají své nedostatky a zranitelnosti.

Ale horizont přináší něco slibného: Po téměř deseti letech přípravy jsou přístupové klíče nastaveny na revoluci v naší digitální bezpečnosti. Zde je základní informace o tom, co to jsou, jak jsou nastaveny tak, aby změnily prostředí digitálního ověřování, a co to bude znamenat pro vaši spotřebitelskou aplikaci.

Pochopení přístupových klíčů

Namísto tradiční kombinace uživatelské jméno-heslo poskytuje přístupový klíč bezpečnější a jednodušší způsob přihlášení do online platforem. Krása přístupových klíčů spočívá v jejich spoléhání se na kryptografii s veřejným klíčem. Aniž byste se ponořovali příliš hluboko do technických záležitostí – pokaždé, když se přihlásíte, vaše zařízení obdrží jedinečné přihlašovací údaje.

Tento proces minimalizuje riziko, že hackeři získají vaše informace. Tento průlom je výsledkem úsilí FIDO Alliance, konsorcia technologických gigantů jako Apple, Google, Microsoft a mnoho dalších, kteří uznali naléhavou potřebu bezpečnější metody ověřování.

Jak fungují přístupové klíče?

Přístupové klíče spadají pod deštník Web Authentication (WebAuthn). Tento systém využívá kryptografii s veřejným klíčem, osvědčenou metodu používanou různými platformami pro bezpečné zasílání zpráv a platby.

Zde je krátký rozpis:

  • Veřejný a soukromý klíč: Po vytvoření účtu se vygenerují dva klíče. Veřejný klíč, který je uložen na serverech služby, nemusí být důvěrný. Naproti tomu soukromý klíč zůstává ve vašem zařízení chráněn.
  • Proces autentizace: Při přihlašování služba využívá váš veřejný klíč k napadení vašeho zařízení. Soukromý klíč na vašem zařízení splňuje tuto výzvu, aniž by odhalil jakékoli citlivé detaily. To zajišťuje bezpečné ověření zabezpečené proti hackerům.
  • Pro uživatele zůstává tento proces do značné míry neviditelný. Jediné, na co narazíte, je jednoduchá výzva zařízení nebo prohlížeče k zadání PIN nebo biometrického ověření, jako je FaceID nebo TouchID.

    Přístupové klíče mají další vrstvu, která synchronizuje tyto klíče mezi cloudovými službami příslušných velkých technologií (Apple, Google, Microsoft). Tato důležitá vrstva vyplňuje mezeru v uživatelské zkušenosti a umožňuje bezproblémové přepínání mezi zařízeními bez opětovné registrace klíčů, což bylo považováno za významnou mezeru v běžném přijetí FIDO2.

    Protože přístupové klíče podle definice zahrnují více faktorů, splňují definici vícefaktorové autentizace (MFA), konkrétně splňují následující:

    • Faktor vlastnictví (něco, co máte) – Uživatel vlastní zařízení obsahující soukromý klíč
    • Faktor inherence nebo Faktor znalostí – biometrické údaje uživatele (FaceID, Touch ID, otisk prstu) nebo PIN kód zařízení

    Tyto vlastnosti dělají z Passkeys platný jediný ověřovací faktor pro scénáře přihlášení nebo doplňují další faktory ve scénářích zvýšené autentizace. Podívejte se na toto Ukázka přístupových klíčů pro implementaci v reálném světě.

    Kompatibilita zařízení

    V současné době je funkce pro přístupové klíče mezi platformami ve vývoji. Zařízení Apple iOS a macOS podporují přístupové klíče, stejně jako zařízení Android od Googlu. Také Microsoft vylepšuje svou podporu pro přístupové klíče a na obzoru se chystají významné aktualizace.

    Zde je aktuální seznam podpory zařízení.

    Co můžete udělat, abyste začali implementovat přístupové klíče?

    Implementace přístupových klíčů může být jednoduchá, za předpokladu, že máte k dispozici potřebnou infrastrukturu. Kritickým prvkem vaší architektury je back-endová služba nebo server WebAuthn, který poskytuje koncové body API back-endu pro správu celého životního cyklu správy přístupových klíčů.

    Jakmile je zřízena služba WebAuthn, je nutný přístup k sadám SDK a knihovnám na straně klienta, aby bylo možné provést obřady registrace a ověření na straně klienta. Dobrou zprávou je, že nyní existuje mnoho široce dostupných knihoven na straně klienta, které mohou tento proces zjednodušit. Například Authsignal poskytuje následující sady SDK zde:

    • Javascript SDK pro přístupové klíče
    • React Native SDK pro přístupové klíče
    • iOS SDK pro přístupové klíče
    • Android SDK pro přístupové klíče

    Je důležité poznamenat, že technická integrace je pouze jednou částí širší implementace. Uživatelská zkušenost a bezpečnostní aspekty by měly být dobře pochopeny. The úvahy o implementaci přístupového klíče jsou podrobně vysvětleny v příspěvku na blogu.

    Passkeys, budoucnost je teď.

    Nyní jsme na vzrušujícím průsečíku rychlé vyspělosti technologie Passkeys. Moderní prohlížeče a zařízení, zejména v ekosystému Apple a Android, široce podporují přístupové klíče a běžné spotřebitelské aplikace nyní uvolňují funkce přístupového klíče (např. Kayak, TikTok). A konečně, technická integrace byla jednodušší díky hotovým řešením přístupových klíčů, jako je Authsignal, která nabízí všechny součásti, jako je back-endová služba WebAuthn a klientské sady SDK.

    Pro vaši aplikaci by neměly existovat žádné zásadní výmluvy nebo překážky, aby mohla přijmout přístupové klíče jako kritickou součást vaší interakce se svými zákazníky, která jim nabízí bezproblémovou uživatelskou zkušenost, ale co je důležitější, takovou, která je vysoce bezpečná.