Controlling how hard it is to make usually creates supply problems.
Lack of supply in a base currency isn't a problem, in fact, it is a requirement
for currency to function. People will only accept something as payment if they want more of it than they currently have. Imagine if you will a planet made entirely of solid gold. On this hypothetical planet, everyone has as much gold as they could ever want and then some, so nobody would have any reason to accept it as payment. Trying to buy something on this planet with gold coins would be like trying to buy something on Earth with a handful of dirt. The excess supply of gold makes it worthless as a form of currency. Currency can only have value when it is scarce
Since bitcoins are divisible, it only creates a perception of undersupply. As demand for more resources and currency grows, there seems to be only a decrease in calculations in the algorithm to counter the automatic deflation of the currency. The threat of making a new block and blockchain from something previous is the limiting factor for the ease of calculations. I still don't understand why the self-regulation needs to be a calculation humbling cloud super-computing.
The purpose of the cloud supercomputing is not
to regulate the money supply, it to secure the network. The money supply isn't actaully "regulated" at all, in the traditional sense of the word. There is simply a fixed money supply which is distributed according to a fixed schedule to the people who contribute their computing power to the network.
I guess if the next block were discovered, and the couple of blocks after that, and the several after that were discovered by the same person, then in that time a resourceful hoarder could indeed record 'who traded what' according to their best interests.
It is true that miners can arbitrarily decide which transactions get included in a block, but there are few things to keep in mind:
1) Miners cannot forge or alter transactions; a transaction must be included exactly as it is, or else not at all.
2) Transactions that do not make it into the next block are still "remembered" by the network, and may be included in a future block. If one miner refuses to process certain transactions, this merely results in the transaction being delayed until a block is found by another miner who does decide to include the transaction.
3) Miners collect transaction fees. It is always
in a miner's "best interests" to include all fee-paying transactions no matter what, since including a transaction requires no more work than not including it.
Who controls the past controls the future even over 20 or 30 minutes with the way verification is structured. With high work requirements and demand, it's unlikely the same group/person would get the most recent blocks and corrupt them. A fix would be hard to come by with automatic acceptance of the newest blocks.
The newest blocks are not
automatically accepted. For a block to be accepted, it must meet the proof-of-work requirement and must not contain any invalid transactions. Additionally, if two conflicting blockchains are received, the one with which required the most work to produce is accepted, regardless of which one was received first.
I was thinking that with anything like a basis or alternative, the scenario could be averted because blocks would not be awesomely fungible. Maybe having something like a shared recognition of all blocks within the same time period (right after creation) would lessen the chance that corrupted blocks get the sort of system-shock acceptance seems possible.
Blocks are not fungible. Each is unique and impossible to forge. Any kind of "shared recognition" of blocks produced at the same time is impossible since the two blocks will contain different transactions (at the very least, the block reward will be paid to different addresses).