* Re: [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) [not found] <mailman.48662.1670246787.956.bitcoin-dev@lists.linuxfoundation.org> @ 2022-12-05 15:19 ` John Carvalho 2022-12-05 21:14 ` Erik Aronesty 2022-12-12 2:27 ` ZmnSCPxj 0 siblings, 2 replies; 6+ messages in thread From: John Carvalho @ 2022-12-05 15:19 UTC (permalink / raw) To: Bitcoin-Dev, angus [-- Attachment #1: Type: text/plain, Size: 9029 bytes --] > > The perception seems to be that Core adding the full RBF option is > increasing the risk to zero-conf users, but I'm not convinced that that is > the case. If this "perception" were not true, RBF & full-RBF would not be necessary at all. Think about it. It's always been the risk of getting double-spent out of hundreds or > thousands of bitcoins that's worth seriously worrying about, which is much > more the kind of attack a determined attacker is able to carry out. The risk exposure to merchants providing zero-conf acceptance as a service is finite, capped by their risk-tolerance, and capped by the current block exposure. Merchants cap their exposure to be an amount worth less than the value of this service. It is highly inefficient and difficult for a miner to pull off an industry-wide attack across diverse merchants to capture the current maximum exposure in any given block, not to mention the enormous surface area of legal risk across jurisdictions... I don't think zero-conf opponents properly grasp that the risk exposure is exact and perfectly, trustlessly manageable. I would like the opportunity to spec the methods Bitrefill, Synonym, and most such merchants, use to make it standard practice, as it is cheaper for merchants and more convenient to Bitcoin consumers when merchants behave this way. As has been pointed out by may others before, full RBF is aligned with > miner (and user) economic incentives This is a theory, not a fact. I can refute this theory by pointing out several aspects: 1. RBF is actually a fee-minimization feature that allows users to game the system to spend the *least* amount in fees that correlates to their time-preference. Miners earn less when fees can be minimized (obviously). This feature also comes at an expense (albeit small) to nodes providing replacement service and propagation. 2. Miners care about max fees per block, not slightly increased fees on a minority % of incidentally replaced txns when they happen to need it. They want the most txns for the highest price per *block*. In order to qualify for zero-conf acceptance, merchants require that the fee rate match or exceed an amount that makes the txn likely to be included in the very next block. This creates a priority competition from users with high time-preference. This creates not only more fees for miners, but more txns from more people using the chain for commerce. This is evidenced by stats provided recently to this mailing list, but here are more numbers from Bitrefill: https://github.com/bitcoin/bitcoin/pull/26525#issuecomment-1332823282 3. Miners ultimately want what users want, as more users = more txns = more fees = higher BTC price. For all of Bitcoin's history, more users have wanted zero-conf than replacements. This is evidenced by first-seen policy thriving for years without disruption (until engineers actively disrupted it, using fallible theories as justification). This is also evidenced by the UASF battle where miners capitulated to providing the type of blocks that users demanded, to avoid uncertainty. 4. A replaceable mempool is inherently less valuable than a first-seen policy mempool in that Bitcoin is ultimately a ledger for a *payments* system where people are trying to pay and be paid with certainty. A full-RBF system would result in more real-world doublespends to existing merchants and p2p commerce, as it is impossible to fully teach all aspects of Bitcoin dynamics to users, particularly when they have enjoyed many years of first-seen behavior as status quo. Zero-conf and first-seen policies are clearly more incentive-compatible than RBF outright for these reasons. The long-term 'what to do about it' is to use Lightning if you want fast > payments with risk-free instant settlement Many zero-conf proponents work on the bleeding edge of supporting Lightning, including myself. Lightning is not risk-free and the base layer should not be assuming it as a primary dependency for commercial payments. The UX and complexity of supporting Lightning is still considerable, adoption is still very low, and there are many unsolved attack vectors and risks that remain untested due to Lightning's low prevalence. Further, zero-conf is also useful as a tool in improving Lightning onboarding, rebalancing, splicing, and UX overall. Bitcoin second-layers are only as good as the base layer, everything else is a tradeoff. Bitcoin core 24 with the full RBF option is already out in the wild at > around 5%+ of running nodes and growing, so it's too late to kill it. This is pure speculation. If Bitcoin Core publishes an update without the mistakenly-rushed feature, the mempoolfullrbf movement is likely to die on the vine as users opt into the latest versions more and more, as evidenced by all older versions decreasing in usage over time. The incentive to run old versions, just to be able to force non-RBF txns to be treated as RBF, is lower than the incentive and likelihood of updating. Frankly, such an incentive is mostly obscure, vindictive, and perverse, IMO. We should remove the mempoolfullrbf feature immediately from Bitcoin Core distributions, as requested here: https://github.com/bitcoin/bitcoin/pull/26525 This mistake demands correction, and no one has provided a rational beneficial argument so far for breaking the user space and disrupting mempool harmony. If you would like further arguments and refutations of full-RBF, please read all of the posts in my PR thread: https://github.com/bitcoin/bitcoin/pull/26525 Thank you, -- John Carvalho CEO, Synonym.to <http://synonym.to/> Date: Mon, 05 Dec 2022 12:21:44 +0000 > From: angus <angus@toaster.cc> > To: Daniel Lipshitz <daniel@gap600.com>, Bitcoin Protocol Discussion > <bitcoin-dev@lists.linuxfoundation.org> > Subject: [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate > danger > Message-ID: > > <-C_sX7ApYy_2MgXfl7e1ONddIi9gtET5jV4MTl_F_CstCvTuV0vTFfazF7tKBd53o6QbZ1xygayPIaCVjDyV-9yklnfk_t0IH23rw2LtqKQ=@toaster.cc> > > Content-Type: text/plain; charset="utf-8" > > Core adding full RBF is a change of node policy that may be highly > inconvenient for zero-conf users, but there has always been and will always > be a risk of a double-spend for anyone that treats zero-confirmation > transactions as settled. It's literally in the name - this transaction has > zero confirmations and no guarantee it'll make it into a block, and so has > not yet settled. > > The perception seems to be that Core adding the full RBF option is > increasing the risk to zero-conf users, but I'm not convinced that that is > the case - someone wanting to double-spend attack you isn't going to be > bothered to do so over a few thousand sats (unless they can do it thousands > of times), and losing a few thousand sats to a double-spend isn't the > biggest deal. > > It's always been the risk of getting double-spent out of hundreds or > thousands of bitcoins that's worth seriously worrying about, which is much > more the kind of attack a determined attacker is able to carry out. Such a > determined attacker is much more likely to attempt and succeed at a sybil > attack, or directly colluding with a miner. So your zero-conf risk > increases non-linearly as the amount of bitcoin being transacted grows. > (caveat: this paragraph is opinion). > > There does, however, seem to be a legitimate business for providing > insurance/risk management for people that are willing to accept the > zero-conf risk - it is pretty similar to accepting credit cards with a > chargeback risk or any payment card with a capture risk, though there's > no-one to mediate a dispute. On-chain is final. > > But what doesn't make any sense is trying to avoid Bitcoin Core and nodes > from adopting a full RBF policy to try to protect this use case. As has > been pointed out by may others before, full RBF is aligned with miner (and > user) economic incentives and is a node policy, not consensus, so you can't > even tell which nodes are doing it nor can you prevent them from doing so. > Second, Bitcoin core 24 with the full RBF option is already out in the wild > at around 5%+ of running nodes and growing, so it's too late to kill it. > > So my point is that relying on node policy as part of your protection for > zero-conf transaction acceptance is fragile, and should not be relied upon. > The protocol rules have always tacitly allowed double-spending before a > confirmation, and it has always been clear that there's no consensus on > which transactions have occurred until they have in a block and have > at-least one confirmation. > > The long-term 'what to do about it' is to use Lightning if you want fast > payments with risk-free instant settlement, or as above, accept the > zero-conf risk and cover yourself with an insurance premium (e.g. a margin > on transactions that goes into an insurance fund, and limiting max > transaction amount so you're not exposed to uncoverable losses if you do > get double-spend attacked) > > Angus > [-- Attachment #2: Type: text/html, Size: 11258 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) 2022-12-05 15:19 ` [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) John Carvalho @ 2022-12-05 21:14 ` Erik Aronesty 2022-12-09 15:58 ` angus 2022-12-12 2:27 ` ZmnSCPxj 1 sibling, 1 reply; 6+ messages in thread From: Erik Aronesty @ 2022-12-05 21:14 UTC (permalink / raw) To: John Carvalho, Bitcoin Protocol Discussion [-- Attachment #1: Type: text/plain, Size: 1506 bytes --] > > > > Many zero-conf proponents work on the bleeding edge of supporting > Lightning, including myself. Lightning is not risk-free and the base layer > should not be assuming it as a primary dependency for commercial payments. > for low-value payments, lightning is the only workable version because the current low-fee environment is not scalable and never will be for high valued payments, zero conf was never valuable or useful and never can be - it was always the beneficence of users you are relying on low fee/high fee double spends of a zero conf with no rbf flag has been demonstrated, repeatedly ad nauseum. ... so there is no long term scenario where zero conf is valuable. right *now* with low fees it might "seem nice", but really it just incentivises network-wide surveillance, increased peer burden on nodes, and unsustainable practices that are akin to a "mev" bounty hanging over merchant's heads. also, i've been using bitcoin for years without zero conf. selling and buying online. operating merchants with millions in transactions. the 20 minute wait before i ship is meaningless, and the only risk i take on is that a user replaces a transaction with a different destination. which i've never observed. even with the flag on (which i dont care about, and never have). and if i do observe it ... i just won't ship. it was easy to code up. the user will have to initiate a new tx. i have no objection to a user being able to cancel their order. why would i? > [-- Attachment #2: Type: text/html, Size: 1998 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) 2022-12-05 21:14 ` Erik Aronesty @ 2022-12-09 15:58 ` angus 2022-12-13 12:55 ` Anthony Towns 0 siblings, 1 reply; 6+ messages in thread From: angus @ 2022-12-09 15:58 UTC (permalink / raw) To: Erik Aronesty; +Cc: Bitcoin Protocol Discussion, John Carvalho [-- Attachment #1.1.1: Type: text/plain, Size: 3449 bytes --] I think the fundamental disagreement here that's causing the controversy and impasse is this: Those in favour of Full RBF see trusting and relying on predictable mempool policy as a fundamentally flawed bad idea. Node policy is not a consensus rule - a miner has always been allowed to produce a block in the way a Full RBF node now would. An otherwise valid block that contains a tx that your not-full-RBF node ignored because it double-spent an earlier lower fee tx that didn't opt in to RBF is still a valid block. Knowing this, we conclude that it doesn't matter how useful or widely used Zero Conf is, it is fundamentally unsafe and should be actively discouraged, and changing mempool policy is a way to do this. The existence of Lightning as an alternative for immediate settlement makes this case stronger. (As I see it) those that oppose Full RBF and want Zero Conf use to continue argue that node mempool policy can and has been relied upon for a long time already, and argue (rightly) that Zero Conf acceptance is already widely used and useful for both customers and merchants. Further arguing that Full RBF can be sucessfully unshipped, which requires that majority of node operators don't particularly care about it. Lastly, that neither miners nor users have an economic incentive to switch to Full RBF from the current core First-Seen policy. (Am I missing something else?) --- I have sympathy for the utility argument, but to me it's completely overpowered by the "node policy is not consensus and not trustworthy" argument. Zero Conf acceptance rests on trusting that nodes are running with a first-seen policy. Just because this has worked out OK so far, doesn't mean that you won't get got bigtime in the future. You can accept this risk if you want to, but it shouldn't be a soft-rule that everyone else running a node should please help reduce that risk for you. Sure, if I'm selling something on eBay or whatever for 100k sats and someone wants to pay in BTC in person, I'll accept with zero confirmations because there's a degree of trust and the risk isn't unbearable. If I'm accepting BTC as a company though, no, I'm not considering zero-confirmation transactions as settled. I don't think the economic incentive argument currently matters all that much - miners want to maximise fees, users want to minimise, it's hard to tell which policy would have the higher overall fees for miners, and who wins miners-vs-users. This would also seem to depend on how wallets do or don't make use of the new RBF option (particularly hard for multisig). There is still an obvious incentive for someone to double-spend attack a Zero-Conf merchant, though. I could be convinced to reverse my stance and oppose Full RBF if there was a strong economic argument that miners (better still, miners and users) should oppose it, because that would imply first-seen is incentive aligned. Aligning policy with incentives feels like the correct principle. But for now, I want to run a Full RBF node because I see it as ultimately making Bitcoin stronger. It eliminates a use-case that takes risk. Accepting Zero Conf changes from "hrm, you shouldn't really do that but it works most of the time" to "no, really don't do that, you will probably lose money". Perhaps this is actually somewhat "vindictive, and perverse" as John said, but Bitcoin is money for enemies. Thanks, Angus [-- Attachment #1.1.2.1: Type: text/html, Size: 6893 bytes --] [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 249 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) 2022-12-09 15:58 ` angus @ 2022-12-13 12:55 ` Anthony Towns 0 siblings, 0 replies; 6+ messages in thread From: Anthony Towns @ 2022-12-13 12:55 UTC (permalink / raw) To: angus, Bitcoin Protocol Discussion; +Cc: John Carvalho On Fri, Dec 09, 2022 at 03:58:37PM +0000, angus via bitcoin-dev wrote: > Those in favour of Full RBF see trusting and relying on predictable > mempool policy as a fundamentally flawed bad idea. I don't believe that claim is true, at least in general: the motivation for the -mempoolfullrbf PR was to make mempool policy behave in a way that was (believed to be) more reliable and predictable than the current behaviour. In particular, if you can't rely on predictable relay/mempool policy, you can't build "fraud proof" protocols on top of the blockchain: whether that be like lightning today, which relies on people being able to get a penalty transaction mined in a reasonable amount of time, or lightning in the future which in an eltoo world relies on getting an update transaction mined in a similar amount of time, or optimistic rollups that offer the ability for people to challenge with a fraud proof. I think the basis for the fullrbf vision is more that fullrbf advocates think miners will always want to optimise fees in the short term: that is, given two conflicting transactions H and L, if including H in the block gives a higher total reward for that block than including L, they will always want to include H. Presuming that is a common attitude amongst miners, fullrbf is a natural outcome: those miners will advertise how to connect to their nodes, and anyone who prefers H over L will send H to them directly, and H will be mined and L will not be. I think it's fair to say that's what people mean when they talk about "incentive compatible" -- miners want to see the highest fee alternative of a transaction, and are "incentivised" by fees to do so, so relaying that transaction is "incentive compatible" while relaying lower fee alternatives is "incentive incompatible". That can be a stable outcome too: if it's common to have multiple transactions like that, then the pools that take the higher fee transactions will give higher payouts per hashrate, and owners of mining hardware will switch to those pools, so that the amount of hashrate accepting replacements will tend towards 100%. That scenario is already the case for opt-in RBF. However, expecting pools/miners to optimise fees in the short term is an assumption, not the economic fact of life that some seem to assume it is. It's also possible that owners of ASICs or pool operators will decide that they're in this for the long term, and therefore that it's smarter to look at fee income over multiple blocks, rather than taking each block as its own entity. Similar to treating the prisoner's dilemma as a one-off game (where the dominant strategy is to always defect) versus an iterated game (where cooperation or tit-for-tat may be better strategies). In particular, the outcome of fullrbf might not simply be the rosy scenario: + there are just as many txs paying similar fees as there now, except that + it's easy for people to cancel mistakes, and + people stop complaining to wallet authors when their opt-in rbf tx takes longer to confirm than they expected but might instead be either: + everyone using BTC for payments switches to lightning, causing - on-chain traffic to drop and fee income to drop with it or - everyone paying for goods/services online with cryptocurrency switches to stablecoins or ETH or Liquid or RSK, - bitcoin traffic and tx fees drop substantially as a result, - and bitcoin price drops too as people switch to hodling their hot wallet balances in stablecoins and ETH which pool operators or hashrate owners might consider to not be in their best interests. Sergej's numbers at https://github.com/bitcoin/bitcoin/pull/26525#issuecomment-1332823282 suggest bitefill's zeroconf txs alone account for something like 0.5% of on-chain txs. I'm not really sure how to interpret the numbers Daniel Lipshitz/Max Krupyshev reported; "700+ inputs a month" doesn't sound like very many, but "300k incoming transactions" would be 35 years worth of 700 inputs per month, so something doesn't add up... The gap600 webpage from 2018 cites 3 million Bitcoin txs over about 13 months, which would be about 230k/month, which would be roughly 3% of on-chain txs at the moment. It's not clear to me what that adds up to; is reducing tx volume by perhaps 5% or 10% a big deal? Given fee income is maybe 2% of the block reward at the best of times, reducing it by 5% (to 1.9%) probably doesn't matter directly, but then, nor would increasing it by 5%. So if there's a negative effect on demand for bitcoin because it becomes slower and less widely accepted, driving its price down, though, that probably dominates. Is that likely to be signficant? No idea. Is there some counterveiling effect where mempoolfullrbf would make bitcoin more desirable, increasing demand and hence increasing its price? I can't see one. (The original reasoning for the mempoolfullrbf option was that it would allow new use cases, namely collaborative funding of coinjoins or lightning channels with less risk of getting your utxo stuck without being able to blame whoever was causing it to get stuck, which would have added a potential for both more fees from additional txs, and more demand due to those use cases. Without that actually working as hoped, we just have fewer on chain txs and worse demand in every scenario, as far as I can see) This isn't necessarily an incredibly stable equilibrium: once somewhere around 10%-30% of hashrate is mining with fullrbf, presumably that would make it too easy to cheat anyone willing to accept txs signalling first-seen-final with 0 confirmations and they'll stop doing that, and if the consequences are that everyone switches to lightning or stablecoins and ETH, then that's all there is to it; it doesn't really matter what the remaining 70%-90% of hashrate does, so at that point they might as well do fullrbf as well, even if it only gets them a few pennies more. But it's certainly possible for 95%+ of hashrate to decide that continuing to ignore high fee replacements is in their best interests over the long term -- that's how things are working currently, and how they've worked for some years now. It's also how we'll want things to work if we want anti-pinning schemes like those proposed for version-3 relay to be effective. One reason we might hope that miners will take a long-term view and (presuming the long-term view is actually in favour of zeroconf) decide to keep supporting zeroconf, even if we don't care about zeroconf ourselves, is that miners prioritising long term income is arguably one of plausible ways we can prevent 51% attacks from being a dominant strategy. If miners are only focussing on immediate revenue, then case #4 in section 3.1 of [0] applies, so 51% attacks are likely to be possible and profitable, whereas if miners are focussing on bitcoin's long term value proposition, then reorgs due to successful 51% attacks can be expected to trigger a decline in the value of their investment in mining equipment, causing case #4 not to apply. This is a similar argument to that presented in section 2.3 of [1]. [0] https://www.nber.org/papers/w24717 [1] https://uncommoncore.co/wp-content/uploads/2019/10/A-model-for-Bitcoins-security-and-the-declining-block-subsidy-v1.02.pdf Of course, that only needs perhaps 30%-50% of hashpower to be thinking long term, rather than 70%-90%, and a lack of regular reorgs is probably a clearer benefit than zeroconf transactions. Which is a bit of a win-win: success at keeping zeroconf going should give confidence that miners will help prevent 51% attacks; but failure at keeping zeroconf going doesn't mean they won't be of help. And, of course it assumes that there is a negative impact on either BTC price or block reward from killing off zeroconf, which might not be true. > I have sympathy for the utility argument, but to me it's completely > overpowered by the "node policy is not consensus and not trustworthy" > argument. Anyway, in summary: consistent and predictable relay policy across nodes remains important and possible whether or not that's a relay policy of first seen is final, or highest fee rate wins, or something else. > But for now, I want to run a Full RBF node because I see it as ultimately making Bitcoin stronger. It eliminates a use-case that takes risk. It seems strange to advocate for preventing other people from voluntarily taking on a small risk, that's demonstrably quite easily managed, and also already quite easily avoided. > Bitcoin is money for enemies. I mean, if you want to live in a world where everyone's trying to help someone else steal your money from you, it seems like the existing banking system already had you covered? If everyone's actually your enemy, your payments are going to get 51% attacked, nodes are going to blacklist your utxos, miners are going to ignore your penalty transactions so you'll lose all your L2 funds, on-ramps and off-ramps will run KYC and put a hold on all your withdrawals and confiscate your deposits, and in general Bitcoin isn't going to work for you. The point of "money for enemies" isn't that we need to treat other Bitcoiners as enemies and stop them from doing things we dislike; it's that to be a Bitcoiner you only need to agree on a few things, almost none of which are the things that usually cause people to become enemies. An alternative aphorism might be: Bitcoin is the money of the honest majority. That is, it puts the power in the hands of everyone running a node, operating a miner, or holding their own private keys, rather than in a few regulators or people with printing presses -- trusting an eclectic majority rather than an elite minority, perhaps on the basis that you're more likely to have a few dishonest people getting power out of a mass of upstanding ordinary folks, rather than the reverse. YMMV, of course, but I know how I'd prefer to view fellow Bitcoiners, even the ones that disagree with me. (OTOH, if you claim we're enemies, and I claim you're honest, where's that end up?) Cheers, aj ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) 2022-12-05 15:19 ` [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) John Carvalho 2022-12-05 21:14 ` Erik Aronesty @ 2022-12-12 2:27 ` ZmnSCPxj 2022-12-12 9:57 ` John Carvalho 1 sibling, 1 reply; 6+ messages in thread From: ZmnSCPxj @ 2022-12-12 2:27 UTC (permalink / raw) To: John Carvalho, Bitcoin Protocol Discussion Good morning John, et al, > > As has been pointed out by may others before, full RBF is aligned with miner (and user) economic incentives > > > This is a theory, not a fact. I can refute this theory by pointing out several aspects: > 1. RBF is actually a fee-minimization feature that allows users to game the system to spend the *least* amount in fees that correlates to their time-preference. Miners earn less when fees can be minimized (obviously). This feature also comes at an expense (albeit small) to nodes providing replacement service and propagation. It is helpful to remember that the fees are a price on confirmation. And in economics, there is a "price theory": * As price goes down, demand goes up. * As price goes up, net-earning-per-unit goes up. The combination of both forces causes a curve where *total* earnings vs price has a peak somewhere, an "optimum price", and that peak is *unlikely* to be at the maximum possible price you might deem reasonable. And this optimum price may very well be *lower* than the prevailing market price of a good. Thus, saying "RBF is actually a fee-minimization feature" neglects the economics of the situation. If more people could use RBF onchain, more people would use Bitcoin and increase the value to miners. Rather than a fee-minimization feature, RBF is really an optimization to *speed up* the discovery of the optimum price, and is thus desirable. Unfortunately many 0-conf acceptors outright reject opt-in-RBF, despite the improved discovery of the optimum price, and thus there is a need for full-RBF to improve price discovery of blockspace when such acceptors are too prevalent. Regards, ZmnSCPxj ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) 2022-12-12 2:27 ` ZmnSCPxj @ 2022-12-12 9:57 ` John Carvalho 0 siblings, 0 replies; 6+ messages in thread From: John Carvalho @ 2022-12-12 9:57 UTC (permalink / raw) To: ZmnSCPxj; +Cc: Bitcoin Protocol Discussion [-- Attachment #1: Type: text/plain, Size: 3473 bytes --] Zman, Price Theory simply explains the relationship between supply & demand. Your post makes some logical leaps in that you are implying that demand follows supply, which of course is not true, nor is that a claim of Price Theory. If Bitcoin has less utility, it will have less demand, regardless of whether it is well-optimized to allow for capacity saturation. I do agree that there is an optimal state, and that such state is not likely to be at the maximum price, because price maximization is exclusive. (Whether I deem any of this as "reasonable," as you say, is irrelevant other than whether I personally, subjectively choose to participate.) The optimal state (most fees earned), would surely be a result of the most value provided (per blockspace, per time period). While we must do our best to make sure txns have the smallest footprint, and that people have ways to pay a fee proportional to their time preference, there is always a maximum quantity of demand willing to pay any given fee. My arguments express how zero-conf currently creates added demand for blockspace, by merchants/consumers, and additionally, demand for *next-block* inclusion (maximum time preference) due to merchants qualifying fee rates to be eligible for zero-conf acceptance. So, me saying that RBF is fee-minimization, which you have conceded, is apt, in that we should probably not trade off something like zero-conf utility (demand) for something like mempoolfullrbf (blanket replaceability that overrides status quo use cases). Your statement of "If more people could use RBF onchain, more people would use Bitcoin and increase the value to miners." is not economically rational unless you truly can prove that supply creates demand. This is observably false, as blocks are not full. Also, you stated "Unfortunately many 0-conf acceptors outright reject opt-in-RBF, despite the improved discovery of the optimum price, and thus there is a need for full-RBF to improve price discovery of blockspace when such acceptors are too prevalent." This is also irrational and incorrect. First, merchants do not "outright reject" opt-in RBF, they simply make the customer wait 1 conf. Second, full-rbf has no positive effect on price discovery for blockspace if it results in less people using Bitcoin for actual trade. ~John It is helpful to remember that the fees are a price on confirmation. > And in economics, there is a "price theory": > > * As price goes down, demand goes up. > * As price goes up, net-earning-per-unit goes up. > > The combination of both forces causes a curve where *total* earnings vs > price has a peak somewhere, an "optimum price", and that peak is *unlikely* > to be at the maximum possible price you might deem reasonable. > And this optimum price may very well be *lower* than the prevailing market > price of a good. > > Thus, saying "RBF is actually a fee-minimization feature" neglects the > economics of the situation. > If more people could use RBF onchain, more people would use Bitcoin and > increase the value to miners. > > Rather than a fee-minimization feature, RBF is really an optimization to > *speed up* the discovery of the optimum price, and is thus desirable. > > Unfortunately many 0-conf acceptors outright reject opt-in-RBF, despite > the improved discovery of the optimum price, and thus there is a need for > full-RBF to improve price discovery of blockspace when such acceptors are > too prevalent. > > Regards, > ZmnSCPxj > [-- Attachment #2: Type: text/html, Size: 4005 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-12-13 12:55 UTC | newest] Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <mailman.48662.1670246787.956.bitcoin-dev@lists.linuxfoundation.org> 2022-12-05 15:19 ` [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger (angus) John Carvalho 2022-12-05 21:14 ` Erik Aronesty 2022-12-09 15:58 ` angus 2022-12-13 12:55 ` Anthony Towns 2022-12-12 2:27 ` ZmnSCPxj 2022-12-12 9:57 ` John Carvalho
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox