Vai al contenuto principale

La Digital Credentials API spiegata

La Digital Credentials API è l'accordo che permette a un sito web di chiedere una credenziale direttamente al tuo wallet, tramite il browser e il sistema operativo del dispositivo che hai già in mano. Sul telefono che contiene il tuo wallet non compare alcun codice QR e non vieni mandato in un'altra app per poi tornare indietro. Toccando una sola volta, il telefono ti mostra chi sta chiedendo e sei tu a decidere. Su un laptop, invece, il browser mostra un proprio codice QR per raggiungere il tuo telefono.

La deviazione che elimina

Finora un sito web che voleva qualcosa da un wallet doveva in qualche modo far arrivare la richiesta a quel wallet. In pratica significava mettere un codice QR sulla pagina, oppure aprire un link che passa il visitatore a un'app e, si spera, lo riporta indietro. Entrambi funzionano, ed entrambi perdono persone a ogni passaggio.

Il problema è peggiore sul telefono, dove il codice QR si trova sullo stesso schermo della fotocamera che dovrebbe scansionarlo. La Digital Credentials API colma questa lacuna facendo della richiesta qualcosa che il browser e il sistema operativo possono trasportare da soli, perché sanno già quali wallet sono presenti sul dispositivo.

Stesso dispositivo

Il visitatore usa lo stesso telefono su cui si trova il wallet. È qui che la Digital Credentials API elimina del tutto il codice QR e il passaggio da un'app all'altra.

Su due dispositivi

Il visitatore è su un laptop e il wallet è su un telefono, quindi serve ancora qualcosa che li colleghi. La differenza è che ora è il browser stesso a mostrare e gestire quel codice.

Come funziona in pratica

Per il visitatore è un solo tocco sulla pagina in cui si trovava già. Dietro le quinte, il browser passa la richiesta al sistema operativo, il sistema operativo trova i wallet in grado di rispondere e il wallet mostra la richiesta per l'approvazione prima che venga condiviso qualsiasi dato.

1. Sito web

Chiede una credenziale al browser invece di mostrare un codice QR o aprire un'app

2. Browser e sistema operativo

Individua i wallet sul dispositivo che contengono qualcosa di corrispondente e propone solo quelli

3. Titolare

Vede chi sta chiedendo e che cosa, sceglie un wallet e approva o rifiuta

4. Di nuovo il sito web

Riceve la risposta approvata sulla stessa pagina, che il visitatore non ha mai lasciato

Un tocco, una pagina. Al sito web non arriva nulla finché il titolare non lo approva.

Perché conta il coinvolgimento del browser

Un codice QR è un pezzo di carta o un'immagine su uno schermo, e non può dirti chi l'ha messo lì. È tutta la base del phishing tramite QR: un malintenzionato sostituisce il codice, il wallet si apre e la richiesta sembra del tutto normale, perché nulla nel flusso sa da dove provenga davvero.

Quando la richiesta passa attraverso il browser, è il browser a comunicare al wallet quale sito web sta chiedendo, e non può essere indotto a mentire. Il wallet può mostrare al titolare il sito reale e la risposta può essere legata a quel sito, così una copia intercettata altrove non serve a nessuno. È una riduzione concreta dell'esposizione alle frodi, non solo una schermata più fluida.

Come si inserisce con OpenID4VP e l'EUDI Wallet

È facile leggerla come l'ennesimo standard tra cui scegliere. Non lo è. OpenID4VP resta il linguaggio con cui una parte affidataria dice che cosa le serve e legge la risposta che riceve, e la Digital Credentials API è semplicemente una strada migliore su cui far viaggiare quella conversazione, soprattutto quando tutto avviene su un solo dispositivo.

Lo stesso vale per la credenziale. Un attestato dell'EUDI Wallet o un mdoc arriva esattamente nello stesso formato in cui sarebbe arrivato tramite un codice scansionato, quindi i controlli che un verificatore già esegue non cambiano. Un team ottiene la possibilità di saltare la deviazione, senza ricostruire nulla di ciò che c'è dietro.

Il supporto arriva un browser e una piattaforma alla volta, non ovunque contemporaneamente, ed è per questo che le parti affidatarie lo adottano accanto al percorso con scansione e non al suo posto. L'approccio pratico è usare l'API dove il dispositivo la offre, ripiegare su un codice dove non c'è e lasciare che il ripiego scompaia man mano che la copertura cresce.

Che cosa significa per te

Parte affidataria

Meno persone abbandonano il flusso, perché i passaggi in cui prima si perdevano non ci sono più, e il browser comunica al wallet chi sei davvero, eliminando una via per il phishing.

Titolare del wallet

Un solo tocco sulla pagina in cui ti trovi già, il nome reale di chi sta chiedendo e nessun modo per un sito di sapere quali wallet hai, a meno che tu non dica di sì.

Fornitore di wallet

Il tuo wallet viene proposto dal sistema operativo ogni volta che contiene qualcosa di adatto, quindi farsi trovare non dipende più dalla scelta di una parte affidataria di inserire un link verso di te.

Approfondimento tecnico

Questa pagina spiega che cosa fa la tecnologia e chi riguarda. La nostra documentazione per sviluppatori copre l'implementazione vera e propria: i messaggi, i campi e gli esempi concreti di cui ha bisogno un team di integrazione.

Leggi la documentazione tecnica

Termini correlati

Domande frequenti

Significa la fine dei codici QR?

No, ne restringe l'uso e cambia chi li genera. Per portare una richiesta da un laptop a un telefono serve ancora un ponte tra i due dispositivi, e l'API copre anche questo caso: è il browser a mostrare il codice, invece di ogni sito web che costruisce il proprio. Scompare del tutto il codice sul telefono che contiene già il wallet, dove non è mai stato altro che un ripiego.

Il sito web può vedere quali wallet ho installato?

No. Il sito web descrive che cosa sta chiedendo, e il confronto lo fa il sistema operativo sul dispositivo. Il sito non viene mai informato di quali wallet sono installati né di quali contenevano una corrispondenza. Se rifiuti, sa soltanto che non è arrivato nulla, esattamente come se non avessi alcuna credenziale corrispondente.

Sostituisce OpenID4VP?

No, i due lavorano insieme. OpenID4VP è il linguaggio in cui sono scritte la richiesta e la risposta, e qui non cambia. La Digital Credentials API è il canale di consegna sul dispositivo, al posto di un codice QR o di un link personalizzato. Una parte affidataria che usa già OpenID4VP mantiene la propria logica di richiesta e di verifica.

Che cosa deve realizzare concretamente una parte affidataria?

Meno di quanto la maggior parte dei team si aspetti, perché cambia soltanto il front end. La richiesta prodotta dal backend e i controlli eseguiti sulla risposta restano gli stessi. Si aggiunge la chiamata al browser e, finché il supporto non sarà diffuso, un ripiego sul codice QR per i visitatori il cui browser o dispositivo non può ancora usare l'API.

Fonti

  1. W3C Digital Credentials API
  2. OpenID for Verifiable Presentations (OpenID4VP)

Questa pagina ha scopo informativo e non costituisce consulenza legale. La Digital Credentials API è ancora in evoluzione, quindi per la formulazione ufficiale consulta direttamente la specifica del W3C.

Parlaci della tua integrazione con l'EUDI Wallet