Ethereum 2.0 proposal: balance and state expiry to reduce economic uncertainty.

nejucomonejucomo Member Posts: 40
**Quick Summary:** Expiring "unused" accounts and contracts would improve economic transparency and reduce uncertainty (as well as the less interesting benefit of reducing blockchain state size).

How much BTC is currently permanently lost? Compare two universes: in one, 99% of old BTC is permanently lost, and in the other 1%. The difference would seem to have drastic economic implications. If we could *know* which of these two cases our universe is in, it might make the BTC economy more stable, for example by reducing some amount of exchange price volatility.

With Ethereum, there's an additional issue with respect to lost keys: what if the private keys corresponding to special addresses in contracts are lost? For example, suppose there is a contract, C, which allows privileged operations if the sender has address A, and if the world knew for certain that A's private key was irrevocably lost, then people's decisions in interacting with C would be drastically different.

Finally, some people worry about block chain bloat due to contract state. (I'm not particularly worried about this compared to the economic issues above.)

A solution to all of this would be balance / state expiry. A simple rule could be to define a cutoff block height, which is the current block height minus some constant. For example maybe this roughly equates to a year or 10 years. Now, the "age" of a non-contract account would be defined by the last block in which a transaction was sent *from* that account. If that block height is lower than the cutoff block height, then any otherwise valid send is considered invalid. In that condition, there is no way to ever spend the ETH stored in that account. Similarly contracts might have a cutoff related to when they last received a transaction (or call message). The state for such contracts is permanently unavailable after some threshold, and can thus be pruned.

Again, in my opinion the real value of this is not in blockchain size reduction, but it economic transparency.



  • robmyersrobmyers Member Posts: 65 ✭✭✭
    Life insurance contracts, wills and other contracts that last over the lifetime of an individual might need more than ten years of existance without a transaction. You could tickle them, but that increases costs to the user above storage costs.
  • CfBCfB Member Posts: 29
    edited August 2014
    nejucomo said:


    U got rid of one problem and faced another - what magic number for expiration to choose. An incorrect choice may create problems much bigger than the existing ones. U should extend ur idea by proposing a way to choose a good expiration period. Voting of miners is the very first thing that comes to my mind.
  • nejucomonejucomo Member Posts: 40
    Good points, from both robmyers and CfB about how expiration may break some contracts and choosing the expiration time it an unsolved problem. I've been working on a contract for Ethereum 1.0 which may address some of my concerns without forcing all participants into the system.
  • StephanTualStephanTual London, EnglandMember, Moderator Posts: 1,282 mod
    Regarding your last point @nejucomo‌, we're currently looking into various options, including blockchain rent, or contract auto-suicide after a long enough enough time at 0 balance. No decision has been taken yet.
Sign In or Register to comment.