Skip to main content

Маркетплейс

Імёны можна купляць і прадаваць праз убудаваны маркетплейс з эскроў. Усе плацяжы цалкам экранаваныя.

Эскроў тут кастадыяльны, і варта дакладна сказаць, што гэта азначае. Пакупнік плаціць на пратакольны адрас рэгістратара; рэгістратар утрымлівае сродкі, перадае імя і залічвае прадаўцу на ўнутраны баланс суму за вылікам сэрвіснай камісіі. Прадавец выводзіць яе калі захоча. Такім чынам, рэгістратар сапраўды выступае эскроў-агентам — ён трымае грошы аднаго боку, пакуль абавязак другога боку не будзе выкананы.

Чым гэта не з'яўляецца, дык гэта даверлівым эскроў у блокчэйне. Няма смарт-кантракта, які выпускаў бы сродкі аўтаматычна; захоўванне ў рэгістратара — гэта самае сапраўднае захоўванне. Абмяжоўвае яго тое, што абавязкі вылічваюцца публічна: гл. Давер і прыватнасць — там апісаны інварыянт балансу, які можа праверыць любы, і тое адзінае месца, дзе захоўванне звонку не правяраецца.

Згода прадаўца на продаж — гэта яго раней падпісаная каманда LST, цана з якой зафіксаваная ў дрэве стану: каманда BUY сапраўдная толькі па роўна гэтай цане, і ў момант пакупкі подпіс прадаўца не патрабуецца.

Продаж

Прадавец падпісвае запыт LIST у блокчэйн-транзакцыі і фармуе memo з камандай LIST:

PiNS:1:LST:{name}:{ed25519_pubkey}:{price}:{nonce}:{signature}

Так імя выстаўляецца на Маркетплейс.

tip
  • цана задаецца цэлым лікам сатошы і мусіць быць большай за нуль (1 PIVX = 100 000 000 сатошы)
  • LIST можна адправіць паўторна для ўжо выстаўленага імя, каб змяніць цану; перамагае апошняе аб'яўленне

Калі вы перадумалі

Прадавец заўсёды можа зняць дамен з Маркетплейса, адправіўшы блокчэйн-транзакцыю з memo, якое змяшчае каманду UNLIST:

PiNS:1:ULT:{name}:{ed25519_pubkey}:{nonce}:{signature}

Так імя прыбіраецца з Маркетплейса.

tip

Каманды апрацоўваюцца па чарзе ў парадку блокчэйна PIVX. Гэта значыць, што ваша каманда UNLIST мусіць быць атрыманая раней, чым чыясьці каманда BUY.
PIVX Names не кіруе парадкам транзакцый — ён цалкам вызначаецца тым, як PIVX фармуе блокі, і парадкам індэксаў транзакцый унутры кожнага блока.

Пакупка

Пакупнік адпраўляе транзакцыю на адрас рэгістратара з камандай BUY у memo:

PiNS:1:BUY:{name}:{buyer_pivx_address}:{ed25519_pubkey}:{nonce}:{signature}

Сканер правярае:

  • Імя мусіць быць выстаўлена на продаж
  • Плацёж мусіць у дакладнасці супадаць з цаной аб'яўлення
  • Калі ўсё правільна: імя пераходзіць пакупніку, а выручка за вылікам сэрвіснай камісіі залічваецца на ўнутраны баланс прадаўца
  • Калі не: сродкі вяртаюцца на ўнутраны баланс пакупніка
tip

Калі некалькі чалавек захочуць купіць адно і тое ж імя адначасова, апрацавана будзе толькі першая транзакцыя, а астатнім сродкі вернуцца на ўнутраны баланс. Вывесці іх можна ў любы момант, проста ўказаўшы адрас для вываду на сайце.