We all know that it's trivial to get the next block value for all these variable/superblock coins.
But is it possible to do variable rewards without all miners knowing what's coming next?
I think yes. And to do it you need to use the
current block hash. But it will involve some changes.
Each individual miner will have to decide on a block value before mining a block. This is required because the block value is in the coinbase. And the coinbase is in the block header via the transactions hash merkle root. And of course the
block header is what we use to get the ultimate block hash that seeds the random generator.
For example: ExampleCoin has variable block values from 1 to 100.
A valid ExampleCoin block must meet the difficulty level AND meet the 'chance' level.
Chance level is defined as: 1 / BlockValue.
A block with 1 examplecoin would have a chance level of 1/1, or 100%. It doesn't matter what the rest of the block Hash is, it will always be good.
A block with 2 examplecoins would have a chance level of 1/2, or 50%. All the way up a block with 100 examplecoins would have a chance level of 1/100, or 1%. For all these, to be a valid block: a random number derived from the current block hash must beat the chance.
Please poke some holes in this idea before I'm forced to code it up and release it as a new altcoin.