In this post I will compare centralization and uncensorability of LN with on-chain centralization.
Today, most mining is done within a few large mining pools. Each of them can totally censor/refuse to mine transactions. If two of them collude to censor transactions from a known entity, you’ll have to wait until one of the smaller mining pools happens to find a block. There’s very few if any independent miners, they’re not really likely to find many blocks at all, might be months or more between each block. So: Independent miners are pretty much non-existant when it comes to transaction verifications. There’s still a few mining pools, though, so centralization is still not too bad. In my opinion, we are in the risk-zone.
With Lightning Network, we are also likely to see a bit of centralization. The question is, what is the nature of the centralization and what are the incentives for the nodes?
In my opinion, people are most likely to first create channels to those they will transact most with. These transactions will naturally succeed, the recipients wants their payments. The question is – will they route? In my opinion, they’re likely to want that. It will give them some extra income, and it will be an extra incentive for people to create channels to them. And when people wants to buy coffee, are they likely to choose the coffee shop they have a channel with, or are they likely to choose a coffee shop where they need several hops that increases the fee and the risk of failure? I believe shops will want customers to connect to them, and they’ll try to double as good routing hubs as an extra incentive for people to connect them. Thus, it is in their interest not to censor anything.
But could they?
They can refuse to route, of course. They can also refuse to route anything that comes in through one channel and goes out another. But due to the nature of the onion routing, they don’t truly know the sender or receiver of any transactions they are not a part of themselves. Sure, they can guess that it’s most likely to be their customer that initiated it, few customers will be in a position to route. What happens then, if they decide that some customers should not be able to route through them? It’s actually pretty simple: They take their business elsewhere. They’ll open another channel, and if the channel to the node keeps not working, they’re likely to close it. They have lost a customer. It’s simply not good customer service. They could stop routing, but they can’t keep people from routing around them.
So how will all this end?
I believe we will end up with some centralization around well-behaving vendors, but they’ll quickly be routed around the moment they starts misbehaving. And do note: Those that routes around routing problems first are likely to get people routing through them, and extra income. There will be competition to route. Bad actors will be routed around.
At the worst case, you can always do an on-chain transaction, or for repeat transaction, you’d open a direct channel. If you have channels with anyone else, you’ll end up routing transactions for them, if this is an entity that people for some reason do not want to send transactions to. It’s much easier to route around LN centralization than on-chain centralization.
What about independent nodes?
There’s going to be some, that does this for fun. But like with mining, you really have to have a bit of resources to do this at a scale. One improvement proposal that is on the table for the future is channel factories….can those be compared to mining pools? Who knows.
We will see some centralization, but it’ll be easy to route around. The network will be as decentralized as it needs to be for it to work, any kind of misbehavior will lead to new channels being opened, and new possibilities to route around the problem.