Live data from Hacker News

Bitcoin has a huge scaling problem–Lightning could be the solution

arstechnica.com

31–40 of 141 posts

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#31

Lightning appears to add more problems than solutions. It has a whole bunch of critical issues. Here is a short list. 1. You need to have a computer constantly online or your counter party can easily steal all your money. This leaves you vulnerable to all sorts of attacks. 2. The lightning network works by routing payments through a network to your destination. The issue here is that the routing for the lightning net…

>1. You need to have a computer constantly online or your counter party can easily steal all your money. This leaves you vulnerable to all sorts of attacks.

This isn't not the case. You can outsource channel monitoring to other peers in the network such that if anyone attempts to cheat you, they can punish the cheater and claim a reward. Bitcoin makes various security assumptions such as 51% of the mining power is honest, users have access to perfect information about the blockchain, etc... The LN, if the software is designed correctly, is likely to more realistic security assumptions than Bitcoin itself.

>3. It's relatively expensive to create and destroy channels at about two transactions per channel. Lightning proponents claim that this will be rare, but that can only be the case if there is minimal net flow of money. This is trivially not the case because users will be sending bitcoin more than they recieve and the reverse for retailers.

Channel factories[0] address this problem such that you can move channels between participants without touching the blockchain. There are also ways to do this whereby you switch n channels for a single transaction that spends log n outputs.

[0]: Scalable Funding of Bitcoin Micropayment Channel Networks https://www.tik.ee.ethz.ch/file/a20a865ce40d40c8f942cf206a7c...

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#32

Earlier quoted context omitted.

(1) is false. If you're not online, counterparties might decide to close open channels. But that just means you get your share of the funds in that channel refunded to you. You would need to pay a transaction fee to the bitcoin network for the on-chain transaction, but the other party doesn't get any of your money.

See section 9.5 of the lightning whitepaper: > 9.5 Forgetting to Broadcast the Transaction in Time > If one does not broadcast a transaction at the correct time, the counterparty may steal funds. You need to be online all the time (or at least frequently enough) so that you can publish a penalty transaction if your counter party tries to steal coins from you.

Sure, but there’s services you can outsource that to. Furthermore, if you only use lightning for sending payments (the majority of us) then publishing an earlier version of the channel benefits you!

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#33

Lightning appears to add more problems than solutions. It has a whole bunch of critical issues. Here is a short list. 1. You need to have a computer constantly online or your counter party can easily steal all your money. This leaves you vulnerable to all sorts of attacks. 2. The lightning network works by routing payments through a network to your destination. The issue here is that the routing for the lightning net…

2 isn't true at all, routing isn't nearly that complicated and I don't know why everyone thinks it is. Most routes are expected to be under a few hops. But regardless we will find out soon as the number of nodes on the live system is very rapidly growing. 3 doesn't really apply, as channels can be used as middle hops to rebalance. If I give money to you for a good/service and drain my channel. Then I buy more Bitcoin…

2. Where is the evidence of this? Sure, routing can be easy and short if it's centralized and the number of hops is small. But, if it's centralized, then what's the point of using Bitcoin? Where is this mystical routing algorithm that will work in the presence of constant capacity changes over a decentralized network?

3. The issue here is that the flow for all channels across the entire network needs to be about balanced for things to work out properly. Once someone starts either net accumulating bitcoin or net dispersing bitcoin, then there will be problems somewhere on some link.

4. I can take money out of my checking account at any time at no expense.

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#34
post #26

Bitcoin is both a currency and a payment method. Everybody knew right from the beginning that it's not a great payment method. The 10 minutes delay is a long time if you want to prevent double-spending. For fast payments nothing beats a server with credit accounts. Naysayers will say that it defeats the purpose of bitcoin, but nobody thought bitcoin would entirely make banks and their fractional reserves system disap…

0-confirmation transactions were working excellent before Bitcoin Core added SegWit and other useless stuff. You don't need to wait for a new block if your signed transaction is in the mempool, and it's secure enough for small payments.

> You don't need to wait for a new block if your signed transaction is in the mempool

Still, many companies have always required a few confirmation blocks before accepting a transaction, regardless of the amount. Like currency exchange companies, for instance.

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#35

Earlier quoted context omitted.

(1) is false. If you're not online, counterparties might decide to close open channels. But that just means you get your share of the funds in that channel refunded to you. You would need to pay a transaction fee to the bitcoin network for the on-chain transaction, but the other party doesn't get any of your money.

