Author

Topic: How do clients enforce the 50 BTC generation rule? (Read 8181 times)

administrator
Activity: 5166
Merit: 12850
The block won't be accepted by legitimate users. See ConnectBlock in main.cpp:
Code:
    if (vtx[0].GetValueOut() > GetBlockValue(nFees))
        return false;
(Line 1089)
sr. member
Activity: 308
Merit: 256
Suppose one client decided to modify CBlock::GetBlockValue() which hardcodes 50 * COIN as nSubsidy to 1000 * COIN and they "complete a block", what would happen?  What line of code would catch this mis-match?

Shouldn't these kind of settings be in some kind of "config file" instead of distributed all over the code?   


When I tested that, the other clients would ignore the one that decided to generate 1000 BTC a block for example.
hero member
Activity: 770
Merit: 566
fractally
Suppose one client decided to modify CBlock::GetBlockValue() which hardcodes 50 * COIN as nSubsidy to 1000 * COIN and they "complete a block", what would happen?  What line of code would catch this mis-match?

Shouldn't these kind of settings be in some kind of "config file" instead of distributed all over the code?   

Jump to: