<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <updated></updated>
  <generator>https://nostr.ae</generator>

  <title>Nostr notes by </title>
  <author>
    <name></name>
  </author>
  <link rel="self" type="application/atom+xml" href="https://nostr.ae/npub1d3yzrjfu44rf7wehmqcyantnssqc54hknanqh3df9yfj3qycvg7q9wv3vk.rss" />
  <link href="https://nostr.ae/npub1d3yzrjfu44rf7wehmqcyantnssqc54hknanqh3df9yfj3qycvg7q9wv3vk" />
  <id>https://nostr.ae/npub1d3yzrjfu44rf7wehmqcyantnssqc54hknanqh3df9yfj3qycvg7q9wv3vk</id>
  <icon></icon>
  <logo></logo>




  <entry>
    <id>https://nostr.ae/nevent1qqsytnngc5mu9wv53ax6nazxtfke8qpn4e2ehahnhnulpsp50mayjqgzypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rcufl6qr</id>
    
      <title type="html">📅 Original date posted:2022-10-20 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsytnngc5mu9wv53ax6nazxtfke8qpn4e2ehahnhnulpsp50mayjqgzypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rcufl6qr" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsq4muqt3wen5l07rv6gkqele8snp6k6llwsckx4g69glm8a552axq7ec8p7&#39;&gt;nevent1q…c8p7&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-10-20&lt;br/&gt;📝 Original message:On Thu, 20 Oct 2022 at 09:22, Anthony Towns &amp;lt;aj at erisian.com.au&amp;gt; wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; On Wed, Oct 19, 2022 at 04:29:57PM &#43;0200, Sergej Kotliar via bitcoin-dev&lt;br/&gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt; &amp;gt; The&lt;br/&gt;&amp;gt; &amp;gt; biggest risk in accepting bitcoin payments is in fact not zeroconf risk&lt;br/&gt;&amp;gt; &amp;gt; (it&amp;#39;s actually quite easily managed),&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; You mean &amp;#34;it&amp;#39;s quite easily managed, provided the transaction doesn&amp;#39;t&lt;br/&gt;&amp;gt; opt-in to rbf&amp;#34;, right? At least, that&amp;#39;s what I understood you saying last&lt;br/&gt;&amp;gt; time; ie that if the tx signals rbf, then you just don&amp;#39;t do zeroconf no&lt;br/&gt;&amp;gt; matter what other trustworthy signals you might see:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;   &lt;a href=&#34;https://twitter.com/ziggamon/status/1435863691816275970&#34;&gt;https://twitter.com/ziggamon/status/1435863691816275970&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; (rbf txs seem to have increased from 22% then to 29% now)&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;Yeah. Our share of RBF is a bit lower than that as many RBF transactions&lt;br/&gt;are something other than consumer purchases, and most consumer purchases&lt;br/&gt;can&amp;#39;t do RBF&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt; it&amp;#39;s FX risk as the merchant must&lt;br/&gt;&amp;gt; &amp;gt; commit to a certain BTCUSD rate ahead of time for a purchase. Over time&lt;br/&gt;&amp;gt; &amp;gt; some transactions lose money to FX and others earn money - that evens out&lt;br/&gt;&amp;gt; &amp;gt; in the end.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; But if there is an _easily accessible in the wallet_ feature to&lt;br/&gt;&amp;gt; &amp;gt; &amp;#34;cancel transaction&amp;#34; that means it will eventually get systematically&lt;br/&gt;&amp;gt; &amp;gt; abused. A risk of X% loss on many payments that&amp;#39;s easy to systematically&lt;br/&gt;&amp;gt; &amp;gt; abuse is more scary than a rare risk of losing 100% of one occasional&lt;br/&gt;&amp;gt; &amp;gt; payment. It&amp;#39;s already possible to execute this form of abuse with opt-in&lt;br/&gt;&amp;gt; &amp;gt; RBF,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If someone&amp;#39;s going to systematically exploit your store via this&lt;br/&gt;&amp;gt; mechanism, it seems like they&amp;#39;d just find a single wallet with a good&lt;br/&gt;&amp;gt; UX for opt-in RBF and lowballing fees, and go to town -- not something&lt;br/&gt;&amp;gt; where opt-in rbf vs fullrbf policies make any difference at all?&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;Sort of. But yes once this starts being abused systemically we will have to&lt;br/&gt;do something else w RBF payments, such as crediting the amount in BTC to a&lt;br/&gt;custodial account. But this option isn&amp;#39;t available to your normal payment&lt;br/&gt;processor type business.&lt;br/&gt;&lt;br/&gt;Also worth keeping in mind that sometimes &amp;#34;opportunity makes the thief&amp;#34;.&lt;br/&gt;Currently only power-user wallet have that feature and their market share&lt;br/&gt;is relatively small, mainly electrum stands out. But if this is available&lt;br/&gt;to all users everywhere then it will start being abused and we&amp;#39;ll have to&lt;br/&gt;then direct all payments to custodial account, or some other convoluted&lt;br/&gt;solution.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; It&amp;#39;s not like existing wallets that don&amp;#39;t let you set RBF will suddenly&lt;br/&gt;&amp;gt; get a good UX for replacing transactions just because they&amp;#39;d be relayed&lt;br/&gt;&amp;gt; if they did, is it?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; To successfully fool (non-RBF)&lt;br/&gt;&amp;gt; &amp;gt; zeroconf one needs to have access to mining infrastructure and&lt;br/&gt;&amp;gt; probability&lt;br/&gt;&amp;gt; &amp;gt; of success is the % of hash rate controlled.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I thought the &amp;#34;normal&amp;#34; avenue for fooling non-RBF zeroconf was to create&lt;br/&gt;&amp;gt; two conflicting txs in advance, one paying the merchant, one paying&lt;br/&gt;&amp;gt; yourself, connect to many peers, relay the one paying the merchant to&lt;br/&gt;&amp;gt; the merchant, and the other to everyone else.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I&amp;#39;m just basing this off Peter Todd&amp;#39;s stuff from years ago:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://np.reddit.com/r/Bitcoin/comments/40ejy8/peter_todd_with_my_doublespendpy_tool_with/cytlhh0/&#34;&gt;https://np.reddit.com/r/Bitcoin/comments/40ejy8/peter_todd_with_my_doublespendpy_tool_with/cytlhh0/&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://github.com/petertodd/replace-by-fee-tools/blob/master/doublespend.py&#34;&gt;https://github.com/petertodd/replace-by-fee-tools/blob/master/doublespend.py&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;Yeah, I know the list still rehashes a single incident from 10 years ago to&lt;br/&gt;declare the entire practice as unsafe, and ignores real-world data that of&lt;br/&gt;the last million transactions we had zero cases of this successfully&lt;br/&gt;abusing us.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt; Currently Lightning is somewhere around 15% of our total bitcoin&lt;br/&gt;&amp;gt; payments.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; So, based on last year&amp;#39;s numbers, presumably that makes your bitcoin&lt;br/&gt;&amp;gt; payments break down as something like:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    5% txs are on-chain and seem shady and are excluded from zeroconf&lt;br/&gt;&amp;gt;   15% txs are lightning&lt;br/&gt;&amp;gt;   20% txs are on-chain but signal rbf and are excluded from zeroconf&lt;br/&gt;&amp;gt;   60% txs are on-chain and seem fine for zeroconf&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;Numbers are right. Shady is too strong a word, it&amp;#39;s mostly transactions&lt;br/&gt;with very low fee, or high purchase amount, or many dependent unconfirmed&lt;br/&gt;transactions, stuff like that. In some cases we do a human assessment of&lt;br/&gt;the support ticket and often just pass them through.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt; This is very much not nothing, and all of us here want Lightning to grow,&lt;br/&gt;&amp;gt; &amp;gt; but I think it warrants a serious discussion on whether we want Lightning&lt;br/&gt;&amp;gt; &amp;gt; adoption to go to 100% by means of disabling on-chain commerce.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If the numbers above were accurate, this would just mean you&amp;#39;d go from 60%&lt;br/&gt;&amp;gt; zeroconf/25% not-zeroconf to 85% not-zeroconf; wouldn&amp;#39;t be 0% on-chain.&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;Point is that RBF transactions are unsafe even when waiting for a&lt;br/&gt;confirmation, which Peter Todd trivially proved in the reply next to this.&lt;br/&gt;The reliable solution is to reject all RBF payments and direct those users&lt;br/&gt;to custodial accounts. There are other variants to solve this with varying&lt;br/&gt;degree of convolutedness. RBF is a strictly worse UX as proven by anyone&lt;br/&gt;accepting bitcoin payments at scale.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; &amp;gt; For me&lt;br/&gt;&amp;gt; &amp;gt; personally it would be an easier discussion to have when Lightning is at&lt;br/&gt;&amp;gt; &amp;gt; 80%&#43; of all bitcoin transactions.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Can you extrapolate from the numbers you&amp;#39;ve seen to estimate when that&lt;br/&gt;&amp;gt; might be, given current trends?&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;Not sure, it might be exponential growth, and the next 60% of Lightning&lt;br/&gt;growth happen faster than the first 15%. Hard to tell. But we&amp;#39;re likely&lt;br/&gt;talking years here..&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; The benefits of Lightning are many and obvious,&lt;br/&gt;&amp;gt; &amp;gt; we don&amp;#39;t need to limit onchain to make Lightning more appealing.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; To be fair, I think making lightning (and coinjoins) work better is&lt;br/&gt;&amp;gt; exactly what inspired this -- not as a &amp;#34;make on-chain worse so we look&lt;br/&gt;&amp;gt; better in comparison&amp;#34;, but as a &amp;#34;making lightning work well is a bunch&lt;br/&gt;&amp;gt; of hard problems, here&amp;#39;s the next thing we need in order to beat the&lt;br/&gt;&amp;gt; next problem&amp;#34;.&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;In deed. The fact that the largest non-custodial Lightning wallet started&lt;br/&gt;this thread should be an indicator that despite these intentions the&lt;br/&gt;solution harms more than it fixes.&lt;br/&gt;Transactions being evicted from mempool is solved by requiring a minimum&lt;br/&gt;fee rate, which we do and now seems to have become a standard practice.&lt;br/&gt;Theoretically we can imagine them being evicted anyway but now we&amp;#39;re&lt;br/&gt;several theoreticals deep again when discussing something that will cause&lt;br/&gt;massive problems right away. In emergency situations CPFP and similar can&lt;br/&gt;of course be done manually in special circumstances.&lt;br/&gt;&lt;br/&gt;Cheers&lt;br/&gt;Sergej&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;On Thu, 20 Oct 2022 at 09:22, Anthony Towns &amp;lt;aj at erisian.com.au&amp;gt; wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; On Wed, Oct 19, 2022 at 04:29:57PM &#43;0200, Sergej Kotliar via bitcoin-dev&lt;br/&gt;&amp;gt; wrote:&lt;br/&gt;&amp;gt; &amp;gt; The&lt;br/&gt;&amp;gt; &amp;gt; biggest risk in accepting bitcoin payments is in fact not zeroconf risk&lt;br/&gt;&amp;gt; &amp;gt; (it&amp;#39;s actually quite easily managed),&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; You mean &amp;#34;it&amp;#39;s quite easily managed, provided the transaction doesn&amp;#39;t&lt;br/&gt;&amp;gt; opt-in to rbf&amp;#34;, right? At least, that&amp;#39;s what I understood you saying last&lt;br/&gt;&amp;gt; time; ie that if the tx signals rbf, then you just don&amp;#39;t do zeroconf no&lt;br/&gt;&amp;gt; matter what other trustworthy signals you might see:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;   &lt;a href=&#34;https://twitter.com/ziggamon/status/1435863691816275970&#34;&gt;https://twitter.com/ziggamon/status/1435863691816275970&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; (rbf txs seem to have increased from 22% then to 29% now)&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; it&amp;#39;s FX risk as the merchant must&lt;br/&gt;&amp;gt; &amp;gt; commit to a certain BTCUSD rate ahead of time for a purchase. Over time&lt;br/&gt;&amp;gt; &amp;gt; some transactions lose money to FX and others earn money - that evens out&lt;br/&gt;&amp;gt; &amp;gt; in the end.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; But if there is an _easily accessible in the wallet_ feature to&lt;br/&gt;&amp;gt; &amp;gt; &amp;#34;cancel transaction&amp;#34; that means it will eventually get systematically&lt;br/&gt;&amp;gt; &amp;gt; abused. A risk of X% loss on many payments that&amp;#39;s easy to systematically&lt;br/&gt;&amp;gt; &amp;gt; abuse is more scary than a rare risk of losing 100% of one occasional&lt;br/&gt;&amp;gt; &amp;gt; payment. It&amp;#39;s already possible to execute this form of abuse with opt-in&lt;br/&gt;&amp;gt; &amp;gt; RBF,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If someone&amp;#39;s going to systematically exploit your store via this&lt;br/&gt;&amp;gt; mechanism, it seems like they&amp;#39;d just find a single wallet with a good&lt;br/&gt;&amp;gt; UX for opt-in RBF and lowballing fees, and go to town -- not something&lt;br/&gt;&amp;gt; where opt-in rbf vs fullrbf policies make any difference at all?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; It&amp;#39;s not like existing wallets that don&amp;#39;t let you set RBF will suddenly&lt;br/&gt;&amp;gt; get a good UX for replacing transactions just because they&amp;#39;d be relayed&lt;br/&gt;&amp;gt; if they did, is it?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; To successfully fool (non-RBF)&lt;br/&gt;&amp;gt; &amp;gt; zeroconf one needs to have access to mining infrastructure and&lt;br/&gt;&amp;gt; probability&lt;br/&gt;&amp;gt; &amp;gt; of success is the % of hash rate controlled.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I thought the &amp;#34;normal&amp;#34; avenue for fooling non-RBF zeroconf was to create&lt;br/&gt;&amp;gt; two conflicting txs in advance, one paying the merchant, one paying&lt;br/&gt;&amp;gt; yourself, connect to many peers, relay the one paying the merchant to&lt;br/&gt;&amp;gt; the merchant, and the other to everyone else.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I&amp;#39;m just basing this off Peter Todd&amp;#39;s stuff from years ago:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://np.reddit.com/r/Bitcoin/comments/40ejy8/peter_todd_with_my_doublespendpy_tool_with/cytlhh0/&#34;&gt;https://np.reddit.com/r/Bitcoin/comments/40ejy8/peter_todd_with_my_doublespendpy_tool_with/cytlhh0/&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &lt;a href=&#34;https://github.com/petertodd/replace-by-fee-tools/blob/master/doublespend.py&#34;&gt;https://github.com/petertodd/replace-by-fee-tools/blob/master/doublespend.py&lt;/a&gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Currently Lightning is somewhere around 15% of our total bitcoin&lt;br/&gt;&amp;gt; payments.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; So, based on last year&amp;#39;s numbers, presumably that makes your bitcoin&lt;br/&gt;&amp;gt; payments break down as something like:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;    5% txs are on-chain and seem shady and are excluded from zeroconf&lt;br/&gt;&amp;gt;   15% txs are lightning&lt;br/&gt;&amp;gt;   20% txs are on-chain but signal rbf and are excluded from zeroconf&lt;br/&gt;&amp;gt;   60% txs are on-chain and seem fine for zeroconf&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; This is very much not nothing, and all of us here want Lightning to grow,&lt;br/&gt;&amp;gt; &amp;gt; but I think it warrants a serious discussion on whether we want Lightning&lt;br/&gt;&amp;gt; &amp;gt; adoption to go to 100% by means of disabling on-chain commerce.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; If the numbers above were accurate, this would just mean you&amp;#39;d go from 60%&lt;br/&gt;&amp;gt; zeroconf/25% not-zeroconf to 85% not-zeroconf; wouldn&amp;#39;t be 0% on-chain.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; For me&lt;br/&gt;&amp;gt; &amp;gt; personally it would be an easier discussion to have when Lightning is at&lt;br/&gt;&amp;gt; &amp;gt; 80%&#43; of all bitcoin transactions.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Can you extrapolate from the numbers you&amp;#39;ve seen to estimate when that&lt;br/&gt;&amp;gt; might be, given current trends? Or perhaps when fine-for-zeroconf txs&lt;br/&gt;&amp;gt; drop to 20%, since opt-in-RBF txs and considered-unsafe txs would still&lt;br/&gt;&amp;gt; work the same in a fullrbf world.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; The benefits of Lightning are many and obvious,&lt;br/&gt;&amp;gt; &amp;gt; we don&amp;#39;t need to limit onchain to make Lightning more appealing.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; To be fair, I think making lightning (and coinjoins) work better is&lt;br/&gt;&amp;gt; exactly what inspired this -- not as a &amp;#34;make on-chain worse so we look&lt;br/&gt;&amp;gt; better in comparison&amp;#34;, but as a &amp;#34;making lightning work well is a bunch&lt;br/&gt;&amp;gt; of hard problems, here&amp;#39;s the next thing we need in order to beat the&lt;br/&gt;&amp;gt; next problem&amp;#34;.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; &amp;gt; Sidenote: On the efficacy of RBF to &amp;#34;unstuck&amp;#34; stuck transactions&lt;br/&gt;&amp;gt; &amp;gt; After interacting with users during high-fee periods I&amp;#39;ve come to not&lt;br/&gt;&amp;gt; &amp;gt; appreciate RBF as a solution to that issue. Most users (80% or so) simply&lt;br/&gt;&amp;gt; &amp;gt; don&amp;#39;t have access to that functionality, because their wallet doesn&amp;#39;t&lt;br/&gt;&amp;gt; &amp;gt; support it, or they use a custodial (exchange) wallet etc. Of those that&lt;br/&gt;&amp;gt; &amp;gt; have the feature - only the power users understand how RBF works, and&lt;br/&gt;&amp;gt; &amp;gt; explaining how to do RBF to a non-power-user is just too complex, for the&lt;br/&gt;&amp;gt; &amp;gt; same reason why it&amp;#39;s complex for wallets to make sensible non-power-user&lt;br/&gt;&amp;gt; UI&lt;br/&gt;&amp;gt; &amp;gt; around it. Current equilibrium is that mostly only power users have&lt;br/&gt;&amp;gt; access&lt;br/&gt;&amp;gt; &amp;gt; to RBF and they know how to handle it, so things are somewhat working.&lt;br/&gt;&amp;gt; But&lt;br/&gt;&amp;gt; &amp;gt; rolling this out to the broad market is something else and would likely&lt;br/&gt;&amp;gt; &amp;gt; cause more confusion.&lt;br/&gt;&amp;gt; &amp;gt; CPFP is somewhat more viable but also not perfect as it would require&lt;br/&gt;&amp;gt; lots&lt;br/&gt;&amp;gt; &amp;gt; of edge case code to handle abuse vectors: What if users abuse a generous&lt;br/&gt;&amp;gt; &amp;gt; CPFP policy to unstuck past transactions or consolidate large wallets.&lt;br/&gt;&amp;gt; Best&lt;br/&gt;&amp;gt; &amp;gt; is for CPFP to be done on the wallet side, not the merchant side, but&lt;br/&gt;&amp;gt; there&lt;br/&gt;&amp;gt; &amp;gt; too are the same UX issues as with RBF.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I think if you&amp;#39;re ruling out both merchants and users being able to add&lt;br/&gt;&amp;gt; fees to a tx to get it to confirm, then you&amp;#39;re going to lose either way.&lt;br/&gt;&amp;gt; Txs will either expire because they&amp;#39;ve been stuck for more than a week,&lt;br/&gt;&amp;gt; and be vulnerable to replacement at that point anyway, or they&amp;#39;ll be&lt;br/&gt;&amp;gt; dropped from mempools because they&amp;#39;ve filled up and they were the lowest&lt;br/&gt;&amp;gt; fee tx, and be vulnerable to replacement for that reason. In the expiry&lt;br/&gt;&amp;gt; case, the merchant can rebroadcast the original transaction to keep it&lt;br/&gt;&amp;gt; alive, perhaps with a good chance of beating an attacker to the punch,&lt;br/&gt;&amp;gt; but in the full mempool case, you could only do that if you were also&lt;br/&gt;&amp;gt; CPFPing it, which you already ruled out.&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Cheers,&lt;br/&gt;&amp;gt; aj&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;&lt;br/&gt;Sergej Kotliar&lt;br/&gt;&lt;br/&gt;CEO&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;www.bitrefill.com&lt;br/&gt;&lt;br/&gt;Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221020/5072b274/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221020/5072b274/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:14:47&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsdn2pd6jfsetmd087watmrt6flsqky035phgzk62q6xzy9jwy9dxqzypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rcelzaas</id>
    
      <title type="html">📅 Original date posted:2022-10-20 📝 Original message:On ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsdn2pd6jfsetmd087watmrt6flsqky035phgzk62q6xzy9jwy9dxqzypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rcelzaas" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqsxwued068rqvj4k3qajkgm5vy2derzz4mhs932qdv5awzlmgtqh3gt0cp6q&#39;&gt;nevent1q…cp6q&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-10-20&lt;br/&gt;📝 Original message:On Thu, 20 Oct 2022 at 03:37, Antoine Riard &amp;lt;antoine.riard at gmail.com&amp;gt; wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; Hi Sergej,&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; Thanks for the insightful posting, especially highlighting the FX risk&lt;br/&gt;&amp;gt; which was far from being evident on my side!&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; I don&amp;#39;t know in details the security architecture of Bitrefill zeroconf&lt;br/&gt;&amp;gt; acceptance system, though from what I suppose there is at least a set of&lt;br/&gt;&amp;gt; full-nodes well-connected across the p2p network, on top of which some&lt;br/&gt;&amp;gt; mempools reconciliation is exercised&lt;br/&gt;&amp;gt; and zeroconf candidate sanitize against. While I believe this is a&lt;br/&gt;&amp;gt; far-more robust deployment against double-spend attempts, there is still&lt;br/&gt;&amp;gt; the ability for a sophisticated attacker to &amp;#34;taint&amp;#34; miner mempools, and&lt;br/&gt;&amp;gt; from then partition judiciously the transaction-relay network to game such&lt;br/&gt;&amp;gt; distributed mempool monitoring system. There is also the possibility of an&lt;br/&gt;&amp;gt; attacker using some &amp;#34;divide-and-conquer&amp;#34; transaction broadcast algorithm to&lt;br/&gt;&amp;gt; map Bitrefill monitoring point, though as far as I&amp;#39;m aware such algorithm&lt;br/&gt;&amp;gt; has not been discussed. I agree with all of that, easier said than done.&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;There is a long list of countermeasures that can be built to reduce these&lt;br/&gt;attacks, but to be frank we&amp;#39;ve only implemented a small subset of these and&lt;br/&gt;not had any issues, so even a lower level of security is more than fine&lt;br/&gt;today to have basically zero abuse. If issues arise we could implement more&lt;br/&gt;of the countermeasures as appropriate to the abuse that has happened in the&lt;br/&gt;wild.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; On the efficacy of RBF, I understand the current approach of assuming&lt;br/&gt;&amp;gt; &amp;#34;manual&amp;#34; RBFing by power users ill UX thinking. I hope in the future to&lt;br/&gt;&amp;gt; have automatic fee-bumping implemented by user wallets, where a fee-bumping&lt;br/&gt;&amp;gt; budget and a confirmation preference are pre-defined for all payments, and&lt;br/&gt;&amp;gt; the fee-bumping logic &amp;#34;simply&amp;#34; enforcing the user policy, ideally based on&lt;br/&gt;&amp;gt; historical mempool data. True fact: we don&amp;#39;t have such logic in consumer&lt;br/&gt;&amp;gt; wallets today.&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;In deed. And the vast majority of bitcoin users don&amp;#39;t even have access to&lt;br/&gt;any RBF functionality today, so we&amp;#39;re not even seeing gradual development&lt;br/&gt;of these things yet. I think this fact needs to be taken into account when&lt;br/&gt;designing breaking changes to bitcoin policy. Had these things been in&lt;br/&gt;place and widely used the conversation would have been much easier.&lt;br/&gt;&lt;br/&gt;Fundamentally, my view is that all the UX problems related to RBF alone are&lt;br/&gt;sufficient of an issue to hold off on rolling out these upgrades for the&lt;br/&gt;foreseeable future and think of other ways of solving the pinning issue and&lt;br/&gt;other issues w the current policy. Might be that it&amp;#39;s just a fundamental&lt;br/&gt;goal conflict that different people want different behavior but I remain&lt;br/&gt;optimistic for creative solutions from both sides. UX issues are soft as&lt;br/&gt;opposed to theoretical attack vectors which are hard and binary, we need&lt;br/&gt;find a way to weigh &amp;#34;even though it doesn&amp;#39;t happen it can theoretically be&lt;br/&gt;hacked&amp;#34; against &amp;#34;many users find it confusing and stressful&amp;#34; which is not a&lt;br/&gt;trivial assessment to do.&lt;br/&gt;&lt;br/&gt;All that said, I learn to converge that as a community we would be better&lt;br/&gt;&amp;gt; off to weigh deeper the risks/costs between 0confs applications and&lt;br/&gt;&amp;gt; contracting protocols in light of full-rbf.&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;In deed. And as you wrote in a different message, I agree that it&amp;#39;s&lt;br/&gt;unfortunate that there isn&amp;#39;t more interaction between the mailing list and&lt;br/&gt;services and companies using this stuff day-to-day. Not that it&amp;#39;s anyone&amp;#39;s&lt;br/&gt;fault in particular, let&amp;#39;s try from all sides to find more ways to create&lt;br/&gt;more interaction on these topics. I&amp;#39;ve pinged a few colleagues that work on&lt;br/&gt;payments in the space and hope they will chime in more in this forum!&lt;br/&gt;&lt;br/&gt;All the best,&lt;br/&gt;Sergej&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&amp;gt; Le mer. 19 oct. 2022 à 10:33, Sergej Kotliar via bitcoin-dev &amp;lt;&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&amp;gt; a écrit :&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Hi all,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Chiming in on this thread as I feel like the real dangers of RBF as&lt;br/&gt;&amp;gt;&amp;gt; default policy aren&amp;#39;t sufficiently elaborated here. It&amp;#39;s not only about the&lt;br/&gt;&amp;gt;&amp;gt; zero-conf (I&amp;#39;ll get to that) but there is an even bigger danger called the&lt;br/&gt;&amp;gt;&amp;gt; american call option, which risks endangering the entirety of BIP21 &amp;#34;Scan&lt;br/&gt;&amp;gt;&amp;gt; this QR code with your wallet to buy this product&amp;#34; model that I believe&lt;br/&gt;&amp;gt;&amp;gt; we&amp;#39;ve all come to appreciate. Specifically, in a scenario with high&lt;br/&gt;&amp;gt;&amp;gt; volatility and many transactions in the mempools (which is where RBF would&lt;br/&gt;&amp;gt;&amp;gt; come in handy), a user can make a low-fee transaction and then wait for&lt;br/&gt;&amp;gt;&amp;gt; hours, days or even longer, and see whether BTCUSD moves. If BTCUSD moves&lt;br/&gt;&amp;gt;&amp;gt; up, user can cancel his transaction and make a new - cheaper one. The&lt;br/&gt;&amp;gt;&amp;gt; biggest risk in accepting bitcoin payments is in fact not zeroconf risk&lt;br/&gt;&amp;gt;&amp;gt; (it&amp;#39;s actually quite easily managed), it&amp;#39;s FX risk as the merchant must&lt;br/&gt;&amp;gt;&amp;gt; commit to a certain BTCUSD rate ahead of time for a purchase. Over time&lt;br/&gt;&amp;gt;&amp;gt; some transactions lose money to FX and others earn money - that evens out&lt;br/&gt;&amp;gt;&amp;gt; in the end. But if there is an _easily accessible in the wallet_ feature to&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;cancel transaction&amp;#34; that means it will eventually get systematically&lt;br/&gt;&amp;gt;&amp;gt; abused. A risk of X% loss on many payments that&amp;#39;s easy to systematically&lt;br/&gt;&amp;gt;&amp;gt; abuse is more scary than a rare risk of losing 100% of one occasional&lt;br/&gt;&amp;gt;&amp;gt; payment. It&amp;#39;s already possible to execute this form of abuse with opt-in&lt;br/&gt;&amp;gt;&amp;gt; RBF, which may lead to us at some point refusing those payments (even with&lt;br/&gt;&amp;gt;&amp;gt; confirmation) or cumbersome UX to work around it, such as crediting the&lt;br/&gt;&amp;gt;&amp;gt; bitcoin to a custodial account.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; To compare zeroconf risk with FX risk: I think we&amp;#39;ve had one incident in&lt;br/&gt;&amp;gt;&amp;gt; 8 years of operation where a user successfully fooled our server to accept&lt;br/&gt;&amp;gt;&amp;gt; a payment that in the end didn&amp;#39;t confirm. To successfully fool (non-RBF)&lt;br/&gt;&amp;gt;&amp;gt; zeroconf one needs to have access to mining infrastructure and probability&lt;br/&gt;&amp;gt;&amp;gt; of success is the % of hash rate controlled. This is simply due to the fact&lt;br/&gt;&amp;gt;&amp;gt; that the network currently won&amp;#39;t propagage the replacement transaction to&lt;br/&gt;&amp;gt;&amp;gt; the miner, which is what&amp;#39;s being discussed here. American call option risk&lt;br/&gt;&amp;gt;&amp;gt; would however be available to 100% of all users, needs nothing beyond the&lt;br/&gt;&amp;gt;&amp;gt; wallet app, and has no cost to the user - only upside.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Bitrefill currently processes 1500-2000 onchain payments every day. For&lt;br/&gt;&amp;gt;&amp;gt; us, a world where bitcoin becomes de facto RBF by default, means that we&lt;br/&gt;&amp;gt;&amp;gt; would likely turn off the BIP21 model for onchain payments, instruct&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin users to use Lightning or deposit onchain BTC to a custodial&lt;br/&gt;&amp;gt;&amp;gt; account that we have.&lt;br/&gt;&amp;gt;&amp;gt; This option is however not available for your typical&lt;br/&gt;&amp;gt;&amp;gt; BTCPayServer/CoinGate/Bitpay/IBEX/OpenNode et al. Would be great to hear&lt;br/&gt;&amp;gt;&amp;gt; from other merchants or payment providers how they see this new behavior&lt;br/&gt;&amp;gt;&amp;gt; and how they would counteract it.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Currently Lightning is somewhere around 15% of our total bitcoin&lt;br/&gt;&amp;gt;&amp;gt; payments. This is very much not nothing, and all of us here want Lightning&lt;br/&gt;&amp;gt;&amp;gt; to grow, but I think it warrants a serious discussion on whether we want&lt;br/&gt;&amp;gt;&amp;gt; Lightning adoption to go to 100% by means of disabling on-chain commerce.&lt;br/&gt;&amp;gt;&amp;gt; For me personally it would be an easier discussion to have when Lightning&lt;br/&gt;&amp;gt;&amp;gt; is at 80%&#43; of all bitcoin transactions. Currently far too many bitcoin&lt;br/&gt;&amp;gt;&amp;gt; users simply don&amp;#39;t have access to Lightning, and of those that do and hold&lt;br/&gt;&amp;gt;&amp;gt; their own keys Muun is the biggest wallet per our data, not least due to&lt;br/&gt;&amp;gt;&amp;gt; their ease-of-use which is under threat per the OP. It&amp;#39;s hard to assess how&lt;br/&gt;&amp;gt;&amp;gt; many users would switch to Lightning in such a scenario, the communication&lt;br/&gt;&amp;gt;&amp;gt; around it would be hard. My intuition says that the majority of the current&lt;br/&gt;&amp;gt;&amp;gt; 85% of bitcoin users that pay onchain would just not use bitcoin anymore,&lt;br/&gt;&amp;gt;&amp;gt; probably shift to an alt. The benefits of Lightning are many and obvious,&lt;br/&gt;&amp;gt;&amp;gt; we don&amp;#39;t need to limit onchain to make Lightning more appealing. As an&lt;br/&gt;&amp;gt;&amp;gt; anecdote, we did experiment with defaulting to bech32 addresses some years&lt;br/&gt;&amp;gt;&amp;gt; back. The result was that simply users of the wallets that weren&amp;#39;t able to&lt;br/&gt;&amp;gt;&amp;gt; pay to bech32 didn&amp;#39;t complete the purchase, no support ticket or anything,&lt;br/&gt;&amp;gt;&amp;gt; just &amp;#34;it didn&amp;#39;t work 🤷‍♂️&amp;#34; and user moved on. We rolled it back, and later&lt;br/&gt;&amp;gt;&amp;gt; implemented a wallet selector to allow modern wallets to pay to bech32&lt;br/&gt;&amp;gt;&amp;gt; while other wallets can pay to P2SH. This type of thing  is clunky, and&lt;br/&gt;&amp;gt;&amp;gt; requires a certain level of scale to be able to do, we certainly wouldn&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt; have had the manpower for that when we were starting out. This why I&amp;#39;m&lt;br/&gt;&amp;gt;&amp;gt; cautious about introducing more such clunkiness vectors as they are&lt;br/&gt;&amp;gt;&amp;gt; centralizing factors.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m well aware of the reason for this policy being suggested and the&lt;br/&gt;&amp;gt;&amp;gt; potential pinning attack vector for LN and other smart contracts, but I&lt;br/&gt;&amp;gt;&amp;gt; think these two risks/costs need to be weighed against eachother first and&lt;br/&gt;&amp;gt;&amp;gt; thoroughly discussed because the costs are non-trivial on both sides.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Sidenote: On the efficacy of RBF to &amp;#34;unstuck&amp;#34; stuck transactions&lt;br/&gt;&amp;gt;&amp;gt; After interacting with users during high-fee periods I&amp;#39;ve come to not&lt;br/&gt;&amp;gt;&amp;gt; appreciate RBF as a solution to that issue. Most users (80% or so) simply&lt;br/&gt;&amp;gt;&amp;gt; don&amp;#39;t have access to that functionality, because their wallet doesn&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt; support it, or they use a custodial (exchange) wallet etc. Of those that&lt;br/&gt;&amp;gt;&amp;gt; have the feature - only the power users understand how RBF works, and&lt;br/&gt;&amp;gt;&amp;gt; explaining how to do RBF to a non-power-user is just too complex, for the&lt;br/&gt;&amp;gt;&amp;gt; same reason why it&amp;#39;s complex for wallets to make sensible non-power-user UI&lt;br/&gt;&amp;gt;&amp;gt; around it. Current equilibrium is that mostly only power users have access&lt;br/&gt;&amp;gt;&amp;gt; to RBF and they know how to handle it, so things are somewhat working. But&lt;br/&gt;&amp;gt;&amp;gt; rolling this out to the broad market is something else and would likely&lt;br/&gt;&amp;gt;&amp;gt; cause more confusion.&lt;br/&gt;&amp;gt;&amp;gt; CPFP is somewhat more viable but also not perfect as it would require&lt;br/&gt;&amp;gt;&amp;gt; lots of edge case code to handle abuse vectors: What if users abuse a&lt;br/&gt;&amp;gt;&amp;gt; generous CPFP policy to unstuck past transactions or consolidate large&lt;br/&gt;&amp;gt;&amp;gt; wallets. Best is for CPFP to be done on the wallet side, not the merchant&lt;br/&gt;&amp;gt;&amp;gt; side, but there too are the same UX issues as with RBF.&lt;br/&gt;&amp;gt;&amp;gt; In the end a risk-based approach to decide on which payments are&lt;br/&gt;&amp;gt;&amp;gt; non-trivial to reverse is the easiest, taking account user experience and&lt;br/&gt;&amp;gt;&amp;gt; such. Remember that in the fiat world card payments have up to 5%&lt;br/&gt;&amp;gt;&amp;gt; chargebacks, whereas we in zero-conf bitcoin land we deal with &amp;#34;fewer than&lt;br/&gt;&amp;gt;&amp;gt; 1 in a million&amp;#34; accepted transactions successfully reversed. These days we&lt;br/&gt;&amp;gt;&amp;gt; have very few support issues related to bitcoin payments. The few that do&lt;br/&gt;&amp;gt;&amp;gt; come in are due to accidental RBF users venting frustration about waiting&lt;br/&gt;&amp;gt;&amp;gt; for their tx to confirm.&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;In theory, theory and practice are the same. In practice, they are not&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; All the best,&lt;br/&gt;&amp;gt;&amp;gt; Sergej Kotliar&lt;br/&gt;&amp;gt;&amp;gt; CEO Bitrefill.com&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Sergej Kotliar&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; CEO&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; www.bitrefill.com&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Sergej Kotliar&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; CEO&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; www.bitrefill.com&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;&lt;br/&gt;Sergej Kotliar&lt;br/&gt;&lt;br/&gt;CEO&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;www.bitrefill.com&lt;br/&gt;&lt;br/&gt;Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221020/dd90d5ad/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221020/dd90d5ad/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:14:43&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsq2s0nrz3hnhwke8wq62p26gfmgqfraup8qgsqsdf8rl3xckp9q3szypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rcx5krnx</id>
    
      <title type="html">📅 Original date posted:2022-10-19 📝 Original ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsq2s0nrz3hnhwke8wq62p26gfmgqfraup8qgsqsdf8rl3xckp9q3szypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rcx5krnx" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs80m4mh773xjpqekmehw2w7rp8rwrnjvdea8yjaaasfng24f302xst6p324&#39;&gt;nevent1q…p324&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-10-19&lt;br/&gt;📝 Original message:It&amp;#39;s an interesting idea, presumably it would work w the new package relay.&lt;br/&gt;Scorched earth bidding war is definitely fine to deter this type of abuse.&lt;br/&gt;Need to consider it more thoroughly from all sides tho. CPFP on the server&lt;br/&gt;side generally has a couple of downsides:&lt;br/&gt;* Requires a hot wallet to receive bitcoin&lt;br/&gt;* an entity that is reliably known to do CPFP can be abused by people&lt;br/&gt;looking to consolidate utxos, which can be quite costly. Might be solvable&lt;br/&gt;with a set of conditionals, and bad UX for abusers is less of a concern :)&lt;br/&gt;&lt;br/&gt;Will follow up after more deliberation, thanks!&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;On Wed, 19 Oct 2022 at 17:43, Jeremy Rubin &amp;lt;jeremy.l.rubin at gmail.com&amp;gt; wrote:&lt;br/&gt;&lt;br/&gt;&amp;gt; If they do this to you, and the delta is substantial, can&amp;#39;t you sweep all&lt;br/&gt;&amp;gt; such abusers with a cpfp transaction replacing their package and giving you&lt;br/&gt;&amp;gt; the original txn?&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt; On Wed, Oct 19, 2022, 7:33 AM Sergej Kotliar via bitcoin-dev &amp;lt;&lt;br/&gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&amp;gt; wrote:&lt;br/&gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Hi all,&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Chiming in on this thread as I feel like the real dangers of RBF as&lt;br/&gt;&amp;gt;&amp;gt; default policy aren&amp;#39;t sufficiently elaborated here. It&amp;#39;s not only about the&lt;br/&gt;&amp;gt;&amp;gt; zero-conf (I&amp;#39;ll get to that) but there is an even bigger danger called the&lt;br/&gt;&amp;gt;&amp;gt; american call option, which risks endangering the entirety of BIP21 &amp;#34;Scan&lt;br/&gt;&amp;gt;&amp;gt; this QR code with your wallet to buy this product&amp;#34; model that I believe&lt;br/&gt;&amp;gt;&amp;gt; we&amp;#39;ve all come to appreciate. Specifically, in a scenario with high&lt;br/&gt;&amp;gt;&amp;gt; volatility and many transactions in the mempools (which is where RBF would&lt;br/&gt;&amp;gt;&amp;gt; come in handy), a user can make a low-fee transaction and then wait for&lt;br/&gt;&amp;gt;&amp;gt; hours, days or even longer, and see whether BTCUSD moves. If BTCUSD moves&lt;br/&gt;&amp;gt;&amp;gt; up, user can cancel his transaction and make a new - cheaper one. The&lt;br/&gt;&amp;gt;&amp;gt; biggest risk in accepting bitcoin payments is in fact not zeroconf risk&lt;br/&gt;&amp;gt;&amp;gt; (it&amp;#39;s actually quite easily managed), it&amp;#39;s FX risk as the merchant must&lt;br/&gt;&amp;gt;&amp;gt; commit to a certain BTCUSD rate ahead of time for a purchase. Over time&lt;br/&gt;&amp;gt;&amp;gt; some transactions lose money to FX and others earn money - that evens out&lt;br/&gt;&amp;gt;&amp;gt; in the end. But if there is an _easily accessible in the wallet_ feature to&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;cancel transaction&amp;#34; that means it will eventually get systematically&lt;br/&gt;&amp;gt;&amp;gt; abused. A risk of X% loss on many payments that&amp;#39;s easy to systematically&lt;br/&gt;&amp;gt;&amp;gt; abuse is more scary than a rare risk of losing 100% of one occasional&lt;br/&gt;&amp;gt;&amp;gt; payment. It&amp;#39;s already possible to execute this form of abuse with opt-in&lt;br/&gt;&amp;gt;&amp;gt; RBF, which may lead to us at some point refusing those payments (even with&lt;br/&gt;&amp;gt;&amp;gt; confirmation) or cumbersome UX to work around it, such as crediting the&lt;br/&gt;&amp;gt;&amp;gt; bitcoin to a custodial account.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; To compare zeroconf risk with FX risk: I think we&amp;#39;ve had one incident in&lt;br/&gt;&amp;gt;&amp;gt; 8 years of operation where a user successfully fooled our server to accept&lt;br/&gt;&amp;gt;&amp;gt; a payment that in the end didn&amp;#39;t confirm. To successfully fool (non-RBF)&lt;br/&gt;&amp;gt;&amp;gt; zeroconf one needs to have access to mining infrastructure and probability&lt;br/&gt;&amp;gt;&amp;gt; of success is the % of hash rate controlled. This is simply due to the fact&lt;br/&gt;&amp;gt;&amp;gt; that the network currently won&amp;#39;t propagage the replacement transaction to&lt;br/&gt;&amp;gt;&amp;gt; the miner, which is what&amp;#39;s being discussed here. American call option risk&lt;br/&gt;&amp;gt;&amp;gt; would however be available to 100% of all users, needs nothing beyond the&lt;br/&gt;&amp;gt;&amp;gt; wallet app, and has no cost to the user - only upside.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Bitrefill currently processes 1500-2000 onchain payments every day. For&lt;br/&gt;&amp;gt;&amp;gt; us, a world where bitcoin becomes de facto RBF by default, means that we&lt;br/&gt;&amp;gt;&amp;gt; would likely turn off the BIP21 model for onchain payments, instruct&lt;br/&gt;&amp;gt;&amp;gt; Bitcoin users to use Lightning or deposit onchain BTC to a custodial&lt;br/&gt;&amp;gt;&amp;gt; account that we have.&lt;br/&gt;&amp;gt;&amp;gt; This option is however not available for your typical&lt;br/&gt;&amp;gt;&amp;gt; BTCPayServer/CoinGate/Bitpay/IBEX/OpenNode et al. Would be great to hear&lt;br/&gt;&amp;gt;&amp;gt; from other merchants or payment providers how they see this new behavior&lt;br/&gt;&amp;gt;&amp;gt; and how they would counteract it.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Currently Lightning is somewhere around 15% of our total bitcoin&lt;br/&gt;&amp;gt;&amp;gt; payments. This is very much not nothing, and all of us here want Lightning&lt;br/&gt;&amp;gt;&amp;gt; to grow, but I think it warrants a serious discussion on whether we want&lt;br/&gt;&amp;gt;&amp;gt; Lightning adoption to go to 100% by means of disabling on-chain commerce.&lt;br/&gt;&amp;gt;&amp;gt; For me personally it would be an easier discussion to have when Lightning&lt;br/&gt;&amp;gt;&amp;gt; is at 80%&#43; of all bitcoin transactions. Currently far too many bitcoin&lt;br/&gt;&amp;gt;&amp;gt; users simply don&amp;#39;t have access to Lightning, and of those that do and hold&lt;br/&gt;&amp;gt;&amp;gt; their own keys Muun is the biggest wallet per our data, not least due to&lt;br/&gt;&amp;gt;&amp;gt; their ease-of-use which is under threat per the OP. It&amp;#39;s hard to assess how&lt;br/&gt;&amp;gt;&amp;gt; many users would switch to Lightning in such a scenario, the communication&lt;br/&gt;&amp;gt;&amp;gt; around it would be hard. My intuition says that the majority of the current&lt;br/&gt;&amp;gt;&amp;gt; 85% of bitcoin users that pay onchain would just not use bitcoin anymore,&lt;br/&gt;&amp;gt;&amp;gt; probably shift to an alt. The benefits of Lightning are many and obvious,&lt;br/&gt;&amp;gt;&amp;gt; we don&amp;#39;t need to limit onchain to make Lightning more appealing. As an&lt;br/&gt;&amp;gt;&amp;gt; anecdote, we did experiment with defaulting to bech32 addresses some years&lt;br/&gt;&amp;gt;&amp;gt; back. The result was that simply users of the wallets that weren&amp;#39;t able to&lt;br/&gt;&amp;gt;&amp;gt; pay to bech32 didn&amp;#39;t complete the purchase, no support ticket or anything,&lt;br/&gt;&amp;gt;&amp;gt; just &amp;#34;it didn&amp;#39;t work 🤷‍♂️&amp;#34; and user moved on. We rolled it back, and later&lt;br/&gt;&amp;gt;&amp;gt; implemented a wallet selector to allow modern wallets to pay to bech32&lt;br/&gt;&amp;gt;&amp;gt; while other wallets can pay to P2SH. This type of thing  is clunky, and&lt;br/&gt;&amp;gt;&amp;gt; requires a certain level of scale to be able to do, we certainly wouldn&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt; have had the manpower for that when we were starting out. This why I&amp;#39;m&lt;br/&gt;&amp;gt;&amp;gt; cautious about introducing more such clunkiness vectors as they are&lt;br/&gt;&amp;gt;&amp;gt; centralizing factors.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; I&amp;#39;m well aware of the reason for this policy being suggested and the&lt;br/&gt;&amp;gt;&amp;gt; potential pinning attack vector for LN and other smart contracts, but I&lt;br/&gt;&amp;gt;&amp;gt; think these two risks/costs need to be weighed against eachother first and&lt;br/&gt;&amp;gt;&amp;gt; thoroughly discussed because the costs are non-trivial on both sides.&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Sidenote: On the efficacy of RBF to &amp;#34;unstuck&amp;#34; stuck transactions&lt;br/&gt;&amp;gt;&amp;gt; After interacting with users during high-fee periods I&amp;#39;ve come to not&lt;br/&gt;&amp;gt;&amp;gt; appreciate RBF as a solution to that issue. Most users (80% or so) simply&lt;br/&gt;&amp;gt;&amp;gt; don&amp;#39;t have access to that functionality, because their wallet doesn&amp;#39;t&lt;br/&gt;&amp;gt;&amp;gt; support it, or they use a custodial (exchange) wallet etc. Of those that&lt;br/&gt;&amp;gt;&amp;gt; have the feature - only the power users understand how RBF works, and&lt;br/&gt;&amp;gt;&amp;gt; explaining how to do RBF to a non-power-user is just too complex, for the&lt;br/&gt;&amp;gt;&amp;gt; same reason why it&amp;#39;s complex for wallets to make sensible non-power-user UI&lt;br/&gt;&amp;gt;&amp;gt; around it. Current equilibrium is that mostly only power users have access&lt;br/&gt;&amp;gt;&amp;gt; to RBF and they know how to handle it, so things are somewhat working. But&lt;br/&gt;&amp;gt;&amp;gt; rolling this out to the broad market is something else and would likely&lt;br/&gt;&amp;gt;&amp;gt; cause more confusion.&lt;br/&gt;&amp;gt;&amp;gt; CPFP is somewhat more viable but also not perfect as it would require&lt;br/&gt;&amp;gt;&amp;gt; lots of edge case code to handle abuse vectors: What if users abuse a&lt;br/&gt;&amp;gt;&amp;gt; generous CPFP policy to unstuck past transactions or consolidate large&lt;br/&gt;&amp;gt;&amp;gt; wallets. Best is for CPFP to be done on the wallet side, not the merchant&lt;br/&gt;&amp;gt;&amp;gt; side, but there too are the same UX issues as with RBF.&lt;br/&gt;&amp;gt;&amp;gt; In the end a risk-based approach to decide on which payments are&lt;br/&gt;&amp;gt;&amp;gt; non-trivial to reverse is the easiest, taking account user experience and&lt;br/&gt;&amp;gt;&amp;gt; such. Remember that in the fiat world card payments have up to 5%&lt;br/&gt;&amp;gt;&amp;gt; chargebacks, whereas we in zero-conf bitcoin land we deal with &amp;#34;fewer than&lt;br/&gt;&amp;gt;&amp;gt; 1 in a million&amp;#34; accepted transactions successfully reversed. These days we&lt;br/&gt;&amp;gt;&amp;gt; have very few support issues related to bitcoin payments. The few that do&lt;br/&gt;&amp;gt;&amp;gt; come in are due to accidental RBF users venting frustration about waiting&lt;br/&gt;&amp;gt;&amp;gt; for their tx to confirm.&lt;br/&gt;&amp;gt;&amp;gt; &amp;#34;In theory, theory and practice are the same. In practice, they are not&amp;#34;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; All the best,&lt;br/&gt;&amp;gt;&amp;gt; Sergej Kotliar&lt;br/&gt;&amp;gt;&amp;gt; CEO Bitrefill.com&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Sergej Kotliar&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; CEO&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; www.bitrefill.com&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; --&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Sergej Kotliar&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; CEO&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; www.bitrefill.com&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&amp;gt; Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist&lt;br/&gt;&amp;gt;&amp;gt; &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;&amp;gt;&amp;gt; _______________________________________________&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev mailing list&lt;br/&gt;&amp;gt;&amp;gt; bitcoin-dev at lists.linuxfoundation.org&lt;br/&gt;&amp;gt;&amp;gt; &lt;a href=&#34;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&#34;&gt;https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev&lt;/a&gt;&lt;br/&gt;&amp;gt;&amp;gt;&lt;br/&gt;&amp;gt;&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;&lt;br/&gt;Sergej Kotliar&lt;br/&gt;&lt;br/&gt;CEO&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;www.bitrefill.com&lt;br/&gt;&lt;br/&gt;Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221019/5f136073/attachment-0001.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221019/5f136073/attachment-0001.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:14:40&#43;02:00</updated>
  </entry>

  <entry>
    <id>https://nostr.ae/nevent1qqsx0hsgajk2w4yk3xzprxujejsyshamy5xtqdsk6ks83a82wfqvrvqzypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rc05xm2v</id>
    
      <title type="html">📅 Original date posted:2022-10-19 📝 Original message:Hi ...</title>
    
    <link rel="alternate" href="https://nostr.ae/nevent1qqsx0hsgajk2w4yk3xzprxujejsyshamy5xtqdsk6ks83a82wfqvrvqzypkysgwf8jk5d8emxlvrqnkdwwzqrzjk760kvz794y53x2yqnp3rc05xm2v" />
    <content type="html">
      In reply to &lt;a href=&#39;/nevent1qqs0avuf8nd29clhp4g3n8dlyx7hy2k9szr4hzrg23lqgp5zuqng3ysg4ktxl&#39;&gt;nevent1q…ktxl&lt;/a&gt;&lt;br/&gt;_________________________&lt;br/&gt;&lt;br/&gt;📅 Original date posted:2022-10-19&lt;br/&gt;📝 Original message:Hi all,&lt;br/&gt;&lt;br/&gt;Chiming in on this thread as I feel like the real dangers of RBF as default&lt;br/&gt;policy aren&amp;#39;t sufficiently elaborated here. It&amp;#39;s not only about the&lt;br/&gt;zero-conf (I&amp;#39;ll get to that) but there is an even bigger danger called the&lt;br/&gt;american call option, which risks endangering the entirety of BIP21 &amp;#34;Scan&lt;br/&gt;this QR code with your wallet to buy this product&amp;#34; model that I believe&lt;br/&gt;we&amp;#39;ve all come to appreciate. Specifically, in a scenario with high&lt;br/&gt;volatility and many transactions in the mempools (which is where RBF would&lt;br/&gt;come in handy), a user can make a low-fee transaction and then wait for&lt;br/&gt;hours, days or even longer, and see whether BTCUSD moves. If BTCUSD moves&lt;br/&gt;up, user can cancel his transaction and make a new - cheaper one. The&lt;br/&gt;biggest risk in accepting bitcoin payments is in fact not zeroconf risk&lt;br/&gt;(it&amp;#39;s actually quite easily managed), it&amp;#39;s FX risk as the merchant must&lt;br/&gt;commit to a certain BTCUSD rate ahead of time for a purchase. Over time&lt;br/&gt;some transactions lose money to FX and others earn money - that evens out&lt;br/&gt;in the end. But if there is an _easily accessible in the wallet_ feature to&lt;br/&gt;&amp;#34;cancel transaction&amp;#34; that means it will eventually get systematically&lt;br/&gt;abused. A risk of X% loss on many payments that&amp;#39;s easy to systematically&lt;br/&gt;abuse is more scary than a rare risk of losing 100% of one occasional&lt;br/&gt;payment. It&amp;#39;s already possible to execute this form of abuse with opt-in&lt;br/&gt;RBF, which may lead to us at some point refusing those payments (even with&lt;br/&gt;confirmation) or cumbersome UX to work around it, such as crediting the&lt;br/&gt;bitcoin to a custodial account.&lt;br/&gt;&lt;br/&gt;To compare zeroconf risk with FX risk: I think we&amp;#39;ve had one incident in 8&lt;br/&gt;years of operation where a user successfully fooled our server to accept a&lt;br/&gt;payment that in the end didn&amp;#39;t confirm. To successfully fool (non-RBF)&lt;br/&gt;zeroconf one needs to have access to mining infrastructure and probability&lt;br/&gt;of success is the % of hash rate controlled. This is simply due to the fact&lt;br/&gt;that the network currently won&amp;#39;t propagage the replacement transaction to&lt;br/&gt;the miner, which is what&amp;#39;s being discussed here. American call option risk&lt;br/&gt;would however be available to 100% of all users, needs nothing beyond the&lt;br/&gt;wallet app, and has no cost to the user - only upside.&lt;br/&gt;&lt;br/&gt;Bitrefill currently processes 1500-2000 onchain payments every day. For us,&lt;br/&gt;a world where bitcoin becomes de facto RBF by default, means that we would&lt;br/&gt;likely turn off the BIP21 model for onchain payments, instruct Bitcoin&lt;br/&gt;users to use Lightning or deposit onchain BTC to a custodial account that&lt;br/&gt;we have.&lt;br/&gt;This option is however not available for your typical&lt;br/&gt;BTCPayServer/CoinGate/Bitpay/IBEX/OpenNode et al. Would be great to hear&lt;br/&gt;from other merchants or payment providers how they see this new behavior&lt;br/&gt;and how they would counteract it.&lt;br/&gt;&lt;br/&gt;Currently Lightning is somewhere around 15% of our total bitcoin payments.&lt;br/&gt;This is very much not nothing, and all of us here want Lightning to grow,&lt;br/&gt;but I think it warrants a serious discussion on whether we want Lightning&lt;br/&gt;adoption to go to 100% by means of disabling on-chain commerce. For me&lt;br/&gt;personally it would be an easier discussion to have when Lightning is at&lt;br/&gt;80%&#43; of all bitcoin transactions. Currently far too many bitcoin users&lt;br/&gt;simply don&amp;#39;t have access to Lightning, and of those that do and hold their&lt;br/&gt;own keys Muun is the biggest wallet per our data, not least due to their&lt;br/&gt;ease-of-use which is under threat per the OP. It&amp;#39;s hard to assess how many&lt;br/&gt;users would switch to Lightning in such a scenario, the communication&lt;br/&gt;around it would be hard. My intuition says that the majority of the current&lt;br/&gt;85% of bitcoin users that pay onchain would just not use bitcoin anymore,&lt;br/&gt;probably shift to an alt. The benefits of Lightning are many and obvious,&lt;br/&gt;we don&amp;#39;t need to limit onchain to make Lightning more appealing. As an&lt;br/&gt;anecdote, we did experiment with defaulting to bech32 addresses some years&lt;br/&gt;back. The result was that simply users of the wallets that weren&amp;#39;t able to&lt;br/&gt;pay to bech32 didn&amp;#39;t complete the purchase, no support ticket or anything,&lt;br/&gt;just &amp;#34;it didn&amp;#39;t work 🤷‍♂️&amp;#34; and user moved on. We rolled it back, and later&lt;br/&gt;implemented a wallet selector to allow modern wallets to pay to bech32&lt;br/&gt;while other wallets can pay to P2SH. This type of thing  is clunky, and&lt;br/&gt;requires a certain level of scale to be able to do, we certainly wouldn&amp;#39;t&lt;br/&gt;have had the manpower for that when we were starting out. This why I&amp;#39;m&lt;br/&gt;cautious about introducing more such clunkiness vectors as they are&lt;br/&gt;centralizing factors.&lt;br/&gt;&lt;br/&gt;I&amp;#39;m well aware of the reason for this policy being suggested and the&lt;br/&gt;potential pinning attack vector for LN and other smart contracts, but I&lt;br/&gt;think these two risks/costs need to be weighed against eachother first and&lt;br/&gt;thoroughly discussed because the costs are non-trivial on both sides.&lt;br/&gt;&lt;br/&gt;Sidenote: On the efficacy of RBF to &amp;#34;unstuck&amp;#34; stuck transactions&lt;br/&gt;After interacting with users during high-fee periods I&amp;#39;ve come to not&lt;br/&gt;appreciate RBF as a solution to that issue. Most users (80% or so) simply&lt;br/&gt;don&amp;#39;t have access to that functionality, because their wallet doesn&amp;#39;t&lt;br/&gt;support it, or they use a custodial (exchange) wallet etc. Of those that&lt;br/&gt;have the feature - only the power users understand how RBF works, and&lt;br/&gt;explaining how to do RBF to a non-power-user is just too complex, for the&lt;br/&gt;same reason why it&amp;#39;s complex for wallets to make sensible non-power-user UI&lt;br/&gt;around it. Current equilibrium is that mostly only power users have access&lt;br/&gt;to RBF and they know how to handle it, so things are somewhat working. But&lt;br/&gt;rolling this out to the broad market is something else and would likely&lt;br/&gt;cause more confusion.&lt;br/&gt;CPFP is somewhat more viable but also not perfect as it would require lots&lt;br/&gt;of edge case code to handle abuse vectors: What if users abuse a generous&lt;br/&gt;CPFP policy to unstuck past transactions or consolidate large wallets. Best&lt;br/&gt;is for CPFP to be done on the wallet side, not the merchant side, but there&lt;br/&gt;too are the same UX issues as with RBF.&lt;br/&gt;In the end a risk-based approach to decide on which payments are&lt;br/&gt;non-trivial to reverse is the easiest, taking account user experience and&lt;br/&gt;such. Remember that in the fiat world card payments have up to 5%&lt;br/&gt;chargebacks, whereas we in zero-conf bitcoin land we deal with &amp;#34;fewer than&lt;br/&gt;1 in a million&amp;#34; accepted transactions successfully reversed. These days we&lt;br/&gt;have very few support issues related to bitcoin payments. The few that do&lt;br/&gt;come in are due to accidental RBF users venting frustration about waiting&lt;br/&gt;for their tx to confirm.&lt;br/&gt;&amp;#34;In theory, theory and practice are the same. In practice, they are not&amp;#34;&lt;br/&gt;&lt;br/&gt;All the best,&lt;br/&gt;Sergej Kotliar&lt;br/&gt;CEO Bitrefill.com&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;&lt;br/&gt;Sergej Kotliar&lt;br/&gt;&lt;br/&gt;CEO&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;www.bitrefill.com&lt;br/&gt;&lt;br/&gt;Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;-- &lt;br/&gt;&lt;br/&gt;Sergej Kotliar&lt;br/&gt;&lt;br/&gt;CEO&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;Twitter: @ziggamon &amp;lt;&lt;a href=&#34;https://twitter.com/ziggamon&amp;gt&#34;&gt;https://twitter.com/ziggamon&amp;gt&lt;/a&gt;;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;www.bitrefill.com&lt;br/&gt;&lt;br/&gt;Twitter &amp;lt;&lt;a href=&#34;https://www.twitter.com/bitrefill&amp;gt&#34;&gt;https://www.twitter.com/bitrefill&amp;gt&lt;/a&gt;; | Blog&lt;br/&gt;&amp;lt;&lt;a href=&#34;https://www.bitrefill.com/blog/&amp;gt&#34;&gt;https://www.bitrefill.com/blog/&amp;gt&lt;/a&gt;; | Angellist &amp;lt;&lt;a href=&#34;https://angel.co/bitrefill&amp;gt&#34;&gt;https://angel.co/bitrefill&amp;gt&lt;/a&gt;;&lt;br/&gt;-------------- next part --------------&lt;br/&gt;An HTML attachment was scrubbed...&lt;br/&gt;URL: &amp;lt;&lt;a href=&#34;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221019/cda936ac/attachment.html&amp;gt&#34;&gt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20221019/cda936ac/attachment.html&amp;gt&lt;/a&gt;;
    </content>
    <updated>2023-06-08T01:14:36&#43;02:00</updated>
  </entry>

</feed>