Private Access Tokens: ein Schritt in Richtung der datenschutzfreundlichen, CAPTCHA-losen Zukunft, die uns versprochen wurde
Apple präsentierte auf der WWDC 2022 die Demoversion einer neuen, gemeinsam mit Fastly entwickelten Technologie, mit der Endnutzer ohne Umwege über CAPTCHAs und ohne Datenschutzbedenken auf Inhalte auf FT.com zugreifen können. Dahinter stecken Private Access Tokens, die als datenschutzfreundliche und betrugssichere Autorisierungslösung gelten. In diesem Blogpost erhalten Sie einen Überblick über die Funktionsweise dieser Tokens und wie Entwickler sie dank Fastly und Apple schon heute testen können.
Ein Blick hinter die Kulissen: eine von der Community unterstützte, öffentliche Standardtechnologie
Gemeinsam mit Apple, Cloudflare und Google arbeitete Fastly an der Entwicklung und Standardisierung der Technologie hinter Private Access Tokens. Dabei handelt es sich um eine leichter zugängliche und leistungsfähigere Iteration des Privacy Pass Protokolls. Falls Sie mit Chrome Trust Tokens vertraut sind, werden Private Access Tokens Ihnen vielleicht bekannt vorkommen.
Private Access Tokens basieren auf den oben genannten Technologien, sind jedoch vielseitiger einsetzbar (kein Browser-Plugin erforderlich) und können so konfiguriert werden, dass die Anonymität der Endnutzer gewahrt bleibt. Eine Arbeitsgruppe der Internet Engineering Taskforce (IETF) arbeitet derzeit öffentlich an der Entwicklung und Standardisierung dieser Technologie. Und das Beste daran ist, dass Webentwickler sie schon jetzt ausprobieren können.
Eine Lösung für UX-, Accessibility- und Datenschutzprobleme
CAPTCHAs sind allgegenwärtig. Jeder, der im Web browst, kennt sie zur Genüge. Sie bieten effektiven Schutz vor Betrug auf Websites, machen das Web allerdings auch schwieriger zugänglich. Manche Nutzer wollen sich gar nicht damit abgeben (und verlassen die Website wieder). Anderen wiederum fällt es tatsächlich schwer, CAPTCHAs zu lösen (sodass ihnen der Zugriff auf Inhalte verwehrt bleibt).
Außerdem machen sich datenschutzbewusste Nutzer Sorgen darüber, was mit den Daten geschieht, die sie zur Lösung von CAPTCHAs bereitstellen. Gängige Bedenken lauten: Werden CAPTCHA-Ergebnisse und herkömmliche Autorisierungs-Tokens verwendet, um uns zu tracken? Internetnutzern mit strengen Datenschutzeinstellungen werden CAPTCHAs sogar noch häufiger präsentiert als solchen mit lockeren Browserkonfigurationen.
Private Access Tokens können auf unterstützten Client-Plattformen als Alternative zu CAPTCHAs verwendet werden. Über kryptografische und andere sorgfältig nachgewiesene Merkmale wird sichergestellt, dass eine Website nur genau das erfährt, was sie über einen Nutzer wissen muss, um ihm Zugang zu einer Ressource zu ermöglichen. Menschliches Zutun ist nicht notwendig und es werden keine Daten übertragen, die nicht zwingend erforderlich sind.
So funktioniert’s
Private Access Tokens funktionieren ähnlich wie andere Challenge/Response-Autorisierungssysteme. Alles Wichtige zur Architektur erfahren Sie hier. Die richtig nützlichen Features – dass kein menschliches Zutun erforderlich ist und die Privatsphäre trotzdem gewahrt wird – basieren aber auf einigen wenigen cleveren Grundgedanken.
Erstens bauen Private Access Tokens auf bestehenden Authentifizierungen und Identitäten auf. Dabei bestimmt die Architektur ein externes System, das ausschließlich zur Attestierung der dringend notwendigen Informationen über den Nutzer berechtigt ist. Dieses wird in der Spezifikation als „Attester“ bezeichnet. Der Attester hat möglicherweise Zugang zu einer größeren Vielfalt an Nutzerdaten – denken Sie nur an die vielen Informationen, die auf Ihrem Handy gespeichert sind. Er ist aber so konzipiert, dass er mit kryptografischen Mitteln genau die minimalen Informationen – und auch nur diese – prüfen kann, die zur Interaktion mit der Website erforderlich sind.
Zweitens herrscht bei Private Access Tokens Aufgabenteilung – ein gängiges Prinzip bei kryptografischen Designs wie differenziellem Datenschutz und sicherer Multi-Party Computation. In diesem Fall legen die Tokens fest, dass „Clients“ und „Attester“ (z. B. Ihr Gerät und Apple) als Einzige berechtigt sind, auf die für die Validierung des Clients notwendigen Nutzerdaten zuzugreifen. „Origins“ (z. B. die Website) erfahren lediglich, dass ein validierter Client auf sie zugreift. „Issuers“ (z. B. Websites und Organisationen, die Tokens herausgeben) wird ausschließlich bestätigt, dass sie einem Client ein gültiges Token ausgestellt haben.
Der dritte clevere Grundgedanke hinter Private Access Tokens ist, dass sie kryptografische Designs verwenden, die all dies möglich machen. Dabei kommen vor allem blinde Signaturen zum Einsatz. Kurz gesagt, wenn Ihre Client-Plattform Ihnen Eigenschaften attestiert, werden Daten bezüglich der von Ihnen besuchten Website kryptografisch verschlüsselt. Diese Daten werden dann an einen Token-Herausgeber oder Issuer (der dem Attester vertraut) weitergeleitet und in Form einer blinden Signatur von ihm zurückgeschickt. Das heißt also, dass der Issuer die Daten signiert, ohne zu wissen, worum es sich dabei genau handelt (eine folgenschwere Idee, wenn es um eine Hypothek geht, aber in unserem Kontext eine praktikable Lösung :)).
Zusammengefasstes Flussdiagramm für blinde Signaturen (Tokentyp = 2). Weitere Einzelheiten entnehmen Sie bitte der Spezifikation.
Die Fehlerprüfung und Grenzfälle ausgenommen sieht der Ablauf wie folgt aus:
Ein Nutzer („Client“) fordert Zugriff auf eine geschützte Ressource auf einer Website („Origin“) an. Zu diesem Zeitpunkt muss die Website nichts über den Client wissen, nicht einmal seine IP-Adresse, wenn Sie ein VPN oder iCloud Private Relay verwenden.
Die Website antwortet über den HTTP-Antwort-Header „WWW-Authenticate“ mit einer Aufforderung zur Bereitstellung eines Private Access Tokens.
Der Client verschlüsselt daraufhin die Aufforderung und schickt sie in einer Token-Anfrage an ein System („Attester“), das erstens die von der Website angeforderte Eigenschaft attestieren kann (wie beispielsweise die Ausführung auf einem verifizierten iOS Gerät) und dem wiederum zweitens das System vertraut, das das Token ausstellt („Issuer“).
Der Attester leitet die Anfrage dann an den Issuer weiter. Der Issuer prüft die Anfrage, signiert sie und stellt das Ergebnis (innerhalb einer „TokenResponse“) bereit. Dabei gilt zu beachten, dass der Issuer dank der vom Client durchgeführten kryptografischen Verschlüsselung nichts über den Client weiß.
Der Attester leitet die TokenResponse an den Client weiter, der den kryptografischen Prozess abschließt, um die finale Signatur zu den verschlüsselten Daten (aus Schritt 3) zu erstellen. Diese Signatur wird zur Generierung des vom Origin erwarteten Tokens verwendet.
Der Client präsentiert der Quelldatei dieses Token (über den HTTP-Anfrage-Header „Authorization“) und erhält daraufhin Zugriff auf die Ressource. Zu diesem Zeitpunkt weiß die Website lediglich, dass der Client ein gültiges Token hat. Keine der mit dem Attester ausgetauschten Informationen wurden ihr je offengelegt.
Betrachtet man diesen Prozess als Ganzes, so ist klar, dass keine der daran beteiligten Parteien die Client-Identität je mit der Website-Aktivität in Verbindung bringen kann. Eine effektive Autorisierungslösung also, die gänzlich ohne menschliches Zutun auskommt. Ziemlich cool, finden Sie nicht?!
Diejenigen unter Ihnen, die mit der typischen Tracking-Technologie von Websites vertraut sind, denken jetzt vielleicht: „Nun ja, die Website erkennt die Besucher aber immer noch anhand ihrer IP-Adresse.“ Das stimmt zwar, aber Nutzern stehen mehr und mehr Möglichkeiten zur Verfügung, auch hier die Zügel selbst in die Hand zu nehmen, beispielsweise über Datenschutz-Proxies wie Apples iCloud Private Relay (das den Private Gateway Service von Fastly nutzt).
Überzeugen Sie sich selbst
Doch lassen wir die Theorie beiseite. Gemeinsam mit unseren Partnern stellen wir Entwicklern schon heute die Bausteine für Private Access Tokens zur Verfügung.
Exklusiver Zugriff auf einen Client und Attester: Wenn Sie die Vorteile von Private Access Tokens im neuen Apple macOS und iOS Release kennenlernen möchten, melden Sie sich für das Betaprogramm von Apple an.
Aktivierung von Private Access Tokens für Ihre Website: Werfen Sie einen Blick in die Spezifikation, um mehr über die Herausgabe einer Challenge und die Handhabung einer Token-Einlösung zu erfahren. Demnächst stellen wir weitere Informationen bereit, wie die Fastly Next-Gen WAF Sie hier unterstützen kann.
Herausgabe eines Tokens: Fastly hat einen Liveservice für die Herausgabe von Tokens eingerichtet. Details zur Konfiguration finden Sie weiter unten. Dieser Endpoint unterstützt jeden beliebigen Origin-Server (und ist ausschließlich für Enterprise Support gedacht!). Versuchen Sie, eine gut formulierte Issuance-Anfrage (von einem kompatiblen iOS oder macOS Gerät) an den Endpoint zu senden. Sie erhalten daraufhin ein gültiges Token zurück, das Sie auf einer freigegebenen Website einlösen können.
Demo-Konfiguration
Name des Herausgebers
demo-issuer.private-access-tokens.fastly.com
Base64-kodierter Public Key des Herausgebers:
MIICUjA9BgkqhkiG9w0BAQowMKANMAsGCWCGSAFlAwQCAqEaMBgGCSqGSIb3DQEBCDALBglghkgBZQMEAgKiAwIBMAOCAg8AMIICCgKCAgEAubzND7lvK-u5aIFHSt_NHIzsUFuHCiwVm88kvUvbvJbjj4be_IdNwpfdfXz-vq6NeEwlKEDLtD9oMVop_kEf5HEBkiipBrcn10h17XvYPuc6lA7Z4Y8IjvSjLVydXmcabmslwreMysD1ZINjzadjlJxiIKWCeS_3OJ4dxMTirt8HMUl8cRQafTjSOBJIZNtoNiT5rr5_5SYfEQW8v25RZcitkL0Lrg1mkSutRR00EE3zMelQBGR0sf8jDgBRiPQ1-sSgaIicIciZ2ysiPdkQZBIDpIFnvqed4yKY9gZCn-ASztoe1JhJvzWUwO7Nyz1Mb6pxAV0aQNfb0rDMTPNtyF4z7kgtFcsr5SXiJUa13bm0G2QvEdhl177poghh2RDaT5tcEmiRRvdQWBTeVgFyjrX3-29TZCT4z8VyvDxPPIUIi2rN8-9lN6mmsF0KhlyKe4jUuDwK7dc6Q0gZyjKiE3n-ygErrlbOYU16MGQiJQRV6Z8j38OSD4Lf5-SzsgkAa6Zbv95Zf8TZRS-fuagiXGZcmfdO9zXkuNlRlGguEUpx520SANRciPIBZxFBDXga6kcT9Hfha0n97Mhq57kFRe2Cox7qpq79x9TjUvHOZkWMSv2KmZpoF0wbI2NvlZngbW6Z1hC-X4C3evilX7O498r45Ct7PNjq11Qjso82DwMCAwEAAQ==
Und es geht weiter …
Sie können schon heute Fastlys Endpoint für die Token-Herausgabe nutzen, Ihren Origin einrichten und für das Apple Betaprogramm qualifizierte Clients testen. Doch es kommt noch viel besser:
Fastly ist stolz auf seine Investments, sein Engagement und seine Entwicklungserfolge bei Technologien und Produkten, die unsere Überzeugung widerspiegeln, dass Sicherheit und Datenschutz für ein vertrauenswürdigeres Internet unerlässlich sind. Wir arbeiten aktiv mit unseren Partnern in der Standardisierungs-Community zusammen, um Private Access Tokens um zusätzliche Funktionen – wie Rate Limiting für Medienschutz oder Attestierungen für noch mehr Client Properties – zu erweitern. Es ist spannend zu sehen, auf wie viele Weisen diese Technologie künftig angewendet werden kann. Wie könnten auch Sie von kryptografischen Garantien, dass Sie nur genau das preisgeben, was eine Website über einen Nutzer wissen muss (zum Beispiel sein Alter), profitieren? Eine explizite Gewähr für derartige vertrauliche Datenflüsse kann sowohl Nutzer als auch Websites schützen.
Zu guter Letzt dürfen Sie sich auch auf eine einfach zu nutzende, automatische Konfiguration von Private Access Tokens zum Schutz Ihrer Website freuen. Sie bietet Ihnen nicht nur die Nutzerfreundlichkeit und Effektivität, die Sie von unserer Next-Gen WAF (powered by Signal Sciences) erwarten, sondern auch die Geschwindigkeit und Skalierbarkeit, die sie von unserer entwicklerfreundlichen Edge-Cloud-Plattform gewohnt sind.