WebAuthn och Passkey 101
Få en omfattande förståelse för WebAuthn, inklusive dess koncept, arbetsflöde, orsaker till dess popularitet och associerade utmaningar.
WebAuthn rankas bland de mest säkra autentiseringsmetoder i NIST AAL-standarder. Infört 2013, är det nu det föredragna valet för företag vid autentisering. Dess adoption är dock inte utbredd ännu, vilket leder till många frågor om WebAuthn och Passkeys. Låt oss dyka in i vad du behöver veta.
Koncept: Vad är relationen mellan WebAuthn, Passkey och FIDO?
FIDO Alliance | FIDO Alliance är en organisation som tillhandahåller öppen källkod och säkra lösenordsfria autentiseringsstandarder, inklusive UAF, U2F och FIDO2. |
FIDO2 | FIDO2 är en uppsättning standarder för säker online-autentisering utvecklat av FIDO Alliance. FIDO2 består av två huvudsakliga komponenter: WebAuthn för lösenordsfria inloggningar och CTAP för säker enhetskommunikation. |
Passkey | En passkey är en FIDO-baserad, phishing-resistent autentiseringsuppgift för att ersätta lösenord.
|
WebAuthn | WebAuthn, en JavaScript-API utvecklad av W3C och FIDO Alliance, möjliggör webbapplikationers autentisering med FIDO2-standarderna. Passkey är en av de autentiseringsmetoder som stöds av WebAuthn. |
Flöde: Hur fungerar WebAuthn?
4 huvudsakliga enheter i WebAuthn
I grund och botten kan du känna till de 4 huvudsakliga enheterna inblandade i WebAuthn-flödet.
-
Användare: Personen som registrerar sig eller autentiserar sig mot webbapplikationen med WebAuthn.
-
Användaragent: Webbläsaren som hanterar WebAuthn-API-anropen och administrerar autentiseringsprocessen mellan alla olika beroende parter och autentisatorer.
-
Beroende part: Din webbtjänst eller applikation som användaren försöker komma åt. Användaren interagerar med Beroendepart genom Användaragenten.
-
Autentisator: Hårdvarukomponenten som användaren innehar för att verifiera användarens identitet. Den kan ta olika former baserat på plattform eller webbläsarens kapacitet, såsom säkerhetsnycklar (som Yubikeys), telefoner eller surfplattor (anslutna via Bluetooth, NFC eller USB), enhetsbaserad biometrik eller PIN-koder, etc.
Arbetsflöden för WebAuthn
Asymmetrisk kryptografi med offentlig nyckel är kärnprocessen.
- Nyckelpargeneration: Användaragenten genererar ett publikt-privat nyckelpar. Den offentliga nyckeln delas med Beroendepart , medan den privata nyckeln lagras säkert i användarens Autentisator.
- Autentiseringsutmaning: När användaren försöker logga in skickar Beroende part en autentiseringsutmaning till Användaragenten.
- Användarverifiering: Användaragenten skickar utmaningen till Autentisatorn, som interagerar med användaren för verifiering (t.ex. biometrisk data eller ett knapptryck).
- Kryptografisk underskrift: Autentisatorn använder sin privata nyckel för att signera utmaningen och skapar en kryptografisk underskrift.
- Verifiering och åtkomst: Användaragenten verifierar underskriften med den offentliga nyckeln och informerar Beroende part om en lyckad autentisering. Åtkomst beviljas.
För att förtydliga, dela upp det i registrerings- och autentiseringsfaser.
WebAuthn registreringsflöde:
WebAuthn autentiseringsflöde:
Fördelar: Varför blir WebAuthn en trend?
Flera autentisatorer
Du har möjligheten att välja mellan flera autentisatorer för ökad flexibilitet. Dessa autentisatorer kommer i två typer, för både lokalt och molnanvändande, och du kan aktivera en eller båda för din tjänst.
Plattformautentisator (Intern autentisator)
Plattformautentisatorn är bunden till ett enstaka och specifikt enhet-operativsystem, som en dator, laptop, telefon eller surfplatta, som användaren loggar in med. Den fungerar enbart på enheten för att auktorisera med metoder som biometrik eller enhetens lösenord. Det är ett snabbt sätt att autentisera, särskilt med biometrik, och kan ersätta behovet av manuell lösenordsinmatning. Men om användaren förlorar enheten, kan det bli ett hinder för åtkomst. Till exempel:
- MacOS och iOS: iCloud-Keychain verifierad med Touch ID, Face ID eller enhetens lösenord.
- Windows: Windows Hello verifierad med ansiktsigenkänning, fingeravtryck eller vänlig PIN-kod.
- Android: Google Password Manager stöder även ansiktsigenkänning eller fingeravtryck för att autopåfyllning av lösenord för att auktorisera enheter.
Romsktrande autentisator (Extern autentisator, Cross-plattform autentisator)
Den romskjutande autentisatorn är en separat, bärbar enhet eller mjukvaruapplikation, såsom en hårdvaru-säkerhetsnyckel eller en smartphone. Den bör länka enheten med USB eller hålla NFC eller Bluetooth på. Den romskjutande autentisatorn är inte begränsad till en enhet eller webbläsare, vilket ger större flexibilitet. Till exempel:
- Säkerhetsnycklar: kallas också Hårdvaru-token, som Yubikey.
- Mobil smartphone: exempelvis använda ett molnbaserat Google-konto på Android eller ett iCloud-konto på iPhone. Viktigt, korsenhetsautentisering kräver också anslutning med Bluetooth, NFC eller USB för att säkerställa att användarens autentisator är i närheten. Mobila autentisatorer kräver ofta QR-kodsskanning för att länka dem med stationära enheter. (Android-telefoner, i synnerhet, kan använda Persistent Linking för sömlös länkning med Chrome-webbläsaren för en-klicks auktorisering utan behovet av QR-kodsskanning.)
Hög säkerhetssäkerhet
Hög säkerhetssäkerhet är viktigt för att skydda affärsresurser. Detta uppnås genom följande åtgärder:
- Skydd av privata nycklar: Privata nycklar delas aldrig med tredjepartswebbplatser (Beroendepart), vilket hjälper till att skydda mot lösenordsbrott och phishingförsök.
- Enhetsnärhetskrav: Enheter kräver antingen "Plattform autentisering för en enhet" eller "Romskjutande autentisator begränsad av USB, Bluetooth eller NFC" för att vara i närheten av användaren, förhindra fjärrangrepp.
- Domänbindning: WebAuthn är tätt bundet till den specifika domänen på den användarregistrerade webbplatsen, vilket ger skydd mot phishing-attacker från obehöriga webbplatser.
Friktionsfri användarupplevelse för MFA&1FA
WebAuthn förbättrar säkerheten samtidigt som det höjer användarens lösenordsfria verifieringsupplevelse:
- Naturlig upplevelse och effektivitet med biometrik: WebAuthn använder specifika autentiseringsmetoder skräddarsydda för olika plattformar och enheter, anpassade till användarvanor. Biometrisk autentisering eliminerar behovet av manuell inmatning, vilket avsevärt påskyndar verifieringsprocessen.
- Direkt MFA som hoppar över 1FA: WebAuthn används ofta för MFA (Multi-Factor Authentication). På grund av dess robusta säkerhet, om beroendeparten tidigare har registrerat användningen av WebAuthn i webbläsaren, kan användare hoppa över 1FA (Single-Factor Authentication) steget och logga in direkt genom passkey-verifiering.
- Passkey som ersätter lösenord: Passkeys kan också fungera som ett alternativ till traditionella lösenord för 1FA. Användare kan tillhandahålla sina passkeys antingen före eller efter att ha angett sitt konto, med lösenordsverifiering som endast krävs när passkey-autentisering är otillgänglig.
Utmaning: Varför är WebAuthn inte allmänt adopterad av användare?
Begränsningar av webbläsare eller plattform
Vissa webbläsare eller plattformar stöder inte alls WebAuthn eller saknar stöd för romskjutande autentisatorer. Medan nuvarande statistik från Caniuse visar bra stöd, med 97,37% stationär och 96,3% mobil plattformstäckning, så finns det variationer mellan olika webbläsarversioner och operativsystem. Exempelvis saknar Desktop Linux stöd för plattformautentisatorer, Android stöder endast fullt WebAuthn på Chrome, och Internet Explorer på MacOS stöder inte WebAuthn. Detta tvingar administratörer att uppmana medlemmar att upprätthålla specifika webbläsar- eller OS-val, eller konfigurera andra alternativa MFA-metoder.
Enhetsförlust risk
Särskilt för användare som förlitar sig på "Denna enhet" plattformautentisatorer, kan förlust av enheten leda till förlust av tillgång till deras konton. Kontotåterställning kan vara en besvärlig process. För att minimera denna risk är det lämpligt för användare att samtidigt binda andra reservautentiseringsmetoder när de ställer in WebAuthn.
Begränsat stöd från webbplatser och appar
Många tjänster och applikationer erbjuder ännu inte stöd för passkeys. Användare saknar ofta bekantskap med olika autentiseringsmetoder och kanske inte fullt ut förstår skillnaderna och begränsningarna mellan Plattformautentisatorer och Romskjutande autentisatorer. Dock ökar stora system, webbläsare och SaaS-tjänster alltmer WebAuthn, vilket gör det till en växande trend som både företag och användare börjar omfamna.
Slutsats
Logto förbereder sig för att lansera MFA (Multi-Factor Authentication) i november. Den första fasen kommer att stödja tre verifieringsmetoder: Authenticator app TOTP, WebAuthn(Passkey) och Backupkoder, vilket erbjuder en omfattande lösning för inloggning och registrering. Vi kommer fortsätta att utveckla avancerade funktioner relaterade till WebAuthn. Vi ser fram emot att få din erfarenhet och inbjuder dig att följa oss på Product Hunt för den kommande MFA-lanseringen.