Cómo funciona la votación
Un voto consta de dos partes: Voto a Favor y Voto en Contra. Voto en Contra es un voto para destitución, mientras que Voto a Favor es un voto para determinar quién debería convertirse en network steward en caso de destitución.
Un network steward se representa como un script de salida de transacción en lugar de una clave codificada en el script. Una forma sencilla de obtener el script para una dirección dada es enviarle algo de dinero y luego explorar la transacción en bruto y copiar la salida.
Al explorar una transacción de coinbase, podemos ver la salida que se paga al network steward https://explorer.pkt.cash/address/ y el script de esta salida es 0020d5c1005c0d4012d3ae2672319e7f9eb15a57516aeefabbbc062265f67e308f2
$ ./bin/pktctl getrawtransaction 505d2750577a3d3c739c2a650ec0e03a7ddb1f81080c820ab1a317575020745b 1 { "hex": "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff10022913000b2f503253482f706b74642fffffffff03cac2a6ee0000000 01976a9147d9df4279212fd7def4c47abf2d5f3a6c6eaf4ae88ac362f5f3b00000000220020d5c1005c0d4012d3ae2672319e7f9eb15a57516aeefabbbc062265f67e308f2b000000000000 0000326a3009f91102ffff7f20c70542e4ca2363ce0149e845305f25564e7ce81e33411ad570df0f56f387462021cd01000000000000000000", "txid": "505d2750577a3d3c739c2a650ec0e03a7ddb1f81080c820ab1a317575020745b", "hash": "505d2750577a3d3c739c2a650ec0e03a7ddb1f81080c820ab1a317575020745b", "size": 203, "vsize": 203, "version": 1, "locktime": 0, "vin": [ { "coinbase": "022913000b2f503253482f706b74642f", "sequence": 4294967295 } ], "vout": [ { "value": 40.0390625, "n": 0, "scriptPubKey": { "asm": "OP_DUP OP_HASH160 7d9df4279212fd7def4c47abf2d5f3a6c6eaf4ae OP_EQUALVERIFY OP_CHECKSIG", "hex": "76a9147d9df4279212fd7def4c47abf2d5f3a6c6eaf4ae88ac", "reqSigs": 1, "type": "pubkeyhash", "addresses": [ "pGzmtW4Q2v4AWHcX8TYGqG5c1Eh5Ykg6fX" ] } }, { "value": 9.9609375, "n": 1, "scriptPubKey": { "asm": "0 d5c1005c0d4012d3ae2672319e7f9eb15a57516aeefabbbc062265f67e308f2b", "hex": "0020d5c1005c0d4012d3ae2672319e7f9eb15a57516aeefabbbc062265f67e308f2b", "reqSigs": 1, "type": "witness_v0_scripthash", "addresses": [ "pkt1q6hqsqhqdgqfd8t3xwgceulu7k9d9w5t2amath0qxyfjlvl3s3u4sjza2g2" ] } }, { "value": 0, "n": 2, "scriptPubKey": { "asm": "OP_RETURN 09f91102ffff7f20c70542e4ca2363ce0149e845305f25564e7ce81e33411ad570df0f56f387462021cd010000000000", "hex": "6a3009f91102ffff7f20c70542e4ca2363ce0149e845305f25564e7ce81e33411ad570df0f56f387462021cd010000000000", "type": "nulldata" } } ], "blockhash": "c77d9026867de1455e573eb47bd3322548fd537b29ed9296a004a00f43d1da18", "confirmations": 3, "time": 1566221646, "blocktime": 1566221646 }
Si verificamos nuevamente consultando pktd para averiguar cuál es el network steward, veremos que muestra el script al que se le pagó.
$ ./bin/pktctl getnetworksteward { "script": "0020d5c1005c0d4012d3ae2672319e7f9eb15a57516aeefabbbc062265f67e308f2b", "votesagainst": 0, "totalpossible": 21985819476623360 }
Así que si quisiéramos, por ejemplo, cambiar el network steward a https://explorer.pkt.cash/address/pGzmtW4Q2v4AWHcX8TYGqG5c1Eh5Ykg6fX , quisiéramos votar por el script correspondiente 76a9147d9df4279212fd7def4c47abf2d5f3a6c6eaf4ae88ac, y, por supuesto, probablemente quisiéramos votar en contra del network steward actual también.
Cómo votar
La votación se realiza configurando tu billetera para votar; cada vez que gastes dinero, tu billetera incluirá un voto en cada pago futuro de PKT que realices. Si deseas acelerar el proceso de votación, puedes configurar tu billetera para votar y luego transferir todo tu PKT a otra billetera para asegurarte de que todos estén votando.
Para configurar tu billetera para votar a favor de https://explorer.pkt.cash/address/pGzmtW4Q2v4AWHcX8TYGqG5c1Eh5Ykg6fX y en contra de https://explorer.pkt.cash/address, debes seguir el siguiente flujo de trabajo:
$ ./bin/pktctl --wallet getnetworkstewardvote {} $ ./bin/pktctl --wallet setnetworkstewardvote default 76a9147d9df4279212fd7def4c47abf2d5f3a6c6eaf4ae88ac 0020d5c1005c0d4012d3ae2672319e7f 9eb15a57516aeefabbbc062265f67e308f2b {} $ ./bin/pktctl --wallet getnetworkstewardvote { "votefor": "76a9147d9df4279212fd7def4c47abf2d5f3a6c6eaf4ae88ac", "voteagainst": "0020d5c1005c0d4012d3ae2672319e7f9eb15a57516aeefabbbc062265f67e308f2b" }
Recursos
- Telegram: https://t.me/pktpal
- Matrix: https://matrix.to/#/#pkt:matrix.org
- IRC: #pkt@freenode.net