stacks-network / stacks-core

The Stacks blockchain implementation
https://docs.stacks.co
GNU General Public License v3.0
3.01k stars 670 forks source link

Nakamoto Signer[3.0] - Update the current signer module to `signer_v1`and create a new `signer_v0` module that has an analogous `Signer` struct #4777

Closed saralab closed 5 months ago

saralab commented 6 months ago

stacks-signer

The signer module should become signer_v1. A new signer_v0 module should be created that has an analogous Signer struct. This Signer struct’s main point of entry should be process_event, much like the current Signer struct. It will need to handle MinerMessages, BlockValidationResponse, StatusCheck, and NewBurnBlock.

With the first version, to get to parity with signer_v1, signer_v0::Signer only needs to read miner messages for block proposals, submit the proposal to the validation endpoint, and broadcast a signature over StackerDB.

This will require some refactoring of the message code in libsigner (to support the new “block signature” message), as well as a routine for performing the signature (this should be roughly identical to the code the miner uses to sign a block).

### Tasks
- [ ] https://github.com/stacks-network/stacks-core/issues/4783
- [ ] https://github.com/stacks-network/stacks-core/issues/4784
- [ ] https://github.com/stacks-network/stacks-core/issues/4785
blockstack-devops commented 2 weeks ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.