Sichere Zahlungsbestätigung

Die sichere Zahlungsbestätigung (Secure Payment Bestätigung, SPC) ist ein vorgeschlagener Webstandard, mit dem sich Kunden bei einem Kreditkartenaussteller, einer Bank oder einem anderen Zahlungsdienstleister mit einer Plattformauthentifizierungsquelle authentifizieren können:

  • Funktionen wie Touch ID auf macOS-Geräten entsperren
  • Windows Hello auf einem Windows-Gerät

Mit SPC können Händler Kunden ermöglichen, ihre Käufe schnell und nahtlos zu authentifizieren, während ausstellende Banken ihre Kunden vor Betrug schützen.

SPC besteht aus zwei Phasen: Registrierung und Authentifizierung.

  • Registrierung: Der Zahlungspflichtige verknüpft sein Gerät mit einer vertrauenden Partei. Die vertrauende Partei kann ein Kreditkartenaussteller, eine Bank oder ein anderer Zahlungsdienstanbieter sein.
  • Authentifizierung: Der Zahler verwendet das registrierte Gerät, um seine Identität bei dem RP direkt über die Plattform des Händlers zu bestätigen, bevor er Zahlungen bestätigt.

Authentifizierung zur Betrugsprävention

Die Authentifizierung spielt eine wichtige Rolle bei der Verhinderung von Zahlungsbetrug. Dieser Überprüfungsprozess beruht jedoch häufig auf schwachen Mechanismen, wie z. B. einer Kombination aus Kreditkartennummer und Name des Karteninhabers oder einem zusätzlichen CVC-Code auf der Rückseite der Karte. Diese Mechanismen können leicht kompromittiert und die Identität gestohlen werden, wenn die Kartendaten aufgrund von Datenpannen wie Kontodiebstahl oder Phishing-Angriffen preisgegeben werden.

Es wurden zusätzliche Mechanismen zur Betrugsprävention wie EMV® 3-D Secure eingeführt, bei denen der Zahler aufgefordert werden kann, sich beim Kartenaussteller oder bei der Bank zu authentifizieren. Zur Authentifizierung meldet sich der Nutzer mit einem Nutzernamen und einem Passwort oder einem Einmalpasswort (OTP) an, das per SMS an das Smartphone des Zahlenden gesendet wird. Dies dient dem Schutz von Kunden vor Betrug, kann jedoch für einige gültige Kunden zu einem Hindernis für den Abschluss der Zahlung werden. SPC zielt darauf ab, Probleme bei der Authentifizierung zu verringern und somit den Abbruch des Bezahlvorgangs zu reduzieren.

Gleichzeitig entwickelt sich ein neuer Authentifizierungsstandard, der WebAuthn heißt.

Was ist WebAuthn?

Die Webauthentifizierung (kurz: WebAuthn) ist ein Webstandard, mit dem sich vertrauenswürdige Anbieter (Reliing Party Servers, RP-Server) Nutzer im Browser mithilfe von Public-Key-Kryptografie anstelle eines Passworts registrieren und authentifizieren können.

RPs stützen sich auf physische Authenticatoren wie einen Sicherheitsschlüssel. RPs fordern den Sicherheitsschlüssel an, ein privat-öffentliches Schlüsselpaar zu generieren und den öffentlichen Schlüssel dann auf dem Server zu speichern (Registrierung). Diese generierten Schlüssel sind für das Gerät eindeutig und verhindern, dass Angreifer sich als der Nutzer ausgeben. Dieser Standard ist vor Phishing geschützt, da das Schlüsselpaar an den Ursprung gebunden ist.

Die FIDO Alliance standardisiert das Verhalten der Authenticator. Einige Authenticatoren unterstützen die lokale Nutzerbestätigung mit einem biometrischen Faktor (z. B. Fingerabdruck oder Gesichtserkennung) oder einem Wissensfaktor (z. B. PIN-Code). Viele sind in Computing-Geräte wie Laptops oder Smartphones integriert, die als Plattformauthentifizierungsmittel bezeichnet werden. WebAuthn wird in allen gängigen Browsern (Desktop- und Mobilgeräte) unterstützt und Authenticators sind auf Milliarden von Geräten verfügbar. Nutzer können sich registrieren und authentifizieren, indem sie ihre Identität lokal auf der Plattform bestätigen.

SPC funktioniert mit User Verificationing Platform Authenticators (UVPA).

Beispiele für UVPAs sind Apple Touch ID und eine Smartphonekamera
Viele Geräte haben einen biometrischen Sensor. Diese Authenticatoren werden als User Verify Platform Authenticator (UVPA) bezeichnet.

Wie funktioniert die sichere Zahlungsbestätigung?

Die sichere Zahlungsbestätigung (Secure Payment Verification, SPC) basiert auf WebAuthn und wurde speziell für Zahlungszwecke entwickelt. Da WebAuthn-Anmeldedaten für bestimmte Domains registriert sind, können diese Anmeldedaten nicht zur Authentifizierung auf nicht registrierten Websites verwendet werden, die die Identität eines Händlers vortäuschen. Diese Funktion macht WebAuthn wirksam gegen Phishingangriffe.

