PrivateSend und InstantSend

PrivateSend

This documentation describes how to use Dash Core to send Dash privately. PrivateSend, released as DarkSend in RC4 of the DarkCoin client and rebranded to PrivateSend in May 2016, is a trustless method of running a sequence of transactions (known as „mixing“) such that an external observer is unable to determine the source of funding when a PrivateSend transaction is created. This gives your Dash the same privacy properties as cash withdrawn from an ATM, for example. The mixing and denomination process is seamless, automatic, and requires no intervention on the part of the user. The current implementation of PrivateSend in the Dash Core wallet allows any amount of Dash to be mixed for later use in PrivateSend transactions. As of December 2018, PrivateSend is not currently available in other Dash wallets.

Das Wissen um die exakte Nummer an Runden, mit denen PrivateSend-Beträge gemischt wurden, führt zu einem quantifizierbaren Effekt, der es erleichtert den Ursprung einer PrivateSend-Transaktion zu erkennen. Aus diesem Grund ist die empfohlene (und als Standard eingestellte) Nummer an PrivateSend-Mischrunden auf vier festgesetzt, kann aber verändert werden.

Mehr zur Theorie hinter PrivateSend und dem exakten Verfahren gibt es hier.

Konfiguration

  1. Dash Core Wallet öffnen und unter Einstellungen den Punkt Konfiguration auswählen. Die entsprechenden Einstellungen befinden sich in der Registerkarte Wallet.

    ../../_images/privatesend-options.png
  2. Next to PrivateSend rounds to use, enter a value between 1-16. Each round of PrivateSend performs one denominated fund mixing transaction. Higher numbers of rounds increase your overall level of privacy while decreasing the chance of detection via node collusion. 16 is the highest number of rounds currently available.

    HINWEIS: Um den Missbrauch des Systems zu verhindern wird ca. alle zehn Runden eine Gebühr von 0.0001 Dash erhoben.

  3. Enter a target value for Amount of Dash to keep mixed. This value provides a lower boundary on the final amount of funds to be mixed. Depending on how the client splits your wallet balance, you may end up with denominated inputs whose sum total is greater than the target amount. In this case the client will use all existing denominated inputs in the PrivateSend process. The final mixed amount may be higher than your target, but should be close.

  4. Über OK werden die Einstellungen gespeichert.

  5. PrivateSend ist standardmäßig deaktiviert. Es wird nur aktiviert wenn nach dem Setzen der Runden und des Zielbetrags auch der Knopf mit der Aufschrift Starte Mixen gedrückt wurde, der sich unter der Registerkarte Übersicht befindet.

Mischen starten

Der PrivateSend-Prozess wird gestartet, wenn der Knopf mit der Aufschrift Starte Mixen gedrückt wurde, der sich unter der Registerkarte Übersicht der Dash Core Wallet befindet. Mischen ist nur erfolgreich, wenn die folgenden Bedingungen erfüllt sind:

  • The wallet contains sufficient non-mixed funds to create the minimum required denominated values
  • Der Nutzer hat PrivateSend nicht über den Konfigurationsdialog deaktiviert
  • The target value for mixed Funds in the Options dialog is greater than zero

Wenn die Wallet verschlüsselt wurde (dies wird sehr eindringlich empfohlen), muss das Wallet-Passwort vor dem Mischen angegeben werden. Über Wallet für den Mischvorgang entsperren kann ausgewählt werden, dass die Wallet nur zum Mischen entsperrt wird.

../../_images/mixing-password.png

Ein Passwort nur zum Mischen für PrivateSend eingeben

Dies wird die Wallet entsperren und den PrivateSend-Mischvorgang starten. Die Wallet bleibt entsperrt, bis der Mischvorgang beendet wurde und sperrt sich dann automatisch selbst.

../../_images/mixing.png

PrivateSend-Schnittstelle nach dem Drücken des Knopfes mit der Aufschrift Starte Mixen. Als Status wird Aktiviert angezeigt.

PrivateSend wird damit beginnen, Transaktionen zu schaffen und das PrivateSend-Guthaben wird kontinuierlich wachsen. Dieser Vorgang kann einige Zeit in Anspruch nehmen. Im folgenden Abschnitt wird erklärt, wie dieser Vorgang genauer beobachtet werden kann.

