Replies: 3 comments 12 replies
-
A new signing key is required on each call to |
Beta Was this translation helpful? Give feedback.
-
Follow up design question here @jcnelson . Now that I've done some preliminary work on registering & updating signing keys in #4092, I have a general thought on when a pool operator submits the signing-key for all empty delegates. In the SIP draft & Clarity design doc it's mentioned that this should happen when the pool operator calls 'stack-aggregation-commit-indexed.' There's also another way to do this which I've done in the PR linked (using 'delegate-stack-stx'). They both have a few trade-offs & I'm curious to get your feedback/thoughts: 1. Using 'stack-aggregation-commit-indexed' If we go this route, we'd need to define this list per cycle per pox-reward which would mean an upper-limit on stackers per delegate. We'd also need to include a new map that we don't currently have (something like 'empty-key-delegates-per-pox-per-cycle'). 2. Using 'delegate-stack-stx' This second route we don't need a loop within 'stack-aggregation-commit-indexed' & can work without existing data structures. But this might assume that a pool operator knows which signing key they'll be using earlier than the other route? |
Beta Was this translation helpful? Give feedback.
-
Question about delegating signing responsibilities : currently, there is no way for a signer to accept or reject when a stacker delegates signing to the signer. Does it matter for signers? And for the blockchain? Is there a risk signing centralization? Furthermore, there are no economic incentives for signers to sign for more stackers than their own stacked stx. At the same time, stackers can easily delegate signing to any signer that published their signing key already. Are there (for example regulatory) constraints for a signer to only sign for the amount of locked stx that they control tbemself? |
Beta Was this translation helpful? Give feedback.
-
Might've missed it in the SIP but I couldn't find requirements on how often a new signing key is needed - I recall hearing that a new signing key mandatory per cycle? If yes, that leads to a few unanswered design questions that likely effect core stacking functions:
A. Solo stacker, solo signing -> if they stack for multiple cycles, do they need a setter to update the signing key per cycle?
B. Solo stacker, delegated signing -> if they delegate their signing for multiple cycles, what happens when that signer rotates to another key?
C. Delegated stacker, operator signing -> since delegated, no signing key is provided by stacker so operator can set signing-key whenever; however, this again asks if the operator needs a setter to update the signing key per cycle?
D. Delegated stacker, delegated signing -> if they delegate their signing for multiple cycles, what happens when that signer rotates to another key?
Opening this discussion for a better understanding of PoX-4 requirements if indeed signers are required to participate with a new signing key every reward cycle.
The solution will would likely involve an explicit "update-signing-key" function not currently accounted for in the designs.
Beta Was this translation helpful? Give feedback.
All reactions