See section 9.5 of the lightning whitepaper: > 9.5 Forgetting to Broadcast the Transaction in Time > If one does not broadcast a transaction at the correct time, the counterparty may steal funds. You need to be online all the time (or at least frequently enough) so that you can publish a penalty transaction if your counter party tries to steal coins from you.

I see what you mean. Three thoughts on this:

* The time lock on commitment transactions is typically set to be a few days, so you don't need to be online "constantly." At most you need to check in about once a day.

* As the white paper says, you can delegate this function to a third party, without giving the third party the ability to steal your funds.

* If the other party tries to steal your funds and you catch him, you get to steal all of his funds. So in practice I don't expect this to be a common situation. If the other guy believes there's at least a 90 percent chance that you'll check the blockchain on any given day, then the expected value of broadcasting a revoked transaction is going to be heavily negative.

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#36

Earlier quoted context omitted.

So basically, it turns into a ridiculously complicated bank. That requires 42tWh of power waste (and growing) to function. I'm sorry, but I'm not impressed. Let's build a solution that scales better on-chain and uses a more power efficient mining algorithm.

> uses a more power efficient mining algorithm Thats axiomatically impossible. Its the amount of energy required, not nhashes/etc, that disincentivize an attacker from rewriting history.

[deleted]

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#37

Lightning appears to add more problems than solutions. It has a whole bunch of critical issues. Here is a short list. 1. You need to have a computer constantly online or your counter party can easily steal all your money. This leaves you vulnerable to all sorts of attacks. 2. The lightning network works by routing payments through a network to your destination. The issue here is that the routing for the lightning net…

>1. You need to have a computer constantly online or your counter party can easily steal all your money. This leaves you vulnerable to all sorts of attacks. This isn't not the case. You can outsource channel monitoring to other peers in the network such that if anyone attempts to cheat you, they can punish the cheater and claim a reward. Bitcoin makes various security assumptions such as 51% of the mining power is ho…

Don't channel factories only allow you to move channels between users who were a part of the original multiparty transaction?

It's a fantastic idea, but I feel it more has usecases between popular hubs and less for actual users.

Although they also have the side effect of making the initial transaction on the blockchain up to 90% cheaper, so they are useful there too!

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#38
post #4

Lightning involves an always-on, networked, machine holding your private key. Your bitcoin is a bounty for 0-day exploits. Brilliant!

And if you go offline for a few hours, your peers can steal your balance (unless you entrust somebody else to monitor it for you, which has its own tradeoffs)

What are the trade offs to having say 100,000 other parties monitor your channel for you?

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#39
post #12

Bitcoin Cash seems to be doing just fine with on-chain scaling. There are concerns about centralization on miners with it, but in my understanding the incentives planned in the original Bitcoin paper account for that.

Bitcoin Cash can’t even scrape together enough transactions to form 100kb blocks. It’s rather disengenuous to say it’s scaling better when it has a fraction of the users. Furthermore, larger block size is directly related to centralization. The bcash crowd hopes people forget decentralization is important.

Re: Bitcoin has a huge scaling problem–Lightning could be the solution

#40

Lightning appears to add more problems than solutions. It has a whole bunch of critical issues. Here is a short list. 1. You need to have a computer constantly online or your counter party can easily steal all your money. This leaves you vulnerable to all sorts of attacks. 2. The lightning network works by routing payments through a network to your destination. The issue here is that the routing for the lightning net…

2 isn't true at all, routing isn't nearly that complicated and I don't know why everyone thinks it is. Most routes are expected to be under a few hops. But regardless we will find out soon as the number of nodes on the live system is very rapidly growing. 3 doesn't really apply, as channels can be used as middle hops to rebalance. If I give money to you for a good/service and drain my channel. Then I buy more Bitcoin…

Sounds like you're familiar with the tech, maybe you could answer a couple of questions:

> If I give money to you for a good/service and drain my channel. Then I buy more Bitcoin from coinbase, coinbase can route that BTC to me through you to rebalance our channel so it is all on my side.

Could you point me to details about how cross-channel rebalancing happens?

Since lightning network channels are purely 1:1 (per the whitepaper); say you drained your channel to me, how does your channel with Coinbase allow you to route BTC to our channel without reopening a channel (requiring on-chain transactions)?

The whitepaper mentions hops, but I can't find any details on how they actually work.

> But also locktimes are normally a few days.

Does that imply that every channel needs to make an on-chain transaction every few days to reopen/keep the channel open?

Post reply on HN