Hoppa till huvudinnehåll

Digital Credentials API

Digital Credentials API är W3C:s webbläsar-API som låter en webbplats begära ett intyg från en plånbok på samma enhet. Begäran lämnas över till operativsystemet i stället för att förlita sig på en QR-kod eller en egen deep link.

En webbplats anropar navigator.credentials.get() med en begäran om ett digitalt intyg som anger ett presentationsprotokoll och bär protokollets egen begäran som nyttolast. Webbläsaren skickar begäran vidare till operativsystemet, som visar en inbyggd väljare med plånböckerna som är installerade på enheten, och den plånbok som innehavaren väljer returnerar sitt protokollsvar via samma anrop. API:t bär bara utbytet: vad som efterfrågas, vad som lämnas ut och hur svaret verifieras definieras fortfarande av protokollet inuti det. Ett motsvarande navigator.credentials.create()-anrop gör samma sak för utfärdande, så att en webbplats kan lämna ett Credential Offer till en plånbok på samma sätt.

Innan detta fanns innebar en presentation på den enhet innehavaren redan använde antingen en QR-kod som telefonen som visade den inte kunde skanna, eller en deep link som fick gissa vilken plånbok som var installerad. När begäran går via operativsystemet försvinner båda problemen: innehavaren får en enda inbyggd väljare som täcker alla plånböcker på enheten, och webbplatsen behöver aldrig själv upptäcka eller namnge en plånbok. Webbläsaren lägger också till den anropande webbplatsens ursprung (origin) i begäran, så att plånboken kan visa innehavaren vilken webbplats som frågar och avvisa en begäran som kopierats från någon annanstans. Det är detta som gör flödet motståndskraftigt mot nätfiske och reläattacker.

API:t är avsiktligt protokollneutralt, och två bindningar är viktiga i EUDI Wallet-ekosystemet: OpenID4VP definierar en egen profil för API:t, och ISO/IEC 18013-7 Annex C binder samma mdoc-utbyte till det. EUDI ARF tar upp det som sättet att förbättra distanspresentation, förutsatt att webbläsaren anger den förlitande partens ursprung så att en Wallet Unit kan avgöra vem som frågar, och förutsatt att ett flöde mellan två enheter behåller en närhetskontroll mellan dem. Därmed förblir device retrieval enligt ISO/IEC 18013-5 kanalen för fysiska möten, inte något som webbläsar-API:t ersätter.

Stödet är inte längre experimentellt. API:t är aktiverat som standard i Chrome på Android och på dator, och i Safari i nyare Apple-versioner, medan Firefox inte har aktiverat det. Webbläsarna skiljer sig fortfarande åt i vilka protokoll och intygsformat de accepterar, och stöd på dator fungerar oftast genom att parkoppla med en telefon som har plånboken, inte genom att lagra intyg i webbläsaren. Se det som en förbättring för de webbläsare och enheter som har det, och behåll QR-kods- eller omdirigeringsflödet för dem som saknar det.

Läs hela förklaringen

Den här sidan ger den korta definitionen. Vår förklaring visar vad det innebär i praktiken: vilka som är inblandade, hur det fungerar och vad som förändras för er organisation.

Digital Credentials API förklarat

Ersätter Digital Credentials API OpenID4VP?

Nej. API:t är leveranskanalen: det för en begäran från en webbplats till en plånbok via operativsystemet och för tillbaka svaret. Vad begäran innehåller och hur svaret verifieras definieras fortfarande av ett protokoll, OpenID4VP för en presentationsbegäran eller ISO/IEC 18013-7 Annex C för ett mdoc-utbyte. En förlitande part som redan talar OpenID4VP behåller samma begäran och samma verifiering, och får ett bättre sätt att leverera den på den enhet innehavaren redan använder.

Tillbaka till ordlistan