I'm looking to create a fork of bitcoin for fun, that implements the storage rent feature found in the Ergo project.
For those unfamiliar, this allows a third party, which will end up being a miner, generate transactions using someone else's UTXOs if they're over a certain age. This transaction must be sent to the owner of the input UTXOs, but the standard transaction fee can be taken out. This prevents coins from being burned or lost forever, helps consolidate UTXOs over time, and guarantees fees for miners after the block reward era. The negatives are its similarities to dystopic negative interest rates, and a dampening effect on bitcoin's scarcity. Whether or not this is a good idea, I want to implement it and test it out for fun.
I like the idea personally because I think everything in this world must be paid for, and coins being held forever are getting free security from the fees of new transactions, creating little incentive to move these coins and make renewed contributions to the network's security.
I could use some help finding where transaction signatures are checked, so I can add the condition that a transaction is valid without a valid signature if the inputs are 4 years (210,000 blocks) old by the next block, the output is going to the same address that the inputs are coming from, and the tx fee is reasonable. I'll have to formulate a standard for a "reasonable" fee as I go. I started digging through the bitcoin code, and was having trouble seeing one particular place to insert my changes.
I'm also unsure how to test the code. I'm not aware of any wallets that would allow me to create transactions with other people's UTXOs, so I might have to create that as well. If anyone is interested in working on this as well, I'd be happy for the help. If all goes well, I would move on to making miner code with MEV optimization, and submit a BIP. I don't really care if it would be accepted or rejected, since it's more about the experience for me.
Thanks!