Hi Light, Thanks for the thoughtful questions! 1. The 546-satoshi threshold isn't intended to be permanently fixed in the protocol. I used this value as it matches Bitcoin Core's existing dust threshold for P2PKH outputs. I further noted in the proposal that a dynamic threshold would be more appropriate than a fixed one, since the dust threshold naturally fluctuates with network conditions. Wallet softwares could calculates what qualifies as "dust" based on current mempool conditions. And you are correct - users can designate any UTXO, but economically rational users will only choose those below the spendable threshold. This approach maintains my proposal's focus on economically unviable outputs while allowing flexibility as network conditions evolve. 2. Great point. I focused on simple key-controlled UTXOs (P2PKH, P2WPKH) for a couple of reasons: - They're straightforward to verify with a single signature - They represent a significant portion of dust UTXOs - Extending to complex scripts would substantially increase implementation complexity I deliberately targeted simple script types for the initial implementation to keep the proposal focused and feasible. However, future extensions could add support for multisig and other script-based dust once we establish the basic mechanism and validate its effectiveness. 3. You're right that the metadata requirements (txid: 32 bytes, vout: ~1-4 bytes, signature: ~64 bytes, prefix: ~7 bytes) has the risk of exceeding the standard 80-byte limit. If this is the case, we could use SegWit witness data instead of OP_RETURN. A new witness version could efficiently encode this information, drastically reducing on-chain bytes, or Implement Schnorr or aggregated signatures to reduce signature size. Economically, this would significantly reduce the transaction weight, making it viable even during periods of higher fees. Users would still only designate dust UTXOs when it makes economic sense based on current fee rates. I mentioned in passing these alternative methods in the proposal but I should clarify them as main solutions instead. 4.Does this method actually save any onchain bytes relative to "traditional spending"? - The proposal is less about byte savings (though I do think it offers benefits to it): Traditional spending of a dust UTXO requires: Input data (~148 vB for legacy inputs, ~68 vB for SegWit inputs) Output data (~31 vB per output) Transaction overhead My mechanism removes the need for users to include the full input scriptSig/witness data since miners claim the UTXO directly in their coinbase transaction. This is particularly efficient when users designate multiple dust UTXOs in a single transaction. 5. Is it worth a soft fork? I believe it is, for several reasons: The problem of Bitcoin dust is a growing issue - especially as adoption and price grows. It unlocks value currently trapped in dust UTXOs without requiring users to pay upfront fees It provides miners with an additional revenue source, which becomes increasingly important as block rewards diminish It efficiently cleans up the UTXO set, addressing a long-term scalability concern It improves Bitcoin's fungibility by providing a path for stranded satoshis to rejoin economic circulation I should clarify an important aspect: when miners "claim" dust UTXOs, these UTXOs are permanently destroyed, not retained in their original form. Their value is transferred directly into the miner's coinbase output as newly spendable satoshis. This permanent removal of unspendable UTXOs from the set is a key benefit. This mechanism is specifically limited to miner coinbase transactions because: Coinbase transactions already have special consensus rules that allow them to create outputs without standard input validation Restricting to coinbase transactions greatly simplifies security considerations Extending this capability to regular transactions would introduce significant risks and complexities Neither Lightning nor existing wallet techniques can economically address truly unspendable dust UTXOs without user-paid fees. Let me know what you think of these. Warm regards,, Nighttime On Saturday, March 8, 2025 at 4:23:34 PM UTC-6 Light wrote: > Hi Nighttime, > > Several questions come to mind: > > 1. Why fix the limit at 546 sats? Why not allow any UTXO to be spent this > way? > > 2. What about "dust" UTXOs owned by scripts rather than keys? e.g. multisig > > 3. The size of this OP_RETURN output could be a barrier, both technical > and economic: > > Technical: Based on the metadata contained in this output, this may be > larger than the current 80-byte OP_RETURN standardness limit. Is that > correct? If so, does this imply a need to increase this standardness limit, > or require an assumption that the user will find their own way to > circumvent this limit? e.g. using Libre Relay > > Economic: Depending on the size of this OP_RETURN output and the current > market fee rate, the value of the dust may still be uneconomical for the > miner to claim. For example, if the OP_RETURN output is 100 vB and the > current fee rate is 6 s/vB then a 546 sat dust output will not be > economical for the miner to include in their block. > > 4. Given the above considerations, I wonder how this proposal is an > improvement over the status quo at all. Does this method of spending a UTXO > via OP_RETURN actually save any onchain bytes relative to "traditional > spending"? And even if it does result in onchain byte savings in some or > all cases, is it really worth all of the effort of a soft fork and wallet > updates etc to allow them to become spendable this way if economic > realities could make them uneconomical to spend anyways should we > permanently transition to a paradigm of sufficiently high fee rates? > > Regards, > > Light > > On Sat, Mar 8, 2025, at 1:23 PM, Nighttime Satoshi wrote: > > Dear fellow Bitcoin developers, > > > > I'm excited to share a proposal addressing a long-standing Bitcoin > > challenge: economically unviable dust UTXOs. > > As Bitcoin's value and transaction fees increase, more UTXOs become > > effectively unspendable because the cost to move them exceeds their > > value. This creates a growing dust horizon - small amounts of BTC > > permanently stranded from circulation, weakening fungibility and > > bloating the UTXO set. > > > > I'm proposing a solution that enables users to voluntarily designate > > their dust UTXOs as transaction fees through cryptographic > > authorization, allowing miners to claim them directly without requiring > > traditional spending. This is a win-win-win solution for users > > (reclaiming otherwise stranded value), miners (additional fee income), > > and the network (reduced UTXO set size). > > > > Key Features: 1. *Entirely Voluntary* - Users must explicitly authorize > > any dust UTXO transfer with cryptographic signatures proving ownership > > 2. *Implementation as Soft Fork* - Backward-compatible with > > non-upgraded nodes > > 3. *Simple Security Model* - Uses familiar signature verification > > without exposing private keys > > 4. *Clearly Defined Dust Threshold* - Fixed at 546 satoshis, matching > > Bitcoin Core's existing dust limit > > 5. *Race Condition Prevention* - Comprehensive safeguards against > > double-spend and miner race conditions > > 6. *Minimal Consensus Impact* - Carefully designed to introduce > > minimal complexity to Bitcoin's validation logic > > Economic Benefits: 1. *UTXO Set Cleanup* - Removing millions of dust > > UTXOs could significantly reduce the UTXO set size > > 2. *Enhanced Fungibility* - Provides a pathway for stranded satoshis > > to rejoin economic circulation > > 3. *Long-term Miner Incentive* - Creates an additional fee source as > > block rewards diminish > > 4. *Complementary to Existing Solutions* - Works alongside batching, > > consolidation, and Lightning Network > > Technical Implementation: > > The proposal uses a special OP_RETURN output format in transactions to > > designate dust UTXOs for miner claiming: > > > > OP_RETURN > > > > Miners can claim these UTXOs in their coinbase transaction if and only > > if the corresponding designation transaction is included in the same > > block. > > > > Historical Context & Contributions: > > It seems that previous discussions on dust UTXOs have considered many > > approaches, including forced reclamation. This proposal avoids those > > controversies by requiring explicit user authorization while still > > providing an economically rational path for dust cleanup. > > > > You can read the full proposal draft here: > > > https://github.com/satoshinotebook/BIPs/blob/main/unlocking-dust-utxos-as-transaction-fees.md > > > > I'd appreciate feedback on: > > > > 1. Technical feasibility of the soft fork implementation > > 2. Security considerations and potential edge cases > > 3. Economic incentive alignment > > 4. User experience concerns for wallet implementations > > Thank you for any feedback! I believe it offers a practical solution to > > a growing challenge that will only become more significant as Bitcoin > > continues to mature and evolve. > > > > With respect, > > > > Nighttime Satoshi > > > > nighttim...@gmail.com > > > > https://satoshinotebook.com > > > > > > -- > > You received this message because you are subscribed to the Google > > Groups "Bitcoin Development Mailing List" group. > > To unsubscribe from this group and stop receiving emails from it, send > > an email to bitcoindev+...@googlegroups.com. > > To view this discussion visit > > > https://groups.google.com/d/msgid/bitcoindev/62b454f8-56be-4eae-ba3e-57c53d493f3dn%40googlegroups.com > > < > https://groups.google.com/d/msgid/bitcoindev/62b454f8-56be-4eae-ba3e-57c53d493f3dn%40googlegroups.com?utm_medium=email&utm_source=footer > >. > -- You received this message because you are subscribed to the Google Groups "Bitcoin Development Mailing List" group. To unsubscribe from this group and stop receiving emails from it, send an email to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/e02354e1-19c9-420d-86bb-d052668d8805n%40googlegroups.com.