Only if we remove the withdrawal transactions from the equation, and start trading unconfirmed transactions as regular bitcoins (confirmed transactions), can we get around this limitation (such that only the number of new users joining is limited to 20M per month). I’m somewhat skeptical this can work, though, since recipients of funds usually have suppliers to pay, so I assume that we need to settle on the blockchain at least monthly.
[1] https://runeksvendsen.github.io/blog/posts/2017-10-08-no-bit...
This isn't equivalent to unconfirmed transactions - it's tokens of exchange which directly and provably represent bitcoins. Settling on the blockchain shouldn't even have to happen monthly.
One of the other interesting things is that Lightning Network allows for payment in one cryptocurrency while you hold another by channeling it through a very simple, provable currency exchange. This could behave similarly to, for example, paying for something in USD when you hold GBP - practically automatically. So the lack of scalability in Bitcoin's blockchain might not matter so much - if something else turns up that's better for a given person holding money, they can start using it while still continuing to trade with all the people using Bitcoin.
IMHO, cross-chain transactions like this are one of the most important parts of Lightning Network - suddenly, network effects around a specific currency don't matter so much, people can hold whatever they like - Bitcoin people can trade with Litecoin people who can trade with Ethereum scripts, and when something new that solves more problems turns up, people holding that can still buy VPSes with bitcoin.
However, I think the OP is correct that if it becomes mainstream, 20M transactions a month will not be enough. Lightning requires 2 transactions -- one to reserve the funds and one to settle up at the end of the period. The transactions cancel if you do not settle up, so setting that period of time is vital. If you set it to a month (probably reasonable), then you are basically limiting the service to 10M users (assuming the OP's estimate of 20M transactions a month is correct -- I haven't checked).
So I think it's pretty obvious that you are going to have to do something else
In the very long term, if we get to a point where most people's and organization's income is roughly equal to their expenditure, then this won't be a problem, but until then there is still pressure to settle on-chain because of this.
They certainly can if their lawyer is also on the Lightning Network.
Eventually all Bitcoin wallets should support on-chain and Lightning Network transactions, and seamlessly pick one or the other depending on the transaction amount.
The problem is fees. If this rational actor has 10,000 proofs of payment from as many different people, then the settlement transaction might require the redemption of up to 10,000 inputs, which would make payments prohibitively expensive. It may even be impossible to settle in a single block, since the transaction (including dependencies) might exceed the maximum block size.
A proof that 0.001 BTC can be withdrawn at any time isn’t very useful if the cost of withdrawal is 0.001 BTC.
In other words, LN surely has the value transfer part solved. But I don’t see how it solves the clearing part, that is: grouping multiple payments from different clients into a single, low-fee Bitcoin transaction. I understand how fees are saved on multiple payments from the same client (that’s what a payment channel does), but not how it would work with payments from many different clients (which is what merchants need to handle).
Are there other cryptocoins that are built on protocols that avoid having to have this extra layer on top to make them scalable? I imagine the more complexity that is added, the more scope there is for security, implementation and scalability issues so you want to keep things simple.
It's really not that complicated, especially from the average end users perspective.
[1] https://www.tik.ee.ethz.ch/file/a20a865ce40d40c8f942cf206a7c...
https://medium.com/@lightning_network/lightning-protocol-1-0...
"As developers of the Lightning Network protocol, we’re
excited to announce version 1.0 RC of the Lightning
protocol specification along with a successful cross-
implementation test on Bitcoin mainnet!"
I'm the original developer of Bitquest[1], where we used to process hundreds of micropayments smaller than 1 cent each day using 0 fee Bitcoin transactions.
When the blocks started to fill up we had to move all transactions off-chain except when players send money to the game and cashing out.
From the player's perspective, it's hard to justify paying $2 each time get Bitcoin in/out of the game. On the other side, there's no cut for Apple, Google, et al. who charge for as much as 30% cut for micro transactions.
I'm now working on a similar game[2] that will take advantage of Segwit and Lightning Network. There's still miner fees involved to send money in and opening a payment channel, however there's no cut to a payment processor and the associated problems of compliance.
I'm not saying it's perfect but there's still important advantages on Cryptocurrency for game transactions and I'm confident that Steam and others will get back to it after it's infancy.
[1] https://github.com/bitquest/bitquest [2] https://hammerco.in