Jede der folgenden Aktionen wird den Mischvorgang unterbrechen. Da die Transaktionen atomar sind (sie finden entweder ganz statt der gar nicht), ist es sicher PrivateSend zu jedem Zeitpunkt zu unterbrechen.

  • Den Knopf mit der Aufschrift Stop Mixing in der Übersicht-Registerkarte drücken
  • Den Client schließen, bevor der Mischvorgang beendet wurde
  • PrivateSend-Guthaben aus einer Wallet verschicken, bevor die PrivateSend-Runden beendet wurden
  • PrivateSend deaktivieren, bevor der Prozess beendet wurde

Mischen beobachten

Um PrivateSend mit mehr Details zu beobachten, müssen erweiterte Funktionen der Wallet aktiviert werden. Unter Einstellungen den Punkt Konfiguration auswählen und die entsprechenden Einstellungen in der Registerkarte Wallet auswählen. Bei „Coin Control“-Funktionen aktivieren und Erweiterte PrivateSend Schnittstelle anzeigen muss ein Haken gesetzt werden.

../../_images/privatesend-settings.png

Erweiterte PrivateSend-Funktionen in den Dash Core Wallet-Einstellungen aktivieren

Hierdurch können der Fortschritt und einzelne PrivateSend-Operationen, die im Hintergrund stattfinden, beobachtet werden.

../../_images/mixing-progress.png

PrivateSend Fortschritt beobachten

Since PrivateSend mixing creates a lot of new address keys to send and receive the mixed denominations, you may receive a warning when the number of remaining keys runs low. This is nothing to be worried about, since the wallet will simply create more keys as necessary. However, these keys will not exist in any previous backups of your wallet. For this reason, it is important to backup your wallet again after mixing is complete.

Der PrivateSend-Fortschritt wird auch ersichtlich, wenn die Transaktionen, die wegen des Mischvorgangs stattfinden, in der Transaktionen Registerkarte beobachtet werden.

../../_images/privatesend-transactions.png

Transaktionen, die wegen PrivateSend in der Transaktionen Registerkarte beobachtet werden können

Die folgende Tabelle beschreibt die PrivateSend-Transaktionstypen, die in der Typ-Spalte der Transaktionen Registerkarte aufgeführt werden:

PrivateSend Transaktions-Typ Transaktionsbeschreibung
PrivateSend Sicherheits-Eingänge machen (Mixing) Wallet-Guthaben wurde zu den Kollateral-Inputs bewegt, die dazu verwendet werden Kollateral-Zahlungen durchzuführen. Dies geschieht, damit der Ursprung des Kollaterals verschleiert wird.
PrivateSend Stückelung erzeugen (Mixing) Wallet-Guthaben wurde in PrivateSend-Denominationen aufgeteilt (Schritt 1 hier)
PrivateSend Stückelung (Mixing) Eine Transaktion wurde an eine Masternode gesandt, um eine Mischrunde einzuleiten (Schritt 3 hier)
PrivateSend Sicherheits-Zahlung (Mixing) Das Kollateral der Mischrunde wurde beansprucht. Diese Gebühr wird in ~10% der Mischrunden erhoben, damit Spam-Angriffe verhindert werden können.
PrivateSend (Zahlung) Gemischtes Guthaben wurde dazu verwendet eine Zahlung an jemanden zu versenden. Hinweis: Anders als bei den bisherigen 4 Transaktions-Typen, handelt es sich hierbei nicht um einen Teil des Mischvorgangs.

Über die Funktion Coin Control ist es möglich zu sehen, welche Adressen gemischte Denominationen enthalten und für PrivateSend Transaktionen verwendet werden können. In der Registerkarte Überweisen kann Coin Control über das Feld Inputs angewendet werden. Hier kann gesehen werden, welche Adressen Denominationen beinhalten und wie oft diese gemischt wurden. Hierdurch können gezielt Adressen verwendet werden, durch die nicht zu viel Wechselgeld entsteht, da PrivateSend aufrunden muss, damit ein Input vollständig ausgegeben wird. Das momentan nötige Guthaben, um eine PrivateSend-Transaktion durchführen zu können, liegt bei 0.00100010 Dash.

../../_images/privatesend-addresses.png

Der Coin Selection Dialog zeigt Adressen, die gemischte PrivateSend-Guthaben in unterschiedlichen Denominationen beinhalten

Mit PrivateSend bezahlen

You can only use PrivateSend for payments once you have mixed enough Dash to make up the amount you are trying to send. Because the mixing process takes time, it must be done in advance before you create the send transaction. A PrivateSend transaction is effectively the same as any other transaction on the blockchain, but it draws only from input addresses where the denomination has previously been mixed to ensure privacy of funds. Because several input addresses are usually required to make up the amount you are trying to send, a PrivateSend transaction will usually take up more space (in kilobytes) on the blockchain, and therefore will be charged a slightly higher fee.

Um eine Zahlung per PrivateSend zu versenden muss über die Registerkarte Überweisen die Option PrivateSend aktiviert werden. Das angezeigte Guthaben wird nun nur die bereits gemischten Beträge anzeigen. Empfänger, Bezeichnung und Betrag werden wie üblich eingetragen und zum Versenden wird ebenfalls der Knopf mit der Aufschrift Überweisen verwendet. Die Zahlung wird aufgerundet und es ist notwendig auf die geringste Denomination (momentan 0.001 Dash) aufzurunden. Zur Bestätigung muss das Passwort eingegeben werden, bevor eine vollständige Analyse der Transaktionskosten angezeigt werden, mit denen die PrivateSend-Transaktion durchgeführt werden kann.

../../_images/privatesend-send.png

Dash Core ist bereit eine PrivateSend-Transaktion durchzuführen. Hierfür muss PrivateSend aktiviert sein und der Transaktionsbetrag darf nicht die verfügbare PrivateSend-Gesamtsumme übersteigen.

InstantSend

Einleitung

Diese Dokumentation beschreibt, wie InstantSend dazu verwendet werden kann, sofortige Dash-Transaktionen rund um die Erde durchzuführen. Dash InstantSend wird von vielen verschiedenen Wallets und Händlern verwendet, zu denen auch (aber nicht nur) die folgenden gehören:

  • Dash Core Wallet
  • Dash Android Wallet
  • Dash iOS Wallet
  • My Dash Wallet
  • Kraken
  • Bitrefill
  • und viele mehr…

Mehr zur Theorie hinter InstantSend und dem exakten Verfahren gibt es hier.

Mit InstantSend bezahlen

InstantSend wird dadurch gewährleistet, dass es ein Quorum aus 10 Masternodes deterministisch festsetzt, damit jedes Quorum den Input einer InstantSend-Transaktion absichert. Die Masternodes untersuchen den Input und wenn eine Mehrheit diesen bestätigt, wird die Transaktion akzeptiert. Der Input wird nun von den Masternodes unter Verschluß gehalten, bis dieser durch 6 Blöcke bestätigt wurde, wodurch er erneut für eine InstantSend-Transaktion freigegeben wird. InstantSend unterscheidet sich dadurch von normalen Transaktionen, die nach einer Block-Bestätigung bereits weiterversandt werden können, selbst wenn sie aus einer InstantSend-Transaktion stammen. Laut der Gebührentafel wird für InstantSend-Transaktionen mit mehr als 4 Inputs eine höhere Gebühr erhoben. Wichtig ist, dass die empfangende Wallet InstantSend erkennt, da sie die Transaktion sonst wie eine normale Transaktion behandeln und nicht als sofort bestätigt ansehen würde. In diesem Fall müsste der Nutzer abwarten, bis die normalen Bestätigungen durch die Blockchain stattfinden.

Um mit InstantSend zu bezahlen muss lediglich ein Haken im entsprechenden Kästchen eingefügt werden. Die folgenden Screenshots zeigen wo sich dieses Kästchen in der Dash Core, der iOS und der Android Wallet befinden.

../../_images/instantsend-android.png ../../_images/instantsend-ios.png
../../_images/instantsend-dashcore.png

Dash Wallets mit InstantSend Option