SPC fügt WebAuthn eine Ebene mit Zahlungsinformationen hinzu, damit der Kartenaussteller oder die Bank eine konsistente Zahlungserfahrung bieten kann. Sobald ein Zahlungspflichtiger einen Authenticator bei der vertrauenden Partei registriert hat, kann er zur Authentifizierung auf verschiedenen Händlerwebsites verwendet werden. Die vertrauende Partei kann die Zahlungsanmeldedaten auch als normale WebAuthn-Anmeldedaten verwenden.

Stripe führte im Rahmen der Ursprungstests von Chrome einen Test mit SPC in seiner Produktionsumgebung durch. In diesem Experiment erreichte Stripe eine um 8% höhere Conversion-Rate und die Bezahlvorgang-Rate war dreimal schneller. Informationen zu den Ergebnissen findest du im SPC-Bericht in der W3C Web Payments Working Group.

Wie erleben Nutzer SPC?

Das SPC-Frontend besteht aus zwei Phasen: Registrierung und Authentifizierung.

Der Kunde muss zuerst sein Gerät mit dem User-Verifying Platform Authenticator (UVPA) registrieren. Sobald das Gerät registriert ist, kann es zur Authentifizierung des Nutzers und zur Bestätigung von Zahlungen verwendet werden, wenn SPC auf der Website eines Händlers ausgeführt wird.

Anmeldung

Nutzer haben zwei Möglichkeiten, sich für SPC zu registrieren:

  • Registriere dich direkt auf der RP-Website.
  • Registriere dich indirekt auf einer Händlerwebsite.

Registrierung auf der RP-Website

Auf der RP-Website unterscheidet sich die SPC-Registrierung nicht von der WebAuthn-Registrierung. Wir empfehlen, dass der RP den Kunden auffordert, seine UVPA im Rahmen der Anmeldung zu registrieren.

Ein typisches Szenario könnte so aussehen:

  1. Ein Kunde meldet sich mit einem Nutzernamen, einem Passwort und einem zusätzlichen Bestätigungsschritt (in der Regel einem Einmalpasswort oder OTP) auf der Website Ihrer Bank an.
  2. Nach erfolgreicher Authentifizierung wird eine Berechtigungsanfrage angezeigt, in der der Kunde aufgefordert wird, sein Gerät (UVPA) zu registrieren.
  3. Nachdem die Berechtigung erteilt wurde, zeigt der Browser ein WebAuthn-Registrierungsdialogfeld an.
  4. Der Kunde stimmt der Registrierung des Geräts durch eine biometrische Authentifizierung zu.
  5. Der Kunde kann sich jetzt sicher mit seinem Gerät anmelden und bezahlen.

Bei der reauthentication ist ein Nutzer bereits angemeldet, wird aber aufgefordert, sich noch einmal zu authentifizieren, um sicherzustellen, dass er noch vorhanden ist. Dieses Design wird normalerweise bei einem sicherheitskritischen Vorgang eingesetzt, z. B. bei einer Anfrage zur Änderung eines Passworts oder bei einer Zahlung. Mit einem WebAuthn-UVPA ist die erneute Authentifizierung viel schneller und stärker als die Verwendung von Passwörtern.

Informationen zum Erstellen eines WebAuthn-Registrierungs- und Authentifizierungsvorgangs für die erneute Authentifizierung finden Sie unter Erste WebAuthn-Anwendung erstellen.

Registrierung auf der Website eines Händlers während der Zahlung

Wenn dein Kunde sein Gerät nicht auf der Website des Zahlungsausstellers registriert, kann er dies direkt auf der Website des Händlers tun. Die Benutzeroberfläche sieht gleich aus, aber die Registrierung des Nutzers wird durch den Code des RP initiiert.

Dies ist ideal, wenn Kunden die RP-Website nicht häufig besuchen, das RP aber trotzdem die Authentifizierungsoption anbieten möchte.

Authentifizierung (Zahlungsbestätigung)

Eine Authentifizierung ist erforderlich, wenn ein Zahlungspflichtiger während einer Zahlungstransaktion seine Anmeldedaten für die Zahlung angibt.

  1. Der Zahler stellt Anmeldedaten für die Zahlung bereit (z. B. Kreditkartendaten).
  2. Der Händler prüft, ob der Browser die sichere Zahlungsbestätigung unterstützt.
  3. Wenn der Browser SPC unterstützt, kannst du die Payment Request API mit SPC als Zahlungsmethode aufrufen. Andernfalls wird die vorhandene Authentifizierungsmethode verwendet.
  4. Der Zahlungspflichtige bestätigt die Transaktionsdetails und führt die Authentifizierung durch (z. B. durch Tippen auf den Authenticator der biometrischen Plattform).

Unterstützte Plattformen

Die sichere Zahlungsbestätigung wird derzeit von Google Chrome unter macOS und Windows unterstützt. Andere Plattformen, einschließlich Android, iOS und ChromeOS, werden seit Mai 2022 nicht mehr unterstützt.

Nächste Schritte