|
December 25, 2023, 01:58:13 PM |
|
Currently, if you use signet, you can see, that the signature for each block header, is stored in the coinbase transaction. Why it is the case? Because I can imagine a design, where blocks are unsigned, and then all needed signatures are stored separately, in a witness space. In that case, blocks could be moved between one test network and another, without the need of re-mining them, which can be useful in some test cases.
Also, in that case, signets could start with regtest difficulty, and then get adjusted over time. Because now, only nonce and difficulty is excluded, which means, that if the difficulty will grow, then it will require signing a lot of merkle roots, because of extra nonce. And that restriction is unnecessary, because blocks could be mined first, and then signatures could be provided later in the witness space, during a 100-block window, which is required anyway for coinbase maturity.
|