EarthBucks Don’t Expire (But UTXOs Do): Here’s What You Need to Know

2024-12-08 · Ryan X. Charles

EarthBucks don’t expire. When you earn EarthBucks through any mechanism, such as mining, they are yours, permanently, forever. End of story.

Defining UTXO

The term “UTXO” stands for “unspent transaction output.” UTXOs are the outputs of a transaction where a value measured in adams (the smallest sub-unit of EarthBucks) is recorded. Spending EarthBucks means creating a new transaction containing an input that spends, i.e. signs, a previous output. The sum of UTXOs you control tells you what your balance of EarthBucks is.

Expiring and Recovering UTXOs

EarthBucks has a blockchain that works exactly like Bitcoin. In principle, there is no requirement for any UTXOs to expire. However, also like Bitcoin, EarthBucks has a notion of “standard scripts”. The only currently allowed standard scripts require all UTXOs to expire after 90 days. Additionally, before the UTXO expiry date is reached, a recovery key is activated after 60 days. Thus, because this is the only allowed script type, every UTXO on the EarthBucks blockchain currently uses earthbucks.com, the first mine, as the recovery provider. The intention is that users who do not cycle their UTXOs by hand will have their UTXOs cycled automatically.

Making Software Upgradeable

The primary reason UTXOs must be cycled at this time is that the blockchain needs to be upgradeable. I built EarthBucks as a solo developer, and knowing the high probability that I’ve made some sort of mistake, I wanted to make sure every aspect of the system could be upgraded, including the portion that spends UTXOs. Every aspect of EarthBucks can be upgraded with time, even the code that spends UTXOs. Bitcoin, by contrast, cannot be upgraded in this sense, because so long as there is any old UTXO out there, the code that spends that UTXO must be online forever, preventing that code from ever being altered or upgraded.

The Status of UTXO Cycling Software

I have not yet written any of the software that cycles UTXOs. Eventually, there will be a simple button the user can press to cycle their own UTXOs. If the user fails to cycle their own UTXOs for more than 60 days, the recovery service will be activated and will cycle the UTXOs for the user, possibly including a fee, which will probably be approximately 5% yearly. Thus, in practice, I expect most users will not notice the UTXO cycling process at all. And it is certainly not something you have to worry about. Inactive users may notice that they were charged a fee for maintaining their UTXOs while they were away.

I Wouldn’t Steal Your EarthBucks Even If I Could

And to be clear: Even if all UTXOs “expire” before I get around to writing the software that manages this, I will not be writing any code that steals your EarthBucks, and I will not allow users to submit transactions that steal EarthBucks. Only mines will have the ability to spend expired outputs, and they will only be spent if it is very clear, after a long time, that the user (and recovery service) has truly abandoned their EarthBucks. That will be well beyond the 90-day expiry, and it will be extremely rare, because it will require that both the user and the recovery service have lost their keys.

Other Reasons UTXOs are Cycled

Upgradeable software is the most important reason UTXOs expire. But there are others too. I have built many Bitcoin wallets in my career, and I assure you even the most sophisticated users lose their keys. Thus, it is very helpful if there is a way for users who lose their keys to recover their EarthBucks somehow. The recovery mechanism enables this. Users who lose their keys, but who have previously validated their identity through Identellica, will be able to prove their identity through non-cryptographic means, and thus recover their EarthBucks. The keys will never be recovered, but the EarthBucks will be.

Eliminating Recovery and Expiry Eventually

After many years, when the EarthBucks software is mature, and we do not need to worry about upgrading the software that spends UTXOs regularly, we may add new standard script types to EarthBucks that do not require, or at least significantly lengthen, the expiration timeline. For instance, what if instead of 90-day expiry, it was 10 years? Or 30 years? Or 100 years? Or infinite? It will always be possible to add new standard script types in the future to lengthen expiry. What is not possible is doing it the other way around. If I promise UTXOs never expire, then I cannot add in expiry code to unexpired UTXOs without breaking the contract with users. Thus, I had to have a reasonably short expiry time to start with, and I chose 90 days. Over time, we may lengthen this time, or even eliminate it entirely.

Conclusion

EarthBucks don’t expire. But UTXOs do. This is a temporary measure to ensure the software is upgradeable, and for other reasons, such as recovery. In the future, we may lengthen the expiry time, or even eliminate it entirely. But for now, you don’t have to worry about it. Just keep using EarthBucks as you always have.

More Information from the Blog


Earlier Blog Posts


Back to Blog

Home · About · Blog · Privacy · Terms
X · Telegram · Discord · reddit · GitHub
Copyright © 2024 Ryan X. Charles LLC