• About
  • FAQ
  • Earn Bitcoin while Surfing the net
  • Buy & Sell Crypto on Paxful
Newsletter
Approx Foundation
  • Home
    • Home – Layout 1
  • Bitcoin
  • Ethereum
  • Regulation
  • Market
  • Blockchain
  • Business
  • Guide
  • Contact Us
No Result
View All Result
  • Home
    • Home – Layout 1
  • Bitcoin
  • Ethereum
  • Regulation
  • Market
  • Blockchain
  • Business
  • Guide
  • Contact Us
No Result
View All Result
Approx Foundation
No Result
View All Result
Home Bitcoin

bitcoin core – Would a “Bulk Dust” relay/consensus rule (limiting 100+ sub-1,000-sat outputs, plus a ratio check) be effective without negative effects?

Moussa by Moussa
October 28, 2025
in Bitcoin
0
peer discovery – how to obtain the IP addresses of nodes for mining pools?
189
SHARES
1.5k
VIEWS
Share on FacebookShare on Twitter


I’m exploring a potential solution to discourage UTXO-bloat patterns without touching Script or witness semantics. This rule simply flags “bulk dust” transactions that create many very low-value outputs:

  • Threshold: at least 100 outputs with value < 1,000 sats
  • Ratio: those “tiny” (sub-1,000 sat) outputs are ≥ 60% of all outputs in the Tx

The goal isn’t to eliminate all arbitrary data uses, but to raise costs for patterns most associated with UTXO growth (cheap, “bulk dust” Txs), while leaving typical payments, channel opens, and one-off inscriptions unaffected.

Patterns this would limit (not necessarily eliminate)

  • Fake pubkeys hiding data (UTXO fan-outs)
  • Bitcoin STAMPS / UTXO-art using many dust UTXOs
  • BRC-20 batch mints that fan out tiny outputs
  • Some batched Ordinal inscriptions that spread data/state across many small UTXOs
  • Dust bombing (tracking) / UTXO squatting / resource-exhaustion attempts
  • Mass micro-airdrops of sub-1k-sat outputs (collateral effect)

Non-goals / Not covered

  • Single/few-output inscriptions with large witness data (these wouldn’t trigger the “bulk dust” heuristic)
  • Any scheme that simply uses ≥1,000 sat per output (economically more expensive but still valid)

Why a ratio + count?

Requiring both (tiny_count ≥ 100) and (tiny_count / total_outputs ≥ 0.6) reduces false positives (e.g., big custodial batch payouts with a mix of values). It focuses on transactions that are mostly made of dust-like outputs.

Ask

  • Are there credible, non-spam use-cases that need ≥100 sub-1k-sat outputs with ≥60% tiny ratio in one tx?
  • Are there policy pitfalls I’m missing (e.g., fee market dynamics, odd coinbase behaviors, privacy tools)?
  • Any prior art or measurements you can point to about the prevalence of such transactions?

