Vai al contenuto principale

WUA spiegata: come un wallet dimostra la propria autenticità a un emittente

Prima che un'organizzazione inserisca una credenziale nell'EUDI Wallet di qualcuno, vuole sapere che il wallet è autentico e che ciò che conserva non può essere copiato all'esterno. Una Wallet Unit Attestation è il modo in cui il wallet lo dimostra. Non è un documento ma due, entrambi firmati dal provider del wallet: uno sull'app, uno sull'archiviazione sicura sul dispositivo.

Il problema che una WUA risolve

Un'organizzazione che sta per emettere una credenziale di identità o di registrazione d'impresa non ha modo, da sola, di distinguere un wallet certificato da un'app modificata o da uno script che finge di esserlo. Non può nemmeno vedere se la credenziale che sta per consegnare sarà legata a quel dispositivo o finirà in un posto da cui può semplicemente essere copiata.

La WUA colma entrambe le lacune facendo rispondere qualcun altro. Il provider del wallet garantisce per l'app e per l'archiviazione sicura, ed è vigilato ed elencato a livello europeo per farlo. L'emittente controlla entrambe le dichiarazioni prima di emettere, e continua a controllarle dopo, così può ritirare ciò che ha emesso se il wallet si rivela in seguito compromesso.

Una WUA si usa soltanto mentre si ritira una credenziale. A un wallet non è consentito mostrarne una a un'azienda che accetta una credenziale, il che tiene i dettagli sul telefono e sul wallet del titolare fuori dalle transazioni quotidiane.

Gli attori e chi si fida di chi

Sono coinvolte cinque parti, e solo quattro di esse trattano mai una WUA. L'archiviazione sicura sul dispositivo custodisce il segreto, il Wallet Provider garantisce per l'app e per quell'archiviazione, e l'emittente si affida a questo invece di valutare ogni wallet per conto proprio.

Fornitore di wallet

Garantisce per l'app e per l'archiviazione sicura che le sta dietro, e tiene aggiornate entrambe le dichiarazioni

Unità di wallet

Mostra entrambe le dichiarazioni all'emittente quando ritira una credenziale, e usa ogni volta una coppia nuova

Archiviazione sicura sul dispositivo

Custodisce il segreto che lega una credenziale a questo singolo wallet, e non lo lascia mai uscire

PID Provider o Attestation Provider

Controlla entrambe le dichiarazioni prima di emettere e continua a controllarle dopo, così può ritirare ciò che ha emesso

Relying party

Non riceve mai una WUA. Controlla la credenziale stessa e se è ancora valida

Gli emittenti possono fidarsi di una WUA perché il Wallet Provider che l'ha firmata compare sulla Trusted List ufficiale dell'UE per i Wallet Provider, e perché il prodotto wallet stesso è stato certificato da un organismo di valutazione indipendente.

Due dichiarazioni sotto un solo nome

La specifica europea divide l'attestazione in due perché l'app e l'archiviazione sicura sono cose diverse. Sono controllate da soggetti diversi e vengono ritirate per motivi diversi: una quando si perde un telefono, l'altra quando un'intera classe di dispositivi si rivela debole.

Wallet Instance Attestation (WIA)

Garantisce per
L'app wallet stessa: una copia autentica e non modificata di un prodotto certificato
Durata
Meno di 24 ore
Può essere ritirata quando
Questa installazione viene segnalata come persa, rubata o manomessa
Necessaria per
Ogni credenziale che il wallet ritira

Key Attestation (KA)

Garantisce per
L'archiviazione sicura sul dispositivo e quanto bene resiste agli attacchi
Durata
Stabilita dal Wallet Provider, e può essere più lunga di una WIA
Può essere ritirata quando
Viene scoperta una debolezza in quel tipo di archiviazione sicura
Necessaria per
Credenziali legate al dispositivo, il che include ogni PID

Entrambe sono firmate dal Wallet Provider ed entrambe si usano una volta sola e poi si scartano. È voluto: significa che due emittenti non possono confrontare le note e capire che hanno a che fare con lo stesso wallet.

Come un wallet ottiene queste dichiarazioni

Questo avviene all'interno di un singolo prodotto wallet, quindi ogni provider lo fa a modo suo. Ciò che le regole richiedono è fisso: il provider deve accertarsi che l'app non sia stata manomessa e che il segreto sia davvero nell'archiviazione sicura che indica. La maggior parte dei provider usa a questo scopo i controlli di integrità che Google e Apple già offrono.

1. Unità di wallet

Chiede all'archiviazione sicura sul dispositivo un nuovo segreto

richiesta

2. Archiviazione sicura sul dispositivo

Lo crea e restituisce la prova dal dispositivo che è stato creato lì

prova dal dispositivo

3. Fornitore di wallet

Controlla che l'app sia autentica e che la prova sia valida, poi firma entrambe le dichiarazioni

dichiarazioni firmate

4. Unità di wallet

Tiene una piccola scorta di dichiarazioni nuove e ne usa una diversa per ogni credenziale che ritira

