Mercado
Los nombres pueden comprarse y venderse a través de un mercado con depósito en garantía integrado. Todos los pagos están completamente blindados.
El depósito en garantía es de custodia, y conviene precisar qué significa eso. El comprador paga a la dirección de protocolo del registrador; el registrador retiene los fondos, transfiere el nombre y abona al vendedor en su saldo interno el importe descontada la comisión del servicio. El vendedor retira cuando quiere. Así que el registrador es realmente un agente de depósito: retiene el dinero de una parte hasta que se cumple la obligación de la otra.
Lo que no es: un depósito en garantía sin confianza en la cadena. No hay ningún contrato inteligente que libere los fondos automáticamente; la custodia del registrador es custodia de verdad. Lo que la limita es que las obligaciones son calculables públicamente — consulte Confianza y privacidad para conocer la invariante de saldo que cualquiera puede auditar y el único punto en el que la custodia no es verificable desde fuera.
El consentimiento del vendedor a la venta es su LST firmado previamente, cuyo precio queda
fijado en el árbol de estado: un BUY solo es válido a exactamente ese precio, y en el momento
de la compra no se necesita ninguna firma del vendedor.
Vender
El vendedor firma una solicitud LIST mediante una transacción en la cadena y compone un memo con el comando LIST:
PiNS:1:LST:{name}:{ed25519_pubkey}:{price}:{nonce}:{signature}
Con esto el nombre queda publicado en el Mercado.
- el precio es un número entero de satoshis y debe ser mayor que cero (1 PIVX = 100 000 000 satoshis)
- LIST puede enviarse de nuevo sobre un nombre ya publicado para cambiar su precio; gana la publicación más reciente
Si cambia de opinión
El vendedor siempre puede retirar el dominio del Mercado enviando una transacción en la cadena con un memo que contenga el comando UNLIST:
PiNS:1:ULT:{name}:{ed25519_pubkey}:{nonce}:{signature}
Con esto el nombre se retira del Mercado.
Los comandos se procesan uno a uno en la cola ordenada por la cadena de bloques de PIVX. Esto significa que su comando UNLIST debe recibirse antes que el comando BUY de otra persona.
PIVX Names no controla el orden de las transacciones: depende por completo de cómo PIVX produce los bloques y del orden de los índices de transacción dentro de cada bloque.
Comprar
El comprador envía una transacción a la dirección del registrador con un comando BUY en el memo:
PiNS:1:BUY:{name}:{buyer_pivx_address}:{ed25519_pubkey}:{nonce}:{signature}
El escáner valida:
- El nombre debe estar a la venta
- El pago debe coincidir exactamente con el precio publicado
- Si es válido: el nombre pasa al comprador y los ingresos, descontada la comisión del servicio, se abonan al saldo interno del vendedor
- Si no es válido: se reembolsará en el saldo interno del comprador
Si varias personas quieren comprar el mismo nombre a la vez, solo se procesará la primera transacción y a las demás se les reembolsará el importe en su saldo interno. El usuario puede retirar los fondos en cualquier momento indicando simplemente una dirección de retirada en el sitio web.