(with syntax highlighting here: https://pastebin.com/tYsvDh2R)

RELAY POLICY FILTER sketch —

// Place in /policy/policy.cpp, and call from within IsStandardTx() before returning:
//     if (IsBulkDust(tx, reason))
//         return false;   // reject as nonstandard


bool IsBulkDust(const CTransaction& tx, std::string& reason)
{
    static constexpr CAmount MIN_OUTPUT_VALUE_SATS = 1000;   // < 1000 sats counts as "tiny"
    static constexpr int     MAX_TINY_OUTPUTS      = 100;    // >= 100 tiny outputs triggers ratio check
    static constexpr double  TINY_RATIO_THRESHOLD  = 0.6;    // >= 60% of all outputs tiny = reject
 
    int tiny = 0;
    const int total = tx.vout.size();
 
    // Sanity check — avoid division by zero
    if (total == 0)
        return false;
 
    // Count any spendable output under 1000 sats as "tiny"
    for (const auto& out : tx.vout) {
        if (out.nValue < MIN_OUTPUT_VALUE_SATS)
            ++tiny;
    }
 
    // Threshold + ratio check
    if (tiny >= MAX_TINY_OUTPUTS && (static_cast(tiny) / total) >= TINY_RATIO_THRESHOLD)
    {
        reason = strprintf("too-many-tiny-outputs(%d of %d, %.2f%%)", tiny, total, 100.0 * tiny / total);
        return true;  // flag as bulk dust
    }
 
    return false;
}

CONSENSUS (soft-fork, hybrid activation) sketch —

// Helpers in /consensus/tx_check.cpp; activation/enforcement in /validation.cpp
// Also define deployment in: /consensus/params.h, /chainparams.cpp, /versionbits.*

 
// -----------------------------------------------------------------------
// --- In /consensus/tx_check.cpp (helper only; no params needed) ---
// -----------------------------------------------------------------------
 
static constexpr CAmount MIN_OUTPUT_VALUE_SATS = 1000;   // < 1000 sats counts as "tiny"
static constexpr int     MAX_TINY_OUTPUTS      = 100;    // >= 100 tiny outputs triggers ratio check
static constexpr double  TINY_RATIO_THRESHOLD  = 0.6;    // >= 60% of all outputs tiny = reject
 
bool IsBulkDust(const CTransaction& tx)    // expose via tx_check.h if needed
{
    int tiny = 0;
    const int total = tx.vout.size();
 
    // Sanity check — avoid division by zero
    if (total == 0)
        return false;
 
    // Count any spendable output under 1000 sats as "tiny"
    for (const auto& out : tx.vout) {
        if (out.nValue < MIN_OUTPUT_VALUE_SATS)
            ++tiny;
    }
 
    // Threshold + ratio check
    if (tiny >= MAX_TINY_OUTPUTS && ((static_cast(tiny) / total) >= TINY_RATIO_THRESHOLD))
        return true;
    
    return false;
}
 
 
// -----------------------------------------------------------------------
// --- In /validation.cpp (enforcement with hybrid activation) ---
// -----------------------------------------------------------------------
 
#include 
#include 
 
// ... inside the appropriate validation path (e.g., after basic tx checks),
// with access to chainparams/params and a tip pointer:
 
const Consensus::Params& params = chainparams.GetConsensus();
 
const bool bulk_dust_active =
    DeploymentActiveAtTip(params, Consensus::DEPLOYMENT_BULK_DUST_LIMIT) ||
    (chainActive.Tip() && chainActive.Tip()->nHeight >= params.BulkDustActivationHeight);
 
if (bulk_dust_active) {
    if (IsBulkDust(tx)) {
        return state.Invalid(TxValidationResult::TX_CONSENSUS, "too-many-tiny-outputs");
    }
}
 
 
// -----------------------------------------------------------------------
// --- In /consensus/params.h ---
// -----------------------------------------------------------------------
 
enum DeploymentPos {
    // ...
    DEPLOYMENT_BULK_DUST_LIMIT,
    MAX_VERSION_BITS_DEPLOYMENTS
};
 
struct Params {
    // ...
    int BulkDustActivationHeight; // height flag-day fallback
};
 
 
// -----------------------------------------------------------------------
// --- In /chainparams.cpp (per-network values; examples only) ---
// -----------------------------------------------------------------------
 
consensus.vDeployments[Consensus::DEPLOYMENT_BULK_DUST_LIMIT].bit = 12;
consensus.vDeployments[Consensus::DEPLOYMENT_BULK_DUST_LIMIT].nStartTime = 1767225600;  // 2026-01-01 UTC
consensus.vDeployments[Consensus::DEPLOYMENT_BULK_DUST_LIMIT].nTimeout   = 1838160000;  // 2028-04-01 UTC
consensus.vDeployments[Consensus::DEPLOYMENT_BULK_DUST_LIMIT].min_activation_height = 969696;
 
consensus.BulkDustActivationHeight = 1021021;  // flag-day fallback



Source link

Related articles

Stephen Hawking’s Warning That AI Amplifies the Illusion of Knowledge

Stephen Hawking’s Warning That AI Amplifies the Illusion of Knowledge

October 11, 2026
Ledger halts CryptoBilis after $86M wallet drain

Ledger halts CryptoBilis after $86M wallet drain

October 11, 2026
Share76Tweet47

Related Posts

Stephen Hawking’s Warning That AI Amplifies the Illusion of Knowledge

Stephen Hawking’s Warning That AI Amplifies the Illusion of Knowledge

by Moussa
October 11, 2026
0

Key TakeawaysStephen Hawking’s warning about the “illusion of knowledge,” often attributed to Daniel Boorstin, captures how easily confidence can be...

Ledger halts CryptoBilis after $86M wallet drain

Ledger halts CryptoBilis after $86M wallet drain

by Moussa
October 11, 2026
0

Join Our Telegram channel to stay up to date on breaking news coverage Ledger has halted sales by its Southeast...

Bitcoin Drawdown Analysis Maps a $74,500 Level if Losses Deepen

Bitcoin Drawdown Analysis Maps a $74,500 Level if Losses Deepen

by Moussa
October 11, 2026
0

Key TakeawaysThe 2022-2025 bull cycle had an average drawdown of 7.58%.Reaching $74,500 would mean another 7.34% drop from the cited...

Arthur Hayes Sees Mega Crypto Bull Run Beyond AI Encryption Fears

Arthur Hayes Sees Mega Crypto Bull Run Beyond AI Encryption Fears

by Moussa
October 11, 2026
0

Key TakeawaysHayes compares 2026 AI fears with three earlier periods of disruption.His separate AI-bust thesis anticipates multitrillion-dollar support.His earlier bitcoin...

Bitcoin Could Reach $30 Trillion Like Gold, Bitwise CIO Says

Bitcoin Could Reach $30 Trillion Like Gold, Bitwise CIO Says

by Moussa
October 11, 2026
0

Key TakeawaysBitwise’s CIO sees substantial potential gains over a 10-year horizon.Hougan compares bitcoin with gold’s rise from roughly $2.5 trillion.He...

Load More

youssufi.com

sephina.com

[vc_row full_width="stretch_row" parallax="content-moving" vc_row_background="" background_repeat="no-repeat" background_position="center center" footer_scheme="dark" css=".vc_custom_1517813231908{padding-top: 60px !important;padding-bottom: 30px !important;background-color: #191818 !important;background-position: center;background-repeat: no-repeat !important;background-size: cover !important;}" footer_widget_title_color="#fcbf46" footer_button_bg="#fcb11e"][vc_column width="1/4"]

We bring you the latest in Crypto News

[/vc_column][vc_column width="1/4"][vc_wp_categories]
[/vc_column][vc_column width="1/4"][vc_wp_tagcloud taxonomy="post_tag"][/vc_column][vc_column width="1/4"]

Newsletter

[vc_raw_html]JTNDcCUzRSUzQ2RpdiUyMGNsYXNzJTNEJTIydG5wJTIwdG5wLXN1YnNjcmlwdGlvbiUyMiUzRSUwQSUzQ2Zvcm0lMjBtZXRob2QlM0QlMjJwb3N0JTIyJTIwYWN0aW9uJTNEJTIyaHR0cHMlM0ElMkYlMkZhcHByb3gub3JnJTJGJTNGbmElM0RzJTIyJTNFJTBBJTBBJTNDaW5wdXQlMjB0eXBlJTNEJTIyaGlkZGVuJTIyJTIwbmFtZSUzRCUyMm5sYW5nJTIyJTIwdmFsdWUlM0QlMjIlMjIlM0UlM0NkaXYlMjBjbGFzcyUzRCUyMnRucC1maWVsZCUyMHRucC1maWVsZC1maXJzdG5hbWUlMjIlM0UlM0NsYWJlbCUyMGZvciUzRCUyMnRucC0xJTIyJTNFRmlyc3QlMjBuYW1lJTIwb3IlMjBmdWxsJTIwbmFtZSUzQyUyRmxhYmVsJTNFJTBBJTNDaW5wdXQlMjBjbGFzcyUzRCUyMnRucC1uYW1lJTIyJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBuYW1lJTNEJTIybm4lMjIlMjBpZCUzRCUyMnRucC0xJTIyJTIwdmFsdWUlM0QlMjIlMjIlM0UlM0MlMkZkaXYlM0UlMEElM0NkaXYlMjBjbGFzcyUzRCUyMnRucC1maWVsZCUyMHRucC1maWVsZC1lbWFpbCUyMiUzRSUzQ2xhYmVsJTIwZm9yJTNEJTIydG5wLTIlMjIlM0VFbWFpbCUzQyUyRmxhYmVsJTNFJTBBJTNDaW5wdXQlMjBjbGFzcyUzRCUyMnRucC1lbWFpbCUyMiUyMHR5cGUlM0QlMjJlbWFpbCUyMiUyMG5hbWUlM0QlMjJuZSUyMiUyMGlkJTNEJTIydG5wLTIlMjIlMjB2YWx1ZSUzRCUyMiUyMiUyMHJlcXVpcmVkJTNFJTNDJTJGZGl2JTNFJTBBJTNDZGl2JTIwY2xhc3MlM0QlMjJ0bnAtZmllbGQlMjB0bnAtcHJpdmFjeS1maWVsZCUyMiUzRSUzQ2xhYmVsJTNFJTNDaW5wdXQlMjB0eXBlJTNEJTIyY2hlY2tib3glMjIlMjBuYW1lJTNEJTIybnklMjIlMjByZXF1aXJlZCUyMGNsYXNzJTNEJTIydG5wLXByaXZhY3klMjIlM0UlQzIlQTBCeSUyMGNvbnRpbnVpbmclMkMlMjB5b3UlMjBhY2NlcHQlMjB0aGUlMjBwcml2YWN5JTIwcG9saWN5JTNDJTJGbGFiZWwlM0UlM0MlMkZkaXYlM0UlM0NkaXYlMjBjbGFzcyUzRCUyMnRucC1maWVsZCUyMHRucC1maWVsZC1idXR0b24lMjIlM0UlM0NpbnB1dCUyMGNsYXNzJTNEJTIydG5wLXN1Ym1pdCUyMiUyMHR5cGUlM0QlMjJzdWJtaXQlMjIlMjB2YWx1ZSUzRCUyMlN1YnNjcmliZSUyMiUyMCUzRSUwQSUzQyUyRmRpdiUzRSUwQSUzQyUyRmZvcm0lM0UlMEElM0MlMkZkaXYlM0UlM0NiciUyRiUzRSUzQyUyRnAlM0U=[/vc_raw_html][/vc_column][/vc_row]
No Result
View All Result
  • Contact Us
  • Homepages
  • Business
  • Guide

© 2024 APPROX FOUNDATION - The Crypto Currency News