Return-Path: Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by lists.linuxfoundation.org (Postfix) with ESMTP id F2427C0001 for ; Mon, 22 Feb 2021 10:16:44 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id D35526F54D for ; Mon, 22 Feb 2021 10:16:44 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org 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 RsarhTLbbeMz for ; Mon, 22 Feb 2021 10:16:43 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.8.0 Received: from azure.erisian.com.au (cerulean.erisian.com.au [139.162.42.226]) by smtp3.osuosl.org (Postfix) with ESMTPS id B89866F52F for ; Mon, 22 Feb 2021 10:16:43 +0000 (UTC) Received: from aj@azure.erisian.com.au (helo=sapphire.erisian.com.au) by azure.erisian.com.au with esmtpsa (Exim 4.92 #3 (Debian)) id 1lE8Gc-0003J2-3J; Mon, 22 Feb 2021 20:16:39 +1000 Received: by sapphire.erisian.com.au (sSMTP sendmail emulation); Mon, 22 Feb 2021 20:16:32 +1000 Date: Mon, 22 Feb 2021 20:16:32 +1000 From: Anthony Towns To: Matt Corallo Message-ID: <20210222101632.j5udrgtj2aj5bw6q@erisian.com.au> References: <20210222051624.6eklzfec2bf4lqdk@erisian.com.au> <4FF38E1A-677B-478C-B32F-4640DF867810@mattcorallo.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4FF38E1A-677B-478C-B32F-4640DF867810@mattcorallo.com> User-Agent: NeoMutt/20170113 (1.7.2) X-Spam-Score-int: -18 X-Spam-Bar: - Cc: Michael Folkson , Bitcoin Protocol Discussion Subject: Re: [bitcoin-dev] Yesterday's Taproot activation meeting on lockinontimeout (LOT) X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 22 Feb 2021 10:16:45 -0000 On Mon, Feb 22, 2021 at 01:44:55AM -0500, Matt Corallo wrote: > A node feeding you invalid headers (used to be) cause for a ban [...] Headers that are invalid due to MUST_SIGNAL rules are marked as BLOCK_RECENT_CONSENSUS_CHANGE so don't directly result in a ban. If you're doing headers-first relay, I think that will also prevent hitting the BLOCK_MISSING_PREV case, which would result in a ban. If a lockinontimeout=true node is requesting compact blocks from a lockinontimeout=false node during a chainsplit in the MUST_SIGNAL phase, I think that could result in a ban. > More importantly, nodes on both sides of the fork need to find each other. (If there was going to be an ongoing fork there'd be bigger things to worry about...) I think the important specific case of this is something like "if a chain where taproot is impossible to activate is temporarily the most work, miners with lockinontimeout=true need to be well connected so they don't end up competing with each other while they're catching back up". Actually, that same requirement might be more practically for a signet feature we were thinking about -- namely having "optional reorgs", ie every now and then we'd mine 1-6 blocks and then reorg them out; but also flag the soon-to-be-stale blocks in some way so that if you didn't want to have to deal with reorgs you could easily ignore them. Having it be possible for the "I want to see reorgs!" nodes to be able to find each other seems like it might be a similar problem (avoiding having the "don't-want-reorgs" nodes ban the "want-reorgs" nodes too perhaps). Cheers, aj