Zum Inhalt springen
buybitcoinsmart

Glossar / Privatsphäre und Sicherheit

Silent Payments

Auch bekannt als BIP352.

Was ist Silent Payments?
Silent Payments ermöglichen es Ihnen, eine einzige wiederverwendbare Adresse zu veröffentlichen, die nie auf der Blockchain erscheint, weil der Absender sie nutzt, um für jede Zahlung ein neues, nicht verknüpfbares Ziel zu berechnen.

Spezifiziert im BIP-352.

Die statische Zeichenfolge, die Sie herausgeben, ist ein Paar öffentlicher Schlüssel, kein Ort, an den Bitcoin fließen. Als BIP352 von josibake, Ruben Somsen und Sebastian Falbesoner spezifiziert und im März 2023 geschaffen, leitet das Verfahren für jede Zahlung einen neuen Taproot-Output aus einem Geheimnis ab, das nur der Absender und der Empfänger berechnen können. Sie erhalten den Komfort einer wiederverwendeten Adresse ohne die On-Chain-Verknüpfung.

Wie es funktioniert

Bei einer Silent Payment nimmt der Absender die Ableitung der Adresse vor, und das ist der Kniff, der alles Übrige möglich macht.

Eine Silent-Payment-Adresse kodiert zwei öffentliche Schlüssel, einen zum Scannen und einen zum Ausgeben, in bech32m mit dem Präfix sp1. Die Spezifikation weist Wallets an, Zeichenfolgen von mindestens 117 Zeichen zu verarbeiten; sie sind also lang genug, dass Nutzer sie als QR-Code oder Link weitergeben, statt sie einzutippen. Wenn Ihnen jemand zahlt, führt die Wallet dieser Person einen Diffie-Hellman-Austausch zwischen den privaten Schlüsseln der Inputs, die sie ausgibt, und Ihrem Scan-Schlüssel durch. Daraus entsteht ein gemeinsames Geheimnis, das Geheimnis verändert Ihren Ausgabe-Schlüssel, und das Ergebnis ist ein gewöhnlicher Taproot-Output, der wie jeder andere Taproot-Output im Block aussieht. Nichts On-Chain verbindet ihn mit der Adresse, die Sie veröffentlicht haben, und zwei Zahlungen von zwei verschiedenen Absendern stehen in keiner sichtbaren Beziehung.

Die Kosten trägt der Empfänger. Da kein Output Ihre Adresse trägt, muss Ihre Wallet in jedem Block potenzielle Transaktionen prüfen, indem sie dieselbe Berechnung mit Ihrem Scan-Schlüssel wiederholt. Wallets tun dies entweder durch lokales Scannen, was Synchronisierungszeit und Akku kostet, aber keinem Server etwas verrät, oder über einen Indexierungsdienst, was schneller und weniger privat ist. Optionale Labels lassen Sie unterscheidbare Varianten Ihrer Adresse ableiten, sodass Sie eine Spende weiterhin von einem Gehalt unterscheiden können, ohne zwei Identitäten zu veröffentlichen.

Wo Sie es sehen

Die Unterstützung für Silent Payments ist real, aber teilweise, und beide Seiten der Zahlung brauchen sie.

Cake Wallet war die erste mobile Wallet mit vollständigem Senden und Empfangen, Sparrow deckt den Desktop ab, und Silentium existiert als Referenzimplementierung. Wasabi kann an eine sp1-Adresse senden. Bitcoin Core liefert in keiner veröffentlichten Version eine Silent-Payments-Wallet mit: Die Arbeit liegt seit Jahren im Pull Request 28122, obwohl die kryptografischen Grundfunktionen inzwischen in der mitgelieferten Bibliothek libsecp256k1 enthalten sind.

Der Anwendungsfall, der die Komplexität rechtfertigt, ist der öffentliche Empfang. Eine Spendenadresse auf einer Website, eine Trinkgeldadresse in einer Videobeschreibung, ein QR-Code auf einem Plakat, all das sind Adressen, die per Definition wiederverwendet werden, und jede Zahlung an sie sammelt sich in einem einzigen öffentlichen Haufen, der der Welt Ihre Gesamteinnahmen zeigt. Eine Silent-Payment-Adresse löst das ohne interaktiven Schritt, und genau das gelang früheren Versuchen mit wiederverwendbaren Adressen nie.

Silent Payments vs. eine eindeutige Adresse

Eine normale HD-Wallet gibt Ihnen ohnehin für jede Zahlung eine neue Adresse, und für eine Zahlung zwischen zwei Personen ist das einfacher, günstiger und überall unterstützt: Sie fragen, die andere Person zahlt, es wird nichts abgeleitet. Silent Payments sind wichtig, wenn Sie nicht fragen können, weil die Adresse öffentlich stehen muss und von Fremden zu unvorhersehbaren Zeiten bezahlt wird. Was Sie dafür eintauschen, ist Scan-Arbeit und eine schmalere Wallet-Unterstützung, deshalb sollten die meisten Menschen für gewöhnliche Zahlungen weiterhin neue Adressen verwenden und eine Silent-Payment-Adresse für die Orte reservieren, an denen ihre Kontaktdaten dauerhaft sind.

Nicht zu verwechseln mit

Häufig gestellte Fragen

Kann ich eine Silent-Payment-Adresse an jede Wallet weitergeben?

Nein. Die Wallet des Absenders muss das Ziel selbst ableiten, sie muss also BIP352 unterstützen. Cake Wallet, Sparrow und Wasabi können an eine sp1-Adresse senden, während die meisten Börsen und einfachen mobilen Wallets sie als ungültig ablehnen.

Warum synchronisiert meine Wallet langsam, nachdem ich Silent Payments aktiviert habe?

Weil Ihre Wallet potenzielle Transaktionen Block für Block prüfen muss, um für Sie bestimmte Zahlungen zu finden. Dieses Scannen ist der Preis dafür, dass keine Adresse On-Chain steht, und Wallets erledigen es entweder lokal, was langsamer und privater ist, oder fragen einen Index-Server.

Verwandte Begriffe

Mehr zum Thema Privatsphäre und Sicherheit

Diese Seite auf Englisch lesen