-
Notifications
You must be signed in to change notification settings - Fork 725
[Refactor] MN operator key migration to BLS #2421
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Refactor] MN operator key migration to BLS #2421
Conversation
b87e47f to
c22940a
Compare
72cab72 to
1451764
Compare
|
Finally rebased on master. Ready to go. |
104ee73 to
d26563e
Compare
furszy
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Re-reviewed till d26563ebc92d8991fcd934394a25ac399b2685cc, looking great ☕. Left few more comments
As we spoke via pm, would be better to move the last two mn payments related commits to another PR so this one is only scoped to the MN operator key migration to BLS.
Aside from that, i'm ready to ACK it :).
these will be used by mnw/fbv for deterministic masternodes, after switching the operator keys to BLS
-BEGIN VERIFY SCRIPT- sed -i 's/keyIDOperator/pubKeyOperator/g' src/*.h src/*.cpp src/*/*.h src/*/*.cpp; sed -i 's/operatorAddress/operatorPubKey/g' src/*.h src/*.cpp src/*/*.h src/*/*.cpp; -END VERIFY SCRIPT-
Also add methods to parse bls public/secret keys. These will be used by the protx_* commands after the switch of operator keys to BLS.
Only the secret key and the collateral out are needed to vote/sign
1b43f3e to
d3843cd
Compare
|
Rebased on master, feedback tackled, and last 2 commits moved to #2584. |
furszy
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
great, ACK d3843cd
Fuzzbawls
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK d3843cd
e8559fc [Refactor] make AddWinningMasternode a void function (random-zebra) 5aaa02a [Test] add mnwinner case for non-existent MN. (furszy) e68773b [Refactor] Fix checks order for mnw processing (random-zebra) Pull request description: Extracted from #2421 (and based on top of it) so #2550 can be merged in between. ACKs for top commit: furszy: utACK e8559fc after rebase Tree-SHA512: 659d4ca43502f8e1e8f6ddbf7c815f6a07a69625f00c8ab71b7d8e9c97b85e90d97b18ccc988dcfd4d345d5f79932128abdaa0f0634380be7d715d3a3e45c6fc
This builds on top of:
As per title, introduce BLS keys/signatures for messages signed by the masternode operator (which is a requirement for DIP 6, and subsequent upgrades).
generateblskeypairreturns a new publickey/secretkey BLS keypair.CDeterministicMNState::keyIDOperatoris now aCBLSLazyPublicKey(instead of aCKeyID), and it's renamedpubKeyOperator.-mnoperatorprivatekeyflag takes a BLS secret key in hex format.CActiveMasternodeInfostores aCBLSPublicKey/CBLSSecretKey