Функции PrivateSend и 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.

Знание точного количества раундов смешивания PrivateSend, используемого в любой представленной транзакции PrivateSend, имеет количественный эффект основанный на уверенности, которую может иметь злоумышленник при попытке угадать источник транзакции PrivateSend. По этой причине рекомендуемое (и установленное по умолчанию) количество раундов смешивания PrivateSend равно четырем.

Подробнее теоретическую часть и о процессах функции PrivateSend вы можете почитать здесь.

Конфигурация

  1. Откройте ваш кошелёк Dash Core, нажмите Настройки и выберите Параметры. Перейдите на вкладку Кошелёк.

    ../../_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.

    ПРИМЕЧАНИЕ: Для предотвращения злоупотребления системой, в среднем за один из десяти раундов смешивания с помощью мастернод взимается комиссия в размере 0,0001 DASH.

  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. Нажмите OK для сохранения настроек.

  5. При открытии кошелька функция PrivateSend по умолчанию отключена. Она запустится только после того, как вы зададите количество раундов и сумму DASH для смешивания в настройках и нажмёте кнопку Начать перемешивание на вкладке Обзор кошелька.

Начало перемешивания

Процесс PrivateSend начинается нажатием на кнопку Начать перемешивание на вкладке Обзор кошелька Dash Core. Смешивание становится возможным, как только будут выполнены следующие условия:

  • The wallet contains sufficient non-mixed funds to create the minimum required denominated values
  • Функция PrivateSend в диалоговом окне «Параметры» не отключена пользователем
  • The target value for mixed Funds in the Options dialog is greater than zero

Если кошелёк зашифрован (что настоятельно рекомендуется), то вам будет предложено ввести фразу пароль вашего кошелька. Установите галочку возле пункта Разблокировать кошелёк только для перемешивания PrivateSend, чтобы разблокировать кошелёк только для процесса перемешивания.

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

Ввод пароля только для активации смешивания для функции PrivateSend

После этого ваш кошелёк будет разблокирован, и начнётся процесс смешивания PrivateSend. Кошелёк останется разблокированным до тех пор, пока смешивание PrivateSend не будет завершено, после чего он будет заблокирован автоматически.

../../_images/mixing.png

Интерфейс PrivateSend после нажатия кнопки Начать перемешивание. Обратите внимание, что Статус должен быть Включён.

PrivateSend начнёт создавать транзакции, и ваш баланс PrivateSend будет постепенно увеличиваться. Этот процесс может занять некоторое время, поэтому проявите терпение. Вы можете отслеживать подробности этого процесса, как описано в следующем разделе

Любое из следующих действий приведет к прерыванию процесса смешивания. Поскольку транзакции являются неделимыми (они либо выполняются полностью, либо не выполняются вообще), в любом случае должно быть возможно безопасное прерывание смешивания PrivateSend.

  • Нажатие кнопки «Остановить перемешивание» на вкладке «Обзор»
  • Закрытие программы до того, как смешивание PrivateSend завершено
  • Отправка средств PrivateSend из кошелька до того, как раунды PrivateSend завершены
  • Отключение функции PrivateSend до завершения процесса

Наблюдение за смешиванием

Если вы хотите наблюдать за деталями процесса PrivateSend, вам необходимо активировать некоторые дополнительные функции кошелька. Отправляйтесь в Настройки, выберите Параметры и перейдите на вкладку Кошелёк. Проверьте наличие галочек возле пунктов Включить функции контроля монет и Включить расширенный интерфейс PrivateSend.

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

Активация расширенных опций для функции PrivateSend в настройках кошелька Dash Core

Это позволит вам отслеживать процесс и видеть, какие отдельные операции PrivateSend выполняются в фоновом режиме.

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

Отслеживание процесса PrivateSend

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.

Также вы можете следить за процессом выполнения функции PrivateSend просматривая транзакции, созданные процессом перемешивания на вкладке Транзакции.

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

Транзакции, созданые PrivateSend на вкладке «Транзакции»

Следующая таблица описывает относящиеся к функции PrivateSend транзакции, которые отображены в столбце «Тип» вкладки Транзакции:

