Pages:
Author

Topic: The Lightning Network FAQ - page 56. (Read 33287 times)

legendary
Activity: 1876
Merit: 3132
October 21, 2020, 04:18:31 AM
First of all, is the term liquiddity the same as capacity?

You can use them interchangeably in this context (inbound/outbound liquidity/capacity).

1 - Do I get inbound capacity/liquidity when someone simply opens a channel with me?

Yes, but it's also more complicated. See the last answer.

And an extra question is if this work exactly the same way for outbound capacity. If so, the above 2 questions also answer to the case of outbound capacity/liquidity.

You get outbound capacity when: 1) you open a channel with someone 2) someone opens a channel to you and sends you some coins or routes a payment through you.

I have someone that opened a channel of 100k sats with me (his reserve is 1k sats) but he didn't send any sats to me neither I did to him and I can't send sats from my wallet in my phone into the wallet I have on my laptop connected to my node. The error is always the same: "Does the destination has inbound capacity??"...

While your channel has some inbound capacity now, all incoming payments have to go through the node which opened the channel to you. You are also limited by the liquidity of other nodes in the route.
legendary
Activity: 3430
Merit: 3080
October 21, 2020, 02:36:38 AM
It seems also to include withdrawals to LN (which is, imo, at most equally important than deposits, so people can buy directly LN coins) and seems to have been added already in December 2019. The deposited coins are credited as "LNX" and can be converted for free to Bitcoin. It is true however that there are relatively few news articles about that and most of them focus on Bitfinex' LN node. Since September 2020 also Wumbo channels seems to be supported.

The "buy LN coins directly" step seems curious, possibly because they need a way to assess demand for LN withdrawals. With Wumbo channels and LN withdrawals, Bitfinex have that huge advantage as an exchange over the others, manifest as the potential for their own liquidity to be far greater than other exchanges without Lightning support. In a (likely soon) bullrun, this will make Bitfinex the most attractive platform to traders who wish to have more control over risk management. Then perhaps the "convert LN coins" step will be moot. Once a 2nd major exchange enables LN deposits & withdrawals, all of them will be essentially forced to do it so as not to lose out in the arbitrage battle.


They also seem to want to add Tether deposits/withdrawals via LN. As Tether is an Omni token, this could mean OmniBOLT support.

However questionable Tether is as a concept, that would be a pretty remarkable facility for Bitfinex traders to have at their disposal. I thought that Tether had changed into an Ethereum based token though?
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
October 20, 2020, 05:58:25 PM
Hello.

There are 2 questions I still couldn't get a 100% accurate answer to. It's about opening channels, outbound and inbound liquidity/capacity.

First of all, is the term liquiddity the same as capacity?

And the 2 questions are:

1 - Do I get inbound capacity/liquidity when someone simply opens a channel with me?
2 - If [1] answer is no, do I MUST send some sats to the one who opened this channel with me to be able to have inbound capacity/liquidity???

And an extra question is if this work exactly the same way for outbound capacity. If so, the above 2 questions also answer to the case of outbound capacity/liquidity.

I have someone that opened a channel of 100k sats with me (his reserve is 1k sats) but he didn't send any sats to me neither I did to him and I can't send sats from my wallet in my phone into the wallet I have on my laptop connected to my node. The error is always the same: "Does the destination has inbound capacity??"...

Thanks
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
October 20, 2020, 05:11:14 PM
Quote
2) It must be clear that transaction costs using LN are much smaller than without it.
I believe it will be obviously clear.
The problem is that if fees continue to be very low, people will continue to think that this will be so forever, and not bother about LN. They could even refuse to open a LN channel because of the fear that opening and closing it could cost them even more fees (which is a fallacy, as for LN you typically pay fees 1 time for many transactions).

