Disclaimer
I've only been diving into LN since around June, so it's entirely possible there are some major flaws in the below. If you spot any, please let me know!
Overview
In this post I unpack the question "Is the Lightning Network (LN) becoming more or less centralized over time?"
2022 has been a big year for lightning with megacorps like Kraken now running their own nodes, so I think this question bears merit.
Many people believe that the centralization of LN is inevitable. For example, in this big blocker video, the author claims that the lightning network will inevitably become more centralized for a bunch of reasons such as:
- Nobody has any Bitcoin so only mega corps will run big nodes
- Mega corps won't open channels with smaller nodes
I'm not going to steel man the entire argument here, you can/should look that up to get the full picture.
Anyway, visual summary of the argument:
Metrics
So how do we calculate a number we can track over time to see whether the LN is drifting towards - or away from - centralization over time? One naive option is to look at how many single points of failure there are, formally known as cut edges and cut vertices. If the number of cut edges is low (for some definition of "low"), the network is decentralized.
Cool, so let's just plot that over time? Thankfully someone already has! Check it out here:
The chart shows a big rise in cut edges until around March/April of this year, when the number drops off a cliff. The number is now holding steady, perhaps increasing slightly.
Interpretation
While cut edges / vertices is a simple global measure of absolute centralization, it's not a very effective measure. For example: private spending nodes such as those being championed by the folks over at PLN should be excluded from this metric.
In addition, perhaps it makes sense to somehow classify nodes into "spenders", "merchants" and "routers"? My thinking here is that we care about minimizing cut edges between spenders and merchants, since financial censorship usually strikes the merchants and routers connected to those merchants, a la operation choke point. Maybe what matters is redundant paths between the mega nodes, assuming both spenders and merchants will be using these?
In closing, if we care about decentralization of LN to ensure that the network remains financially inclusive, I think we need a measure called "censorship resilience", which measures the number of redundant paths between spenders and merchants and also between the big routing nodes.
p.s. found this previous post on SN that looks useful to start digging deeper into this #20470
p.p.s. For a while I thought this whole topic could be a nothingburger: if part of the network dies, simply open a channel? However the delay involved in doing this due to block confirmation times could be quite detrimental, especially if mempool is congested, in an adversarial environment where time could be of the essence.