
What happens under a high fee environment on the lightning network? We had one recently and so I asked Niftynei (Lisa of Base58), D++, and Nate (Voltage Head of Support & Education) to join me to talk about it:
- Lightning implementations handling the fee spike
- Force closes in lightning
- Bitcoin performed just fine
- Anchor outputs
- Mitigation techniques
- Setting fee rates
Links:
- plebnet telegram: https://t.me/plebnet
- Plebnet wiki: https://plebnet.wiki/wiki/Main_Page
- base58: https://www.base58.info/
- Voltage blog post: https://voltage.cloud/blog/lightning-network-faq/lightning-node-management-handling-high-on-chain-fees/
- Twitter: @beeforbacon1
- Twitter: @niftynei
- Twitter: @D_plus__plus
Sponsors:
- Swan Bitcoin
- CoinKite.com(code LIVERA)
- Mempool.space
Stephan Livera links:
- Follow me on Twitter @stephanlivera
- Subscribe to the podcast
- Patreon @stephanlivera
Stephan Livera 00:00:02
Welcome to the show. And yeah, I just thought it would be an interesting one obviously with what’s happening with the lightning fees and obviously being in a higher fee environment in the block space market, let’s say. And so, I know you guys all have a lot of experience working with lightning. You’re often teaching other people how to use lightning so. Yeah, I guess we’ll just kind of maybe, maybe we’ll just quickly go through just to make sure everyone sort of knows who you are. Just take a quick, you know 30 SEC. Plans and kind of introduce yourselves in terms of what’s your main focus nowadays, Lisa, do you? Want to start?
Niftynei 00:00:34
My name is Lisa, also by Niftynei on the Internet. I spent five years working at Blockstream on the Lightning spec, particularly around channel opens, currently taking a small break from being a protocol developer to build a Bitcoin technical education initiative. Called Base 58 and check us out on the web at base 5/8 dot school.
Stephan Livera 00:00:58
Fantastic. And Nate from a voltage.
Nate 00:01:01
My name is Nate. I’m a lightning network hobbyist turned Bitcoin. I don’t know career guy that does support and education at voltage. And yeah, that’s pretty much me.
Stephan Livera 00:01:14
Great. And D plus plus.
D++ 00:01:16
Hi d + + I. Think people know me from Pleb net. I’m also a Bitcoin educator and I also teach people how to code.
Stephan Livera 00:01:25
Well, I think let’s let me just sort of set a few of the, you know, the rough high level details and then we can get into a bit of the. The actual discussion about lightning in a high fee environment, so I think this is mostly driven by the recent round of ordinals and inscriptions. Right. And so you know as so for listeners in the future, we’re recording this, the 29th of May to 2023. And you know, at this time, well just recently not right now, but let’s say a few weeks ago. There was a big craze in the mempool and in Mempool’s, let’s say, and if you were trying to get into the next block. At the high priority, let’s say, on mental dot space, you might have been paying something like $50 in terms of in the Fiat terms and in sat terms, you might have been paying something like 500 sats per V byte. Something in that range now, as we speak today, high priority is about $1.78 in Fiat terms and 46 sats per V byte in. In terms but you know, let’s start with just a bit of a discussion about how you think lightning nodes handled this recent round of high fees. Did they do it well? Or were people getting it wrong? What do you guys think? maybe we start with you, Nate.
Nate 00:02:32
Sure. Yeah. So yeah. What I saw was, you know, a lot of channels. So, when you get into that, I’m just gonna dive, right? So, it’s like, yeah, 4th. Closure problem so. Forced closures for those that don’t. Know is when. A channel closes unilaterally, meaning only one of the two peers decides to broadcast the commit transaction, and this can happen sort of automatically as a security mechanism for many reasons, and when the commit transaction doesn’t have enough sats in reserve to broadcast the fee for the closure. Then this channel closure could be pending for a long time, especially if the rates go up before you know, just spontaneously like it felt fairly spontaneous. And there are a few things that. Have come out. That are helping to mitigate this, we could talk about anchor reserves and stuff like that, but a. Lot of folks were kind of caught like ohh no my I Just the force close just happened for whatever reason, and now my transactions at six sets per B byte and 150 sats per V. Right. Is like next block, so there’s been some issues there, but that’s I’ll just leave it to either lease or Dee to jump in after that.
Stephan Livera 00:03:53
Day++ let’s say from you.
D++ 00:03:55
Yeah, well, for one, I would say it’s an unfortunate time. For forced closures to be happening in such. A high fee environment for. But it’s also important to kind of note the context, and that is a world in which folks are describing arbitrary data on the Bitcoin blockchain, and I think it’s just really important to note that this is not an attack on Bitcoin. Bitcoin is not under attack. Bitcoin is working just fine. There are some folks who are competing. For that block space and Bitcoin has a free market fee environment such that you can bid for the block space that you want, and we’re seeing people put Monkey Jacobs on the blockchain now. That said, I do think that people minting, if you will, thousands of profile photos and attempting to sell those to folks. For real money, I do. Think that is a grift to be fair, but it’s not an attack on Bitcoin. Bitcoin is working just fine I do think that those folks. Are going to get priced out by the economic activity, but all we’ve heard for the last year or so before in script. Was the flea market, the flea market, the fee market? How is Bitcoin going to develop a healthy fee market and does it need to hard fork and does it need tail emissions? Does it need demurrage? And then we saw a healthy fee market, you know, become established out of a free market competition for block space and those same people. Are saying that Bitcoin is under attack, which of course it is not. Now, that said, I do think that this is a good little test net for us to start thinking about well. What are we going? To do when we see Bitcoin develop a really, really strong fee market to the point to where it’s not just $50.00 to get into the next block. $500.00 or $5000 type thing and so that said, I’m really happy that we’re having this discussion today. It just couldn’t be more timely and I’m excited actually to learn from y’all because there’s so many things about Bitcoin and lightning that I do not understand. I feel like in prepping for today, I. I just have more questions than I have answers, if I’m honest. So nifty Nate and Stephan. I hope you don’t mind if I pick y’all’s brains today. I’m just considering myself to be a student of all of the new. Things that are happening on Bitcoin. Which, by the way, is.
Stephan Livera 00:06:22
Well, I think you’re right. There’s a lot of things we’re all learning and I’m curious to hear what Lisa has to say about this recent fee market or block space market, let’s say.
Niftynei 00:06:31
Yeah. So I think like, I think this is really kind of highlighting one of the not challenges but sort of like the interface between lightning and like which is layer two and layer one right kind of happens in that block space market, so to speak. So like Lightning’s ability to function. Sort of relies on its relationship to being able to get transactions into blocks on the. The one and there’s definitely I think some challenges with the way that the current protocol is written both in the Bitcoin layer one as well as in lightning like the Layer 2 protocol is really two separate projects. Both have different protocols, but there’s some interactions like between the two of them that we kind of see get play out and hide the environments I think really exacerbate. Or highlight some of the problems or issues or edge cases that there’s current and ongoing projects to try and fix, right? So Nate was talking about and Nate, maybe I misheard you, but you mentioned like someone had like a force close go through or like a close a force. So force closes or ideally never happen one, so let’s I think we should like maybe say that like the fact that a force close is happening is usually a sign something is like kind of a wrong in like the protocol so to speak or something is happening on the node that maybe shouldn’t. And so maybe there’s something we use the protocol developers on the lightning side. To fix or as lightning implementers, maybe there’s something with our implementation that we need to take a look at and fix so that whatever these whatever is causing these force. We can like mitigate for the next time one of the kind of frustrations that I’ve had with the forced Blizzard stuff is that it’s been really difficult, I think to get good information about what the root cause of these closures are. So, core Lightning has this really amazing thing, little keep track of. When your channel changes state like so when there’s like different phases that a new channel lightning goes through like the process of opening it when it’s open when it’s operational, when it’s closing and we annotate. That why each state change happens. So, if there’s a forced close your core lightning node in its log should tell you who closed it. Was it you or your peer? Why closed like was it a protocol problem? Was there an error and it should be logging like what the error is? Problem is like I think we. Don’t keep those logs around. Longer than like 100 blocks or however many blocks after the channel. So, unless someone is like scraping up or holding them or like recording them somewhere, and like saving it, you do like get the information, but it doesn’t stick around forever. I guess that’s what I’m saying. So, I think there’s definitely, definitely, I think a better job we could do in terms of keeping and tracking this information, so that we, as Lake Protocol and implementation developers. Can figure out what the root cause of it is right? Because unless we know why all these force closes are happening, it’s very hard to know what needs to fix or what needs to change. OK. So that’s kind of like the high-level thing. One of the things I think that like this like particularly high fee environment starts to highlight though is like the relationship between lightning payments and on chain. Like on chain payment stuff or like. Like Nate was talking. About how I think, Nate, you mentioned like someone had to force close and they like they’re the 4th closed transactions get built. At a point in time and when the flight forced, this contractions get built and this has to do with the way that lightning works when those source less transactions get built, they have a built in see rate on them currently, right? And so you were saying there was one that went out that was at six SAT preview by right, which meant like the current one was like 100 something, right. So, six that per view. Transaction isn’t getting in the block anytime soon, right? And sometimes these close transactions like if you have HTC’s on them, you only have so many blocks before. It’s possible for like for someone else to take the money basically. So like when you have. Close transaction go through especially one that has in flight payment. Sort of like on it. The timeliness with which you’re able to get that transaction into a block becomes like a really important problem or question, right? OK, so there’s a few things here. It’s like 1. Why was it six sets per byte? Why wasn’t it 100? Whatever stats per byte. You know, that’s something about how the protocol works. The other thing is like, OK, so this kind of has to do with like when you have lightning. I’m talking a lot. I can stop talking at any point. Like, yeah, but when you have like a transaction that’s got.
Stephan Livera 00:10:59
Go on, go on.
Niftynei 00:11:03
So the way that lightning. Works is that you? Have these pre signed transactions that you hold on to right and this this six app review by was a pre signed transaction. Ideally currently the way that the Lightning Protocol works is that every time the fees change in the network. You and your channel peer keeping track of that and you contact each other you like. Call him up on the phone. You’re like, the fee rates are different. We need to update our transit. Action that we have signed so that it reflects the higher fee rate, right, because if we don’t do that and we have to like accidentally go to chain, we’re gonna end up not getting in a block. And that’s like a problem, right? It’s like there’s a timeliness thing here. Nodes will do this automatically. They automatically call each other up that they have a channel with and like you. We need to, like we negotiate, put the fees up like let’s go and then they’ll like both sides will issue new signatures for a new transaction at a higher fee rate. Right. So there’s a couple of things that can go wrong here. One is that when they get the phone call from the other peer, you might disagree with what they say. The new fee rate is rate. So if I call you up and like. Yeah, I think it’s like 100 Sats preview by and on their end, they’re like no man. It’s like 50 because sometimes we get like nodes have different views of the mempool they have, they’re different implementations, they’re running different algorithms that tell them what they think the current fee rate market is. So if there’s any disagreement. That will lead to a force close so they. Don’t agree on what the current fee rate market is. Then one of them will just send out the latest thing that they had. I don’t remember exactly. It’s been a long time since I looked at this particular part of the code base and correlating or the spec. But generally speaking. You’ll get source closures when there’s disagreement about what the payment mempool is and when the mempool. Changing a lot the odds of. That happening with the current the current Lightning Protocol I can check in a little bit about some of the changes that are coming through the pipeline and already on the way to kind of help with. Just so the challenge is that but current for current lightning if your if your peer calls you up, it’s like yeah, I think it’s close and you disagree that’ll cause a force close. And if you haven’t updated it since the six. Sat for the bike thing all of a sudden. You’ve got a six sat for V byte transaction, which is the one you’ve got that you’re sending out to train. And that’s like how you end up with. That’s one way you can end up with those sorts of transactions. Out on the Med ball.
Niftynei 00:13:19
Another thing that might happen here is maybe you haven’t talked. To maybe you haven’t. Talked to your channel peer in a long time. Maybe you guys haven’t had a payment go through your channel and like maybe they are you running tour and your connection, your ability to talk to them isn’t good? And if you rates start going up all of a sudden. All these nodes, everyone’s placing phone calls, right? So it went from being like when the fee rate. Is like kind of lowish, you don’t have to talk to anyone because like, you’re all kind of in your fee rate range for all your transactions that you. Consider good a soon as the fees. Start going up because there’s a lot more transactions in the mempool all sudden every channel, every single person. You’ve got a channel with every single channel they’re having to call each other, right, all of a sudden, there’s all these phone calls happening across the Lightning network. Everyone’s calling everyone being like, yeah, we gotta hike their rates on this channel. We’ve got, right. That happens for every single lightning channel, every node to node, peer connection, right? If all of your peers are connected to you over Tor, Tor is known to be kind of bad at like doing connections right. Connections drop all the time. So if you call your peer up and try and renegotiate a new fee rate, right? It’s the same as like all of a sudden like the network getting flooded and every single channel getting a new payment that has to go through it. If at any reason your note is offline or like can’t respond or the connection fails and they don’t get back to you, that will cause a force close because you called them up and tried to get them to respond. But they’re not responding. So the thing that your note does when you’re peer stops responding is you force close the channel, right? Because you need to update the fee rates, they’re not calling you back so. There’s a couple of things that happen here, right, like they can either disagree with you or they can fail to respond. And if either of those happen, the channel gets forced.
Stephan Livera 00:14:58
Then you might get a false close. And then I’m curious as well. So let’s say in this example the force close goes out at six Sats per byte. Is there some kind of weird game theory about who should RBF right? Because maybe it’s like no you RBF now. And maybe the one who really wants you know.
Niftynei 00:15:13
You can’t RBF it because RBF requires. So the way that Lightning works is that in order to bump that transaction you for RVF for example, you must get a signature from both peers. The reason you forced this in. The first place is you.
Stephan Livera 00:15:30
Yeah, good point.
Niftynei 00:15:30
Can’t talk to your peer. You were trying to do. Effectively an off chain RVF just calling them up. Is effectively you guys renegotiating and?
Stephan Livera 00:15:37
Is to resign for a higher fee rate, yeah.
Niftynei 00:15:40
Off chain RVF. Right.
Yeah, that’s probably a good way of talking about. I hadn’t thought about it that way, but. See rates go up. You have to negotiate off chain. Yeah, that’s basically that’s exactly this whole like phone call conversation. It’s like, yeah, let’s make an option.
Stephan Livera 00:15:51
Gotcha. I’m following you now.
Niftynei 00:15:52
Let’s go like, yeah, but. You can’t get in touch with. Them you have to go. With what you’ve got because you just like it’s you. I do so one of the things so this gets into protocol changes. One of the things that we’re in the process and it’s been happening, we’ve been on this path for a few year, two years now, is changing how you set the fees on these in reserve, what we call commitment. Transactions like the transaction that you’re holding on to that you do the off chain RBF for the thing that you sent. On the 4th close so. The general idea is, like everyone knows that this is a problem. The problem being like having to call them up or like having one that’s out of date that you negotiated with the peer 2 weeks ago. They’ve gone offline, you haven’t been in touch with them. Figure it goes up you’ve got transactions on it like you’ve got inflate payments on that transaction. You you get in trouble and you can’t talk to them. You need a way to be able to change dynamically change the fees on this like in reserve transaction without having to talk to your peer, right? So then we start. Getting into like protocol stuff, this is like how do we change the protocol so we don’t have to do this? Also, the whole idea with like changing the protocols. What if we don’t have to call each other on the phone every time this stuff changes? Like what if all this phone call? Conversations didn’t have to happen anymore. What if instead of having to negotiate and like virtually RBF Lightning transaction like the in reserve transaction? What if we just like had one thing and we didn’t have to? We didn’t have to change the fee rates because we could pick the fee rate at the time we needed to get that transaction line, right?
Stephan Livera 00:17:26
You know, is this getting into the anchor outputs stuff? Yeah, that’s where this ends up.
D++ 00:17:32
I’ve got a question for Lisa. Yeah, you mentioned the 4th close is happening and it sounds like a lot of them were due to this fee negotiation thing not happening. I wonder to what extent how many of those nodes were, say, running neutrino, meaning they didn’t have a mempool to look at to. Predict what the fee. Would be and they’re using some kind of API instead, which may be brittle and to what extent we could. I hate to say this, but to what extent we could put some of those. The estimations on say nostr. To help maybe further the neutrino nodes. You don’t have a mempool.
Niftynei 00:18:09
Well, the number is a so OK, so this is a good question. Do you think about it? Mental information is gossip, information about transactions, right? So sending everyone new transactions is something that, like they’re not doing because they don’t want to have to have the burden of getting all that new. Information every time a new transaction goes out, right? So it’s really trying to reduce the bandwidth. The problem is not sure my understanding is the bandwidth requirements. Are also quite high. So how are you? Like 1, how are? You packaging up that information to distributed on Noster. Is that actually going to allow you to cut down the amount of data that you’re sending to these nodes, or is it going to be like a similar amount of data? If you’re having an indexer condenser? It’s like, you know the. The transport of how you get the data, changing it over to Noster doesn’t change the amount of data or the provenance of the data or verification of who’s sending you the data. Do you trust someone? If you’re getting like roll ups of what mempool currently fee rate is, do you trust the person who’s telling you that, like changing over to Noster is really just changing over the way that the information arrives? It doesn’t help you with the problems that are like kind of inherent and why they’re not getting that. Data in the first place. Which is like where is it coming from? What’s actually? Contained in the data, how do we? Make like a role. How do you make up a summary of it so that you can send less data, but then who’s making the summary? Do you trust them like so? Like no, I don’t think moving the data to a new relay will solve the problem with what data and who’s sending it and like what? Kind of data you’re sending.
Stephan Livera 00:19:47
So then I guess taking running with that anchor output idea as you were getting into Lisa. I guess then that would allow each channel partner. Well, does that allow each channel partner to unilaterally bump phase?
Niftynei 00:19:59
So that’s the idea with the anchor output, so there’s. There’s kind of two parts here One, we’re like working on, OK, so eventually and haven’t done it yet. Wait, hang on let me back up. Let’s talk about anchor outputs. Anchor output anchor output. Is the idea that you can child peace your parent one of these? These commitment transactions and only the party who sends it only one of the parties that send it, has the ability to help be preparing it. And there’s a couple of reasons for this, but basically this means that now when we build these little in reserve transactions, you have a special output on it. We add 2 special outputs that. Only each of the. Channel peers can put another transaction that spends. It so this guarantee? Is that you will guarantee this. There was a bunch of other stuff that I’d. Have to make. This but attacking it as much as possible to guarantee that you’re able to add another transaction with a higher fee rate that can anchor that down into the chain, right? Which is why they’re called anchor outputs. So we’re providing little hooks on this like transaction. So that later you can figure out what the new fee rate should be, make a new transaction that adds those additional fees onto this transaction and pulls it down into the chain or pushes it to the top of the mempool however you want to talk. Think about it so yes, that’s the idea behind anchor outputs. The long term plan is that eventually in a perfect world. This is we start getting into like OK, we need now we need critical changes on the base layer to do this like package relay becomes a new thing. But when we’re able to do this, we can remove the phone call thing with the update. Fees so we no longer have to talk about what the current fees are. So you almost entirely remove this entire class of errors, so to speak. Entire class of source closed vectors because we’re no longer when the fee rates go up, promise that everyone has to get on the phone and call everybody and be like, yeah, we gotta change. These when you have anchor outputs for everyone, you no longer need to talk about what the fees currently are, so there’s no longer an opportunity for your peer to not be available and cause of force close and there’s no longer an opportunity for you to disagree because you’re not even having that conversation anymore. You’re completely removing that conversation from the picture. So the 4th clause is for that saying. Like basically cut out an entire like class of errors, so to speak. From like whatever. Like there’s no longer an opportunity for you to have a reason to force close. You won’t even be doing those actions anymore. And the reason you don’t have to do those actions anymore is you can basically have a minimal fee on this transaction and then have the anchors is the idea that the fee is small enough to be able to get that transaction. Into the mempool and then that gives the opportunity to add another transaction that can pull it to wherever it needs to. Be in the not pull is the idea starts getting kind? Of complicated though, and this is when you start needing something like package relays. What is the minimum amount of fees you need to get that transaction into? Temple because when the mempool gets full, that number changes. So now we’ve got this like kind of difficult, hard to answer question with anchor outputs using without package relay about like how to how do we price? How do we what are what’s the minimal fee rate? What’s the reasonable minimal fee rate that we no longer could call each other? On the phone anymore. Gotcha. Yeah, interesting stuff OK, but this? Is, so now you’re getting into an interesting side effects of using anchors, which is. You need to have funds on chain available at any point in time in order to provide those fees. So right now the current design of lightning, every channel inside of it has a. Little bucket of stats that’s reserved to pay fees and that goes up and down depending on what the current on chain. The environment is and those are siloed into every SAT. So you walked into the channel, right? And so as those fees go up the amount of liquidity you have in that Channel in order to route payments goes down right. So this might also I haven’t really thought through the thing here. This might contribute to on chain. To force closes maybe at least like reduces. But it like so on seeing fees rising have an impact on the Lightning network capacity prior to anchors because every channel has to have every single channel is like a bucket of funds of a fixed size, right? And every time when the fee rates go up, when you make that phone call, part of the results of those phone calls that. Go out is that everyone makes the amount of money available. To be routed goes down right? You call up and you’re like, you we need.
Stephan Livera 00:24:29
So you’re still saying it’s like it’s less capital efficient, right, because every channel has to have this reserve amount.
Niftynei 00:24:34
Yeah, every time. Well, so. That means that when you go to teen you have those funds already available to make sure that that transaction can get into the next block or what block it needs to. When you go to anchor outputs and remove that little bucket in each channel, all of. A sudden you still need those fees, but you have them. You can kind of save them now all of a sudden your node has to guard and reserve enough Bitcoin to ideally deal with any. Force closes that happen at any particular time, and if you have too many channels and too many of them, try to close at the same time. It’s possible that you may not have enough seats on chain to save all your stuff, so the current protocol kind of sort of saves your **** a little bit by having each of these. Channels take care of itself. Health and self-regulate with how much saving for that particular like, and one way to think about this. So like one way that I like thinking about capital on lightning is through the perspective or through the lens of like kind of like risk management like you know like when you make an investment you sort of have to figure out what your risk. Profile is it? What’s the risks that you’re going to need to spend that money? So to speak so like, there’s like a built-in like risk calculation sort of done of how much of that Channel is actually like reserved for fees versus now you have to figure out how much you globally are saving for every channel. So every additional. Channel you open it used to Be that it would each one would kind of manage its own fee budget accordingly. Now your node has to make a decision about how to manage a like separate reserve tank, right?
Stephan Livera 00:26:15
Gotcha to do this kind of operation in the case of the fees rising.
Niftynei 00:26:19
Are you adding tons to this off chain? Thing are you are you are. You like, you know, this is like are you, are you still in that tank up? If you’re not filling that tank up and you have to go to chain and hide the environment like you’re gonna be in trouble like you’re not gonna be able to get your stuff in. I mean like you need to so it doesn’t. It just moves, it moves some of the. So like, you know the trade-offs here are like well, the capital efficiency of what’s in the channel is greater, but suddenly you’ve got this new responsibility of managing and like a reserve.
Stephan Livera 00:26:50
An Unchained balance in your Lightning node, right? I guess that’s essentially the short version of what we’re getting at here.
Niftynei 00:26:56
Great. So at some extent, like if you think about it from a capital efficiency standpoint, you don’t actually gain much capital efficiency by moving it to different things. Those are still funds that aren’t being able. That’s still Bitcoin that you own that’s not able to route payments, right, and whether that Bitcoin that you own to route payments is like scattered across all these channels or in one like bucket, it’s still capital that you’re not able to deploy and be available for the opportunity of routing a payment, right?
Stephan Livera 00:27:11
Yeah, that’s true. Yeah, but I guess I guess you could probably say though that it means in today’s environment, if you’re kind of concerned that there might be a big fee spike, you might say, look, it’s worthwhile. I’m OK with paying that, let’s call it capital increased capital cost. I’m OK with that I’ll just have bigger channels, less channels, but bigger ones with the, with the reserve. So that with anchor outputs so that I can bump if I need to. Otherwise I don’t want to risk getting screwed on the in the high fee environment, right.
Niftynei 00:27:50
This is I think this is where I need to show like the dual funding and splicing protocols that we’ve been working on for years, because the cool thing about dual funding and the cool thing about spice. Thing is, it really allows you to decrease the number of channels that you’re operating and get like you could open a channel with liquidity on both sides with those funding. So instead of two people having to open. A channel you climbing down the number of channels that you have is good for the network in a lot of ways, and this is one this like capital requirement. Thing is good, I think anchor outputs giving you as a channel operator gives you a finer grained opportunity to determine what your risk profile is in terms of capital that you’re reserving for on chain like responsibilities or obligations, potential obligation. Right. I think that’s a good thing. I think that’s cool because like as an operator, it lets you determine sort of what you’re like it gives you one more knob to mess with. Maybe that’s gonna be that’s bad. But I think it does let you kind of. Make more interesting decisions about like where you’re putting your capital and what your risk is and.
Stephan Livera 00:28:58
And Speaking of where you put your capital, this reminds me of something I heard D plus plus say D plus plus. I heard you at the BB C++ in Austin recently and you gave as part of your intro you. Saying it’s a famous saying, I think Taj Druja popularized this idea that Bitcoin is for enemies. But you’re saying, hey, well, Bitcoin is the money of enemies. Lightning is for friends can you elaborate a bit on that? Because I think maybe there’s something there that in a high fee environment it’s more important to have good channel partners who are, let’s say, online reliable and maybe you don’t trust them with your life, but maybe you trust them a little bit. So that they’re not gonna put you into a bad situation in a high fee environment.
D++ 00:29:34
Well, Nate can attest to the. Fact that when we started. Pleb net everyone on the main chain was just kind of fighting on Twitter. And we were having the best of time with each other, with the magic of friendship, and we would sort of immortalize that friendship by opening lightning channels to each other. So really it was just kind of meant to be, you know, a bit silly, a bit fun. That said, it is helpful to know who your channel partners are because. If you need to contact them for whatever reason, you can kind of go out of band on, say, Telegram club. Net is a fantastic place to do this. This, by the way, Pleb net dot IO. And you can be like, hey, what’s up is your note offline and they. Might be like. Ohh I need to get a new UPS or Ohh yeah, let me restart. LND or oh maybe there was? A bug in whatever beta version of the software I was using. It’s probably time to upgrade so it. Is it is helpful to have those out of band. If you open to bigger nodes like lightning service providers, it becomes. I think maybe a little bit less necessary because they have infrastructure. That’s probably a bit more robust than like just kind of the pleb nodes running. For their laptop under their beds type thing. But yeah, I mean perfect opportunity for me to Shell Club net because what plug net really is a peer-to-peer learning environment for folks who are interested in lightning or running a node, who node who inevitably come up against some kind of roadblock that maybe prevents them from being able to do what they want to do and. Because this is such a new technology, it’s not always easy to Google questions and find answers, especially when you’re looking at like core Lightning. For example, a lot of us want to use core lightning. And we might have questions that, like I said, there’s not like a stack Overflow article or there is and it’s. Out of date and so you can just talk to someone who’s been there, who’s had that exact same problem, who can help you and folks are very generous with their time club net dot IO.
Stephan Livera 00:31:33
I’ll put the link in the show, notes Nate. Let’s go to you. I know there was a post that I recently caught on the voltage. Website, So I presume maybe you might have had a hand in that, or maybe you gave some suggestions there. Do you want to just elaborate a little bit in terms of, you know, the Lightning Note listener today and it had some interesting practical tips, maybe you want to just elaborate a little on those?
Nate 00:31:56
Yeah. So there’s. You can alright, so for those that are just running like you know that are sort of a hobbyist or whatever and just you know you can’t at least right now like be 100% sure that. You can avoid. A lot of these issues but you can do various mitigation strategies. I mean, I could go through a whole bunch, but like, like Dee was saying, choose your peers wisely. If it is not a big node that you can have access to, you can go to somewhere like amboss dot space and see if they have contact info put there, which is really, really handy. I think a lot of folks are doing that now. And then there’s so I’m actually on that blog right now. Yeah, I helped write this one it was a while ago, though, but yeah. So, there’s various settings you can do so a channel can only handle. I think it’s 483 sort of pending.
Stephan Livera 00:32:53
HDL says, yeah.
Nate 00:32:54
Yeah, HLC’s, but yeah, I was.
Stephan Livera 00:32:55
The in flight htdocs.
Nate 00:32:55
Going to call.
Nate 00:32:57
Yeah. So what you can do is because a lot of folks are streaming sets and stuff and that can sometimes knock a channel out of whack is you can limit that and you can also set minimum or maximum HLC’s depending on how many. How your channel balance is and what this is going to do is it’s going to tell the network, hey, I don’t want to route payments bigger than X like so don’t try to because I don’t have the liquidity for it. Things like that help make the network more efficient and help keep your channels stable, especially if you’re on tour. This can be found. And the LCD configuration file. If you’re using LCD for correlating, I’m not 100. I assume there’s something in there for that too. But yeah, so. Yeah, I’m just. I’m just going through that right now. I mean, take advantage of anchor outputs like we said. I mean, it’s really important too. I mean, not really important, but if you’re spending. A UTXO to. Open a channel, you. Should try to make sure there’s some change. There’s a change output associated with that. So you can. But that’s how the bumping works is you need a change output to reallocate towards that. Wrap that transaction up and make. A new one and a good rule of thumb for that is if you’re opening up a Channel we’ll just. Say just at one set per V byte, and now the next block gets in at 80. Sats per V byte you would. Probably want to rebroadcast that like 160 sats per V byte because the block weight is now double so. There’s an effective fee rate for that those are just some ways that are practical on that. But I’m a big proponent of quality over quantity when choosing your peers. There’s so many peers on the network now that you can you don’t have to just throw a dart at a dartboard and hope that they’re that they’re good. So there’s various ways to sort of vet your peers and I think. In a high fee rate environment, if you know if we’re at a point where we’re where the block subsidy is, you know under half of Bitcoin and. The fees are good like 3 or 4 Bitcoin per block or something, which would be pretty cool. You’re going to have to choose your peers very wisely and have bigger channels. So to boil it all down, the best day to start a lightning node was yesterday. The second best is now like you. I really think that I yeah. So I was basically just going to say like, I feel like the future of lightning I wanna see because a lot of folks are saying, OK, it’s gonna be custodial. It’s gonna be crazy Yeah, like, alright. So folks were saying, you know, it’s gonna be like wallet of Satoshi on steroids. Is the future basically and what I want to see is I want to see more folks right now today start lighting nodes slowly learn slowly, have low time preference on it and then slowly Uncle Jim for your friends and family. And even though it is quote UN quote, custodial, at least if you run pull someone they know where to find you to punch you. In the throat or? So like, that’s where the future. So that’s kind of what I’m pushing folks like. I really want folks to just start a lightning node sooner rather than later to prepare for 500 sets per view by being the norm or higher. So Nate.
D++ 00:36:03
That’s a really interesting. Point that you can be the uncle. Jim, for you know, your kids and your cousins. Your sisters and brothers. Would you do like an LND hub thing? Ellen Bits say situation for that. So right now there’s a few ways to go around it.
Nate 00:36:20
Right now, for core Lightning, Lisa can correct me if I’m wrong, but elebits and LED Hub is the best way to go for now, I which is basically just your node, is the back end wallet for or the back end infrastructure for various wallets that you could use something like Zeus with so you can essentially if your node has 50 million sats of capacity, you can create a wallet on it that says 0 on it and folks can use your liquidity to send or receive on LND right now. Lightning node Connect is probably the best way to do that and light node Connect uses a simplified way of giving permissions using eight random English. Thirds to offer folks custodial wallets on your own lightning infrastructure. So which is really cool, because now you can just. Say hey you wanna lightning wallet download Zeus, scan this QR code that has 8 words on it and now you. Have a custodial however, you know who I am, but you know, wallet. So I really like the whole Uncle Jimmy. Your friends and family so.
Stephan Livera 00:37:23
And look, I’m all for that. I think perhaps the challenge would come and I could imagine a skeptic might say, well, hang on guys, that’s not really that scalable, is it how many people are actually going to. To you know, manually go set this up and get people on now. Maybe the argument would be, hey, it just needs to be easier software. Maybe it just needs to be a little bit easier and you know, maybe over time it gets easier. I know maybe similar arguments would be made about stuff like Fetty as an example, because Fetty can have multiple federations there is that argument there as well? So, we’ll see kind of what happens there. But of course, well, it’s hard to predict the future, right? We don’t know how much of A fad this recent round.
Nate 00:37:57
Yeah, we’re in a. Race against the clock of scaling, you know the, halvings are going to keep coming. There’s no way to stop it, so we’re in a race against the savings to get this. Laid to infrastructure going and you. Well, if lightning isn’t. The one then I Hope the one comes soon because we’re going to need it in the future.
Stephan Livera 00:38:16
I mean there there’s a talk now about arc as an example. I didn’t episode with Barack just recently I haven’t released that yet. So that might be an interesting idea, but also we don’t know where the free market is going to be on the block space market, I should say because it could be just a total fad. This whole inscription thing, and it’s kind of back down and then we’ve got time people to build things out and maybe this is a great test run. For people to see how things are going working in the high fee environment because in a high fee environment a lot of things might change right in a in a low fee environment. I’ll make a quick point here that in a low fee environment you can very cheaply move things around between different wallets, right? You might be stacking on an exchange or earning somewhere into this other wallet and you just kind of keep it as a little hot wallet. Because whatever fees are low and when I need to, I’ll put something to a lightning wallet or when I need to, you know. But in a high fee environment, it really forces all of us to actually start being efficient, because now it’s like each time if it’s $50 a transaction or $20 a turns. Action. Now we’re thinking about it a little bit more instead of, oh, it’s just $0.50 or whatever, right?
Nate 00:39:17
In a lightning context, that’s a really important from a strategy standpoint, because when you decide that you want to do something enlightening, you figuring out how many on chain transactions that’s going to take is actually really, really important. So that’s why watching seeing Dustys talk at the open. Your stage in Miami this year like blew my mind in a lot of ways and actually inspired me to start a court lighting note so. I could learn more about plugins and because it’s instead of having to close open a new channel or do multiple things at the same time, you can use one transaction to move liquidity from three of your channels into another channel and that’s sort of thing which as you were saying is an efficiency thing which we need to see more.
D++ 00:40:05
So I’ve got a question for the group with regard to moving liquidity around what is the thought on the topic of channel factories because my understanding with channel factories is you wouldn’t even have to do any unchanged transactions to move liquidity around since everything is sort of a virtual channel.
Stephan Livera 00:40:23
Probably beyond my level to answer that one, so I’m not sure if maybe Lisa or Nate, if you know.
Nate 00:40:29
I mean I’m a little bit versed in zero confirmation channels, which is something that voltage is going to be deploying as part of our flow 2.0 liquidity service provision service. Which we’re really excited about, which I go more into, but I’m not really know much about the virtual channels concept. Maybe Lisa does.
Niftynei 00:40:54
Not something I’m an expert on I feel like the channel factory stuff is definitely in the realm of like so like kind of doing some research in terms of how to make that work for people. I think one of the things that a lot of the proposals I’ve seen more on like multi party channel which is like how do you make one channel more efficient in terms of having multiple people? On it, some of the challenges there tend to get into what I would say almost consensus level problems. Around like how does a group of people determine what the state agree on, what the state of the funds and the channel are, and how many people have to sign? Off on that and you. Start ending up, I think, kind of back and interesting. You know, this is like one of the problems of blockchain solves is what is the current state. So I feel like, you know, as soon as you start getting into it. And I could be wrong like the channel factory Constructions, works is fine. But anytime you start having more people, you know trying to agree on state in a decentralized manner like, yeah, you, you kind of start ending up back at like ohh well watching fix this. So I think things like, you know, you start ending up the things that look more like federation. So like federally, there’s kind of this like a channel is sort of like the small as the current lightning channel is currently the smallest federation you can get and everyone is in a channel is a party to that federation. So you have like some of like first class these kind of like these citizenship tiers like you guys were talking earlier about Uncle Jim and uncle bobbing. Well, that’s like, you’re no longer part of the Federation of the layer two. If you’ve got an Uncle Jim or Uncle Bob is running late. You know, they’re now the first class citizen in terms of the federation, which is a lightning channel, and you are now just a client of theirs. Start moving into more Federated things like liquid or the proposed you know Vetements that are in the process of rolling out most people on those are going to be like I hate to say, second class. I’m going in trouble for this. Second class citizens on those networks, because they’re not members of the federation, right. And the members of the federation are really the ones. To get a lot of the trustless guarantees of that particular protocol. So anyways, channel factories. I feel like I have questions about, you know, what class you end up in on those is one question, and then the other is, you know, what are the liveness requirements that you need from everyone, like, at what point is it? Like, well, we need a blockchain to solve this because it’s a consensus problem of agreeing on what the current state of all the virtual channels are.
Stephan Livera 00:43:28
Yeah, I had a chat with I didn’t episode recently with Greg Insta Gibs talk. He’s working on some of the stuff around. You know LLN symmetry and some of these ideas around multiparty channels. And I think he, he might be a good person to ask, but I know, yeah, definitely having more interactivity, we could make it even more difficult or and if people already struggling. And in a two party channel context today. But that said, it could also be that in the future people sort of are more professional about it. They know how to do it and maybe you have these small channel multi party channel. All things, yeah, I guess it’s too early to really comment authoritatively on it.
D++ 00:44:04
I think part of part of why I bring up channel factories is just from my preliminary. Pass over arc, it looks a. Lot like a channel factory to me with some differences and that I think arc does settle on chain periodically and that that part I don’t quite understand and that part I don’t really understand. How it takes some of the stress. Off of the blockchain, given that, it’s all. Please broadcasting to the blockchain.
Stephan Livera 00:44:28
So I think the answer in that case in terms of the arc question the ASP instead of the LSP, it has a very high capital requirement. The ASP has to have enough Bitcoin to basically fund all of the transactions that are going on inside that and every five seconds. It’s like a coin join round and it’s not, it’s not necessarily hitting the chain every 5 seconds. But there’s like this kind of rounds going on. It’s kind of a complicated thing. I’m kind of beyond my level as well, but I yeah, I think that’s kind of my understanding from talking with Barack, but I think it’ll sort of come out, yeah.
D++ 00:45:03
So just to clear that up, since you had to talk with him every five seconds, are you replacing? Are you destroying the previous transaction and that’s what I don’t understand.
Stephan Livera 00:45:12
I think the idea is that, yeah, you might be remixing, but you may not necessarily be remixing. So the ASP might have a bunch of who are you know working with that ASP like customers or users of that ASP, the ASP is coordinating around every five seconds kind of like a coin join remixing round, but it’s a virtual round, they’re virtual TXS. That’s kind of this virtual concept that I think you’re referring to, and there’s a certain number of on chain transactions required, but the ASP is basically doing that. But the point in that model is you can unilaterally still exit. I mean, just like in lightning. So I think that’s also an import. One point I think another topic that would be interesting to chat about is swaps, because obviously I’m I I’m assuming. Well, I think it’s a safe assumption. All four people on here on this call on this podcast. I lightning users today, but not everyone of our bills and things can be paid with lightning. So there are times where we need to interact back with on chain Bitcoin. And then this brings up that question of using swap providers. So as an example, bots dot exchange and there are. Others out there where they can give you as an example, they can say, hey, pay this lightning invoice and I’ll pay out the on chain amount for you or the other way around. And also recently they brought in liquid or L BTC as well. So I think that’s an interesting idea. I’m curious if you guys have any reflections on the use of these swap providers, especially in a high fee context.
D++ 00:46:33
I mean just real quick. What I’ll say is the proper way to do a submarine swap is to. Go through strike and let’s just be real like it’s.
Nate 00:46:43
Or river or.
Stephan Livera 00:46:46
Right, But that’s a custom. These are custodial swaps to be clear. So what we’re talking about in this case is like the, you know, the more trust minimized way of you know.
D++ 00:46:55
Which is, which is why it’s kind of a joke and in club net we call this a ghetto submarine swap. Where to your point, it’s not actually trustless, but man is it convenient.
Nate 00:47:05
It’s important to I, in my opinion, there’s two major reasons why you would want to do this. Number one is you’re bootstrapping A routing node. You need inbound liquidity fast because you just want to get it going quickly and the other reason is your node is receiving a lot and you need a way to offload that outbound liquidity so. I mean, I think that in a high fee environment, offloading that outbound liquidity in a way that especially you know if you’re getting like a lot of income right, you know and your channels should be reflective of the amount of income you’re getting, but that. Side yeah, swaps are useful. You know, we all know what loop is and stuff. But swapping to a different side chain of Bitcoin is an interesting idea. You know it’s not trustless, it’s stuff. I mean, look, it’s definitely trust minimized, but it’s not trustless. But you know, you could peg in and Peg out, you know, so you can sort of offload your outbound liquidity stored in liquid and then wait until maybe fees go down or something to peg out of liquid I guess is the idea for that.
Stephan Livera 00:48:11
Right. And so I think this was an interesting one because bolts not exchange just recently brought out that feature of having an L BTC swaps and then now they’ve got lightning Bitcoin on chain Bitcoin and LBTC, which is, you know, using the federation. And so I think the point Adam back and some others were making is that the minimum fees on liquid are so low and especially cause right now there’s not a lot of liquid. Uses, so it’s like the liquid fees are very cheap, so this might be an opportunity for people who are running bigger nodes who need to do these kinds of. Lisa, I know you were. You were at Blockstream recently, so I don’t know if you have anything to add there.
Niftynei 00:48:46
Yeah, I think like. You know, it’s one thing that Blockstream we talked a lot internally about helping people do. There was a project that was being developed. I don’t know what the status of it is. I think it’s a little like quiet these days. Is the peer swap project which would help. Basically anyone swap with their peer using either liquid or on chain. As a way to base push funds so like why would you? Is it like? There’s a few things you. Can talk about with swaps. One is why would you use them? I think splicing kind of brings up a new and interesting way to think about it. I think another thing about swaps is like, you know thing I keep going back to and like, go back to constantly is like capital efficiency. How much Bitcoin do you need to be available to make these operations happen? Where does that Bitcoin need to be located in order for it to be like a useful thing? You know the availability. Of capital or like liquid and like or Bitcoin in the right place is really I think. Going to be one of the things. So like the fee rate market is like the big one right now, but there’s definitely a future where the fees that you’re paying are gonna be in relation to the availability of liquidity into a particular place that you’re looking to do that swap, right. So basically what a swap required. Is it requires 2X the capital to exist in different places for you to effectuate a change, right? So if I’m going to what is a swap? A swap means I have a channel list. Stephan has on scene. Bitcoin, whether that’s on chain in Bitcoin itself or it’s on chain. In liquid you still have to have that Bitcoin available equal to the amount of Bitcoin that I have in lightning. And so that’s like, that’s what I mean by the 2X rate, let’s. Say I’ve got a Bitcoin. In the channel you have to have a Bitcoin either. In liquid or on chain available for me to push that liquidity to you and you to either through lightning or I mean either through liquid or through on? Send that Bitcoin to an address that I own, right? So like swaps are expensive in terms like expensive. But the capital? Required to make that exchange happen is you both need a whole Bitcoin, right? So that’s like I think one thing that I think swaps and like yeah, it’s expensive, what’s nice. About that is that. If you’re a vendor and you’re selling a lot of stuff on lightning. You’re gonna get all of the money and that all of the channels are gonna end up on your side. Right, so now you have a problem. You need more inbound the footy on lightning in order to receive more money. Right. So where are you need to. Take this money in the channel that’s yours, you’re stacking stats. Right. You’re earning money, you’re running your business. Maybe you’re paying some of your like expenses out with lightning, but for the most part, maybe you’re just stacking stacks. Maybe you’re like running. A really profitable business, which means you’re earning like a Bitcoin a day on lightning or whatever, right? So you’re stacking Bitcoin, you need to be able to take that Bitcoin and probably go to in cold storage. Remove it somewhere, right?
Niftynei 00:51:43
The swap is a way that will let you do two things at once. Which is cool it’ll let you stack that Bitcoin. Maybe you’re stacking it on liquid, maybe you’re stacking it in like. Cold storage or something? It lets you both move those funds. You’re taking someone else’s funds. They’re sending the cold storage for you, and in return you’re pushing all your liquidity to the other side of the channel, which now means you can reuse it to ready to. Accept a whole bunch of.
Stephan Livera 00:52:07
So it’s not we’re saving again, yeah.
Niftynei 00:52:09
So this is one of the things that swaps. Do that splicing does not do. There’s a way that you can marry, spicing the liquidity. Yeah, ads which will let you do a very, very similar operation almost. You can get rid of the swap stuff. You can have one Unchained transaction, so it’s the same as a swap which takes 1 Unchained transaction. You could use displace plus a liquidity ad or some mechanism of buying more capital from that node. So swap means you can buy liquidity from anyone it’s placing. You would have to be buying liquidity from your channel peer for the most part and they’d have to source it from somewhere. So then they would put more cap. You’d pay them to put more capital on their side of the channel at the same time, you could then move the capital on your side of the channel to any on chain address that would all be on chain and that wouldn’t move liquid. And then you’re paying. You’re stuck with whatever the current blocks based market rates are for doing that transaction versus if you’re doing a swap on liquid. Then you’re only paying the on chain to use. On liquid or whatever, OK, I’ve. Talked I’ve been like.
Stephan Livera 00:53:13
Yeah, yeah, yeah. I think I’ll get you there. And so I guess just to make it simple for listeners, we can think of splicing like resizing the channel. Whereas swaps in this case where we’re using bolts, someone’s making a payment generally right? Like you’re making a payment. We’re kind of moving the balances around as opposed to resizing up or down. OK So that’s the key point and then it comes to also the fee rates, right? So I guess maybe today. We’re still, we’re still lucky, right? That you know, right now today fees are still low. It’s still, you know next block right now at 66 sats per V byte. As I look right. But in the future it could go up a lot. And then what does that mean for lightning fees? Does that mean in order to be a profitable lightning routing node you need to charge a lot more fees, either a lot more in your base fee or in your PM variable fee parts per million variable fee. Do you believe that? You know we’re in the glory days right now and that fees are going to have to go up in terms of?
Nate 00:54:14
I personally think so I think that if node people running nodes don’t do the math and make their fee rates appropriate based on the amount of capital they’re spending, or could even spend. So you’re not only just the amount that you’re spending to open the channel, but the amount that you could spend. You know, probability speaking in the future. Then folks are just going to be losing money all the time and that isn’t going to be. And so and nodes that are in demand that people are paying a lot, it will cost more to route to them also probably. So you know as much as I enjoy paying less than one set to route Lightning payment, there’s a good chance that isn’t going to be forever. However, it’s still going to be a much. Better deal than on chain is going to. You know which is what’s important. So to boil it down on that, you know if it costs you 2000 sats to open up a channel, you should set your fee rate. In my opinion, it’s just my opinion you just set your fee rate appropriately to where if that Channel drains, you get that 2000 Sats back at a minimum. Like that’s how I would do it personally. Important because the size of your channel, the bigger it is now. The less Fee rate you have to put on it because just the percentage base of it, right, it’s, you know, trying to get 2000 Sats back from 100,000 SAT channel is probably going to be very difficult compared to 2000 Sats. Back on a 20 million SAT channel. So these things you know and it’s kind of unfortunate because the people would be like, oh, so in the future, you know, nobody’s gonna be able to run a lightning node. It’s going to be like insanely difficult and the way it stands now, that actually might, be the case. You know, there’s no denying it so the future remains to be seen, but my fee rates. Will go up as it costs more to open channels and stuff.
Stephan Livera 00:56:18
And so just to put that in simple terms, it’s also that there may be listeners or people running lighting, no doubt there today who are not charging higher. The fees, because the fee the Unchained fees could rise to a level that they are now losing money on running that lightning node. And you know, if you look at the average fee rates as an example, I’m just looking at Temple dot space slash Lightning average fee rate today is 500 and 12:00 PM, so 512 parts per million and so. You know, that’s kind of the fee rate or I guess the prevailing fee rate. And to be clear, that would be the fee rate per hop. So you know, if you’re, if you’re routing, you know, 5 through 5 people, you’re paying that five times, right.
Nate 00:56:57
Looks like I don’t know. 10,000 PPM is 1%, so you could do the math on. That 500 PPM.
Stephan Livera 00:57:06
And so I guess it’s interesting to see where that goes of course it gets into that conversation around, you know, people I guess, are going to debate this for a while is around this question is of should Bitcoin be for everybody or actually you just have to accept that, you know what like?
Nate 00:57:19
But there’s, but there’s another way to offset that cost, and that is to provide liquidity towards those that are willing to pay you for it also. So things like liquidity, ads and boss and lightning pool and stuff gives node runners a way to earn sets alternatively than just fee rates. So it is very like running a business very much like running a business. You have to figure out, you know, if you don’t want to lose that you do have to do a little bit of calculation to figure out how you’re going to play the game. A lot of folks actually still set zero sets for their routing and they’re they just sell the quiddity on amboss. And that’s perfectly reason.
Stephan Livera 00:58:03
Reminds me of 0 fee routing.
Nate 00:58:05
Right, exactly. Rest in peace. But yeah, So I just wanted to point that out there, that I believe liquidity markets will still be very important in the future and those will be reputation based. So those that have been around for a while that are proving themselves will likely charge a premium compared to notes that haven’t reached that level, which is another incentive to start your lighting. So as soon as possible, if you’re. Capable of doing so.
Niftynei 00:58:31
I wanted to like just point out maybe two things that I’ve worked on and I could propose that I think are kind of important in this like area of.
Like, how do we like, you know, what are you controlling like our fees going to go up for routing things, how do you decide what to set your fees at? I think is an interesting question then, right?
I think that like one of the big projects I worked on correlating last year was adding really detailed bookkeeping so that you can figure out where your costs are. And how much?
Spending money where the money is being spent, being able to have a detailed analysis of what like you know what your historical costs have been, maybe figuring out a prediction of like what your cost might be and how to like kind of place that into, you know doing a risk calculation rate of how much do you think you’re gonna end up paying an on change fees?
Niftynei 00:59:20
And with your risk of a foreclosure, that sort of thing can help you price your liquidity. Both that you’re selling, maybe you do liquidity ads or on magma, or how much you’re charging for payments to go through. There’s another thing that I proposed last year went out on the mailing list. Which is a new kind of way of allowing people to introduce like price curves to the amount that they’re charging for the available liquidity in the channel as a way to dynamically. But with the static information so like reducing the burden of communication on the network but allowing people to set dynamic rates. For their available. Equity such that when you have less liquidity, you get paid more for it, which means that if it’s a popular route, you get paid more and encouraging people to use routes that have more liquidity available. So this kind of like the and even maybe give people an opportunity to like, make payments at a discount, so setting negative. The rates for sending payments in what are called like indirections that the capital is a Contra flow, right? So if you’re sending a pay. In a direction that most people aren’t using, that’s beneficial for the router and for people using lightning because it allows them to reuse capital without having to go on chain. So by introducing like these new mechanics like the fee rate stuff for fee rate cards that allow you to.
Niftynei 01:00:43
Do these kind of really. Cool price curves in a really like data information efficient way. The current ways of doing it are very bad for the network because they generate a lot of gossip traffic. That will really change. The game, I think in terms of like giving node operators more knobs, more ways. The kind of price of liquidity in intelligent ways that both enables them to reuse their capital more often, which cuts down on chain costs because you don’t have to do rebalancing or like moving. Pull around as. Well, as actually extracting more rent, so to speak, from high in demand routes, which is kind. Of a cool thing. So the idea on that is like if I have I found like some just say that nobody else knows this and I have a channel to appear and I’m getting 1000 PPM like pretty well, I’m earning a bunch of fees.
Nate 01:01:40
Within a negative fee rate strategy after that drains I could set negative fee rate at like 2 or 300 to sort of force it back in and my net is still 700 PPM because then I’ll flip it back around and then have it go the. Other way, yeah. To keep the profit margin.
Niftynei 01:01:56
The idea is that like. Your channel will tend to awards the middle. So like the balance will be sort of more even in the middle such that payments have the opportunity. To go both directions or whatever. It’s like a it’s. Like a static state, that’s just kind of like if the channel is this big, it’s or, you know, if it’s a foot wide, it’s like it’s 6 inch mark, just kind of. Yeah, exactly. And you introduce.
Nate 01:02:18
Floundering around, yeah.
Niftynei 01:02:20
Resistance or like decrease or increase your resistance in terms of what the fees are as it gets to the extremes of either being one way or the other, right? So this kind of introduces a new physics to payments, such that like it’s going against the flow, you actually get rewarded. And going in the direction where the flow is like more whatever you get as a node operator, you get paid more if. That makes sense. So providing capital and like highly in routes, but there’s not a lot of availability you could get. You get automatically kind of paid the trade.
Nate 01:02:53
Off is you need more bandwidth for the. Gossip is that.
Niftynei 01:02:56
No, it actually cuts down on the amount of cost. If you need to do it. My proposal does so currently people dynamically update their fee rates, which is very expensive in terms of cost it because every time you update your fee rate, everyone on the node finds out about it. So every time so more channels and more people running automatic fee rate adjusters is the worst possible thing you can do for gossip on the Lightning network. Every new channel increases, adds 3 new messages on the gossip, and then every time you update it, you send out every time you update the fees on your channel, you send out a new piece of gossip for it.
So if you have 4 channels between you and another peer that suddenly 12 gossip messages that everyone needs to know and keep track of, and every time you update. Four times that you update the fee rates, everyone’s going to need to know about it. So it’s this very bad. Like almost exponential increase in the amount of data that’s going out to do. Dynamic fee rates. Where is the proposal that I came up with lets you kind of set it once and they dynamically changed based on how the liquidity in the channel shifts and you don’t have to rebroadcast or send out any update. So it drastically reduces the amount of bandwidth Goff is taking up.
Stephan Livera 01:04:06
And in terms of lightning services, there are some that, let’s say, rely on low chain fees and when chain fees rise, maybe those services, they get less volume or they run into issues because they’re. Just not profitable. I mean, I guess an easy example might be like Moon wallet as an example, because there are a lot of moon wallet users and basically almost every payment on that is an on chain payment and in a high fee environment it’s pretty rough, whereas like a Lightning Native service, maybe they have a slightly better time in a higher environment. So that’s one example I’m curious if you guys can think of any others. Or have any anything.
Nate 01:04:41
I mean moon’s the shining example of that. You know, moons are very I don’t even fully understand how it works, but I do know that it does have that on chain component and it just you know they eventually fixed what was happening there, but it really you know I like when people and companies and developers are get really creative. You know, it’s like this is lightning, but it’s not actually lightning sort of thing, but it’s really user friendly and kind of cool in in like the appropriate environment. But I definitely want to see you know as much lightning native. Apps and services as possible. I’m a big fan of Phoenix. You know phoenix is still has little bit of a of a headache when you’re. First getting going, but once you get going, it’s great. So stuff like that I really like, but I can’t really think of any other examples on top of my head.
Stephan Livera 01:05:33
Yeah, but in fairness to the moon guys as well, I mean, I know they. I think Dario put this on the mailing list. He said they’ve got 100,000 users, which is, you know, that’s impressive, right?
Like, it’s so for all the, you know, complaints about that. I mean, they have a decent user base, yeah.
Nate 01:05:48
I mean, I really. Love the idea of having on chain and lightning sort of unified because that’s really nice user experience for people you know.
Stephan Livera 01:05:57
Yeah, I think that comes back to the splicing concept as well, like the way Dusty explains it as well is that, In a world with splicing, you could have a more lightning native experience and maybe slicing would enable the moon while it guys to do something even more incredible with what they’re doing.
And maybe it would also help you know the likes of Phoenix and Breeze and stuff as well. I guess one other area I’m curious to hear what you guys think in terms of the longer term future with Bitcoin and lightning?
Stephan Livera 01:06:23
It seems there’s a lot more excitement and discussion around things like covenants, things like any Preval. Or check template verify. Do you guys have any views on that? Do you guys think it would be necessary nice to have or a bad idea? Have any thoughts on that?
D++ 01:06:37
Yeah, I mean, I would say that I think some of the use cases for covenants to harden your cold storage to me is a lot less interesting than all of the things that they can unlock for lightning.
So definitely looking at L2 now, whether we get CTV or any Prev out or both is certainly not something that I can really predict. But I think a lot of us felt kind of some pressure last year to sort of sign off on the correct covenant proposal and we kind of reacted, but now that the pressure is off. A lot of folks are coming back around. And saying OK. Like now that I feel free to make a decision on my own terms in my own time. These are pretty interesting. Like maybe we are going to think about doing this, you know, not any time soon but I would say in the next few years and I think. I would be against a covenant proposal that didn’t enable L2 personally.
Stephan Livera 01:07:33
OK. Lisa or Nate, anything to add there?
Niftynei 01:07:36
I mean, I think the covenant stuff is like, it’s interesting. I think that like I think people make interesting points about like what we already have covenants on Bitcoin and OPS, CSD, CLTV or like technically covenant style stuff, maybe we’ve already like open that can of worms. Now it’s just like which? Strategy or we’re moving forward with. Yeah, I don’t really have like covenants aren’t something I spend a lot of time thinking about. I definitely seem to spend more of my time thinking about liquidity problems on lightning like you know, like 21 million Bitcoin.
D++ 01:08:17
Where is that?
Niftynei 01:08:18
21 million Bitcoin gonna end up. It’s gonna be an interesting question in terms of which of these differently or two is whether it’s something that uses covenants or maybe it’s like liquid or maybe it’s something else like which of these like actual layer twos, maybe it’s like a federation like liquid. Where is this? Like which of? These is actually usable, which actually has liquidity and the capital available for people to do exchange. And it’s like adding covenants gonna lock up more liquidity in like places that make it harder for other people to like use or do things with, you know, the more kinds of layer. That we got, there’s only 21 million Bitcoin split between them, so you know some.
Stephan Livera 01:09:04
Yeah, there’s an opportunity cost of where.
Niftynei 01:09:05
Costs. And so I think like you know, the next like 5-10 years, I think that’s going to be coming increasingly interesting question.
Stephan Livera 01:09:06
You put it. Yeah, I guess I might as well just add here liquid as you as I’m sure you’re aware liquid already has some covenants it already has like there’s Signet and there’s inquisition and things like this that are designed to kind of test some of these out and maybe the idea is that people test some of these ideas out there and then it’s proven out that there’s some demand here that there’s actually something useful for bitcoin here, and it’s proven out that it’s safe as an example, and then maybe that’s part of the pathway for some of these ideas.
Niftynei 01:09:39
Maybe we just leave it on liquid and if you want to do cool, interesting coven and stuff, you just go do it on a side chain or they build in to set them in and so all the funky fancy contracts can happen in layer two, and we leave Bitcoin as store value and don’t really have to think too hard about what covenants means for Bitcoin.
Niftynei 01:09:59
Because all that experimentation happens on an L.
Stephan Livera 01:10:03
Nate, anything you want to add here?
Nate 01:10:04
I’m just I’m a big fan of privacy enhancing tools, so if there’s a way to office Scate ownership of ETXOS, whether it’s by having multiple owners of a UTXO.
01:10:19 Nate or, you know, I think that’s really interesting and cool and I would like to Mess with it someday and I think that the privacy challenges of lightning should be tackled also, which is a. Whole other can of worms I’m really a big fan of Paul and Tony Building Mutiny wallet. I think that is an incredible project that everyone should be keeping tabs on, but just the spec in general. Just to you know. Build 11 has a lot of issues and hopefully we can really tackle. These you know I know and respect the devs, especially the protocol devs very much so I know that it’s very. But I’ve load time for our friends and I’m sure a lot of this will get solved in time, but we are in a race against the havings. So we’ll see what happens.
Stephan Livera 01:11:04
One other area I was keen to just ask on is HTLC’s smaller than the dust limit. Alright, so this is kind of an interesting idea, especially in the high fee context, right? Because as fees rise, there’s this kind of there are people who are sometimes commenting and saying ohh well, any amount in an HLC below the dust limit. Is actually kind of custodial or your trust? Starting in that context.
Nate 01:11:29
The best thing you could do in to mitigate that dust thing is to just increase the minimum HTLC size. You’re. You’re not going to I mean, and they could be in the middle SATS too. But you know, it’s like, oh, what should I increase? You look at your channel’s activity and see what it’s doing. You know, if it’s really blasting through a bunch of like streaming payments and you’re not really earning a lot. From them maybe. Maybe bump it up? To three or four cents or something, but. That it’s my understanding that’s really. All you can do to mitigate that; I don’t know if he has anything else on.
D++ 01:12:09
Well, may I’ve talked to node runners who have their minimum. HLC size as the dust limit, it’s certainly. One way of doing it. It’s not my approach, but it’s only going to. Get worse as fees go up. This is only going to. Become more of a problem, so again Good for us. To start thinking about this kind of thing in a timely manner. I’m so happy that you posed this topic. I just think it couldn’t be more appropriate for today and I think that even just a few. Months ago, nobody wanted to talk about what a Bitcoin. World would look. Like in a high fee environment for whatever reason, we can’t assume that fees are going to stay low forever. As far as I’m concerned, Bitcoin has sort of a binary outcome. Either it does its job of being gold 2.0 of being the money, or it doesn’t and if it does its job the fees are. Going to be very, very, very high. I mean, we’re talking. Hundreds of dollars per transaction, maybe thousands and. By that time. I don’t know if we’re going to be pricing. Everything in dollars, dollars might not be our unit of account, but you know, for all intents and purposes, I’m just using the unit of account that we commonly. Think of today so I mean look, my note I have 0 PPM zero base fee, no minimum HTLC. You know my notice for the plebs by the plebs. Basically just for educational purposes and my own personal use and yeah I am running this no data loss because I’m paying for the infrastructure I’m paying. For all of the year and I’m paying for those channel opens and closes and forced closures and all that kind of stuff. I’m not saying that’s the right way of doing it. I don’t think that we have to rely on altruism. In order to. Create the next financial rails for the entire global market. I’m just saying that that’s what I’m doing right now, and I think it would needs to be.
D++ 01:13:56
Being kind of how the incentives play out, but to Nate’s point, we’re not going to expect to see very low rates on lightning forever. And I think we do a disservice to folks when. We say that lightning is free and I am so guilty of this. I am so guilty of this because I want to destroy every shift coin narrative and say hey, lightning is instant and lightning is free. And again, this isn’t a note to myself. To better explain to folks that OK, you are paying a percentage of the total, that percentage may change overtime because I don’t want anyone to come back to me in a few years and be like D plus lie and now you know having to pay half a per. And you know, she’s a shift corner because she’s, like, creating these false narratives just like everybody else. And so, yeah, for all intents and purposes, lightning is, like, kind of free today. And, you know, enjoy it while that lasts.
Stephan Livera 01:14:47
Yeah, I think I think that’s right. Go on, Nate.
Nate 01:14:49
If you’re buying something from a service that a ton of other people are sending money to, you can expect to pay a higher fee rate than if you were just sending some sats to you for mowing your lawn or whatever. You know, if you buy something off of bit refill or the Bitcoin company, you can expect to pay a higher fee rate than this. Like I said, pay your neighbor.
Stephan Livera 01:15:13
Yeah, interesting. And that’s a fair point because the route that route is worth more quote unquote worth more because more people are trying to travel that route, let’s say. So interesting stuff. I think we’ll probably have to wrap up here. I think we’ve been going for a while anyway, but I’ll make sure to include everybody’s links in the show notes, so D++, I’ll put your social media handle there and plug net, net. I’ll put your social media stuff there as well as the voltage cloud and the blog post and for Lisa, I’ll of course. But her links?
Nate 01:15:43
And I want to I want to also. Shout out Lorenzo, our technical writer. On that, who has been writing. Some fantastic stuff on the Voltage blog, so definitely check it out.
Stephan Livera 01:15:54
Well, thank you for joining me and I’ll chat with you soon.
D++ 01:15:57
Thank you.