Как доказать платеж

Доказательство платежей

Когда вы отправляете деньги стороне, которая затем оспаривает платеж, вы должны быть в состоянии доказать, что платеж был действительно совершен.

С Bitcoin это обычно делается путем поиска идентификатора транзакции, где показаны адреса источника и получателя, а также сумма транзакции.

Однако Monero является конфиденциальной валютой, и эта информация публично недоступна в блокчейне. Таким образом, приходится прибегать к иным действиям.

Чтобы доказать Чарли, что она заплатила Бобу, Алиса должна предоставить Чарли три части информации:

  • идентификатор транзакции, как это делается в Bitcoin
  • адрес Боба, как это делается в Bitcoin
  • ключ транзакции, который является новшеством в криптовалютном мире, характерным для Monero и других монет на протоколе CryptoNote

Когда Алиса совершила платеж, одноразовый ключ был автоматически сгенерирован только для этой транзакции.

CLI

Алиса может запросить его следующим образом в monero-wallet-cli (новое имя старого обычного кошелька):

get_tx_key TXID

Алиса вставила бы свой фактический идентификатор транзакции вместо TXID. Все хорошо, так как отобразится уникальный ключ транзакции.

Обратите внимание, что эта функция будет работать, только если monero-wallet-cli настроен на сохранение ключей транзакции. Чтобы убедиться в том, что данная функция включена, следует ввести:

set

Если установлено на 0, изменить на 1:

set store-tx-info 1

GUI

Алиса может открыть свой monero-wallet-gui и перейти на страницу History (История), чтобы увидеть детали транзакции:

History

Здесь она может скопировать идентификатор транзакции и адрес Боба, щелкнув по каждому из них. Затем она может нажать на P, чтобы получить подтверждение платежа transaction key (Ключ транзакции):

Payment proof


Алиса теперь может отправить Чарли ключ транзакции вместе с идентификатором транзакции и адресом Боба.

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

Проверка платежа

Чарли получил эти три части информации и хочет проверить, что Алиса действительно говорит правду:

CLI

Чарли вводит в monero-wallet-cli:

check_tx_key TXID TXKEY ADDRESS

Информация, предоставленная Алисой, аккуратно вставляется вместо заполнителей. monero-wallet-cli будет использовать ключ транзакции для декодирования транзакции и отображать, насколько верна эта конкретная транзакция отправлена на указанный адрес. Очевидно, Чарли захочет дважды проверить с Бобом действительно ли этот адрес его, так же как и в сети Bitcoin.

GUI

Чарли необходимой открыть свой monero-wallet-gui и перейдет на страницу Advanced (Дополнительно), перейти в пункт Prove / Check (Подтвердить / Проверить), заполнить поля с информацией предоставленной Алисой в разделе Check (Проверить):

Check payment

Затем, нажать Check (Проверить), он сообщит Чарли, сколько именно монет отправлено по этой транзакции на этот адрес и сколько у нее подтверждений:

Payment checked


Очевидно, Чарли захочет дважды проверить с Бобом действительно ли этот адрес его, так же как и в сети Bitcoin.

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