Тип транзакции PrivateSend Описание транзакции
PrivateSend создаёт входы для обеспечительных монет (Перемешивание) Средства из кошелька перемещены на входы обеспечения, которые будут использованы для совершения платежей по обеспечению. Это сделано для минимизации отслеживаемости залогов.
PrivateSend создаёт номиналы (Перемешивание) Средства кошелька были разбиты на номиналы PrivateSend (Шаг 1 здесь)
Создание номиналов PrivateSend (Перемешивание) Транзакция была отправлена мастерноде для принятия участия в сессии смешивания (Шаг 3 здесь)
Платёж PrivateSend за создание обеспечительных монет (Перемешивание) Выполнен запрос на создание обеспечительных монет для смешивания. В ~10% случаев для сеансов смешивания за это взимается комиссия для предотвращения спам-атак.
PrivateSend (Траты) Перемешанные средства были использованы для отправки другому пользователю. Примечание: в отличие от 4-х предыдущих типов транзакций, в этой транзакции не применялся процесс смешивания.

Вы также можете использовать функцию контроля монет, чтобы посмотреть, какие адреса содержат смешанные номиналы, готовые для использования в транзакциях PrivateSend. Перейдите на вкладку Отправить вашего кошелька и нажмите Входы, чтобы просмотреть возможные входные адреса ваших транзакций. Вы увидите, что на каждом адресе содержатся данные о номиналах смешанных DASH и информация о том, сколько раундов смешивания завершено. Эта эффективная комбинация адресов затем используется в качестве входных данных в транзакциях PrivateSend без особых изменений, так как сумма в транзакции PrivateSend должна быть округлена, чтобы полностью использовать все входы. Текущий минимальный баланс для ввода, используемого в транзакции PrivateSend, составляет 0.00100010 DASH.

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

В диалоговом окне «Выбор монет» показаны адреса, содержащие смешанные балансы PrivateSend в разных номиналах

Оплата с помощью PrivateSend

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.

Чтобы отправить платёж с использованием функции PrivateSend, отправляйтесь на вкладку Отправить кошелька Dash Core и активируйте опцию PrivateSend. Отображаемый баланс изменится и вместо общего баланса отобразится баланс PrivateSend. Затем в поле Получатель вы можете ввести адрес, а также добавить информацию в полях Метка и Количество и щёлкнуть Отправить, как это обычно делается. Ваш платёж будет округлён, чтобы полностью задействовать минимально возможное номинальное значение смешанного баланса (в настоящее время до ближайших 0,001 DASH). Вам будет предложено ввести ваш пароль и получить подробную разбивку структуры комиссии для PrivateSend перед отправкой.

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

Dash Core готов к отправке транзакции PrivateSend. Обратите внимание, что функция PrivateSend активирована, а количество, указанное к отправке меньше доступного на балансе PrivateSend.

InstantSend

Введение

В этой документации описывается, как использовать функцию InstantSend для немедленной отправки средств любому другому пользователю Dash в любой точке земного шара. Dash InstantSend поддерживается многими кошельками и поставщиками, включая (но не ограничиваясь) следующих:

  • Dash Core Wallet
  • Кошелёк Dash для Android
  • Кошелёк Dash для iOS
  • My Dash Wallet
  • Kraken
  • Bitrefill
  • и многие другие…

Подробнее теоретическую часть и о процессах функции InstantSend вы можете почитать здесь.

Оплата с помощью InstantSend

Устанавливая соответствующую галочку на транзакцию, функция InstantSend инициирует детерминированный выбор кворума из 10 мастернод для каждого входа, задействованного в InstantSend транзакции. Мастерноды проверяют вход, и если большинство определяет, что у него есть как минимум шесть подтверждений, то они принимают транзакцию. Затем вход фиксируется до тех пор, пока транзакция не будет подтверждена в шести добытых блоках, после чего этот выход может использоваться в качестве входа в другой транзакции InstantSend. Эти входы отличаются от входов, используемых в обычных транзакциях, деньги в которых могут быть потрачены после одного подтверждения независимо от того, получены ли DASH с помощью InstantSend или нет. Повышенная комиссия будет взиматься за транзакции InstantSend, согласно таблице комиссий. Обратите внимание, что кошелёк, получающий средства должен также быть уведомлён об InstantSend для возможности немедленно продолжить транзакцию или отобразить соответствующее уведомление о том, что транзакция должна считаться зафиксированной. Если получающий кошелёк не уведомлён об InstantSend, транзакция отобразится как обычная, и вам нужно будет ждать стандартных подтверждений.

Для совершения оплаты с помощью InstantSend, просто проверьте наличие галочки в соответствующем поле в вашем приложении. На следующих скриншотах показано, где найти эту опцию в Dash Core, iOS и Android кошельках.

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

Кошельки Dash демонстрирующие функцию InstantSend