Im just going through some guides on how to setup a pool. the CoinCashew (CC) guide in particular. In the CC guide they assert that the owner and the operator in their example is the same account (or set of keys). Im getting a bit confused at trying to work out at which address the pool fee (500ADA) gets removed (or locked up) and which address needs to have that amount in it. I understand the KES, node.cert and VRF parts ok, so i dont need to go through this.
Say if i want to setup the pool where the Owner just has the pledge amount in some address and the Operator is a separate entity that has keys to an address that has the pool fee in it. (below understanding of how this would happen → need confirmation)
Also the rewards account, who own this and who generates it, the Owner or the Operator?
Ill lay out my understanding of a psudo-guide so far in a nut shell after the cold-keys have been created:
- Create a Owner/Operator payment.skey/vkey pair
- Create a Owner/Operator stake.skey/vkey pair
- Build a stake.addr using the stake.vkey
- Build a payment.addr that is a combined enterprise and reward address using the payment.vkey & stake.vkey
at this point i assume one would fund the payment.addr with an amount of ADA not less than pool_fee + pledge amount + some_tx_fees
- Register the stake address on chain by producing a stake.cert using the stake.vkey and submitting it to the network.
- Create a pool.cert (and submit it to the network) that includes the pledge amount, and is using the parameters:
--pool-reward-account-verification-key-file stake.vkey \ --pool-owner-stake-verification-key-file stake.vkey \
So the reward account is the same as the stake account?
- Create a delegation certificate and submit it wot the network, using the Owner/Operator stake.vkey, cold node.vkey. (is this the point where the balance of address associated with the stake.vkey is checked for the pool_fee ?)
How would if look if i wanted the Operator and Owner to be separate? do i just create an
Owner payment.skey/vkey & stake.vkey/skey pair and an Operator payment.skey/vkey & stake.vkey/skey pair and build:
Then make sure the operator_payment.addr has the pool_fee in it
and make sure the owner_payment.addr has the pledge amount in it
Then register both stake address (owner_stake.cert & operator_stake_cert) ?
When at step 6, i only use the operator_stake.vkey when generating the pool.cert
when at step 7, i only use the owner_stake.vkey when creating the delegation.cert
Thanks for the help all