I was expecting Bitstamp to be the first Lightning-capable exchange.
Bitstamp has a LN node (which seems to be even older than Bitfinex's), but as far as I know it doesn't offer deposits/withdrawals.

It appears that Bitfinex already allow their clients to make LN deposits to their accounts. Quite a big development really, it perhaps got mixed up with the news that Bitfinex were running a public LN node?
Thanks for the info, that's really good news and I wasn't aware of it. It seems also to include withdrawals to LN (which is, imo, at most least equally important than deposits, so people can buy directly LN coins) and seems to have been added already in December 2019. The deposited coins are credited as "LNX" and can be converted for free to Bitcoin. It is true however that there are relatively few news articles about that and most of them focus on Bitfinex' LN node. Since September 2020 also Wumbo channels seems to be supported.

They also seem to want to add Tether deposits/withdrawals via LN. As Tether is an Omni token, this could mean OmniBOLT support.
legendary
Activity: 2898
Merit: 1823
October 20, 2020, 10:21:34 AM
For me, there are mainly two conditions for the Lightning Network to really take off:

1) Providers of massively used services must support it.

Yes, the exchanges. Onboarding exchanges must be one of the first priorities.

It appears that Bitfinex already allow their clients to make LN deposits to their accounts. Quite a big development really, it perhaps got mixed up with the news that Bitfinex were running a public LN node? I'm not sure when client account deposits went live tbh


Haha. That makes me wish that Bitfinex was a "model-exchange" that the other exchanges could follow. To be honest, I was expecting Bitstamp to be the first Lightning-capable exchange.
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
October 19, 2020, 06:55:43 PM
It's the minimum reserve YOU would have to change, try typing to the command line
Code:
clightning /? | grep="reserve"

And see what comes up, replacing clightning with how you'd normally run it and potentially /? with -h or - -help.

I was trying to search through the docs but there was a lot of them on their github.

Well, the output of that is:

Quote
$ lightning-cli help | grep reserve
fundpsbt satoshi feerate startweight [minconf] [reserve] [locktime]
reserveinputs psbt [exclusive]
unreserveinputs psbt
Unreserve utxos (or at least, reduce their reservation)
utxopsbt satoshi feerate startweight utxos [reserve] [reservedok] [locktime]


But in the meantime, I was talking to (what I think is) a dev and he told me this is actually a bug and he started an issue on github.
https://github.com/ElementsProject/lightning/issues/4140

In less than a week, I have already stumbled into 2 bugs. On one hand, this is bad, because a noob user and a new lightning user is coming across with quite a few bugs. On the other hand, it's good because I'm kind of contributing for the enhancement of this Lightning Network implementation.

This dev tried to push me to fix the bug, as it's apparently simple to fix, but I'm too afraid of messing things up, so I'm not going to do anything without supervision.

As far as I understood, every node in the Lightning Network has these 2 settings: channel reserve and dust limit. This said, when one node (A) tries to open a channel to another node (B), node (A) needs to make sure tat it's own channel reserve parameter is equal or greater than its own dust limit. Moreover, it also needs to make sure that its own channel reserve parameter is greater or equal to node (B) dust limit parameter.

I'm not sure about this because in the meantime, this dev stopped talking to me. He's probably afaik and where I live is now time to go to bed. If I can find this dev tomorrow again, I my try to discuss with him, the fix I have in mind, in case my assumption above is true and accurate!

The dust limit is brought over from bitcoin core. I think it rpc's into core but I don't think it takes any of its settings (but I could he wrong on that one)..

I think that's stayed for cross compatibility so core can still broadcast the transactions.
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
October 19, 2020, 06:11:30 PM
It's the minimum reserve YOU would have to change, try typing to the command line
Code:
clightning /? | grep="reserve"

And see what comes up, replacing clightning with how you'd normally run it and potentially /? with -h or - -help.

I was trying to search through the docs but there was a lot of them on their github.

Well, the output of that is:

Quote
$ lightning-cli help | grep reserve
fundpsbt satoshi feerate startweight [minconf] [reserve] [locktime]
reserveinputs psbt [exclusive]
unreserveinputs psbt
Unreserve utxos (or at least, reduce their reservation)
utxopsbt satoshi feerate startweight utxos [reserve] [reservedok] [locktime]


But in the meantime, I was talking to (what I think is) a dev and he told me this is actually a bug and he started an issue on github.
https://github.com/ElementsProject/lightning/issues/4140

