So there's this magical limit of ~21 million bitcoins that can theoretically exist at max. Many assumptions about the future of bitcoin are based on this number.
How easy / hard would it be to change this limit? It seems,
this function controls how many coins are given to miners for solving a block. If developers decided to change this function, the 21 million number would change too, right? Or is the 21 million number somehow coded deeper in the system?
I'm still working through understanding the Bitcoin protocol, but there's also these lines
/** No amount larger than this (in satoshi) is valid */
static const int64 MAX_MONEY = 21000000 * COIN;
inline bool MoneyRange(int64 nValue) { return (nValue >= 0 && nValue <= MAX_MONEY); }
from the
main.h file. I'm not sure what exactly this limits, (the amount of BTC in a single account, the amount of BTC in a transaction?) and would be curious if a more advanced programmer could explain it to me. This probably isn't considered to be coded any "deeper" in the system, as it's not something stored back in an early block, but it seems to be some other kind of constraint on the number of coins.