OP makes the implicit assumption that all lightning network payment channels are p2p in which case the 20M users per month upper limit is true. From what I understand, the plan is to have a network of supernodes which settle on the blockchain. Users will interact with these nodes instead of true p2p. Lightning network opponents argue that these supernodes will become mini banks in some ways and will need to follow KYC norms. While it's possible to do p2p payment channels without interacting with any third party, the high transaction fees make it impractical. From the Lightning Network paper [0] :
> If all transactions using Bitcoin were conducted inside a network of micropayment channels, to enable 7 billion people to make two channels per year with unlimited transactions inside the channel, it would require 133 MB blocks (presuming 500 bytes per transaction and 52560 locks per year).
Notice the 2 channels per year. These 2 channels will be opened with a supernode (operated by eg- Coinbase, Gemini, Blockstream etc). I glanced through the document but they don't seem to acknowledge the requirement for these supernodes.
It's hard to cut through all the FUD, trolling, memes and propaganda to get to the meat of the debate, so I'm not too sure my understanding is accurate, feel free to correct me.
> I'm not too sure my understanding is accurate, feel free to correct me.
OK! :P
In a layer 2 or lightning network, there may be hubs operated by e.g. Coinbase that handle millions of users, but the hub will need an open payment channel with each of those users in order to minimize the required trust. That means that the scaling bottleneck described in the top post is still an issue.
It's useful to draw a distinction between decentralization of network topology and decentralization of power (the ability to decide who has how much money). If Coinbase runs a lightning network hub with millions of users, the network topology is centralized, but if the system has been designed correctly, Coinbase
cannot steal any of the lightning network funds (power is decentralized). They could require KYC and would be able to temporarily block a user's transactions. But if people aren't happy with how a hub is behaving, they can just stop using it, and switch over to a different one.
It's possible to hand complete custody of your coins over to a third party, and let them manage transactions internally. This scales really well, but then it's not really a lightning network anymore (power is centralized; they or people who hack them can run off with everyone's money).
Ethereum (not Bitcoin) has plans to scale their base chain via improvements from proof of stake, and eventually via sharding the base chain. Block size increases factor in as well. These improvements can each multiply with the large factor provided by lightning-network-like things (Ethereum's equivalent is http://raiden.network/). Much of this is still undergoing active research, so it's not all a given. I haven't estimated the numbers, but this all eventually could take us quite a bit beyond 20m users.
> Lightning network opponents argue that these supernodes will become mini banks in some ways and will need to follow KYC norms.
This is an interesting theory. Why don't money transmitter laws apply to standard bitcoin nodes which authenticate more than $10,000 of transactions a year?
Laws would probably have to be re-written to categorize them as a money transmitter, because there is no fiduciary duty for the Lightning Network Node (they cannot wrongfully claim funds).
These changes shouldn't happen, there are lots of companies who provide services where it doesn't make sense for them to act like money transmitters. For instance, BitGo is a 2-of-3 multisig wallet where they hold one key. They aren't a money transmitter because they can't send funds without your approval nor can they prevent you from sending funds.
> Laws would probably have to be re-written to categorize them as a money transmitter, because there is no fiduciary duty for the Lightning Network Node
American law draws two circles. One is for entities with know your customer (KYC) requirements. The other is for entities with a fiduciary duty to their clients. The second circle is inside the first. Lots of entities with no client fiduciary requirements are required to know their customers.
TL; DR If you’re handling others’ money, or helping others transmit money, directly or indirectly, you have a KYC liability under current law.
Disclaimer: I am not a lawyer. This is not legal advice.
Laws take time to be rewritten. And as we've seen with the BitLicense - there are many, many jurisdictions that are content to take a wait-and-see approach. Essentially, let one state take the charge, see if businesses all of a sudden stop servicing customers from said state, and learn from their mistakes :).
There are several reasons why that wouldn't make sense.
1. Bitcoin nodes have no special knowledge of transactions. There is nothing that you can get from a subpoena of my Bitcoin node that you cannot get from blockchain.info.
2. Bitcoin nodes can't meaningfully object to transactions that they're not party to. You could refuse to validate a block that contained an illegal transaction, but that would have no effect unless pretty much everybody did the same thing.
3. These laws don't make sense applied to Bitcoin nodes. For example, there's a law saying that transactions over $10,000 must be reported to the government. There are several thousand Bitcoin nodes. Does that mean that FinCEN wants to receive 5000 copies of a report saying that a high-value transaction just appeared? No, of course not.
In contrast, lightning nodes do have meaningful non-public information about transactions, and they can refuse to relay a transaction.
I feel like this could be useful for Lightning Network though. Banks that incentive which supernode to route payments through, inherently creates a competitive marketplace
KYC is regulated by FinCEN. FinCEN requires every “Money Services Business” to register with them and do KYC.
If maintaining a supernode is so costly that only businesses will do so, to make a profit, then supernodes might require KYC. If supernodes run non-profit, they don’t need to.
A non-profit is legal considered to be a type of business that simply gets a different tax treatment.
A business is considered to be a type of entity (just like a person) that gets different tax treatment.
Anyone who transfers money, by any manner including, but not limited to, electronic, financial, debt ledger, cash or traditional methods like hawala, hundi, fei ch'ien, and chit is considered to be a "Money Transmitter."
Money Transmission classification and registration varies by state, to receive money from, or transfer money to someone in said state (regardless of your jurisdiction) you must register with the state and usually put up an insurance bond.
Then you must also register with FinCEN and enact an appropriate AML policy that would include KYC.
It's not as simple as that, with lightning network you basically lock your Bitcoins for a month or whatever time period and within that delay where they're locked you can still move them if you and the supernode both agree to it. What this allows for is to just keep a running total of how much you've spent with that channel and when you spend 0.1btc you give the supernode the transaction to send 0.1btc to them and 0.9 btc to you. As you add payments over the course of a month you resend transactions for your current highest amount spent.
At this point all of those transactions haven't been broadcasted to the network, it's private between you and the lighting node. Normally you need both parties to agree to send a transaction but even if the lightning node is malicious they can't spend any Bitcoins and if they don't broadcast the highest transaction they got from you then at the end of the lock period you can take all of your Bitcoins back.
Basically neither party has to trust each other, the worst that a malicious lightning node could do is make you wait until the channel closes to get your remaining balance back.
Mining pools are also a kind of super node; do they run against the idea of decentralization? Some people say no since mining pools cannot cause much harm and some people say yes but offer no alternative.
Lightning is permissionless, anyone can run a node. The reason that you have two channels is so that transactions can be routed through you. You can think of the lightning network like the tor network for payments.
Lightning is also not meant to replace all bitcoin payments, for now channels are limited to something like .1 btc to promote decentralization.
Does "lightning network" even exist, or is it still vapourware? I can remember reading about it for years now, and last I heard it still wasn't actually implemented and deployed anywhere.
I would really suggest reading the release notes from the past two years of core development. Every release has included an optimization of one kind or another. They have been scaling all along, and Segwit is really a bundling of dozens, maybe hundreds of optimizations that needed a softfork, plus segwit itself.
There are many things the author didn't think about. With Segregated Witness, the signatures don't need to be part of the 1MB block. Also for multi-sig we will be using aggregatable Schnorr signatures, so multi-sig won't take that much space. Still, the cost of an on-blockchain transaction will probably go up to $1000-10000 in current US dollars, so I believe even having an on-chain transaction will get too expensive for most people. For the short term lightning should be a relief though until the community can come up with the next scaling solutions (after implementing Mimblewimble as well)
>Still, the cost of an on-blockchain transaction will probably go up to $1000-10000 in current US dollars
I have a btc holding in cold storage of ~$350. I value the security and control of controlling my private keys+being on the main, trustless, chain. I suspect many people have a similar situation. What are we to do when txn costs rise as you describe?
I know plenty about the Bitcoin protocol, but I havent had time to do DD on Segwit or LN.
The tx cost will rise in proportion to the value of BTC. By the time the tx cost is 10k USD, your roughly 0.08BTC will have a value of hundreds of thousands USD.
Don't worry. Transaction costs will not rise. If you aren't in a hurry, even old style transactions are free today... and 100sat/byte for next couple of blocks clearing.
The entire "transaction fees are high" narrative is a combination of profitable miner spamming the system (to support the big blocker takeover narrative) and wallets having terrible fee estimation programs so that the wallet makers don't have to deal with the tech support when a transaction isn't in the very next block.
It's completely absurd to say that transactions will be $10,000 when they are currently free, and we are nowhere near capacity, and Segwit hasn't even fully been adopted yet.
The entire "high transaction fee" narrative is due to miners profitably spamming the network to drive up transaction fees -- which they could only do with ASICBOOST and pre-segwit.
Can you clarify what this means? Last I read, Lightning was 18 months out. But not really, that's just a number tossed to a crowd. The preview tech published a month ago is nowhere near being ready for use.
As far as I see from the github activity, now that SegWit is activated, the developers are putting much more effort to finishing.
Anyways you're right that maybe I was a bit too optimistic. Bitcoin is getting popular as a store of value faster than it can handle the scale of being an easy-to-use currency. The blocksize drama will probably keep on going :(
> If all transactions using Bitcoin were conducted inside a network of micropayment channels, to enable 7 billion people to make two channels per year with unlimited transactions inside the channel, it would require 133 MB blocks (presuming 500 bytes per transaction and 52560 locks per year).
Notice the 2 channels per year. These 2 channels will be opened with a supernode (operated by eg- Coinbase, Gemini, Blockstream etc). I glanced through the document but they don't seem to acknowledge the requirement for these supernodes.
It's hard to cut through all the FUD, trolling, memes and propaganda to get to the meat of the debate, so I'm not too sure my understanding is accurate, feel free to correct me.
[0] https://lightning.network/lightning-network-paper.pdf