In less than a week, I have already stumbled into 2 bugs. On one hand, this is bad, because a noob user and a new lightning user is coming across with quite a few bugs. On the other hand, it's good because I'm kind of contributing for the enhancement of this Lightning Network implementation.

This dev tried to push me to fix the bug, as it's apparently simple to fix, but I'm too afraid of messing things up, so I'm not going to do anything without supervision.

As far as I understood, every node in the Lightning Network has these 2 settings: channel reserve and dust limit. This said, when one node (A) tries to open a channel to another node (B), node (A) needs to make sure tat it's own channel reserve parameter is equal or greater than its own dust limit. Moreover, it also needs to make sure that its own channel reserve parameter is greater or equal to node (B) dust limit parameter.

I'm not sure about this because in the meantime, this dev stopped talking to me. He's probably afaik and where I live is now time to go to bed. If I can find this dev tomorrow again, I my try to discuss with him, the fix I have in mind, in case my assumption above is true and accurate!
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
October 19, 2020, 03:49:27 PM
It's the minimum reserve YOU would have to change, try typing to the command line
Code:
clightning /? | grep="reserve"

And see what comes up, replacing clightning with how you'd normally run it and potentially /? with -h or - -help.

I was trying to search through the docs but there was a lot of them on their github.
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
October 19, 2020, 03:05:50 PM
I think you're wanting to change the channel reserve limit to 573 or they can change their dust limit to 546 (that might be easier for them to do and not interfere with the channel)...

We don't have any channel open. I mean, me and Friend B. (My only channel open now is with Friend A).

Do you know what is the setting I should use to set the dust limit to 573 sats?
copper member
Activity: 2856
Merit: 3071
https://bit.ly/387FXHi lightning theory
October 19, 2020, 02:30:32 PM
I think you're wanting to change the channel reserve limit to 573 or they can change their dust limit to 546 (that might be easier for them to do and not interfere with the channel)...
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
October 19, 2020, 02:27:07 PM
Regarding the darkv0rt3x's case - it turned out that he had only an outbound channel to friend B. That channel required both sides to have a 546 satoshi reserve which means that he should have been able to receive about 454 satoshi through that channel since he had sent a 1000 sat payment through friend B. He tried to receive as little as 50 satoshi without success. It seems to be a problem with friend's B node. Any other suggestions are welcome.

Ok, a small update.
My Friend B ended up closing the channel I opened with him and then, some time later (hours later) he tried to open a channel with me of about 30k sats but he got this message:



I've been talking to @Rath_ and he told me I probably have to add some setting to my node to overcome this problem. But he can't help me further now because he's not where he can help me. However he told me I should search something about "dust limit".

Anyone have an idea of what should I be adding to my c-lightning node config file?


Thanks
legendary
Activity: 3430
Merit: 3080
October 19, 2020, 07:35:45 AM
For me, there are mainly two conditions for the Lightning Network to really take off:

1) Providers of massively used services must support it.

Yes, the exchanges. Onboarding exchanges must be one of the first priorities.

It appears that Bitfinex already allow their clients to make LN deposits to their accounts. Quite a big development really, it perhaps got mixed up with the news that Bitfinex were running a public LN node? I'm not sure when client account deposits went live tbh
legendary
Activity: 2898
Merit: 1823
October 19, 2020, 05:47:57 AM
I admire the optimism, but I don't know how an ordinary user will be expected to be in it long term, unless he/she is incentivized from the level of specialization in maintaining a Lightning node. But I see a debate for altruism to boot-strap the network.

For me, there are mainly two conditions for the Lightning Network to really take off:

1) Providers of massively used services must support it.


Yes, the exchanges. Onboarding exchanges must be one of the first priorities.

Quote

2) It must be clear that transaction costs using LN are much smaller than without it.


I believe it will be obviously clear.

Quote

Condition 1 is a chicken-and-egg problem. If there are many users, there will be many services, and vice versa. Ideally, some service providers could create something like a "beta area", where people can use LN to deposit and withdraw coins at their own risk but keeping the wallets of on-chain and LN activity strictly separated to minimize exposure to threats related to the alpha/beta state of LN software. But as it was discussed some pages ago this will probably only happen on a small scale.


