summaryrefslogtreecommitdiff
path: root/17/9819358dacfdaa636ca0208f3bb7c9eda860fa
blob: 002a271adb3d6e8747dcf337397d0f7ca643bf46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
Return-Path: <pete@petertodd.org>
Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136])
 by lists.linuxfoundation.org (Postfix) with ESMTP id 958CEC0037
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 22 Jan 2024 22:52:12 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp3.osuosl.org (Postfix) with ESMTP id 5E7DD61037
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 22 Jan 2024 22:52:12 +0000 (UTC)
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 5E7DD61037
Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key,
 unprotected) header.d=messagingengine.com header.i=@messagingengine.com
 header.a=rsa-sha256 header.s=fm3 header.b=ruSNFOF1
X-Virus-Scanned: amavisd-new at osuosl.org
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001,
 RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001]
 autolearn=ham autolearn_force=no
Received: from smtp3.osuosl.org ([127.0.0.1])
 by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id 9SKy9RmL3gfv
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 22 Jan 2024 22:52:08 +0000 (UTC)
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com
 [66.111.4.25])
 by smtp3.osuosl.org (Postfix) with ESMTPS id BA6AD61027
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon, 22 Jan 2024 22:52:07 +0000 (UTC)
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org BA6AD61027
Received: from compute7.internal (compute7.nyi.internal [10.202.2.48])
 by mailout.nyi.internal (Postfix) with ESMTP id 2EED45C01AB;
 Mon, 22 Jan 2024 17:52:06 -0500 (EST)
Received: from mailfrontend1 ([10.202.2.162])
 by compute7.internal (MEProxy); Mon, 22 Jan 2024 17:52:06 -0500
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:content-type:content-type:date:date
 :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to
 :message-id:mime-version:references:reply-to:subject:subject:to
 :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=
 fm3; t=1705963926; x=1706050326; bh=AytNHEN4+pFqUn4u75dixJbnTLkI
 aF8Tppgs99AXxf0=; b=ruSNFOF1/oi031YnD80BA/XMXRr5GCyemh2rZv/cEdSA
 qX50UFtbi3ThhoQxRkeTC3qKIG2DNymvXRn6m6Bp+RM6iloJJ/GA7GCAYLNJutIN
 YBt6WY6+ApuTV9Zxiq4pBL3Em/DTBQsJqIkhNRIjqBik0kIz1NdLBwR/hBUQaSDn
 n0fB2B+04P/o3Rg50jNtoyV7q0an+GSQ8oWmW2XZHCogZvqtgfnuzNCYEg9E0fSQ
 lLgv4CJ+rTk3hQQpYSU9rOdzXapzI9kS1EUFWzpnDHmIxEHlo1lJJ74IftNk1lHP
 WEZM21YYfYY7rySIHm2Wi34BHspcEzllOI7aTQVMxg==
X-ME-Sender: <xms:lfGuZZMM-vW7QAOLXvJOz-z_odi5yhKi6Y-gneMyLRXd9WAu6Fd75g>
 <xme:lfGuZb-IPbxcp92M1gjaaDzTwYqKn1KX2p1_NYyerQ2Ijt2v9yO-KBB4jYVsvQQ4r
 aVE3-hRbHuF8aiL4Is>
X-ME-Received: <xmr:lfGuZYQrgxjAA5WXQoLGu4ZP1kg121PKgYExYuIoKxWJKIZnnczqniXZEQ>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrvdekjedgtdduucetufdoteggodetrfdotf
 fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen
 uceurghilhhouhhtmecufedttdenucenucfjughrpeffhffvuffkfhggtggujgesghdtre
 ertddtjeenucfhrhhomheprfgvthgvrhcuvfhougguuceophgvthgvsehpvghtvghrthho
 uggurdhorhhgqeenucggtffrrghtthgvrhhnpedvuedvveeiveegheethfefheejteefvd
 elffeigfeivdduveelteeiueekgeevvdenucffohhmrghinhepphgvthgvrhhtohguugdr
 ohhrghdpshhtrggtkhgvrhdrnhgvfihspdhgihhthhhusgdrtghomhenucevlhhushhtvg
 hrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehpvghtvgesphgvthgvrhht
 ohguugdrohhrgh
X-ME-Proxy: <xmx:lfGuZVuLhSPXSmYiPF6y8sB1aGhqFjEWf7QkXUdbkc9ieW5fQcStUg>
 <xmx:lfGuZRfcN7kPPjA6xAfkDyKPq-tQmQAv6_q9drTnSphgDeZmwGQ1vQ>
 <xmx:lfGuZR38n2RMavXmqTmcADPyo6rMJDbbw4jRe9AWWyvnh64wQ_lPXw>
 <xmx:lvGuZV7oDq_0vVjrC8vWHc3EVn4ZHAN7gzeHDgWa0A615UN7dSWrag>
Feedback-ID: i525146e8:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon,
 22 Jan 2024 17:52:05 -0500 (EST)
Received: by localhost (Postfix, from userid 1000)
 id A7C465F849; Mon, 22 Jan 2024 22:52:01 +0000 (UTC)
Date: Mon, 22 Jan 2024 22:52:01 +0000
From: Peter Todd <pete@petertodd.org>
To: Murch <murch@murch.one>,
 Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
Message-ID: <Za7xkUsoeACMv6Fw@petertodd.org>
References: <Zalsq+Nq7RRr/CAR@petertodd.org>
 <9a89eca8-61fd-4156-825d-c9b718dc3034@murch.one>
MIME-Version: 1.0
Content-Type: multipart/signed; micalg=pgp-sha512;
 protocol="application/pgp-signature"; boundary="sh/rvim7uikMYwTI"
Content-Disposition: inline
In-Reply-To: <9a89eca8-61fd-4156-825d-c9b718dc3034@murch.one>
Subject: Re: [bitcoin-dev] One-Shot Replace-By-Fee-Rate
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Mon, 22 Jan 2024 22:52:12 -0000


--sh/rvim7uikMYwTI
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Jan 22, 2024 at 01:12:45PM -0500, Murch via bitcoin-dev wrote:
> Hi Peter,
>=20
> On 1/18/24 13:23, Peter Todd via bitcoin-dev wrote:
> > Reposting this blog post here for discussion:
> >
> > https://petertodd.org/2024/one-shot-replace-by-fee-rate
>=20
> I saw your proposal mentioned on Stacker News and read it with interest. =
In
> response, I described a replacement cycle that can be used to broadcast t=
he
> same five transactions repeatedly:
>=20
> https://stacker.news/items/393182

So if this does in fact work - I haven't actually tested it - the root prob=
lem
here is not replace-by-fee-rate, but rather our current replace-by-fee rule=
s:
in step 7 you've clearly replaced a more desirable, high fee-rate, transact=
ion
that will be mined soon with a low fee-rate transaction that will not be.
That's obviously not incentive compatible for miners, for the same reason t=
hat
replace-by-fee-rate generally is incentive compatible.

I had incorrectly thought we had gotten rid of those cases... But looks like
the definition of BIP-125 Rule #2, "The replacement transaction may only
include an unconfirmed input if that input was included in one of the origi=
nal
transactions.", is not sufficient because you can combine unconfirmed inputs
=66rom two different replaced transactions, making a resulting transaction =
that
is less valuable to miners than one of the replaced transactions.

IIUC Suhas has a draft fix here that would solve this issue: https://github=
=2Ecom/bitcoin/bitcoin/pull/26451

An even simpler fix would be to just require that all unconfirmed inputs in=
 a
replacement come from the *same* replaced transaction. That would make cert=
ain
rare, but economically viable, replacements infeasible. But it would defini=
tely
fix the issue.

> The gist is that by using two confirmed inputs and five transactions, you
> can use RBFr to reduce the absolute fee while raising the feerate to top
> block levels, then immediately use the current RBF rules to introduce a
> high-feerate transaction that beats the RBFr transaction but is hampered =
by
> a low-feerate parent and not attractive for mining, then use RBF to repla=
ce
> its low-feerate parent, then use the RBFr transaction again to reduce the
> absolute feerate. Due to the asymmetric replacements, the same transactio=
ns
> can replace each other in that order in every cycle. Please refer to the
> linked write-up for details, I=E2=80=99ve included weights, fees, and a t=
ransaction
> graph to make my example comprehensible.

BTW do you mind if I reproduce those graphics, with credit, to explain the
issue? I have a few places where I could make use of it, eg the
replace-by-fee-rate post itself.

--=20
https://petertodd.org 'peter'[:-1]@petertodd.org

--sh/rvim7uikMYwTI
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEE0RcYcKRzsEwFZ3N5Lly11TVRLzcFAmWu8YIACgkQLly11TVR
LzfqeRAAhOsWablFP/QAA6zjZtTgw9k6SowqOpGjCHXOOPbKv7bMJ2UqDg3wnbCF
BKJNwLc+SRhVtLdT64uCbGi5L1sg1TvCf+hsoSWnwjhuvKX93br5bEc+VYWu+l61
np4y4v7YnHbrFMb34wYOmmUXLeW2lbhXsZaz51OoNfoSuVdG5ZGWPrqSFERK2p6n
hUEDqOsrYHa6A4PRwFt3LJR16s2nZp1Qq3ls3byFvF7kgcZx21/V29lDMqzwOG8B
0CTuWO8YdMCA755UO/wpTLR2m+XdTTDht0G5klF1HU6oFj+WXZHOzPxHVNoRBGyX
7uUCEfdUbjsEnuqeG/eGY04PL+eEIWIwo0MxjW4qdnOsfK+YM7Q59IK691GYVs6v
Rya7xdLfWe8QkVWxpC+9/d8C3sa+a3l/S7Pk/x1cqzlpP17ZXUHQE6PIg2K/j2/3
4h43Rd2l7dCeaMq9p/bL2EEx1+ZT0gZpFYIXK+yMtSrlwDXKd9jzj700plfKxP7G
b3nfnJbIKKho+rXVIB1Ns11CVfDQJuXdZm6znkvjKUK+FFQSgaYHz/8E6K8JM7jo
rBOJR8PI5okQ9JLs0pTb+whoIkSLwFRYhjsyLuhx2W1uMU8GAmClca34LqIzMt3o
xF1AExl238TyOOIV/WWy9efsR0ROpUG+h6RWOeVbvnJfBRjWq9k=
=09en
-----END PGP SIGNATURE-----

--sh/rvim7uikMYwTI--