pull down to refresh
we give up on the uniform mempool idea, and optimize implementations for the usecase we desire
It seems like the debate has become intractable because in addition to the base disagreement about the effectiveness of filters, there is also a debate about how to decide on controversial changes to the reference implementation. Core does not seem willing to merge a PR they disagree with and Knots does not seem solely content with building in the Knots repo. So polarization happened because both sides feel like they have "ownership" (probably not the right word) of the reference implementation.
I appreciated @flaco's take on this from yesterday (#1234973), and would be very interested to read your thoughts in response.
LN is basically a zeroconf protocol
This feels like one of those high-density statements the unpacking of which leads to a lot of learning on my part.
I'll spend more time on it, but from what you said and the attached mailing list thread,
Is it that everyone's watchtower needs to know everything, or that everyone's watchtower needs to know miner's mempools? In the thread Todd says that the double spent txs had "were highly relayable/minable" but that the problem was that Shapeshift relied on something that used percent of nodes to which a tx has propagated as a proxy for confidence. This makes me think that the entire relay network can be the same, but if miners are willing to mine nonstandard, zero conf won't be reliable.
But all that aside, I'm still trying to figure why LN is a zero conf protocol: in the case of uncooperative channel close, first one to get a tx in a block wins. But what about penalty transactions? Don't they mitigate this?
Or is LN like a zero conf protocol because I don't really have my sats till I return to the chain?
I think I still don't have this fully in my mind, but I don't mean to take up your time with it (more just writing it out for the practice -- I'll spend a while on it and see where I end up).
reply
I don't think it is that new, but you are definitely correct that lightning helped shaping it into that direction. What do you think its primary purpose should be?
reply
cmpctblock
reconstruction at some point. It is okay that the narrated purpose of the mempool shifts but perhaps this is the difference between what Core does and what Knots aims for, and all that is needed is coexistence.Core
is heavily LN-influenced and LN benefits from as-uniform-as-possible mempools between the sum of all miners, and your (watchtower) node. However, since there is no consensus over mempool, any limiting policy doesn't work (for a watchtower). LN is basically a zeroconf protocol, see this 2015 email on how policy messes with zeroconf, and then think about how Peter could analyze what happened with his modified nodes (2 replies below in that thread). The idea then becomes: Not relaying any transaction will be bad for other watchtowers, so as a community, the greatest value is the dissemination of transactions, so that everyone's watchtower knows everything.Knots
isn't LN-oriented at all, but instead focuses on L1 and community values. Nodes relay transactions and the operator is in charge of what to relay, and there are people that do bad things, such as shittoken mints, that make the network more expensive to run (and make it more expensive to transact.) The idea: It's in everyone's interest to try to keep this shit out, no matter the cost.