Bitcoin Forum
May 08, 2024, 08:29:12 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Deleting abandoned UTXO  (Read 1542 times)
jl2012 (OP)
Legendary
*
Offline Offline

Activity: 1792
Merit: 1097


View Profile
July 21, 2015, 10:54:31 AM
Last edit: July 21, 2015, 02:51:14 PM by jl2012
 #1

There are some ways to limit the growth of UTXO set:

1. Discouraging creation of new UTXO --- fee and relay rules

2. Encouraging consumption of UTXO --- fee reduction and relay rules

3. Limit the delta-UTXO-size for each block --- softfork/hardfork

However, some small UTXOs may never be economic to spend, or the private keys are simply lost. I bet this is not a new idea but I think we should consider to delete those "abandoned" UTXOs.

That would be too controversial if we are trying to delete any existing UTXOs. Therefore, this proposal applies only to new UTXOs.

This is a softfork:

1. 0-value outputs are not spendable

1a. (variation) 0-value outputs must be spent within 5,000,000s

2. An output of 1 satoshi must be spent within 10,000,000s (3.8 months) after it is created. The creation time and the deadline are both determined by the block timestamp.

3. As the value doubles, the deadline is extended by 10,000,000s. For example, with 1.34217728BTC (2^27), the UTXO can stay untouched for 280,000,000s (8.87 years)

4. No interpolation: e.g., the deadline for 1.34217727BTC is 270,000,000s after creation. In practice, it just measures the length of value in binary with leading zeros removed, and multiplies the length with 10,000,000. The code should be simple.

5. Bitcoin in deleted UTXOs are lost permanently. Most commercial banks will just confiscate your money if the account is dormant for many (say 5) years. The blockchain bank, however, will just delete the record.

The initial value of 10,000,000s is chosen, so that assuming the extreme case of 1BTC = 1,000,000USD, an UTXO with 128 satoshi (1.28USD) will still have 2.5 years to spend. Anything with at least 327.68USD will have minimum 5 years of storage period.

------------------

The arguments for this proposal are:

1. Limiting the growth of UTXO set.

2. No one should assume that other people would store data for free indefinitely.

3. Stabilizing Bitcoin's value if we could prove some bitcoins are really lost.

4. The original "Bitcoin contract" is not violated if the proposal is not applied to existing UTXOs

The arguments against this proposal are:

1. It opens a Pandora's box of confiscating bitcoin

2. It will create more on-chain transactions as people are forced to move their bitcoin. Enough block size is needed to make sure people will not lose bitcoin due to lack of block size.

Donation address: 374iXxS4BuqFHsEwwxUuH3nvJ69Y7Hqur3 (Bitcoin ONLY)
LRDGENPLYrcTRssGoZrsCT1hngaH3BVkM4 (LTC)
PGP: D3CC 1772 8600 5BB8 FF67 3294 C524 2A1A B393 6517
1715200152
Hero Member
*
Offline Offline

Posts: 1715200152

View Profile Personal Message (Offline)

Ignore
1715200152
Reply with quote  #2

1715200152
Report to moderator
TalkImg was created especially for hosting images on bitcointalk.org: try it next time you want to post an image
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
July 21, 2015, 02:31:54 PM
 #2

Your rules are too complicated.

Let us create hardfork with a rule(s):
1) all unspent outputs with an age of X blocks ( X > 366307 at least ) are unspendable.
2) all amounts of these outputs go to the miners reward

And now we can determine the exact number of X.  Grin
TierNolan
Legendary
*
Offline Offline

Activity: 1232
Merit: 1083


View Profile
July 21, 2015, 02:51:58 PM
 #3

A compromise would be to have a rule to allow UTXOs to be "revived".  This would require a proof that the output actually exists and no double spends happen.

I wonder if it would be possible to have a UTXO commitment that you can store the legacy path and combine it somehow with the live path to prove that the output exists.

1LxbG5cKXzTwZg9mjL3gaRE835uNQEteWF
jl2012 (OP)
Legendary
*
Offline Offline

Activity: 1792
Merit: 1097


View Profile
July 21, 2015, 04:54:20 PM
 #4

A compromise would be to have a rule to allow UTXOs to be "revived".  This would require a proof that the output actually exists and no double spends happen.

I wonder if it would be possible to have a UTXO commitment that you can store the legacy path and combine it somehow with the live path to prove that the output exists.

This defeats one of the purposes of the proposal: to prove that some coins are irrecoverably lost and we could forget them forever.

A problem of the current Bitcoin social contract is that people assume that everything valid today is still valid after 100 years. They may sign a tx timelocked for 100 years and assume that will be confirmed eventually. This assumption limits all sorts of consensus fork as we could not introduce any rules with potential to confiscate coins.

This also create instability in the value of bitcoins. Satoshi and other early miners own millions of bitcoin and we don't even know if they are still alive or whether the keys were lost. As I explained in OP I am not asking to delete their UTXOs but we should avoid this kind of dormant coins in the future.



Your rules are too complicated.

Let us create hardfork with a rule(s):
1) all unspent outputs with an age of X blocks ( X > 366307 at least ) are unspendable.
2) all amounts of these outputs go to the miners reward

And now we can determine the exact number of X.  Grin


I suppose you are joking but that will provide an incentive for miners not to confirm tx as they could take the money

Donation address: 374iXxS4BuqFHsEwwxUuH3nvJ69Y7Hqur3 (Bitcoin ONLY)
LRDGENPLYrcTRssGoZrsCT1hngaH3BVkM4 (LTC)
PGP: D3CC 1772 8600 5BB8 FF67 3294 C524 2A1A B393 6517
amaclin
Legendary
*
Offline Offline

Activity: 1260
Merit: 1019


View Profile
July 21, 2015, 05:16:30 PM
 #5

I suppose you are joking but that will provide an incentive for miners not to confirm tx as they could take the money

Yes, something like
https://en.wikipedia.org/wiki/Unexpected_hanging_paradox
The owner of funds must transfer them to new block before miners take his utxo. Point.
The miner will confirm his transaction because of fee attached to it.
DumbFruit
Sr. Member
****
Offline Offline

Activity: 433
Merit: 263


View Profile
July 21, 2015, 05:41:16 PM
Last edit: July 21, 2015, 06:00:28 PM by DumbFruit
 #6

I don't see why proposal's like Amaclin's are particularly bad. Sure there's an incentive for miners to reject transactions in order to confiscate the property but it's not likely because it would damage the fungibility of the very currency they're trying to acquire, and because a collusion of 50% of the hash-power represents a broken system anyway, and finally because the user can always pay a fee that outweigh's the potential benefit of the colluding miners.

Expanding on that last point, if you had 1000 btc and you wanted to move it to another address, 51 out of 100 miners (Each have 1% of total hashpower for simplicity.) could reject all of your transactions to get potentially 19.6 btc a piece. The sender could provide a 19.61 fee, and suddenly the incentive to collude is gone. So even in the unlikely event that half the hashpower will collude against one address, the conspiracy could be foiled by just paying a high enough fee to at least compete with the least significant reward of one of the colluding participants.

If something like Confidential Transactions is implemented, then it wouldn't be possible to reward the contents of the outputs to the miners. There would be no reward or maybe an inflationary reward.

By their (dumb) fruits shall ye know them indeed...
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4172
Merit: 8417



View Profile WWW
July 22, 2015, 06:34:09 PM
 #7

1. 0-value outputs are not spendable
This would greatly reduce the scope of functionality introducable in future soft-forks.  E.g. CT like private values could no longer deployed, soft-fork increases in coin precision, etc.
TierNolan
Legendary
*
Offline Offline

Activity: 1232
Merit: 1083


View Profile
July 22, 2015, 11:12:35 PM
 #8

This defeats one of the purposes of the proposal: to prove that some coins are irrecoverably lost and we could forget them forever.

The problem is that each UTXO requires unprunable space on every node.

The revival would require that the spender provide additional information than a normal transaction.  Effectively, the spender has to prove that the UTXO is valid.

This may be possible with UTXO set commitments of some kind.

1LxbG5cKXzTwZg9mjL3gaRE835uNQEteWF
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4172
Merit: 8417



View Profile WWW
July 23, 2015, 04:08:38 AM
 #9

This may be possible with UTXO set commitments of some kind.
This is the argument for TXO commitments.  But it's a storage vs bandwidth tradeoff, instead of storing a (say) 64 byte UTXO entry you need a 2.5KB proof when its spent. It takes some pretty tortued assumptions about storage vs bandwidth costs to make this win unless you assume a very low probablity of being spent and only use the proofs for accurately predicted low probablity of spend transactions.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!