Can on-chain script address be used staking pool reward address?


I’m still learning Plutus, but I think I got a pretty good hang of it, at least conceptually.

I want to write a smart contract for staking pool so that pool owners don’t have to trust pool operator on distributing the rewards. So that idea is that any reward would be locked by the script. When it reaches certain amount or certain period, a distribution of reward to the owners will be distributed.

From this, it seems that the reward account address should be the smart contract script. Is this understanding correct?

Rewards are distributed by the protocol itself and stake pool operators, owners, and delegates have nothing to do with how rewards are calculated and distributed. So this is outside the realm of smart contract capability unless you are referring to “rewards” in terms of minted fungible tokens for a custom liquidity pool or something other than ADA?

@DinoDude he wrote “distribution to pool owners” not to delegators.

Yes, it makes sense, but you will have to make the address include a staking address, in order to be able to use it for the staking rewards. And of course you will need to sign some transactions with the staking key.

1 Like

Thanks for confirming the idea. And good suggestion on the staking address.

For a smart contract script, what is considered as payment private/public key pair? I don’t seem to see any. Without them I’m not sure how to generate stake address, delegation certificate, etc.