Il ciclo di vita di una WUA

Queste dichiarazioni sono di breve durata e monouso, di proposito. La possibilità di ritirarle, però, sopravvive loro a lungo. Le prime tre fasi qui sotto sono ordinarie; la quarta si verifica solo quando qualcosa va storto.

1. Controllata

Il Wallet Provider firma le due dichiarazioni solo dopo aver controllato l'app e l'archiviazione sicura

2. Usata una volta

Ogni dichiarazione serve al ritiro di una singola credenziale, quindi il wallet ne recupera continuamente di nuove

3. Ricontrollata

Un PID Provider ricontrolla almeno una volta al giorno e ritira il PID se una delle due dichiarazioni è stata ritirata

4. Ritirata

Solo quando qualcosa va storto: un telefono perso o rubato, o una debolezza scoperta in un tipo di archiviazione sicura

Fuori dall'ecosistema EUDI Wallet, alcuni fornitori di wallet emettono dichiarazioni simili che semplicemente scadono e non possono mai essere ritirate. Le regole europee non lo consentono. Anche se la dichiarazione sull'app dura meno di un giorno, entrambe le dichiarazioni devono restare ritirabili per almeno altri 31 giorni, perché è questo che permette a un emittente di richiamare una credenziale molto tempo dopo averla emessa.

WUA, WIA e KA: cosa significa ciascun termine

La terminologia è cambiata mentre le specifiche maturavano, quindi gli articoli più vecchi usano queste tre sigle in modo diverso da come si usano oggi. Questo è il significato attuale.

WUA

Il termine generale per le altre due dichiarazioni, mostrate solo agli emittenti

WIA

La dichiarazione sull'app wallet stessa

KA

La dichiarazione sull'archiviazione sicura sul dispositivo

Che cosa significa per te

Emittente

Puoi emettere verso wallet che non hai mai valutato, perché un provider vigilato risponde per ciascuno di essi e puoi ritirare ciò che hai emesso se la situazione cambia.

Verificatore

Nulla di più da fare. Il lavoro avviene prima che la credenziale arrivi a te, e un wallet compromesso perde le sue credenziali invece di essere segnalato al tuo sportello.

Titolare del wallet

Perdere il telefono non consegna le tue credenziali, e nulla del tuo wallet viene comunicato alle aziende a cui mostri le credenziali.

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

Una WUA è la stessa cosa di una Wallet Instance Attestation?

No. Dalla versione 1.5 di TS3, WUA è il termine generale per due dichiarazioni: la Wallet Instance Attestation (WIA), relativa all'app, e la Key Attestation (KA), relativa all'archiviazione sicura sul dispositivo. Gli articoli più vecchi usano WUA per ciò che oggi si chiama Key Attestation, ed è per questo che i termini vengono spesso confusi.

Un verificatore vede mai la WUA?

No, e non gli è permesso chiederne una. Un wallet può mostrare queste dichiarazioni a un emittente mentre ritira una credenziale, mai a un'azienda che ne accetta una. Il verificatore controlla invece la credenziale: chi l'ha firmata, se appartiene a questo wallet e se è ancora valida. Se un wallet è compromesso, l'emittente ritira le credenziali che vi aveva emesso, e il verificatore lo vede attraverso la credenziale stessa.

Per quanto tempo è valida una WUA?

La dichiarazione sull'app dura meno di 24 ore; quella sull'archiviazione sicura può durare di più. A parte questo, il Wallet Provider si impegna a continuare a segnalare se ciascuna è stata ritirata per almeno altri 31 giorni, perché gli emittenti vi fanno affidamento molto dopo la scadenza della dichiarazione stessa.

Che cosa succede se un wallet viene perso o compromesso?

Il Wallet Provider segna quell'installazione come ritirata oppure, quando un intero tipo di archiviazione sicura si rivela debole, segna quello. Gli emittenti ricontrollano almeno una volta al giorno e ritirano le credenziali che vi avevano emesso. Ciò che protegge il titolare è quel ritiro, non la scadenza della dichiarazione.

Questo permette al Wallet Provider di vedere che cosa faccio con il mio wallet?

No. Le dichiarazioni dicono che tipo di wallet è questo, non a chi appartiene, e per ogni credenziale ritirata ne viene usata una nuova, quindi un emittente non può riconoscere da esse un wallet che torna. Il Wallet Provider le firma in anticipo e non è coinvolto nello scambio fra il wallet e l'emittente.

Fonti

  1. TS3: Wallet Unit Attestations used in issuance of PID and Attestations
  2. EUDI Wallet Architecture and Reference Framework
  3. OpenID for Verifiable Credential Issuance 1.0
  4. OpenID4VC High Assurance Interoperability Profile 1.0
  5. Token Status List

Questa pagina ha scopo informativo e non costituisce una consulenza legale. Per indicazioni autorevoli consultare direttamente la Commissione Europea e la OpenID Foundation.

Parlaci dell'integrazione con l'EUDI Wallet