It occurred to me that Proof of X realistically only requires a sacrifice that anyone can make (or at least a large enough subset of users). For example, PoW uses energy, PoS uses coindays, and PoB uses coins.
There's a fourth option I'll call Proof of Deposit. Basically you just lock your coins up for some particular length of time (like 20 weeks) and you're paid a bit for it. Technically this is similar to PoS/PoB (all three have almost the same economic implications) but provides more information to users at the expense of impulsive (but costly) attacks.
PoS destroys coindays, PoB destroys coins, PoD removes control of disbursement for some time.
Economically in all three cases coins are removed from the supply for some time and then reintroduced at a later time. In the interim all other coins should appreciate slightly in value. After that time has elapsed the miner is given a little reward and her coins back as thanks for making everyone a little wealthier for a bit.
The easiest way to manage this (from my perspective) would be to require each coinbase tx to have the following:
Inputs: X coins where X is the difficulty parameter, signed
Outputs: 1. Block reward to arbitrary key
2. Output leading back to owner for X after some time.
scriptPubKey for 2 might look like:
_OUTHEIGHT _INHEIGHT <depositTimeInBlocks> _ADD _GREATERTHAN _IF
(back to owner)
_ELSE _RETURN _ENDIF
OP_OUTHEIGHT pushes the height of the tx spending the output to the stack (IE most recent block, for all intents and purposes)
OP_INHEIGHT pushes the height of the block the tx was included in to the stack
I think it's important to stress that PoS/PoB/PoD
have the same economic implications but
different psychological implications.
For a blockchain to internally fuel itself there must be some internal resource which is sacrificed. Ultimately the only internal resources we have to sacrifice are the coins themselves, so it should come as no surprise that PoS/PoB/PoD look the same from a macroscopic perspective.