Glossar / Privatsphäre und Sicherheit
Payjoin
Auch bekannt als P2EP, Pay-to-Endpoint.
- Was ist ein Payjoin?
- Ein Payjoin ist eine Zahlung, bei der die Person, die die Bitcoin erhält, Ihrer Transaktion unauffällig einen eigenen Input hinzufügt, sodass der Betrag auf der Blockchain nicht mehr dem Betrag entspricht, den Sie tatsächlich gezahlt haben.
Spezifiziert im BIP-78.
Beide Seiten steuern Inputs bei, was die Regel bricht, mit der Analysten Adressen zu Wallets zusammenfassen. Nicolas Dorier spezifizierte es im Mai 2019 als BIP78, und es ist eingesetzt statt theoretisch: BTCPay Server lieferte die Unterstützung im Jahr 2020. Für den Zahler kostet die Transaktion etwas mehr an Gebühren und wirkt völlig gewöhnlich.
Wie es funktioniert
Das Payjoin-Protokoll ist ein kurzes Gespräch, das zwischen dem Moment, in dem Sie auf Senden drücken, und dem Moment, in dem die Transaktion gesendet wird, stattfindet.
Ihre Wallet baut die Zahlung als unsignierte PSBT, genau wie bei einer normalen Ausgabe, und übermittelt sie an einen Endpunkt, den der Empfänger in der Zahlungsanforderung angegeben hat. Der Empfänger fügt einen seiner eigenen nicht ausgegebenen Outputs als zweiten Input hinzu, erhöht seinen eigenen Output um denselben Betrag, damit er weiterhin die korrekte Zahlung erhält, und schickt die geänderte PSBT zurück. Ihre Wallet prüft, dass Ziel und Betrag unverändert sind, signiert und sendet.
Was auf der Blockchain landet, hat zwei Inputs, die zwei verschiedenen Personen gehören. Ein Analyst, der die übliche Clustering-Regel anwendet, fasst zwei Fremde zu einer Wallet zusammen, eine falsche Schlussfolgerung, die dauerhaft in seinem Datensatz festgehalten wird. Auch der Zahlungsbetrag ist verschwunden: Kein Output entspricht dem, was Sie gezahlt haben, denn der Output des Empfängers ist die Zahlung plus sein eigener beigesteuerter Input. Ein Beobachter kann die Rechnung nicht mehr aus der Transaktion ablesen.
BIP78 begrenzt die Kosten für Sie. Der Parameter maxadditionalfeecontribution gibt an, wie viele Satoshis Sie für den zusätzlichen Input zu zahlen bereit sind, den der Empfänger hinzufügt, sodass ein Empfänger Ihre Gebühr nicht unauffällig aufblähen kann. Wenn etwas schiefgeht, der Endpunkt nicht erreichbar ist, die Antwort fehlerhaft ist, die Beträge nicht stimmen, greift Ihre Wallet auf das Senden der ursprünglichen Transaktion zurück. Ein fehlgeschlagenes Payjoin ist trotzdem eine abgeschlossene Zahlung, weshalb dies standardmäßig aktiviert werden kann, ohne etwas kaputt zu machen.
Empfänger erhalten einen zweiten Vorteil, der nichts mit Privatsphäre zu tun hat. Jedes Payjoin erlaubt es ihnen, eine eigene Coin in eine Transaktion einzufügen, die überwiegend jemand anderes bezahlt, was kostenlose Aufräumarbeit gegen eine Wallet voller kleiner Outputs ist.
Wo es auftritt
Payjoin lebt auf der Händlerseite, daher begegnen ihm die meisten Menschen, ohne es zu bemerken.
BTCPay Server war die erste Produktivumsetzung und bietet Payjoin bei Rechnungen an, weshalb es am häufigsten auf Spenden-Seiten und selbst gehosteten Kassensystemen auftaucht. Wasabi und Sparrow können vom Desktop aus an einen Payjoin-Endpunkt senden.
Die Schwäche des ursprünglichen Entwurfs war, dass der Empfänger einen öffentlichen Server betreiben und im Moment der Zahlung online sein musste, was ihn auf Händler beschränkte. BIP77, „Async Payjoin“ von Dan Gould und Yuval Kogman, im August 2023 erstellt und noch ein Entwurf, ersetzt den direkten Endpunkt durch ein Speicher-und-Weiterleitungs-Verzeichnis, das über Oblivious HTTP erreicht wird, sodass zwei Wallets auf Smartphones ein Payjoin abschließen können, ohne dass eine von beiden gleichzeitig online ist. Bull Bitcoin und Cake Wallet haben diese Version in mobilen Apps veröffentlicht, was das erste Mal ist, dass Payjoin für gewöhnliche Zahlungen von Person zu Person verfügbar ist.
Das stärkste Argument für die Nutzung ist eines, das Sie selbst nie sehen. Jedes Payjoin im Datensatz macht die Regel vom gemeinsamen Eigentum an Inputs für alle weniger zuverlässig, auch für Menschen, die noch nie eines durchgeführt haben. Datenschutztechniken, die nur ihrem Nutzer helfen, sind selten; diese hier beeinträchtigt die Überwachung des gesamten Netzwerks mit jeder Transaktion.