https://www.reddit.com/r/Bitcoin/comments/7pwna9/lightning_network_megathread/
created by codedaway on 12/01/2018 at 13:44 UTC*
1370 upvotes, 81 top-level comments (showing 25)
^Last ^updated ^2018-01-29
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
payment channels](https://s3.amazonaws.com/bitcoindesigned-prod/media/lightning-part-1-payment-channels-v2.png[15])
1: http://www.lightning.network/
2: http://lightning.engineering/
3: https://medium.com/@AudunGulbrands1/lightning-faq-67bd2b957d70
4: https://medium.com/@rusty_lightning/bitcoin-lightning-things-to-know-e5ea8d84369f
5: https://rusty.ozlabs.org/?p=450
6: https://masteringbitcoin.neocities.org/#lightning_network
7: https://coincenter.org/entry/what-is-the-lightning-network
8: https://blog.bitmex.com/the-lightning-network/
9: https://i.imgur.com/L10n4ET.png
10: https://twitter.com/patestevao/status/953756248553525248
11: https://s3.amazonaws.com/bitcoindesigned-prod/media/what-is-a-multisig-wallet.png
12: https://twitter.com/patestevao/status/953756248553525248
13: https://s3.amazonaws.com/bitcoindesigned-prod/media/what-are-the-bitcoin-timelocks.png
14: https://twitter.com/patestevao/status/953756248553525248
15: https://s3.amazonaws.com/bitcoindesigned-prod/media/lightning-part-1-payment-channels-v2.png
shaping the network](https://s3.amazonaws.com/bitcoindesigned-prod/media/lightning-part-2-shaping-the-network.png[17])
16: https://twitter.com/patestevao/status/953756248553525248
17: https://s3.amazonaws.com/bitcoindesigned-prod/media/lightning-part-2-shaping-the-network.png
going off chain](https://s3.amazonaws.com/bitcoindesigned-prod/media/lightning-part-3-going-offchain.png[19])
18: https://twitter.com/patestevao/status/953756248553525248
19: https://s3.amazonaws.com/bitcoindesigned-prod/media/lightning-part-3-going-offchain.png
Channel Networks](https://www.tik.ee.ethz.ch/file/a20a865ce40d40c8f942cf206a7cba96/Scalable_Funding_Of_Blockchain_Micropayment_Networks%20%5C(1%5C).pdf[25])
20: https://lightning.network/lightning-network-paper.pdf
21: https://lightning.network/lightning-network-summary.pdf
22: https://lightning.network/lightning-network-technical-summary.pdf
23: https://github.com/lightningnetwork/lightning-rfc
24: https://github.com/ElementsProject/lightning/blob/master/doc/deployable-lightning.pdf
26: https://www.youtube.com/watch?v=rrr_zPmEiME
27: https://www.youtube.com/watch?v=MpfvhiqFw7A
28: https://www.youtube.com/watch?v=dhpg_8D2FPI
29: https://www.youtube.com/watch?v=a73Gz3Tvx3k
30: https://www.youtube.com/watch?v=vPnO9ExJ50A
31: https://www.youtube.com/watch?v=b_szGaaPPFk
32: https://www.youtube.com/watch?v=8zVzw912wPo
33: https://www.youtube.com/watch?v=gF_ZQ_eijPs
34: https://youtu.be/ndcfBfE_yoY
35: https://www.youtube.com/watch?v=wIhAmTqXhZQ
36: https://www.youtube.com/watch?v=3PcR4HWJnkY
37: https://www.reddit.com/user/starkbot
38: https://www.reddit.com/user/roasbeef
39: https://www.reddit.com/user/stile65
40: https://www.reddit.com/user/cfromknecht
41: https://www.reddit.com/user/RustyReddit
42: https://www.reddit.com/user/cdecker
43: https://www.reddit.com/user/Dryja
44: https://www.reddit.com/user/josephpoon
45: https://www.reddit.com/user/fdrn
46: https://www.reddit.com/user/pmpadiou
47: https://twitter.com/starkness
48: https://twitter.com/roasbeef
49: https://twitter.com/stile65
50: https://twitter.com/bitconner
51: https://twitter.com/johanth
53: https://twitter.com/rusty_twit
55: https://twitter.com/JackMallers
56: https://twitter.com/tdryja
58: https://twitter.com/alexbosworth
59: https://medium.com/@lightning_network
60: https://medium.com/lightning-resources
61: https://medium.com/@AudunGulbrands1/lightning-faq-67bd2b957d70
62: https://medium.com/@ACINQ/releasing-our-lightning-network-explorer-93e87de150bb
63: https://medium.com/@argongroup/bitcoin-lightning-network-7-things-you-should-know-604ef687af5a
68: https://en.bitcoin.it/wiki/Lightning_Network
69: https://en.bitcoin.it/wiki/Hashed_Timelock_Contracts
71: https://lists.linuxfoundation.org/pipermail/lightning-dev/2016-January/000403.html
72: http://shop.oreilly.com/product/0636920049524.do
73: https://bitzuma.com/owning-bitcoin/
74: https://github.com/lightninglabs/lightning-app
75: https://github.com/alexbosworth/lnd-gui
76: https://github.com/ACINQ/eclair
77: https://github.com/LN-Zap/zap-desktop
78: https://github.com/mably/lncli-web
80: https://github.com/cdecker/kugelblitz
81: http://dev.lightning.community/guides/installation/
82: http://dev.lightning.community/tutorial/
83: http://lightning.community/lnd/faucet/2017/01/19/lightning-network-faucet/
84: http://dev.lightning.community/tutorial/01-lncli/index.html
85: http://dev.lightning.community/tutorial/02-web-client/index.html
86: http://dev.lightning.community/tutorial/03-rpc-client/index.html
87: http://dev.lightning.community/tutorial/04-webapp-integration/index.html
88: http://dev.lightning.community/guides/python-grpc/
89: http://dev.lightning.community/guides/javascript-grpc/
92: https://github.com/ACINQ/eclair/releases
93: https://github.com/LN-Zap/zap-desktop
94: https://github.com/lightninglabs/lightning-app
95: https://github.com/btcontract/lnwallet
96: https://play.google.com/store/apps/details?id=com.lightning.wallet
98: https://starblocks.acinq.co/
99: https://blog.bitrefill.com/lightning-payments-on-testnet-for-bitrefill-ef6db8714b00
100: https://lightning.bitrefill.com/usa/
101: https://lightninggem.com/
103: https://twitter.com/starkness/status/953434418948927488
--------------------------------------------------------------------------------
104: https://twitter.com/JackMallers/status/953878478524477440
105: https://twitter.com/alexbosworth/status/946175898029395968
106: https://twitter.com/TorGuard/status/950383059735646209
107: https://twitter.com/TorGuard/status/950414221120081920
108: https://twitter.com/alexbosworth/status/955870434230132736
109: https://www.youtube.com/watch?v=YrDoDbnpTE4
110: https://usethebitcoin.com/lightning-network-first-ever-purchase-performed-buy-vpn-router/
111: https://twitter.com/lightning/status/931277111490265088
112: https://blog.lightning.engineering/announcement/2017/11/16/ln-swap.html
113: http://dev.lightning.community/overview/
114: http://dev.lightning.community/
115: http://dev.lightning.community/guides/
116: http://api.lightning.community/
117: https://medium.com/@rusty_lightning/the-bitcoin-lightning-spec-part-1-8-a7720fb1b4da
118: https://github.com/lightningnetwork/lnd
119: https://github.com/ACINQ/eclair
120: https://github.com/ElementsProject/lightning
121: https://github.com/mit-dci/lit
122: https://github.com/lightningnetwork/lightning-onion
123: https://github.com/cdecker/lightning-integration
124: https://github.com/nayutaco/ptarmigan
125: https://github.com/cdecker/lightning-integration
126: https://github.com/ElementsProject/lightning-charge
127: https://github.com/ElementsProject/lightning-charge-client-js
128: https://github.com/ElementsProject/lightning-charge-client-php
129: https://github.com/rustyrussell/lightning-payencode
130: https://github.com/cdecker/lseed
131: https://github.com/ElementsProject/woocommerce-gateway-lightning
132: https://github.com/michielbdejong/lnrpc-client
133: https://github.com/alexbosworth/ln-service
134: https://explorer.acinq.co/#/
135: https://lnmainnet.gaben.win/
136: https://bitcoinexchangerate.org/lightning
137: https://www.robtex.com/lightning/node/
138: https://twitter.com/BtcpayServer/status/953541073795670016
139: http://lightning.community/
140: https://twitter.com/lightning
141: https://blog.lightning.engineering/
142: https://lists.linuxfoundation.org/mailman/listinfo/lightning-dev
144: https://lightningcommunity.slack.com
145: https://webchat.freenode.net/?channels=lightning-dev&uio=d4
146: https://botbot.me/freenode/lightning-dev/
147: https://webchat.freenode.net/?channels=lnd&uio=d4
148: https://lightningcommunity.slack.com
150: https://twitter.com/starkness/status/953434418948927488
151: https://emojipedia.org/high-voltage-sign/
152: https://github.com/lightninglabs/lightning-faucet
153: https://github.com/mably/ln-dice
154: https://github.com/CryptoFR/ln-tip-slack
156: https://github.com/rustyrussell/lightning-cat/blob/master/catsearch.sh
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Yes. You pick a peer and after some setup, create a bitcoin transaction to fund the lightning channel; it’ll then take another transaction to close it and release your funds. You and your peer always hold a bitcoin transaction to get your funds whenever you want: just broadcast to the blockchain like normal. In other words, you and your peer create a shared account, and then use Lightning to securely negotiate who gets how much from that shared account, without waiting for the bitcoin blockchain.
--------------------------------------------------------------------------------
Yes, Lightning is open source. Anyone can review the code (in the same way as the bitcoin code)
--------------------------------------------------------------------------------
Similar to the bitcoin network, no one will ever own or control the Lightning Network. The code is open source and free for anyone to download and review. Anyone can run a node and be part of the network.
--------------------------------------------------------------------------------
No, your bitcoin will never leave the blockchain. Instead your bitcoin will be held in a multi-signature address as long as your channel stays open. When the channel is closed; the final transaction will be added to the blockchain. “Off-chain” is not a perfect term, but it is used due to the fact that the transfer of ownership is no longer reflected on the blockchain until the channel is closed.
--------------------------------------------------------------------------------
Not necessarily,
--------------------------------------------------------------------------------
Tiny payments are possible: since fees are proportional to the payment amount, you can pay a fraction of a cent; accounting is even done in thousandths of a satoshi. Payments are settled instantly: the money is sent in the time it takes to cross the network to your destination and back, typically a fraction of a second.
--------------------------------------------------------------------------------
Yes, but not in theory. You could make a poorer lightning network without it, which has higher risks when establishing channels (you might have to wait a month if things go wrong!), has limited channel lifetime, longer minimum payment expiry times on each hop, is less efficient and has less robust outsourcing. The entire spec as written today assumes segregated witness, as it solves all these problems.
--------------------------------------------------------------------------------
No, for now. For the first version of the protocol, if you wanted to send a normal bitcoin transaction using your channel, you have to close it, send the funds, then reopen the channel (3 transactions). In future versions, you and your peer would agree to spend out of your lightning channel funds just like a normal bitcoin payment, allowing you to use your lightning wallet like a normal bitcoin wallet.
--------------------------------------------------------------------------------
Not really. Anyone can set up a node, and so it’s a race to the bottom on fees. In practice, we may see the network use a nominal fee and not change very much, which only provides an incremental incentive to route on a node you’re going to use yourself, and not enough to run one merely for fees. Having clients use criteria other than fees (e.g. randomness, diversity) in route selection will also help this.
--------------------------------------------------------------------------------
Lightning is already being tested on the Mainnet Twitter Link[157] but as for a specific date, Jameson Lopp says it best[158]
157: https://twitter.com/alexbosworth/status/946175898029395968
158: https://twitter.com/lopp/status/947808940255006726
--------------------------------------------------------------------------------
Nope, because there is no custody ever involved. It's just like forwarding packets. -- Source
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
According to Rusty's calculations[159] we should be able to store 1 million nodes in about 100 MB, so that should work even for mobile phones. Beyond that we have some proposals ready to lighten the load on endpoints, but we'll cross that bridge when we get there. -- Source[160]
159: https://medium.com/@rusty_lightning/lightning-routing-rough-background-dbac930abbad
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Lightning is based on participants in the network running lightning node software that enables them to interact with other nodes. This does not require being a full bitcoin node, but you will have to run "lnd", "eclair", or one of the other node softwares listed above.
--------------------------------------------------------------------------------
Sure, you can help write up educational material. You can learn and read more about the tech at http://dev.lightning.community/resources[161]. You can test the various desktop and mobile apps out there (Lightning Desktop, Zap, Eclair apps). -- Source[162]
161: http://dev.lightning.community/resources
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
lit[163] doesn't depend on having your own full node -- it automatically connects to full nodes on the network. -- Source[164]
163: https://github.com/mit-dci/lit
164: https://www.reddit.com/r/Bitcoin/comments/7lui2v/needs_you_yes_you/drpblht/
LND[165] uses a light client mode, so it doesn't require a full node. The name of the light client it uses is called neutrino
165: https://github.com/lightningnetwork/lnd
--------------------------------------------------------------------------------
Upon opening a channel, the two endpoints first agree on a reserve[166] value, below which the channel balance may not drop. This is to make sure that both endpoints always have some skin in the game as /u/rustyreddit puts it :-)
Spotty connections, DDoS, and similar will not provide the attacker the necessary guarantees to make cheating worthwhile. Any form of uncertainty about your online status acts as a deterrent to the other endpoint. -- Source
--------------------------------------------------------------------------------
You typically want to have more than one channel open at any given time for redundancy's sake. And we imagine open and close will probably be automated for the most part. In fact we already have a feature in LND called autopilot that can automatically open channels for a user.
Frequency will depend whether the funds are needed on-chain or more useful on LN. -- Source
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Yes but it has to be implemented in the Lightning software being used. -- Source
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
Comment by bitcoind3 at 12/01/2018 at 16:12 UTC*
27 upvotes, 4 direct replies
Do you have any resources that explain how multi-hop HTLCs work? I just about understand the bi-party case, but I don't see how it can work when you need to hop via an intermediary.
Specifically:
Comment by grs007 at 12/01/2018 at 17:23 UTC
26 upvotes, 1 direct replies
How much more time it will take to implement on btc?
Comment by Zalwol at 12/01/2018 at 16:50 UTC*
11 upvotes, 1 direct replies
Question: Is it possible for lightning transactions to be reversible by one trusted party -- if all parties involved initially agree that this trusted party can reverse transactions at will?
I'm asking because a lot of non-techie people will never keep savings in Bitcoin because they believe it can be hacked and stolen if not stored properly (which is absolutely true, like it or not), and they'll never use it to buy anything because every transaction is final, so there's no way to recoup their funds if, say, an item they ordered never arrived. But these people are happy to keep their money in banks and use credit cards because they know that if any fraudulent tranaction happens it can easily be reversed.
So if a trusted third party with a hard-earned reputation can advertise financial services to the mainstream public with the guarantee that even if they are the victim of fraud they can reverse the tranactions at will (obviously for a limited period of time), with them being the sole arbitrators of any dispute (between, say, a merchant and buyer -- like credit card companies do regularly), then i can see people like my parents switching over.
Comment by [deleted] at 12/01/2018 at 18:10 UTC
7 upvotes, 5 direct replies
Is the cost of opening a channel potentially to high?
Comment by Bobanaut at 12/01/2018 at 15:59 UTC*
24 upvotes, 5 direct replies
So uh... why would i want to run a Lightning Network Node? There is no incentive for me to do so. Actually i would prefer my Client/Wallet to not work as a node that shifts my coins between my channels in the background... just because someone else transfers funds over me... how would i prevent that? keep only one channel to the network and hope that the other side is always on?
Edit: I am running a full btc node but it's not consuming much cpu as it's only doing simple math... a LN network node is generating a lot of keys and stuff... With enough usage this will cut really heavy into CPU/power costs... Generating these little suckers (ECDSA key pairs) is pretty time consuming
Comment by 18boro at 12/01/2018 at 18:03 UTC
22 upvotes, 4 direct replies
I admit I don't understand much of the lightning network, but based on other posts it seems that running LN nodes is hard to do for regular users because it's very power-demanding, and will likely be run by bigger setups. So this then sounds very much of what BCH was criticised for; bigger blocks leading to the inability for regular users to run nodes leading to centralisation. What am I missing?
Comment by codedaway at 12/01/2018 at 13:45 UTC
21 upvotes, 3 direct replies
It's Friday! Time to learn about the Lightning Network, ask questions, and start a discussion!
Comment by lbalan79 at 12/01/2018 at 14:24 UTC
8 upvotes, 1 direct replies
Can someone please please bring the testnet explorer to the mainnet?
Thank you
Comment by [deleted] at 12/01/2018 at 16:47 UTC
4 upvotes, 2 direct replies
[deleted]
Comment by CotiNetwork at 12/01/2018 at 15:20 UTC
3 upvotes, 0 direct replies
Beta version or final?
Comment by btc-7 at 12/01/2018 at 16:54 UTC
3 upvotes, 1 direct replies
What do you need to backup an opened lightning channel? Can you recreate it from the private key (seed) or do have to save more information?
Comment by fainting-goat at 12/01/2018 at 16:56 UTC
3 upvotes, 1 direct replies
The one question I'm left with after having researched a bunch about lightning is that there are a lot of "the lightning node can" and such, particularly around the other party going rogue, but I can't figure out whether that's going to be happening automatically in the node client code, or whether the user will need to intervene in order to, for example, send the retaliation.
Comment by InstinctDT at 12/01/2018 at 17:43 UTC
3 upvotes, 3 direct replies
A and B have a channel. 1 BTC each. A sends B 0.5 BTC. B sends back 0.25 BTC. Balance should be A = 0.75, B = 1.25. If A gets disconnected, B can publish the first Tx where the balance was A = 0.5 and B = 1.5. If the node B does in fact attempt to cheat by publishing an old state (such as the A=0.5 and B=1.5 state), this cheat can then be detected on-chain and used to steal the cheaters funds, i.e., A can see the closing transaction, notice it's an old one and **grab all funds in the channel (A=2, B=0)**.
Does that mean that both A and B have the permission to move ALL the funds in the channel (both A's and B's Bitcoin)? Does that mean that both A and B can just grab all the balance at any given time? Could A or B take all the BTC before the timer (CLTV) expire and essentially steal all the BTC in the channel?
Comment by NoninstitutionalJunk at 12/01/2018 at 18:00 UTC
3 upvotes, 1 direct replies
Hey. I have a question if someone has a few moments to help me understand. LN sounds great. Definitely. But, it also sounds like a lot of "work" and hassle, IMO.
Is anyone else worried about this? If it's too much hassle for either end-users or companies to accept, they simply won't. ? I guess it really comes down to how this will look on a mobile app with a good UI. All someone should have to do is just press a button or two, the end user that is...
Thoughts?
Comment by [deleted] at 12/01/2018 at 18:18 UTC*
3 upvotes, 2 direct replies
[deleted]
Comment by Godspiral at 12/01/2018 at 19:02 UTC
3 upvotes, 3 direct replies
Any thoughts on what LN nodes might charge?
0.01% of tx value (per node hop) too low? If the costs of the service are independent of amounts transacted, would 0.0001 USD per tx be too low?
would a combination of fixed fee + % be appropriate?
Comment by ToDaMoonShibe at 12/01/2018 at 19:03 UTC
3 upvotes, 1 direct replies
when will regular people feel the change with LN (fees and transaction speed ?
Comment by mindcandy at 12/01/2018 at 19:15 UTC
3 upvotes, 0 direct replies
Would it be feasible to run an app on my phone that checks for cheaters once/day?
My phone is locally controlled, trusted machine that is connected practically 24/7 regardless of what I'm doing. If running a check is a small amount of work and network traffic, it should be feasible to run as a background app. It's possible that my phone could be taken offline for a week, but for that exceptional case I would have plenty of warning that I need to run a checker via some other means.
Comment by ktnaneri at 12/01/2018 at 17:47 UTC
9 upvotes, 2 direct replies
Considering that most part of the transactions are not between 2 individuals, but between random peers, LN has a really narrow use case, which has 2 heavy constraints - two peers do need to have a lot of transactions between each other and they need to have funds which they agree to exclude from their daily cash flow to keep in their channel. That is a really really narrow usecase...
Comment by BTC_is_waterproof at 12/01/2018 at 14:30 UTC
8 upvotes, 4 direct replies
Does anyone have an estimated time frame for when this will be out?
Comment by hxcheyo at 12/01/2018 at 21:02 UTC
5 upvotes, 3 direct replies
It’s posts like this that make me realize we are Years from mass adoption. Be back in 500 hours when I’m done absorbing all this content.
Comment by strategosInfinitum at 12/01/2018 at 16:37 UTC
2 upvotes, 2 direct replies
I have a question.
How do you guarantee that the very last lightning transactions made in a channel before it closes are the ones used?
What prevents me maliciously forwarding a more favourable to me older transaction?
Comment by MrRGnome at 12/01/2018 at 16:59 UTC
2 upvotes, 1 direct replies
How does the Lightning Network stop flooding nodes (DDoS) with micro transactions? Is this even an issue?
Hash Time Locked Contracts are traded off chain between two parties without a global broadcast mechanism. The only time the HTLCs might need to be broadcast is on the blockchain to prevent fraud. Otherwise HTLCs are unicast, reducing the number of transactions any node sees to just those moving through its channels.
Comment by Pocciox at 12/01/2018 at 18:15 UTC
2 upvotes, 3 direct replies
Does Lightning require Segregated Witness? Yes, but not in theory. You could make a poorer lightning network without it, which has higher risks when establishing channels (you might have to wait a month if things go wrong!), has limited channel lifetime, longer minimum payment expiry times on each hop, is less efficient and has less robust outsourcing. The entire spec as written today assumes segregated witness, as it solves all these problems.
How are we going to deploy lightning network if we struggle to get 10% of transactions to use segwit?
Comment by [deleted] at 12/01/2018 at 20:34 UTC*
2 upvotes, 1 direct replies
[deleted]