WBD372 Audio Transcription
Lightning Series: Running a Node with Openoms & Rootzoll
Interview date: Wednesday 14th July
Note: the following is a transcription of my interview with Openoms & Rootzoll. I have reviewed the transcription but if you find any mistakes, please feel free to email me. You can listen to the original recording here.
In this second episode of our Lightning series, I talk to RaspiBlitz developers Openoms and Rootzoll. We discuss the importance of running a node, tradeoffs between custodial and non-custodial wallets and the different node solutions available.
“If you’re not in control of your keys it’s not your bitcoin...and it’s a little the same with your node; not your node, not your rules…”
— Rootzoll
Interview Transcription
Peter McCormack: Right, Noms, Rootz, welcome to the show. How are you both doing?
Rootzoll: Yeah, thank you. We're glad to be here.
Openoms: Hi, Peter. Thanks for the invite.
Peter McCormack: So, where are you guys from?
Rootzoll: I'm from Berlin in Germany and, Noms…?
Openoms: Well, I basically have Hungarian origin and I live in the UK, next to you, Peter.
Peter McCormack: You live next to me? I didn't know that. So, tonight, you're both going to be rooting for England, yeah?
Rootzoll: Yeah, for a fair share.
Openoms: Since both Hungary and Germany are out…
Peter McCormack: Fuck those Danish guys; honestly, they don't deserve shit. Anyway, listen, welcome to the show. Thank you both for coming on. So, about a couple of years ago I did a whole month of shows about Lightning Network, and people have been asking me to do it again. My producer, Ben, was like, "We need to do this", but we've decided to shrink it down and do a week of shows.
Obviously, one of things we need to talk about is nodes, Lightning nodes, something you guys know a lot about and especially now, because I've been out to El Salvador a bunch of times and the use case for Bitcoin is very different. The only time I'm using Bitcoin is on the Lightning Network, so it's highly relevant now to start thinking about this, start talking about this and dive a little bit deeper into this. So, I think, just as an opening point, it would be good for you guys to introduce yourself, tell people about RaspiBlitz, what you guys do so they know what you guys are about.
Rootzoll: Yeah. So, let's start with me; I'm Rootzoll. So, I have a background in computer science and a little bit of start-up history in the US. From there, then I moved into open-source development, first in the educational area while I was still a long-term member of the Room 77 Bitcoin meetup Berlin, and that's where I met Jeff and formed Fulmo and we decided to start the Lightning Hack Days to get people in Germany, especially, but then it caught on around Europe, into Lightning development and get excited about the new development there on the second layer of technology. And this even ended up that we organised the Lightning Conference back in the day, so two years ago almost now.
Yeah, from there, from this experience, the RaspiBlitz project started, which is Bitcoin and Lightning full node on a Raspberry Pi, an open-source solution for that. Personally, me now, I'm three years now involved into that project, mainly as the lead developer and maintainer. Then, I met a lot of nice people along the way, like Openoms, and people that to develop on Lightning Network.
Peter McCormack: Awesome. Noms, do you want to tell people a bit about your background, why you got involved in this?
Openoms: Yeah, sure. So, I have no official history in computer science, but I did be always interested in computers and have been very technical and, in coming into this space in 2017, in 2018, I started to do some bootcamps and learn to code properly; well, it's a journey, right? I started to go into the RaspiBlitz project as a way of learning and then got involved deeper and deeper with it.
Then, there have been a lot of other things coming through in terms of getting involved with all the open-source space and getting involved with other projects, mainly related to the Lightning Network or privacy.
Peter McCormack: Wicked, guys. Well, listen, look, we should get into the details of this. Nodes themselves can confuse people if you're not technical or if you're not from a computer background. Some people, they just want to buy Bitcoin, sometimes they want to a leave it on exchange, maybe they get a hardware wallet; that leap to a node is a massive jump for people anyway.
So, we have nodes, we have Lightning nodes, we should probably just give people a bit of a background of what a node is, why you should have one, what it does. Let's start with just the traditional Bitcoin node though; let's explain what that is, what it does and why people should have one.
Openoms: Right. So, a Bitcoin node is, basically, we have a consensus on one main implementation, which is the Bitcoin Core project; having a node means that you're downloading Bitcoin Core and you are downloading the blockchain, all the history of the previous transactions in Bitcoin, and then you build it up from the Genesis block up to the current tip, verifying all those transactions in the meantime. So, going forward, you can make sure that the transactions you are looking for are in consensus with all the other people, all the other nodes running the software in covert.
Peter McCormack: Yeah. The way I explain this to people, when I say it to my friends, is that when you use your bank and you want to send me some money, while the bank has a ledger of all the records, they just keep a single copy of that themselves. So, if I was to send you, Noms, some money, they would update their ledger to deduct an amount from me and if you were to stay with the same bank, they would add it to yours, and there's that single ledger.
But the thing is, the power of Bitcoin, it's decentralised; there's no central authority. So, to make that happen is that, essentially we all, as many of us as possible, need to have a copy of that ledger to keep the ledger honest. Do you think that's a fair way of explaining it to people?
Rootzoll: Yeah, that's sound good; it sounds reasonable. Maybe we have to simplify a little bit like, for example, when people buy Bitcoin, they very quickly learn that your key's not your Bitcoin. So, if you're not in control of your keys, it's not your Bitcoin, somebody else controls your Bitcoin for you, and it's a little bit the same with a node. So, if it's not your node, it's not your rules.
So, it's like you accepting somebody else running a full node for you and choosing the rules and checking the rules for you. So, if you run a Bitcoin node yourself, you're really in control of it, of this node, and you choose exactly what rules you want to run your Bitcoin on. This is a consensus we do, everybody does that, but you check really for yourself, so make sure it's your rules; you accept Bitcoins by your rules. I think "not your node, not your rules" is a good simplification for that.
Peter McCormack: Yeah, because, look, not everyone does run a node. A lot of people, as I said, they keep their Bitcoin on an exchange, or they use a hardware wallet; they don't ever set up a node. The thing they need to realise is that, if they don't run a node themselves, they're relying on someone else's node. But we do rely on this decentralised network of nodes to keep the network honest to ensure that the ledger is up to date, is honest, and everyone is agreeing on the state of the ledger, which I think is important.
So, the next thing we have to really get into is what a Lightning node is ,because that's a little bit different. A question I have for you is something I actually don't know the answer to; can you run a Lightning node without running Core, without running the base chain node; or do you have to run the two together?
Rootzoll: Basically, you need some information about the Bitcoin chain, so you need some information on a service about this. This doesn't need to be a Bitcoin Core full node, it can be even some lighter version, and this is sometimes what mobile wallets do, they use some lighter version off a full node. But basically, if you run a node yourself at home, it's advised to really run a full node with a full archive on there just so that you have the full package and you're not limiting yourself in options.
Peter McCormack: So, you guys have been into this for a while. Did you say you started working on this in 2017?
Rootzoll: Round about, makes sense, yeah.
Peter McCormack: Yeah. So, just for some picture of what's going on, are you seeing any recent significant uptake in the use of the Lightning Network, increase in the number of people who are creating and setting up Lightning nodes; are you seeing that? What kind of data are you seeing?
Rootzoll: We don't monitor it a lot because we don't have a central service built into our nodes, so we don't have a real kind of monitoring how many node RaspiBlitzes are running out there. What we see is the downloads of the software; that's really got quite big, thousands of downloads there, I'm not sure how many nodes that is in the end.
What we see, because we also offer with Fulmo, at the Fulmo shop, we offer a RaspiBlitz prebuilt where you can get the hardware already built together. You can get all the parts from Amazon yourself; it's a do-it-yourself tutorial, but you can also order the package from Fulmo. Then, we really saw the orders really going up compared to the year before.
So, this was the last Bitcoin hype we were seeing, the price going up. We were seeing people waking up to also, "Oh now I have Bitcoin, now I really want to understand Bitcoin and now really getting into running a node". So, it is really something more and more people are doing, and we also see it on Twitter.
Openoms: Yeah. So, that's what I'd like to plug into, that I really see the activity growing in the communities which are participating, like the growing number and participants; I think about 1,000 people participating in these Telegram groups, which are just about Lightning node management and opening channels and such. Also, you can see the activity on Twitter, on Mastodon and wherever, and it's really picking up, I can say.
Rootzoll: Yeah, and this is really something you don't see with other coins. It's really something, if you look at other coins --
Peter McCormack: Shitcoins?
Rootzoll: Yeah. If you look at what they are running, you see, I don't know, maybe 100 people running nodes if you're lucky, if you already have a popular project. But here, in Bitcoin, you already can see one project here, so thousands of downloads, thousands of people and channels, and this is just one of the Bitcoin full node Lightning implementations.
Peter McCormack: Yeah, but they're just stupid shitcoins for people to try and print money and make money from and trade. There's very little actual use case. There's a fair argument that maybe there's some decent use case on Ethereum. Even if you hate Ethereum and you think it's a piece of shit, people are using it, and there's certain usage; I think of Monero, etc, but generally speaking there isn't that kind of passion from shitcoiners with these projects, that they're building something that's going to change the world and that they have this obligation or duty to support the network. I just find this a different kind of attitude.
Rootzoll: Yeah. Then, especially, you have to understand, because all the scaling debate where a lot people asked, "Why don't you make Bitcoin more efficient and put more bigger blocks or something?" The good thing is that we kept the blocks so small, like we have right now, you can run it from home; you can run it behind a Tor network; you can run it with a 1 terabyte hard drive or SSD.
Still, every other node implementation that's promising faster and more transactions, whatever, they get a lot more data on the blockchain data and grow so fast that you're not able to do it from home anymore. This is the way how we keep Bitcoin so decentralised and we see people picking this concept up and then executing it out there in the wild.
Peter McCormack: All right. Well, listen, let's dig into the Lightning node. So, my node is an Umbrel node, which comes with a Lightning node. I'll be honest, I haven't played with Lightning on it yet. It took me a while to set my node up. I don't know if you followed that, but I just used to say to people, "I can't be bothered; it's too much hassle; I don't understand it. I trust my exchange node; I trust my ledger node". It took me a while to get my head around it and understand it, and now I do. I actually have four nodes set up, but the only one I use is my Umbrel node, but is does come with a Lightning node.
Now, my understanding of a Bitcoin node is great in that I help support the network, but more importantly, I'm able to validate transactions; I'm able to see transactions on the network and validate them. How does Lightning work? How does a Lightning node work; what does it do? Why should I run a Lightning node?
Openoms: Yeah. So, with the Lighting node, so there is a Lightning Network, right, which you actually can support. With basically a node, with Bitcoin Core, download Bitcoin Core, you’re seeding this big Tor on file, which is the blockchain, so there are only limited things you do if your node is not being used for transactions. But, with the Lightning node, obviously you will start sending transactions, opening and closing channels, so that will mean that you have economic activity on the network, both on base layer and on the Lightning Network.
Then, you can set up your own channels, which means you don't need to rely on any other; you can have your own wallet. You don't need to rely on the cost of your wallet when you're using someone else's Lightning node. Then, you are actually providing more routes in the Lightning Network where payments can go back and forth quickly; and the more connected it is, the easier it is.
Peter McCormack: Right. So, let me try and understand it as somebody who hasn't spent too much time doing it. So, my activity, when I was out in El Salvador, I was spending sats, I was using the Lightning Network, but actually I was using BlueWallet, which is a custodial wallet.
So, just so people understand the difference between a custodial and a non-custodial wallet, essentially, if I've got a BlueWallet, I'm custodial, therefore I'm really relying on their node, okay; I am not essentially holding my own Bitcoin, right. If there is an issue, am I right in essentially thinking, if they wanted to, because it's custodial, they could steal my Bitcoin?
Rootzoll: There is a danger, and this is exactly like the Wallet of Satoshi, is the most custodial I've seen out there. From a user experience, it's nice and first of all, it's great to just jump into Lightning; that's maybe a good thing. But then you have something like BlueWallet that I think, just to be correct, on the Bitcoin side, it can work in a non-custodial way, but if you use the Lightning part of the BlueWallet, by default it's a custodian Lightning wallet. Then there are some possibilities to connect it back to your own node, but I think not a lot of people are doing that.
So, basically, if you use BlueWallet, Lightning, that's also custodial. Custodial always means it's not your keys, not your Bitcoins, some somebody else is in control of your Lightning funds and managing all the channels out there.
The next step you could do is you could change to another mobile wallet; there are non-custodial mobile wallets out there. For example, you have the Breez wallet, the Phoenix or the Muun wallet; those are the ones that are trying to make it easy for you, but still having you in control of your funds. But they do a lot of other things for you in the Lightning Network that maybe makes you depend yourself a little bit on them, because they try to abstract the complexity away.
So because, for example, you would normally, on Lightning, we're taught that you have an on-chain balance and off-chain balance, because normally you have your Bitcoin, like normal, with your hardware wallet; that's your on-chain balance. Normally, on your wallet, you put some Bitcoin, like normal blockchain transaction, in there; that's your on-chain balance. Then, you open Lightning channels, so you transfer Bitcoins, they stay on the mainchain, but the way you transfer into a channel, and then you have your off-chain balance. This is all complicating a bit, because now I have a wallet with two balances and people get often a little bit too, I don't know.
So, they make it easy for you, they just show you one thing, and they manage for you this balance with swapping automatically in the background and using their services in the background. But it's a good step to a non-custodial wallet in that direction.
Peter McCormack: So, let's start at the basics then, because ideally, we want everybody to be custodying their own sats; we want them to be running their own Lightning node, creating their own channels. That's the ideal solution because you become self-sovereign; you aren't relying on anybody else. So, if I set up a Lightning node and I have my wallet and I put some sats in there, I can't actually start spending any money; I can't start sending sats to anyone else until I open up a channel, right?
Rootzoll: Yes. The first thing you need to do is open a channel. This is mostly what those mobile wallets do for you automatically; they open a channel for you, they open a channel to you. But if you start with a node, and you just want to connect your self-sovereign to the network, you have to really put some Bitcoin on there, transfer some Bitcoin on there, and then start opening channels to the network.
Peter McCormack: So, Rootz, let's talk about this practically. I've got some sats, I owe you 100,000 sats, I want to send them to you; the first thing I can do is open a channel to you, right? So, how do I do that; what is that; what is that channel; how do I do it?
Rootzoll: First of all, you don't need to open a channel to pay me. You can connect to somebody else in the network and then route through the network to me. This is, first of all, the good thing; you don't have to open a channel to everybody you want to pay. So normally, basically, you just need one good channel into the network and, if you use that channel wisely, and this channel, the person you connect to is well-connected in the Lightning Network, you could pay everybody else in the rest of the network. So, that’s good news there.
So, if you want to pay me with Lightning, you have your Lightning node and you want to pay me, choose a good connection in the Lightning Network and open a channel and, of course, put enough Bitcoin into that channel so that you can pay me.
Peter McCormack: What do you mean "a good connection"?
Rootzoll: So, for example, if I have here a node and you have there a node, we can always just open a channel together, a channel between each other, and we can pay each other; that's no problem. But, if we don't have further connections, it's not a really good channel to open because it doesn't connect you very well into that network.
So, you should, at least for your first channel, choose somebody that at least has two, three, four more channels maybe open, it's a well-connected node so to say, and then you have the routes into the rest of the network.
Peter McCormack: It's probably, therefore, a good idea to explain how payments are routed then, Noms, because what some people might not understand is how sats move through the network to get to people. On the Bitcoin base chain, I understand it; you send me your address, I send you some Bitcoin, the miners put it up, they put it in a block and we're perfectly aware that that Bitcoin's now yours. But the way sats move around the Lightning Network is slightly different. Do you want to explain how that works?
Openoms: Right, so routing is that, basically, just an imagined channel which is often described as keeping a barter with your peer, right. If you in a big routing node, then that's the bar, and then you open a channel, you up a tab there, and when you are paying the bar directly, then you're just recording transactions off chain, just on that piece of paper maybe.
Then, the ability to route payment means that your bar can pay to another bar, or can pay our bank or it can pay another guest. Then, what is means that they're just keeping tabs with all these other entities through the channels, because it has multiple channels. So, when the routing has routed payment, its overall balance doesn't change, only the balance in the channels change.
So, if I paid a bar, then the bar have more on their side. If they pay another person, then they will have less on that side, right, and their overall balance will be only slightly more with the routing fee they take from the payment of mine to do this action, so that's how it can -- there is no theoretical limit on the number of hops you can do, but practically, you can reach everyone within five, six hops.
Peter McCormack: So it's a bit like, if I had a channel open, say, with Rootz and he has a channel open with you, but I don't have one with you, but I want to send you some sats, it's just going to route it via Rootz. But there could be five, six people between us and it's just going to find a path to get those sats for you. So, that works; I understand how that works. So, what exactly is a channel then because, if I open a channel, what have I actually done?
Rootzoll: You're locking Bitcoin on the mainchain with a partner. So, see it as a safe where just two people agree on, they put together maybe together, or one person on one side puts 1 Bitcoin, for example, into that safe, and then you just agree how much of this Bitcoin each person owns.
So, if I send some sats over to you, we would just mark for ourselves and then give ourselves written checks so that we can go every time back to each other and get our Bitcoin out. So, we would always update our end value, but we would never transmit those little steps in between to the blockchain. So, we just keep the book ourselves.
If you then route satoshis through the Lightning Network, you do have understand that the satoshis that the person gets in the end are not the satoshis you were sending in the beginning; it's more like we just agreed that we change our channel here and then this person over there says, with the other person that has the safe, how they agree on their Bitcoin they have in lock, and then further on. So, this is more a trustless way to transfer values through the network but the Bitcoins themselves stay locked on the mainchain between single persons.
Peter McCormack: Well, that's interesting then because, if I send Noms a Bitcoin on the base chain, we know which Bitcoin that is, we know which UTXOs they are, so we know our friends, not so friends at the -- I can't remember the name of that fucking company! What's the name of that company who tracks you?
Openoms: Chainalysis?
Peter McCormack: Yeah, those wankers! They basically track and can sell everything we're doing and we don’t have any privacy. But I guess, on the Lightning Network, if it's not the same sats being moved around, that's very good for privacy.
Rootzoll: Yes. It's really an additional layer because we don't see, when I pay for a coffee in a store, you don't see that on the blockchain. It's not a single transaction there; that’s for basic, it's already again here. Then, of course, all of this data is then just kept between single people because normally, if on the blockchain you make a transaction, you tell it to everybody.
If we make a transfer, a payment through the Lightning Network, you just tell it to certain people that are needed within the route, and even those people on that route are not aware of this complete route; it's peeled into an onion so that just the person on the route just now from where it comes and where it should be send to, and the rest is encrypted so that it's even easier to keep the payments anonymous.
Peter McCormack: So, if we opened up a half a Bitcoin channel with you and you put half a Bitcoin in, does that mean we have a Bitcoin of liquidity between us?
Rootzoll: Yeah, there is now more and more this way to make dual-funded channels. Normally, it happens that one person decides to open the channel and puts the Bitcoin in there and then we could agree how we own this. This is not the normal way; somebody decides to open a channel to you and this person normally puts the Bitcoin into the channel. It doesn't need to be a whole Bitcoin, by the way.
Peter McCormack: Yeah, no, of course, it can be any amount, but the size of the channel I open is the amount of liquidity I have. So, if I open a 0.1 Bitcoin channel, I have 0.1 Bitcoin of liquidity on the network?
Openoms: Yes. That’s 10 million sats, yeah.
Peter McCormack: Yeah, 10 million sats, sorry. So, that’s the standard, apologies, I know I should be doing that! So, okay, I've just got some questions on that, but when I open the channel, I am paying an on-chain fee. So, if the on-chain fee at that time is $5, I am paying an on-chain fee of $5; so really, I want to keep that channel open as long as possible to make use of the low-cost, fast nature of the network. Potentially, I want to keep that channel open for years.
Rootzoll: Yeah. Basically, if you can, that would make sense.
Peter McCormack: Because every time I open it or close that channel, I've got two transactions to think about; so, I've got two on-chain transactions. So, let me ask you another question. I told you I've been out to El Salvador, spent a bunch of time there, got to know the people; the primary use is everyone is transacting on the Lightning Network, but then we're talking about a place where people are relatively low income and maybe they will never own Bitcoin on the base chain; maybe the amount of Bitcoin they will own will never more than $50, $100 at a time potentially. They only need the Lightning Network.
So, is it a possibility now that these people can open up a Lightning wallet, have Bitcoin on the Lightning Network and never have to, themselves, deal with the basechain?
Openoms: Well, it's a question of how secure they want to be. So, as we discussed, they can use a custodial service, like Wallet of Satoshi or BlueWallet by default or, the other end of the spectrum is to have your own node and open your channels. But there is something in between we call, basically, a community custodial, where you are not relying on any entity which is continents away and you don't even know who it is, whose node it is, but you are relying to a node in your community, let it be a village, let it be your family, your Uncle Jim, or let it be your most technical person in your family who runs the node, and then you can use the community there to transact only on the Lightning Network.
We need to see that the Lightning channels are basically the way of matching transactions. So, if you have $5, $10 cost of sending an on-chain transaction, if you make 1,000 transactions on a Lightning channel, then you have divided it into 1,000. So, if there are more people using one channel in a way when you are using the Bitcoin Beach wallet for example, then the channel opening and closing costs just divides between all the participants.
So, I think that is the current best way to scale this and, if they have a problem that their money's gone because they are not fully sovereign with it, then they can still go to their community and rely on that to get it back or control it in some way.
Peter McCormack: Yeah. I guess what I'm thinking about in this scenario, say they do have a Lightning channel open, they have their $30 of Bitcoin in there and their transaction on the Lightning Network, and then the other person closes that channel at a time where network fees are high, say at $20, $30, could their entire balance be wiped out; is that a risk; is that scenario planning people need to think about?
Rootzoll: Yeah, but the only thing you have to think about is, if you really have this channel in Bitcoin and the fees go up, this normally means that the Bitcoin prices were also going up quite well. So, this, at least keeps itself a little bit in check. But basically, yes, if you just open small channels, they have to risk that maybe, when we have a lot of Bitcoin transactions out there, that the fees get so high that they maybe eat up a lot of percentage of the channel.
So, there is the idea now that, if you open a channel, try to at least open quite big channels, don't do it for just $10 or something, try to do bigger channels already; it's safer for the future. But again, opening a channel at the moment, we have the situation that we just have those channels for me and Openoms or something.
There are still ideas. The Lightning Network is not completely finished; it's still in development. There are ideas for multiparty channels or channel factories that maybe make it in the future much, much cheaper for somebody to get a channel open when a lot of people do it in a big session or something. So, this is still something that a lot of people from the Lightning Core developers, so to say, are still working on and then thinking about what are the best ways to do this.
So, at the moment, there is this little bit of risk because we just have those single channels just for single person use; this could be a little bit risky to have just small channels at the moment.
Peter McCormack: Yeah. I guess what it is, there's a lot of interest that I'm seeing now within Bitcoin that's been driven by what's happening in El Salvador, and it's countries who may be economically, in a very similar situation or maybe also reliant upon remittance. I just did an interview with Lord Fusitu'a, I hope I pronounced that correct, from Tonga, talking about remittance in that country but also the economic position of the country.
I've had interest from people who are based out in Africa, Middle East, South America, Central America and, more often than not, they're places who have higher economic challenges than, say, we have in the West and Europe and the USA. So, I can see, if these people want to adopt Bitcoin, that there are going to be a lot of people who maybe want to use Bitcoin but the basechain might be too expensive for them; they just want to go straight to Lightning, which puts me in that place where I think I still see that the Lightning Network will be a combination of self-sovereign people using a Lightning node and a lot of custodial services. I just wonder about that. Is this good; is this bad?
For example, we haven't seen the full wallet solution that the El Salvador government is releasing; will that be primarily a custodial service? That I don't know, but I spent a lot of time think about that, that mix of custodial and non-custodial and not even that it's such a bad thing. If you've got a custodial wallet with $100 of Bitcoin in, and you look at the trade-off and the risks, that might be worth it.
Rootzoll: Yeah. For me, personally, I always think, if it's the custodian, it's far away from me, there is maybe a problem because I cannot reach, I cannot control those people. But, for example, if it's somebody in my village that, for example, runs a Lightning node and provides everybody else in the village with liquidity and custodial service on the Lightning Network, that’s a risk maybe worth thinking about because if this person, I don't know, cheats the other person, everybody will spit in his food for the end of his lifetime!
So, this is something where there's some social control there. So, this is a thing for the short time use and may be scaling solutions that we can think about, really small community banks can run a node in such countries, may connect to the Bitcoin Network as best as possible from the internet connection. What they have depends where you are, internet connection is needed, especially for Lightning; you need a constant. If you run a routing node, you need a constant internet connection; if you just have a receiving Lightning wallet or just sending on special occasions, then you can even have an on and off internet connection, so this is fine, but you need some internet connection somehow.
Peter McCormack: Are you looking closely at El Salvador as well and considering Lightning nodes there because I remember talking to Luke Dashjr a long time ago, and he was telling me there just aren't enough people running Bitcoin nodes; I think he thinks something like 80% of people should have one. I haven't seen a huge amount of debate around that, but I'm not aware of how many people are running Lightning nodes, planning to run Lightning nodes in El Salvador. Yet, at the same time, we're talking about Bitcoin being made legal tender there, every economic agent having to accept Bitcoin.
So, have you even thought about, in terms of El Salvador, the requirement for nodes there? Could it all be custodial and that's fine? Do you have a concern at all with this?
Openoms: Well, it depends on the economic activity, right. So, if someone sends and receives lots of transactions and big, high-value transactions, like a big merchant in a building business or something, then they definitely should consider running a node. But the person on the streets selling pupusas, their national food, right, well he will probably have the means because their monthly income won't be more than just the cost of setting up a routing route or a full node at all.
So, there are two things: we need to keep the requirements for this as cheap as possible, so keep the blockchain small, keep the blocks small, and there is also a third which is able to run on the minimal cost computers; but then also we need to make sure that people who have more at stake, that they will understand that they need to run these nodes and verify their own transactions.
So, if you using hardware wallets, you've already decided that you're spending $50, $100 on a hardware wallet and you have now 10 times, 100 times more on debt, then you should definitely consider spending another £200 or $200 and set up a node to start with or just use your computer. If you have a computer, you can set up a node. You don't even need to have to store the whole blockchain, you can just prune the node and get away with 10 gigabytes of space and reasonable internet connection is to be able to verify your own transactions to make sure that you are not cheating.
Peter McCormack: So, what are the options for setting up a node? If somebody came to me now, say my friend in El Zonte, he's like, "Pete, you know what, I need to be running a node now and I need to have a Lightning node here", what are their requirements; what do they need to set it up; what would you recommend? Because I had some fun and game with it; in the end, the Umbrel one was the easiest one for me, but what are the options? Obviously, you have maybe a slight bias.
Rootzoll: Yeah. There might be a bias on our side for RaspiBlitz, but there was this one quote from Evan; we did it at Bitcoin 2021, we were just discussing this, he's doing a Zeus wallet, so he's developing in the space and he tried to summarise all the projects very shortly, and I try to just repeat it here.
There is, for example, the Nodl out there, which is a great project for best prebuilt node, recommended for merchants who just want a node that comes pre-built and works for their use case. There is the RaspiBlitz, of course, which is best for technical users that like to tinker and learn. Then there's the Umbrel that, at the moment, is the best for the non-technical users because of the web UI and UX focus they have. Then there's the MyNode, which has the best selection of Bitcoin apps and also is for beginners, quite similar to the Umbrel, because it also has a web UI.
There is, from Start9, the Embassy node, which is the best for self-hosting services, because they have not focused just to be Bitcoin and Lightning node, you can also do some photo service there and self-host your photos, your email, something like that. So, that has a little bit broader scope, where the other nodes try to focus on Bitcoin and Lightning because it's also a security thing not to mix everything up on one device and keep it a little bit to your money, because that's really the value you want to protect, so don't put everything else on there. So, it's a little bit of a focus thing.
Peter McCormack: I'm trying to go by memory here back from when I did my Lightning month, but isn't there some idea around mobile wallets being able to run some kind of limited node? What was it called? You'll know because you're an expert in this area.
Openoms: Neutrino you mean?
Peter McCormack: Yeah.
Openoms: The block filters?
Peter McCormack: Yeah. Can I do this all just in a mobile wallet these days?
Openoms: Well, block filters are being served by Bitcoin Core; they're not by default but you can switch it on from 0.21.0, so you don't need to rely on a few services which are given by providers like Breez or Lightning Labs and nodes like that. So firstly, I just learned how the Nodl crowd and how the Nodl Lightning nodes work as well; they don't have a full Bitcoin node attached to each of them, but there is a Bitcoin node serving these block filters which are then downloaded as needed by the Lightning nodes themselves.
So, yes, there is a way of that, but obviously you need to be able to trust that node you are relying on now to serve you the information. And so, it can be a question as well, that how do you serve many Lightning nodes of your own with your own Bitcoin nodes?
Peter McCormack: Right, okay.
Rootzoll: I'd like to add there that the question is for what do you want for the wallet? If you just want to send and receive sometimes, you can have it on a mobile phone and then have it running, especially like with those block filters that are Neutrino backend and really have a full-featured Lightning node. But this Lightning node is not a Lightning node that will route, because for routing, you should be connected to the network 24/7 so that you're always there for other people, so that your availability's always there in the network and that you have good availability.
So normally, then you look at hardware that you can run all the time. You could use a laptop for that; that's fair too. But don’t forget that your laptop is quite energy hungry, so to keep it up all the time, it's maybe not the best choice, so people came up and found those Raspberry PI boards. There are similar projects out there, but the Raspberry Pi is the most common and used by people.
This is a sweet spot there, because it has enough processing power now and it's very cheap on the power consumption and it's still cheap hardware to start with; it's not a full laptop you need to buy there. So, it came up as a sweet spot for people to run their home routing nodes on.
Peter McCormack: So, say I've got my node running here at home and I go away on a trip for a week, and say there's a power cut and my node's offline, does that mean I can no longer send and receive payments?
Rootzoll: As soon as you get online again, your channels will reconnect and you will be able to send and receive. The only thing that maybe what's happening is that the other nodes around were seeing that you were gone for some time and will maybe mark you as not the most reliable node out there, so then you maybe get not the best score or ranking from other nodes if you're not always online. But basically, you will be still operational if you come back and power your node back on.
Peter McCormack: But what I mean is, say I was going out to El Salvador, and I like to use the sats out there, but my node back in the UK is offline, I don't know, someone's burnt down my house; does that mean while my node is offline, I can't use it?
Openoms: Yes.
Rootzoll: If your node is gone, you cannot use it, yes.
Peter McCormack: Yeah. So, what I would probably do, even with that, I would probably still then have a custodial and a non-custodial. So, if there is ever an issue with my node, I've still got sats I can spend while I'm away.
Rootzoll: Yeah. It's a practical solution that some people do. They have two mobile wallets on their phone: one is the mobile wallet that is connected to my node back home, has a direct connection and you have a remote control of your node back home; and then you have maybe a second wallet, Lightning wallet, just as a backup.
It's a bit like with credit cards when you're on the road, you maybe have two credit cards just in case. So, it makes sense because, never forget, this is still a complex system; even to connect back to your node back home, you have to get through your personal firewall, your net and all the stuff. So, it's a lot of little things out there that can go wrong, so it's always good to have backup, of course.
Peter McCormack: Do I create a backup? Do I backup my private keys for my Lightning node in a very similar way to how I do it for my traditional wallets?
Openoms: Well, in a similar way, you are backing up the on-chain balance. So, you have a seed basically, and it can be abstracted away; it is happening is Muun wallets or the other wallets which basically just have a one-button press backup option to you to the cloud or to their hosted server. But eventually, what you need to do is to backup two things. One, as you have two balances, first the on-chain balance, you are backing up with a seed. It's a root key; it's your master private key basically.
Then you need to know about the channel states because the channels, as we discussed, are in a multisig contract with your peer, so you are not fully controlling them, but you need to have this information where they are to be able to settle the final balance. So, you need to back up in multiple ways you can think of.
Peter McCormack: Okay. Can we talk about liquidity, because this is an important issue with Lightning? I've not had a single issue when I'm in El Salvador and buying $5 cups of coffee; every single transaction works. Yes, I am using BlueWallet, so I am using a custodial solution.
I've also got Tippin.me set up, and every month some people just send me sats on Tippin.me and that can range between anything from a few thousand to sometimes like maybe 1 million. I sometimes get quite a few send to me. Whenever it's quite a lot, trying to withdraw those sats, I can never usually do it in one go; I have to do it in two gos over a couple of days, which I put down to liquidity. So, can you explain how liquidity works on the Lightning Network, where we are with liquidity?
Openoms: Okay. So first, we understood about the channels, on a single channel, you cannot send more than its capacity; and also you cannot send more than full capacity on what is there on your side, okay. So, if you have a 1 million sats channel and you have already paid 500,000 sats to your peer or to anyone else, then you can only have 500,000 left there to send and then, this example, the same to receive as well.
The way around this, that you have multiple channels set up, and now with the recent developments in the Lightning Network protocol, you have multipath payments. So, when you are sending one payment, it can still go through multiple channels at the same time, and it does look for liquidity in multiple channels during one payment. This sometimes takes some time so there is a trade-off in that, but the liquidity problem is helped a lot with that; that you now are trying to withdraw 1 million sats and you don't need to find one channel which has this much liquidity, but you can have two with 500,000 as well.
Rootzoll: Yeah. It's even that when we have to think about, if you send 1 million sats through the network and you have a bigger route, every channel on this route needs to have this capacity. So, it's maybe hard to find such a route for every big volume, depends on your connection to the network.
So, maybe in the past, you were choosing a smaller amount, so you were choosing multiple routes to get to your final amount, but this is now built into the Lightning Network, so the payment can now really split into multiple signal payments and find different routes to combine liquidities. So, you don't know exactly when you did your experiment and if the clients were able to do this multipath thing, but basically this is what, in the protocol, got updated and should be possible now. So, it should get easier now, of course, also to do bigger payments because it can combine multiple routes to your final liquidity.
Peter McCormack: Do you think we'll get to the point where people will be sending whole Bitcoins on the Lightning Network?
Rootzoll: It depends where. I think this is already happening.
Peter McCormack: Really?!
Rootzoll: Yeah. I think there is because it is using people like exchanges and now also have the Lightning capacities there, and we also removed the limits on the channels, so there is now this Wumbo update out there. So, in the beginning, it was just for security that channels were limited in capacity so that people don't get too crazy, but this was lifted now.
Don't forget, if you have two business partners, that one should very quickly settle on little updates, they might have really big channels and maybe sometimes even send one Bitcoin around, you never know. So, I cannot guarantee that it's happening, but I would say it's not unreasonable that it's already happening out there.
Peter McCormack: Do you know when people were saying about the Lightning Network, "Be reckless, test it out, but be aware it's still a bit risky"? I, on the base chain, never worry about a single transaction anymore. Every single transaction I've ever sent has gone to the address I sent it to; I have zero worry, literal zero worry. I think Bitcoin, it's not a project, it's not a beta, Bitcoin is now a live running system and I have 100% confidence in it. A little less so with Lightning, okay, just occasional things happen, etc. Where do you feel we are at with Lightning at the moment; are we still very early?
Rootzoll: It depends on your perspective.
Openoms: Yes, depends on the end point, right, yes.
Peter McCormack: Yeah, true.
Rootzoll: So, to onboard everybody, so to say, if we want to onboard everybody in this world tomorrow on Lightning, we are not there yet. But to run smaller communities, or some businesses already on the Lightning Network, we already see this as working. So, especially for smaller payments, it's already great. The critics were saying, "Oh, it's not working for $10", $10 are not the problem anymore. So, maybe, if you really want to pay your car on Lightning, maybe you still have problems.
So, smaller coffee payments, all those little payments, micro payments, I think we're already quite good; but for the bigger things, we maybe have to wait a little bit and then, of course, the onboarding process to make it cheaper for people to get in a non-custodial way onto the Lightning Network. Those are still the things we are working on. But the good thing is, as a secondary member on the Room77 when people were paying with Bitcoin on chain for beer, there was still a lot of things happening, like the transaction didn't confirm for hours because the fee was too low and stuff, so there was still stuff going on. With Lightning, at least, you know in a matter of seconds if it went through or not.
So, with Bitcoin, there would be this hour wait, three hours at the bar and check if my thing goes through. So, at least with Lightning, you know within a limit of time if it worked or not, because it's a final settlement system.
Peter McCormack: It's pretty fucking cool though, isn't it? Let's be honest.
Rootzoll: Yeah, and still working on this very decentralised base chain, so we really have now both benefits and this is really awesome.
Peter McCormack: Dude, it was so cool. Last time I went to El Salvador, I didn't even have any dollars on me. I went to the ATM at one point to get some, but I got to El Zonte knowing I didn't even need it; almost every single place in El Zonte accepts Bitcoin and accepts Lightning. So, there wasn't anywhere I was like, "Shit, I need some dollars so I can get a cup of coffee". I could go out to dinner, I could get my pupusas, I could get a cup of coffee, because everywhere accepted it. If you try and extrapolate that globally, you start to imagine these communities popping up all around the world, as somebody who travels a lot, that's fricking awesome.
Rootzoll: Yeah. It's really one currency we maybe see now in the whole world. So, if you have done Bitcoin and some sats on your phone, it's like a backup or additional to the credit card but, in the end, we want to go there and replace the credit card network with Lightning; that's our goal.
Peter McCormack: Yeah. Well, lower fees are an important part of this. Okay, just to start closing out, what would you like to see from the community to help support Lightning? Do we need to be encouraging exchanges to have Lightning support; what do we need to be doing? What are things that, when you guys are sat down the pub and you're talking about Lightning, and you're saying, "Shit, man, really need Coinbase, Gemini, Kraken, etc, to have Lightning support, what kind of things are you wanting to happen?
Openoms: So, what I'd really like to see to have more merchants accepting Lightning, because that is the most satisfying thing to be able to pay, and that has the best privacy as well to send a payment. So, for example, let's say my VPN has expired and I want to quickly pay it, I obviously would like to use Bitcoin, but then if I'm stuck on chain, then I need to look at the mempool related costs; this $10 update top-up cost me $5 or more. But, if I see that that is a BTCPay server running and I can access Lightning as well, I just take two seconds and it's all done and they will not even know who paid them, but it is on there now.
The same with any kind of purchase where you would prefer privacy, and I think every purchase should have that, right, because that should be the optional thing to tell everyone your name and address with all the card payments you make.
Rootzoll: Yeah. From my side also, with my VPN provider, Mullvad, if you're listening, it's time to accept Lightning payments directly, I still have to use some servers in between; it's working, but it would be nice to do directly. But, on a more practical thing, I think what the community needs to do is just keep on building the way you build already, because this is exactly what we need, what we saw on the Lightning Hack Days, and doing these all projects and events; the community is building and trying a lot of stuff out and the best thing is if they really keep it open, the network.
So, for example, open source is very important that we don't forgot that those basic tools that we need for the infrastructure, we need to keep it open so that there's nobody that can close it up afterwards. It's the same for the custodial services. Custodial service is, for smaller communities, not the problem, but the big custodials are a problem. So, build tools, for example, in places like El Salvador, to make community custodial service easy so that everybody can have a community bank back in their village or something and be connected to that Lightning Network and connect everybody in that village to that Lightning Network.
All those things, I think, are very, very important, but I have very much trust in the community because a lot of people were very excited, building a lot of stuff out there. Just to keep to that spirit going, don't keep it to the corporations to build this infrastructure; we, as a community, also need to build this and then maybe professionalise with those corporations or something. But we need to keep this open and keep it going from the community side.
Peter McCormack: Well, listen, I love it and, for a long time, I dismissed the Lightning Network. I used to think, "I have no use for this; where am I going to use this? The base chain serves me fine; I only ever use it for invoicing or sending large amounts of value. Yeah, well done on the Lightning Network but I've really no use for it". Then, going and spending some time over in El Salvador, I really came to appreciate how good it is, how important it is and, actually, what's been done now is the work for when – it's almost like the groundwork's still being done now for when this is really needed, maybe two, three, five, ten years' time, where we have got multiple communities around the world which are entirely Bitcoin-based.
The seed is there in El Salvador now which, by the way, I still can't quite fucking believe is happening, but the seed is there; a whole fucking nation will be accepting Bitcoin and using it! You can very quickly see how the Bitcoin comes into that country and then this bleeds over into neighbouring countries, etc, and all the great work that's been done by people over at Lightning Labs, people like yourselves, has made this possible. So, I think it's amazing; I think you guys are amazing. Thank for the work you've done. Is there anything I haven't asked you that you wish I had?
Rootzoll: I don't know, maybe just to say thank you also to the people that went before us because we're just building on shoulders of giants here. So, in the end, we, from the RaspiBlitz project, we'll be just packaging a lot of the projects that other people do, and we just put it together into a nice package so that you can easily run it.
Maybe what is to mention is that you should continue your journey to self-sovereignty and, Peter, this also goes to you running the Umbrel; you're running the Umbrel, that's great, but you're still depending on a company there that's not completely full open source. But we at RaspiBlitz are trying to work now also on a web UI to make it easier for people to install, so we invite you once we have this web UI out, with the 1.8 or something, to do the migration maybe from your Umbrel to RaspiBlitz. This could be a nice challenge; let us know if you're interested and I'll be very happy to help you on that.
Peter McCormack: You can do the McCormack test. I call it the "moron test"; if I can do it, it passes the moron test! Listen, I'll do it; I'll have a play with it. I know open source is more important. I'll have a play and give it a go. But listen, tell people how they can find out more about you, what you do, how they can get in touch, etc.
Rootzoll: Yeah. From my side of our RaspiBlitz project, there is a quick link to www.raspiblitz.org and there you find the link to the GitHub or just search on the GitHub for RaspiBlitz. If you want to support the development and buy a hardware set, check out the Fulmo shop; this is www.shop.fulmo.org. Of course, if you want to keep in touch from my personal kind of things, I'm on Twitter; on Twitter, I'm @rootzoll, so follow me there if you want to hear more.
Peter McCormack: And you, Noms, my brother?
Openoms: Yes, well, thank you for this chat; I did really enjoy it. I do think it's very important as well, and, the Lightning Network, I like that it's getting fashionable now because it is --
Peter McCormack: Cool?
Openoms: Yeah, exactly. It's the base of the future of this currency working as a medium of exchange really. So, my presence, well I'm all over the different social medias where bitcoiners are, like Twitter, @openoms. I have an account on www.bitcoinhackers.com, at Mastodon, which is again @openoms. You can find my GitHub, @openoms as well, where most of the things I've working on are published.
Also, I have an info page about Lightning node management, which helps you to find the basics and get started with routing, and so there are a lot of technical questions which arise in the meantime and I just got a domain for it which replaces the longer language; it's www.lightningnode.info. So, if you just go there, you can see that and learn more, and it links to the GitHub so you can contribute and also Bitcoin communities are open all around.
Rootzoll: Yeah, definitely check out also the channels, the Telegram channels, the support channels there; nice groups of people helping each other of running a node, so it really makes fun if you do it with people together. This is definitely something to not miss out on.
Peter McCormack: Well listen, thanks again for coming on. I will share that all in the show notes. I will have a play with your web UI when it's ready and, listen, anything I can every do for you guys, reach out. If you've got some release you want people to know about, ping me, let's get it out there, let's get people to know more about what you guys are doing. I wish you best of the luck. Stay in touch and peace out, brothers.
Rootzoll: All right. Thank you very much. Bye bye.
Openoms: Thank you.