Les identifiants numériques sont des documents numériques cryptographiquement vérifiables que vos utilisateurs peuvent utiliser pour fournir des informations sur eux-mêmes, et pour s'authentifier ou s'autoriser. Les identifiants numériques sont basés sur la norme de secteur ouverte W3C Digital Credentials API. Sur Android, cette norme est implémentée via l'API Digital Credentials du Gestionnaire d'identifiants.
Avantages des identifiants numériques
Les identifiants numériques offrent plusieurs avantages par rapport aux identifiants physiques et aux documents numériques non standardisés :
- Sécurité et confiance améliorées : les identifiants numériques sont chiffrés, ce qui garantit l'intégrité et l'authenticité des données. Cela permet de s'assurer que l'identifiant a été émis par une source vérifiable et qu'il n'a pas été altéré.
- Confidentialité renforcée : de nombreux formats d'identifiants numériques sont compatibles avec la divulgation sélective, ce qui permet aux utilisateurs de ne partager que les informations nécessaires. Par exemple, un utilisateur peut partager une preuve de qualification de conduite sans révéler sa date de naissance.
- Stockage consolidé : les utilisateurs peuvent stocker différents identifiants de différents émetteurs dans des conteneurs numériques sur leur appareil, ce qui réduit la nécessité de transporter des cartes physiques.
- Interopérabilité : en suivant des normes ouvertes, les identifiants numériques peuvent fonctionner sur différents systèmes d'exploitation, appareils et plates-formes.
Cas d'utilisation
L'API Digital Credentials peut être utilisée dans un large éventail de cas d'utilisation, tels que les suivants :
- Accepter les pièces d'identité officielles : les applications peuvent demander et utiliser les attributs des documents officiels, pour des flux incluant la vérification de l'âge, la récupération de compte et le processus de connaissance du client (KYC).
- Valider les numéros de téléphone : les applications peuvent utiliser l'API pour valider les numéros de téléphone en échangeant directement des identifiants numériques dérivés de la carte SIM du téléphone avec l'opérateur de l'utilisateur. Cela élimine le besoin de mots de passe à usage unique (OTP), améliore la sécurité et réduit les coûts de transmission. Pour en savoir plus, consultez le guide de vérification du numéro de téléphone.
- Valider les adresses e-mail : l'API permet à votre application de récupérer les e-mails validés directement depuis l'appareil de l'utilisateur, ce qui élimine le besoin d'OTP pour une inscription, une connexion et une récupération de compte sans friction. Pour en savoir plus, consultez le guide de validation de l'adresse e-mail.
- Identifiants personnalisés : l'extensibilité de l'API permet à n'importe quelle application de commencer à émettre ses propres identifiants numériques personnalisés, que les outils de validation correspondants peuvent demander.
- Confirmer les identifiants et les transactions de paiement : l'API vous permet de sécuriser les autorisations de paiement et les identifiants de paiement numériques (DPC) avec une confirmation de portefeuille native et cryptographiquement liée.
Fonctionnement des identifiants numériques
L'écosystème des identifiants numériques implique trois catégories principales d'applications :
- Émetteurs : applications qui créent et émettent des identifiants de manière sécurisée.
- Conteneurs (portefeuilles) : applications sur l'appareil d'un utilisateur qui stockent des identifiants. Elles doivent pouvoir partager ces identifiants avec les applications qui en font la demande via un processus de présentation.
- Outils de validation : applications qui valident et utilisent des identifiants numériques.
L'API Digital Credentials du Gestionnaire d'identifiants orchestre l'interaction entre les applications émettrices, conteneurs et outils de validation.
Lorsqu'un outil de validation demande un identifiant numérique, il envoie une requête au système Android via l'API. Le Gestionnaire d'identifiants affiche ensuite les identifiants numériques éligibles de différents conteneurs dans une interface utilisateur système de confiance. Une fois que l'utilisateur accepte de continuer, le Gestionnaire d'identifiants appelle le conteneur correspondant pour générer la réponse.
Expérience utilisateur
De la même manière que Credential Manager dispose d'interfaces utilisateur intégrées pour les flux d'authentification, comme avec les clés d'accès, les mots de passe et Se connecter avec Google, il existe également des interfaces standardisées pour les différents cas d'utilisation de l'API Digital Credentials.
Il existe des variantes d'interface utilisateur adaptées à des cas d'utilisation spécifiques. Lorsque vous utilisez l'API, le système Android affiche automatiquement des bottom sheets contextuels, par exemple dans les scénarios suivants :
- Validation des e-mails : l'interface affiche un sélecteur de compte avec l'adresse e-mail validée et le fournisseur d'identité.
- Vérification du numéro de téléphone : l'interface inclut une carte de validation avec les opérateurs réseau représentés.
- Plusieurs identifiants : cette vue empile plusieurs cartes et permet de regrouper les éléments associés en un seul geste.
- Identifiants de paiement numériques : cette feuille de paiement affiche les détails de la carte de paiement , les informations sur le marchand et le montant total de la transaction pour une confirmation immédiate.
Normes de secteur
Les identifiants numériques s'appuient sur des normes de secteur pour garantir la compatibilité multiplate-forme. Les normes ouvertes couramment utilisées sont les suivantes :
- Partage : les identifiants numériques sont demandés à l'aide de la norme OpenID4VP standard.
- Émission : les identifiants numériques sont émis à l'aide de la norme OpenID4VCI.
- Format de stockage des identifiants : les identifiants numériques sont représentés dans des formats standardisés gérés par différents organismes de normalisation, principalement les suivants :
Ces normes sont largement utilisées sur plusieurs plates-formes et systèmes d'exploitation, ce qui permet un fonctionnement fluide sur les navigateurs Web, les appareils mobiles et d'autres facteurs de forme. Les développeurs peuvent ainsi échanger des identifiants numériques avec d'autres applications, quelle que soit la plate-forme sur laquelle ils se trouvent.
Essayer
Vous pouvez tester le flux d'identifiants numériques multiplate-forme en installant les applications exemple de conteneur et d'outil de validation sur un appareil Android.
Pour tester le flux, procédez comme suit :
- Installez les applications exemple sur l'appareil Android : utilisez l'une des
méthodes suivantes pour installer les applications sur votre premier appareil :
- Utilisez les APK précompilés:
- Téléchargez l'application conteneur : connectez-vous à votre compte GitHub,
accédez à la page GitHub Actions de l'application conteneur,
sélectionnez la dernière compilation réussie, puis téléchargez le
app-debug.apkfichier depuis la section Artifacts (Artefacts). Cette application s'appelle CMWallet. - Téléchargez l'application outil de validation : pour l'application exemple d'outil de validation, obtenez l' APK à partir du dépôt d'exemples d'identité. Installez ensuite l'APK sur votre appareil Android. Cette application s'appelle Digital Credentials Demo.
- Téléchargez l'application conteneur : connectez-vous à votre compte GitHub,
accédez à la page GitHub Actions de l'application conteneur,
sélectionnez la dernière compilation réussie, puis téléchargez le
- Compilez à partir de la source : clonez les dépôts mentionnés et installez l' application à l'aide d'Android Studio.
- Utilisez les APK précompilés:
- Ouvrez l'application exemple de conteneur : ouvrez l'application exemple de conteneur. Cela enregistre les identifiants du conteneur auprès du Gestionnaire d'identifiants.
- Ouvrez l'application exemple d'outil de validation : ouvrez l'application exemple d'outil de validation. Sélectionnez ensuite l'option permettant de demander des identifiants numériques à partir de portefeuilles. Un bottom sheet affichant les identifiants disponibles de CMWallet devrait s'afficher.
- Sélectionnez un identifiant : sélectionnez un identifiant à renvoyer à l'application outil de validation. L'application outil de validation devrait maintenant afficher les champs de l'identifiant renvoyé.
Ressources
- Pour en savoir plus sur l'émission d'identifiants numériques, consultez le guide de l'émetteur.
- Pour en savoir plus sur les applications conteneurs, consultez le guide du conteneur.
- Pour en savoir plus sur la validation des utilisateurs en fonction d'identifiants numériques, consultez le guide de l'outil de validation.
- Pour en savoir plus sur les identifiants numériques sur le Web, consultez Identifiants numériques sur le Web.