public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: Greg Sanders <gsanders87@gmail•com>
To: Peter Todd <pete@petertodd•org>
Cc: Bitcoin Protocol Discussion <bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Solving Multi-Party Flows Pinning with Opt-in Full-RBF Spent-nVersion Signaling
Date: Wed, 2 Nov 2022 11:00:47 -0400	[thread overview]
Message-ID: <CAB3F3DvbuawQwGou5mD_p814F6__0mdrKu1+fqXgAcP6iVOMOg@mail.gmail.com> (raw)
In-Reply-To: <Y2J/zyeTh/rwekqe@petertodd.org>

[-- Attachment #1: Type: text/plain, Size: 1930 bytes --]

> ...and the attacker also pays out the nose if they're exploiting rule #3.

I agree the attacker puts more at stake in this case. If we're assuming
they pay the price and get mined, they can be booted from the protocol
whenever they get mined. I was speaking about the worst case scenario where
it's never mined.

> We shouldn't assume it will always exist.

Just making sure people know that today it does impact things today.

On Wed, Nov 2, 2022, 10:33 AM Peter Todd <pete@petertodd•org> wrote:

> On Wed, Nov 02, 2022 at 10:19:00AM -0400, Greg Sanders wrote:
> > Sorry, I forgot one point which is pertinent to this conversation.
> >
> > *Even with* fullrbf-everywhere and V3, pinning via rule#3 and rule#5 are
> > still an issue in coinjoin scenarios.
> >
> > Each coinjoin adversary can double-spend their coin to either full
> package
> > weight(101kvb),
> > or give 24 descendants, which means you quickly pay out the nose in
> rule#3
>
> ...and the attacker also pays out the nose if they're exploiting rule #3.
>
> > or are excluded
> > from RBFing it if you have 4+ greifers in your coinjoin violating rule#5.
> >
> > If we instead narrowed this policy to marking a transaction output as
> > opt-in to V3, it gets a bit more interesting. *Unfortunately,
> > double-spending counterparties can still cause rule#3 pain, one 100kvb
> > package of junk per peer,* but rule#5 violations is at least contained to
> > coinjoins with ~50 peers(assuming two transactions booted per input
> > double-spent, which would be the V3 max bumped per input).
>
> There's no hard technical reason for rule #5 to even exist. It's simply a
> conservative DoS limit to avoid having to do "too much" computation when
> processing a replacement in some replacement implementations. We shouldn't
> assume it will always exist. And like rule #3 pinning, exploiting it costs
> money.
>
> --
> https://petertodd.org 'peter'[:-1]@petertodd.org
>

[-- Attachment #2: Type: text/html, Size: 2732 bytes --]

      reply	other threads:[~2022-11-02 15:01 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-02  2:21 Antoine Riard
2022-11-02 13:58 ` Greg Sanders
2022-11-02 14:04 ` Peter Todd
2022-11-02 14:19   ` Greg Sanders
2022-11-02 14:33     ` Peter Todd
2022-11-02 15:00       ` Greg Sanders [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAB3F3DvbuawQwGou5mD_p814F6__0mdrKu1+fqXgAcP6iVOMOg@mail.gmail.com \
    --to=gsanders87@gmail$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=pete@petertodd$(echo .)org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox