[go: up one dir, main page]

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Private State Token API

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die Private State Token API bietet einen Mechanismus zur Übermittlung von Vertrauen in die Authentizität eines Benutzers von einem Browsing-Kontext zu einem anderen, ohne die Identität des Benutzers preiszugeben oder dessen Aktivitäten über Websites hinweg zu verfolgen.

Konzepte und Verwendung

Um Betrug im Internet zu verhindern, müssen Websites und Dienste Vertrauenssignale etablieren und übermitteln, die belegen, dass ein Benutzer derjenige ist, der er vorgibt zu sein, und kein Bot, der vorgibt, ein Mensch zu sein, oder ein böswilliger Dritter, der eine echte Person oder einen Dienst betrügt.

  • Vertrauen wird durch Mechanismen wie CAPTCHAs, die Überprüfung von E-Mail-Adressen oder den Kauf von Produkten hergestellt.
  • Vertrauen wird traditionell zwischen verschiedenen Ursprüngen mit Mechanismen wie Drittanbieter-Cookies übertragen.

Leider sind die aktuellen Cookie-basierten Techniken zur Übermittlung solcher Informationen nicht sicher und können für Fingerprinting und die Verfolgung von Benutzern verwendet werden, was problematisch für den Datenschutz ist.

Private State Tokens lösen dieses Problem, indem sie es ermöglichen, Vertrauenssignale ohne passive Nachverfolgung über den Hintergrund des Privacy Pass Protocols zwischen Ursprüngen zu übermitteln.

Hinweis: Private State Tokens ersetzen weder CAPTCHAs noch andere Mechanismen zur Vertrauensherstellung. Private State Tokens bieten eine Möglichkeit, Vertrauen in einen Benutzer zu übermitteln, nicht um Vertrauen in einen Benutzer zu etablieren.

Wie funktionieren Private State Tokens?

  1. Wenn eine Website Vertrauen in einen Benutzer etabliert hat (zum Beispiel über ein CAPTCHA), kann sie ein kryptografisches Token ausstellen, das sicher im Browser des Benutzers gespeichert wird. Diese Website wird Issuer genannt.
  2. Eine andere Website kann dann überprüfen, ob derselbe Benutzer vertrauenswürdig ist, indem sie überprüft, ob der Browser ein Token gespeichert hat, das von einem Issuer ausgestellt wurde, dem die Website vertraut. Falls ja, kann sie dieses Token einlösen, um ein Redemption Record zu erhalten. Diese Website wird Redeemer genannt.
  3. Das Redemption Record wird dann verwendet, um dem Benutzer Zugang zu Diensten zu gewähren, als ob er direkt mit der Website authentifiziert wäre, und kann auch an andere Parteien weitergeleitet werden, um Vertrauen zu übermitteln.

Private State Tokens sind verschlüsselt, sodass es nicht möglich ist, eine Person zu identifizieren oder vertrauenswürdige und nicht vertrauenswürdige Instanzen miteinander zu verbinden, um die Identität eines Benutzers zu entdecken.

Siehe Verwendung der Private State Token API für einen Leitfaden zur Verwendung von Private State Tokens.

Schnittstellen

Die Private State Token API hat keine eigenen speziellen Schnittstellen.

Erweiterungen zu anderen Schnittstellen

Document.hasPrivateToken()

Gibt ein Versprechen zurück, das mit einem Boolean erfüllt wird, der angibt, ob der Browser ein Private State Token von einem bestimmten Issuer gespeichert hat.

Document.hasRedemptionRecord()

Gibt ein Versprechen zurück, das mit einem Boolean erfüllt wird, der angibt, ob der Browser ein Redemption Record aus einem bestimmten Issuer gespeichert hat.

HTMLIFrameElement.privateToken

Spiegelt den Wert des <iframe> privateToken Attributs wider.

fetch() / Request(), die privateToken Option

Ein Objekt, das eine Private State Token-Operation darstellt. Fetch-Aufrufe mit der Option privateToken initiieren Operationen wie das Ausstellen oder Einlösen von Tokens.

XMLHttpRequest.setPrivateToken()

Fügt Private State Token-Informationen zu einem XMLHttpRequest-Aufruf hinzu, um Private State Token-Operationen zu initiieren.

HTML-Elemente

<iframe>, das privateToken Attribut

Enthält eine Stringdarstellung eines Optionsobjekts, das eine Private State Token-Operation darstellt. IFrames mit diesem Attribut können verwendet werden, um Operationen wie das Ausstellen oder Einlösen von Tokens zu initiieren.

HTTP-Header

Permissions-Policy; die private-state-token-issuance Direktive

Kontrolliert die Verwendung von token-request Operationen.

Permissions-Policy; die private-state-token-redemption Direktive

Kontrolliert die Verwendung von token-redemption und send-redemption-record Operationen.

Sec-Redemption-Record

Ein Anfrage-Header, der ein Redemption Record zur Übermittlung von Vertrauen an eine andere Partei weiterleitet, wenn eine send-redemption-record Fetch-Anfrage gemacht wird.

Sec-Private-State-Token

Existiert sowohl als Anfrage- als auch als Antwort-Header, der während Ausgabe- und Einlösungsanfragen zum Übertragen von Anfragedaten (wie geblendeten Nonces zur Generierung von Tokens) und Antwortdaten (wie Tokens und Redemption Records) verwendet wird.

Sec-Private-State-Token-Crypto-Version

Ein Anfrage-Header, der an einen Issuer-Server gesendet wird und angibt, welche kryptografische Protokollversion zum Signieren geblendeter Nonces bei der Token-Generierung verwendet werden soll.

Sec-Private-State-Token-Lifetime

Ein Antwort-Header, der vom Redeemer-Server gesendet wird, um dem Browser anzuzeigen, wie lange ein bestimmtes Redemption Record im Cache verbleiben soll.

Sicherheitsüberlegungen

Private State Token token-request Operationen werden von der private-state-token-issuance Permissions-Policy Direktive kontrolliert, während token-redemption und send-redemption-record Operationen von der private-state-token-redemption Direktive kontrolliert werden.

Insbesondere, wenn eine definierte Richtlinie die Verwendung blockiert, schlagen alle Versuche, Private State Token-Operationen über Fetch-Anfragen zu initiieren, fehl.

Beispiele

Sehen Sie sich den Private State Token Demo Issuer für eine Beispielimplementierung an.

Spezifikationen

Specification
Private State Token API

Browser-Kompatibilität