Anthony Towns [ARCHIVE] on Nostr: 📅 Original date posted:2021-02-22 📝 Original message:On Mon, Feb 22, 2021 at ...
📅 Original date posted:2021-02-22
📝 Original message: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
Published at
2023-06-07 18:28:58Event JSON
{
"id": "35b521ce0e469cb9e6dd40064d6b9ae74207bf487df901519d48dd7dcb8f2b24",
"pubkey": "f0feda6ad58ea9f486e469f87b3b9996494363a26982b864667c5d8acb0542ab",
"created_at": 1686162538,
"kind": 1,
"tags": [
[
"e",
"36a704a4e069f975c0a2345dd12b0515173da2f8fbd7952bae3e044e579a7daa",
"",
"root"
],
[
"e",
"8967281f2bae019511413eadba13ac0c540446b73f81cb425019199523ba5a55",
"",
"reply"
],
[
"p",
"cd753aa8fbc112e14ffe9fe09d3630f0eff76ca68e376e004b8e77b687adddba"
]
],
"content": "📅 Original date posted:2021-02-22\n📝 Original message:On Mon, Feb 22, 2021 at 01:44:55AM -0500, Matt Corallo wrote:\n\u003e A node feeding you invalid headers (used to be) cause for a ban [...]\n\nHeaders that are invalid due to MUST_SIGNAL rules are marked as\nBLOCK_RECENT_CONSENSUS_CHANGE so don't directly result in a ban. If you're\ndoing headers-first relay, I think that will also prevent hitting the\nBLOCK_MISSING_PREV case, which would result in a ban.\n\nIf a lockinontimeout=true node is requesting compact blocks from a\nlockinontimeout=false node during a chainsplit in the MUST_SIGNAL phase,\nI think that could result in a ban.\n\n\u003e More importantly, nodes on both sides of the fork need to find each other. \n\n(If there was going to be an ongoing fork there'd be bigger things to\nworry about...)\n\nI think the important specific case of this is something like \"if a chain\nwhere taproot is impossible to activate is temporarily the most work,\nminers with lockinontimeout=true need to be well connected so they don't\nend up competing with each other while they're catching back up\".\n\nActually, that same requirement might be more practically for a signet\nfeature we were thinking about -- namely having \"optional reorgs\", ie\nevery now and then we'd mine 1-6 blocks and then reorg them out; but\nalso flag the soon-to-be-stale blocks in some way so that if you didn't\nwant to have to deal with reorgs you could easily ignore them. Having\nit be possible for the \"I want to see reorgs!\" nodes to be able to find\neach other seems like it might be a similar problem (avoiding having the\n\"don't-want-reorgs\" nodes ban the \"want-reorgs\" nodes too perhaps).\n\nCheers,\naj",
"sig": "1313262a5dc7f23f1b0a6bb618c4e256b4bb3aad510ab5f27041a36a72aed9b6775808b2b6ae46211037659f32f8c43b3b6c7aae5859c09259d5107a8178baa7"
}