public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: ZmnSCPxj <ZmnSCPxj@protonmail•com>
To: Hilda <hildawithin@163•com>,
	Bitcoin Protocol Discussion
	<bitcoin-dev@lists•linuxfoundation.org>
Subject: Re: [bitcoin-dev] Is Bitcoin mempool synchronized?
Date: Wed, 01 Jul 2020 00:53:46 +0000	[thread overview]
Message-ID: <aGU0KUGZ8-SEynnJeoJS1G3G5SSQBlgoK3Xy9sUNNwH63U9wNseoC_PY_4sC6u1VIvDCDPFlrxnDjpRsUBTDoYoJWuePtmTMfJ678uZbuzY=@protonmail.com> (raw)
In-Reply-To: <24cf6c3f.207.173069b0747.Coremail.hildawithin@163.com>

Good morning Hilda,

> Hi there,
>
> I have been assuming Bitcoin system to be well synchronized, including mempools. But after being challenged, I started to think that I actually cannot verify this without knocking the door of every miner in every single second (just a time slice reasonable to me; stop torturing me by asking why). Can anyone share any thoughts with me?


No, definitely not.

There is no good way to limit the amount of transactions someone can push at you, except by various heuristics.
Yet those very same heuristics mean that someone with a good knowledge of those heuristics can make your mempool desynchronized with that of somebody else.

Fortunately for Bitcoin, it is the blockchain itself that we synchronize on.
People cannot push blocks at you without doing the work of grinding towards the difficulty target, thus it is not possible to spam blocks.

TANSTAAGM - There Ain't No Such Thing As A Global Mempool

For this reason, any consensus rule has to refer only to data inside blocks, and never to data in mempools, are mempools are ephemeral and not synchronized across all nodes.

Regards,
ZmnSCPxj


      reply	other threads:[~2020-07-01  0:54 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-30 19:01 Hilda
2020-07-01  0:53 ` ZmnSCPxj [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='aGU0KUGZ8-SEynnJeoJS1G3G5SSQBlgoK3Xy9sUNNwH63U9wNseoC_PY_4sC6u1VIvDCDPFlrxnDjpRsUBTDoYoJWuePtmTMfJ678uZbuzY=@protonmail.com' \
    --to=zmnscpxj@protonmail$(echo .)com \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=hildawithin@163$(echo .)com \
    /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