Difference between revisions of "User:Gmaxwell/utxo spring cleaning"

From Bitcoin Wiki
Jump to: navigation, search
(change rounding)
m (additions)
Line 11: Line 11:
 
* Functionality to aid people in automatically 'giving away' configurable very small payments, e.g. you set it so that if you receive a payment less than 0.00001 you'll author a OP_RETURN,0 output ANYONE_CAN_PAY|NONE transaction and broadcast it. Many of these can be merged to give away this dust to miners.
 
* Functionality to aid people in automatically 'giving away' configurable very small payments, e.g. you set it so that if you receive a payment less than 0.00001 you'll author a OP_RETURN,0 output ANYONE_CAN_PAY|NONE transaction and broadcast it. Many of these can be merged to give away this dust to miners.
 
* Change rounding to avoid change:
 
* Change rounding to avoid change:
** on sending a payment there should be an option to round the payment up by up to [configurable] if doing so will eliminate change. This is useful when sending funds to persistent "accounts"
+
** on sending a payment there should be an option to round the payment up by up to [configurable] if doing so will eliminate change. This is useful when sending funds to persistent bank-like "accounts" owned by the same user. E.g. I want to send 10 BTC to foo-exchange, but I'd be just as happy to send 10.009123184.
 
** There should be an adjustable option to round down change to zero, converting it to fees. We already do this for >0.01 for free transactions to avoid mandatory fees, but it could be made more general and configurable.
 
** There should be an adjustable option to round down change to zero, converting it to fees. We already do this for >0.01 for free transactions to avoid mandatory fees, but it could be made more general and configurable.
 
* Mining logic to merge up ANYONE_CAN_PAY|NONE transactions
 
* Mining logic to merge up ANYONE_CAN_PAY|NONE transactions
 
* UTXO cleaning contest: Get money from BTC foundation (and perhaps other interested parties), every UTXO destroyed which was created before some date (perhaps Aug 1st 2013) gets entered into a lottery, perhaps with some weight to inverse-btc days destroyed. Big BTC payouts in the lottery to encourage people to dig up old and inactive wallets with dust.
 
* UTXO cleaning contest: Get money from BTC foundation (and perhaps other interested parties), every UTXO destroyed which was created before some date (perhaps Aug 1st 2013) gets entered into a lottery, perhaps with some weight to inverse-btc days destroyed. Big BTC payouts in the lottery to encourage people to dig up old and inactive wallets with dust.
 
** perhaps only those submitted via ANYONE_CAN_PAY|NONE to some site, to avoid sending winnings to dead keys or disinterested users, perhaps don't require utxo submission but allow people to claim credit for their UTXO cleanup via some signmessage stuff.
 
** perhaps only those submitted via ANYONE_CAN_PAY|NONE to some site, to avoid sending winnings to dead keys or disinterested users, perhaps don't require utxo submission but allow people to claim credit for their UTXO cleanup via some signmessage stuff.

Revision as of 23:35, 14 August 2013

A brief plan to improve the state of the UTXO

  • relay policy adjustments to make very tiny notification/data-storage payments unattractive
  • OP_RETURN exclusion from UTXO set (almost done)
  • Coin control (almost done)
  • free transaction policy biasing priority in favor of txn that reduce utxo set size
  • wallet fragmentation visualization tool
  • Adjust coin selection to attempt to spend whole privacy groups, subject to transaction size limits and some change size targeting.
    • Requires making the address grouping stuff more computationally efficient.
  • Functionality to aid people in automatically 'giving away' configurable very small payments, e.g. you set it so that if you receive a payment less than 0.00001 you'll author a OP_RETURN,0 output ANYONE_CAN_PAY|NONE transaction and broadcast it. Many of these can be merged to give away this dust to miners.
  • Change rounding to avoid change:
    • on sending a payment there should be an option to round the payment up by up to [configurable] if doing so will eliminate change. This is useful when sending funds to persistent bank-like "accounts" owned by the same user. E.g. I want to send 10 BTC to foo-exchange, but I'd be just as happy to send 10.009123184.
    • There should be an adjustable option to round down change to zero, converting it to fees. We already do this for >0.01 for free transactions to avoid mandatory fees, but it could be made more general and configurable.
  • Mining logic to merge up ANYONE_CAN_PAY|NONE transactions
  • UTXO cleaning contest: Get money from BTC foundation (and perhaps other interested parties), every UTXO destroyed which was created before some date (perhaps Aug 1st 2013) gets entered into a lottery, perhaps with some weight to inverse-btc days destroyed. Big BTC payouts in the lottery to encourage people to dig up old and inactive wallets with dust.
    • perhaps only those submitted via ANYONE_CAN_PAY|NONE to some site, to avoid sending winnings to dead keys or disinterested users, perhaps don't require utxo submission but allow people to claim credit for their UTXO cleanup via some signmessage stuff.