So, in summary, the following approach for a mining pool would work:
- Every share of Alice should correspond to a block that includes a pool transaction that pays some fixed amount (67.5 or some slightly lower) to the pool address.
- The reward will be paid to some public key chosen by Alice. say,
alice
. - The pool transaction must be funded from a box (i.e., UTXO) protected by the script
minerPubKey == alice|proveDLog(alice)
.