Or Lightning Labs, Blockstream, or another VC-backed company that develops Lightning could hire a person specializing in business development.

Quote

So it is possible that a LN "takeoff" is more likely to come from a new increase of transaction fees due to fuller blocks (condition 2). This would make it again attractive for service providers to jump on the LN boat.


I believe not. It also needs a better UX, needs more exchanges/services providing liquidity for easy routing, and needs their users to become Lightning users.
legendary
Activity: 1876
Merit: 3132
October 19, 2020, 03:50:13 AM
Regarding the darkv0rt3x's case - it turned out that he had only an outbound channel to friend B. That channel required both sides to have a 546 satoshi reserve which means that he should have been able to receive about 454 satoshi through that channel since he had sent a 1000 sat payment through friend B. He tried to receive as little as 50 satoshi without success. It seems to be a problem with friend's B node. Any other suggestions are welcome.
copper member
Activity: 1652
Merit: 1901
Amazon Prime Member #7
October 18, 2020, 04:47:07 PM
Ahh, I see your point. If a person has open channels with insufficient inbound capacity, the customer not understanding their inbound capacity limit may be an issue of insufficient/inadequate documentation that can be read/understood by the 'average' non-technical user, or error messages that are not specific enough.

If you were to send that invoice to a business, the business should (automatically) be able to tell you what is preventing them from paying the invoice, in your case insufficient inbound capacity.

Which leads to more programming / work on the time of the exchange and more places for errors / vulnerabilities to come in.

What I am describing should not add add vulnerabilities, as the amount available for outbound transactions is public information. You should be able to look at an error message, and other information, and be able to determine what the underlying problem that is preventing a transaction from going through. I don't think the technical expertise required to implement what I describe is higher than what an exchange should have. Exchanges and other businesses should have engineers that could implement what I describe; if they don't, there is a risk, even probability that other vulnerabilities will exist and will be exploited.
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
October 18, 2020, 01:05:36 PM
Can I send you a PM with my friend's node ID and channel ID?

Sure, go ahead. Do you want me to let the other people here know what might be possibly wrong after I have checked it?

Sure, no problem. Just keep the sensitive information closed please. I'll ask permission to my friend to share our channel info too!


Edited;
Well, looks like there's not much to hide, after all. It's all at 1ml.com.
legendary
Activity: 1876
Merit: 3132
October 18, 2020, 12:56:00 PM
Can I send you a PM with my friend's node ID and channel ID?

Sure, go ahead. Do you want me to let the other people here know what might be possibly wrong after I have checked it?
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
October 18, 2020, 12:49:54 PM
If I show you the channel he opened with me, can you tell if all the conditions are met or not?

I might be able to see the details of your friend's channels on the 1ml.com explorer once you provide me with your channel's id. I don't know if all information will be up-to-date. We can give it a go if you don't mind sharing it here.
Can I send you a PM with my friend's node ID and channel ID?
legendary
Activity: 1876
Merit: 3132
October 18, 2020, 12:42:49 PM
If I show you the channel he opened with me, can you tell if all the conditions are met or not?

I might be able to see the details of your friend's channels on the 1ml.com explorer once you provide me with your channel's id. I don't know if all information will be up-to-date. We can give it a go if you don't mind sharing it here.
hero member
Activity: 1274
Merit: 681
I rather die on my feet than to live on my knees
October 18, 2020, 12:23:47 PM
What am I missing and what is that reserved value I know it gets kinda locked when channels are opened?

There is an unspendable channel reserve. You need to spend about 2-3% of the channel's capacity before you will be able to receive anything. Theoretically, you should be able to receive slightly less than 30k sats through friend's B second channel since all funds are on his side of the channel at the moment. There might be some problem with friend's B channels. He might not have enough inbound capacity because of the reserve.

If I show you the channel he opened with me, can you tell if all the conditions are met or not?
Pages:
Jump to: