Confirmation de paiement sécurisé (SPC, Secure Payment Confirmation) est une norme Web proposée qui permet aux clients de s'authentifier auprès d'un émetteur de carte de crédit, d'une banque ou d'un autre fournisseur de services de paiement à l'aide d'un authentificateur de plate-forme:
- Fonctionnalité Déverrouiller avec Touch ID sur un appareil macOS
- Windows Hello sur un appareil Windows
Grâce à la SPC, les marchands peuvent permettre aux clients d'authentifier leurs achats rapidement et facilement, tandis que les banques émettrices protègent leurs clients contre la fraude.
La SPC comporte deux étapes : l'enregistrement et l'authentification.
- Inscription: le payeur associe son appareil à un tiers de confiance. La partie qui s'appuie sur le service peut être un émetteur de carte de crédit, une banque ou un autre fournisseur de services de paiement.
- Authentification : le payeur utilise l'appareil enregistré pour confirmer son identité auprès du RP directement depuis la plate-forme du marchand avant de confirmer les paiements.
Authentification pour la prévention des fraudes
L'authentification joue un rôle important dans la prévention des fraudes liées aux paiements. Toutefois, ce processus de validation repose souvent sur des mécanismes faibles, tels qu'une combinaison du numéro de carte de crédit et du nom du titulaire de la carte, ou un code CVC supplémentaire inscrit au dos de la carte. Ces mécanismes sont facilement compromis et usurpés si les informations de la carte sont divulguées en raison de violations de la sécurité des données, telles que le piratage de compte ou les attaques par hameçonnage.
Des mécanismes supplémentaires de prévention de la fraude ont été mis en place, comme EMV® 3-D Secure, qui peut demander au payeur de s'authentifier auprès de l'émetteur de la carte ou de la banque. Pour s'authentifier, l'utilisateur se connecte avec un nom d'utilisateur et un mot de passe, ou un mot de passe à usage unique (OTP) envoyé au téléphone du payeur par SMS. Cela permet de protéger les clients contre la fraude, mais peut constituer un obstacle pour certains clients légitimes qui souhaitent effectuer un paiement. L'authentification simplifiée a pour but de réduire les frictions liées à l'authentification, et donc de réduire le taux d'abandon du panier.
En attendant, une nouvelle norme d'authentification appelée WebAuthn est en plein essor.
Qu'est-ce que WebAuthn ?
L'authentification Web (WebAuthn) est une norme Web qui permet aux serveurs de tiers de confiance (RP) d'enregistrer et d'authentifier des utilisateurs dans le navigateur à l'aide de la cryptographie à clé publique, au lieu d'un mot de passe.
Les RP s'appuient sur des authentificateurs physiques, comme une clé de sécurité. Les RP demandent la clé de sécurité pour générer une paire de clés privée-publique, puis stockent la clé publique sur le serveur (enregistrement). Ces clés générées sont propres à l'appareil, ce qui empêche les pirates informatiques de se faire passer pour l'utilisateur. Cette norme est résistante au hameçonnage, car la paire de clés est liée à l'origine.
L'Alliance FIDO standardise le comportement des authentificateurs. Certains authentificateurs acceptent la validation locale des utilisateurs avec un facteur biométrique (comme une empreinte digitale ou une reconnaissance faciale) ou un facteur de connaissance (comme un code PIN). De nombreux outils sont intégrés à des appareils informatiques, tels que des ordinateurs portables ou des smartphones, appelés authentificateurs de plate-forme. WebAuthn est compatible avec tous les principaux navigateurs (ordinateur et mobile), et les authentificateurs sont disponibles sur des milliards d'appareils. Les utilisateurs peuvent s'inscrire et s'authentifier en validant leur identité localement sur la plate-forme.
SPC est conçu pour fonctionner avec les authentificateurs de plate-forme de validation de l'utilisateur (UVPA).
Comment fonctionne la confirmation de paiement sécurisé ?
La confirmation de paiement sécurisée (SPC, Secure Payment Confirmation) est basée sur WebAuthn et conçue spécifiquement à des fins de paiement. Étant donné que les identifiants WebAuthn sont enregistrés pour des domaines spécifiques, ils ne peuvent pas être utilisés pour s'authentifier sur des sites non enregistrés susceptibles d'usurper l'identité d'un marchand. Cette fonctionnalité rend WebAuthn efficace contre les attaques par hameçonnage.
SPC ajoute une couche d'informations de paiement au-dessus de WebAuthn afin que l'émetteur de la carte ou la banque puisse fournir une expérience de paiement cohérente. Une fois qu'un payeur a enregistré un authentificateur auprès de la partie de confiance, il peut l'utiliser pour s'authentifier sur différents sites marchands. Le tiers de confiance peut également choisir d'utiliser les identifiants de paiement comme identifiants WebAuthn standards.
Stripe a effectué un test avec SPC dans son environnement de production, dans le cadre des phases d'évaluation de Chrome. Dans ce test, Stripe a enregistré un taux de conversion de 8 % supérieur et le taux de paiement a été trois fois plus rapide. Pour en savoir plus sur leurs résultats, consultez le rapport sur la SPC du groupe de travail sur les paiements Web du W3C.
Comment les utilisateurs voient-ils les informations sur les produits ?
Le front-end du SPC comporte deux étapes : l'enregistrement et l'authentification.
Le client doit d'abord enregistrer son appareil à l'aide de l'authentificateur de plate-forme de validation de l'utilisateur (UVPA). Une fois l'appareil enregistré, il peut être utilisé pour authentifier l'utilisateur et confirmer les paiements chaque fois qu'une transaction sans contact est effectuée sur le site d'un marchand.
Inscription
Les utilisateurs peuvent s'inscrire à SPC de deux manières :
- Inscrivez-vous directement sur le site Web du tiers assujetti à des restrictions.
- S'inscrire indirectement sur le site Web d'un marchand
Inscription sur le site Web de la RP
Sur le site Web du RP, l'enregistrement de l'autorité de certification de service n'est pas différent de l'enregistrement WebAuthn. Nous recommandons que le tiers assujetti à des restrictions demande au client d'enregistrer son UVPA lors d'un processus de connexion.
Un scénario typique peut se présenter comme suit:
- Un client se connecte au site Web de votre banque à l'aide d'un nom d'utilisateur, d'un mot de passe et d'une étape de validation supplémentaire (généralement un mot de passe à usage unique ou OTP).
- Une fois l'authentification effectuée, affichez une demande d'autorisation demandant au client d'enregistrer son appareil (UVPA).
- Une fois l'autorisation accordée, le navigateur affiche une boîte de dialogue d'enregistrement WebAuthn.
- Le client accepte d'enregistrer l'appareil en effectuant une authentification biométrique.
- Le client peut désormais se connecter et payer de manière sécurisée à l'aide de son appareil.
Avec la réauthentification, un utilisateur est déjà connecté, mais il est invité à s'authentifier à nouveau pour s'assurer qu'il s'agit bien de la même personne. Cette conception est généralement utilisée lors d'une opération critique de sécurité, telle qu'une demande de modification d'un mot de passe ou lors d'un paiement. Avec une UVPA WebAuthn, la réauthentification est beaucoup plus rapide et plus sécurisée que l'utilisation de mots de passe.
Découvrez comment créer un flux d'enregistrement et d'authentification WebAuthn pour la réauthentification dans Créer votre première application WebAuthn.
Inscription sur le site Web d'un marchand pendant le paiement
Si votre client n'enregistre pas son appareil sur le site Web de l'émetteur de paiement, il peut le faire directement sur le site Web d'un marchand. L'interface est identique, mais l'enregistrement de l'utilisateur est lancé par le code du RP.
C'est la solution idéale lorsque les clients ne consultent pas souvent le site Web du tiers assujetti à des restrictions, mais que celui-ci souhaite tout de même proposer l'option d'authentification.
Authentification (confirmation du paiement)
L'authentification est requise lorsqu'un payeur fournit des identifiants de paiement lors d'une transaction de paiement.
- Le payeur fournit des identifiants de paiement (comme des informations de carte de crédit).
- Le marchand vérifie si le navigateur est compatible avec la confirmation de paiement sécurisée.
- Si le navigateur est compatible avec SPC, appelez l'API PaymentRequest avec SPC comme mode de paiement. Sinon, revenez à la méthode d'authentification existante.
- Le payeur confirme les détails de la transaction et termine l'authentification (par exemple, en appuyant sur l'authentificateur de sa plate-forme biométrique).
Plates-formes compatibles
La confirmation de paiement sécurisé est actuellement compatible avec Google Chrome sur macOS et Windows. Les autres plates-formes, y compris Android, iOS et ChromeOS, ne sont plus compatibles depuis mai 2022.