Non-Custodial Mobile Wallets on the Lightning Network

The creator of Blixt Wallet discusses the various wallet options for lightning and the future of the lightning ecosystem
The creator of Blixt Wallet discusses the various wallet options for lightning and the future of the lightning ecosystem

Watch This Episode on YouTube

Watch/Listen To This Episode:

In this episode of Bitcoin Spaces Live hosted by Bitcoin Magazine, P (@phjlljp) is joined by Hampus Sjöberg (@hampus_s), a Bitcoin developer who is building Blixt Wallet, a non-custodial open-source Lightning Wallet. They discuss lightning wallets in general and what makes Blixt stand out, LNURL and the various protocols that make it up, the latest developments on lightning that Hampus is most excited about, and much more. 

[00:00:07] P: Today we're going to be going through, as I said, lightning wallets, specifically Blixt wallet, which I have just discovered myself recently and is incredible. It's already one of my favorite lightning wallets. We'll be speaking with Hampus, who is the creator/active developer on the project and diving in going through his background, his thinking behind Blixtand lightning wallets in general, and then walking through the future of the Lightning ecosystem as it relates to wallets, mobile wallets, more specifically. So let's dive in.

Hampus, how's it going?

[00:00:42] HS: Going good. Thank you for having me.

[00:00:43] P: You actually can run books, wallet on iOS and also on Android. And so I'm going to post it. I'm going to add it to the tweet thread for the Twitter sends out earlier. Check it out. One thing that I love about this this page is it has some interactive like simulation of what it's like to use the actual wallet. I haven't seen that before.

[00:01:02] HS: Oh, yeah. Yeah, that's a really funny one. This, if it goes to the Blixt wallet, that’s blixtwallets.com, there is like a demo on interactive app like in the actual page. And that is actually the original source code of the app. It's just compiled. It's just built for the web. So what you're seeing on the screen is actually Blixt wallets. It's just that it's running inside the browser. Now, of course, it's not running a full-fledged lightning wallets, but it's just for demo purposes so we can try it out without actually downloading the one at first. So it's funny. It's a little thing that I might –

[00:01:40] P: That's amazing.

[00:01:40] HS: I don’t know anyone else to do. It's something unique thing that Blixt has that you can just try it out immediately. You don't need to install the app. You can try it beforehand, which is pretty cool.

[00:01:51] P: Yeah, that's absolutely incredible. So just to repeat back, you actually have the source code compiled and running in the browser. So it's not a simulation. It is actually the source code for Blixt wallets.

[00:02:01] HS: It's the exact same cold that the actual wallets is running.

[00:02:04] P: That is so cool.

[00:02:05] HS: I was amazed myself when I actually got it to work. Cause it's just ongoing. I didn't expect it to work, but it did. So here we are.

[00:02:14] P: All right. Now everybody has to check this out. It's too fucking cool. So as I said, I do want to hear your background and how you got interested in Blixt and how that came about, but I also want to just give a little bit more context for the audience.

There's a lot of different taking one step further back. The Lightning Network is a technology that is built on top of the Bitcoin on-chain or layer one system, and it is built on top of this sound money Bitcoin layer one, and then basically it allows you to open, essentially, multiple, let's say two of two multisig contracts with a bunch of other stuff mixed in and then you have this large network of what are called routing nodes and you can send payments throughout the network. And you don't have to know anything about routing nodes or how to run them if you don't want to. You can download an app like Blixt Wallet, or Breez Wallet, or any other number of wallets, and they abstract away the complexity. And then the end result is you can send a Bitcoin essentially instantaneously and for very low fee. So the whole idea of, “Oh, you can't buy a coffee with Bitcoin.” Total bullshit. This used to be a more contentious point, but obviously an entire country is using the Lightning Network to be able to take final settlement of Bitcoin, essentially instantaneously. McDonald's is using the Lightning Network. Every major chain. Starbucks is using the Lightning Network in El Salvador. Every major chain is using it both small and large. It's pretty incredible.

So when you have these mobile wallets, they all function differently, right? You can have custodial wallets, non-custodial wallets. That it's to say where you are in full custody of your funds. And there're only a few non-custodial lightning wallets out there. And Blixt stands apart even from those because it implements features before most other wallets. And I think there are still things that other wallets have not caught up with. And the other thing that's amazing to me about Blixt that it – Previously I thought of Breez as the most effective, non-custodial lightning wallet solution that would give you insight into exactly what was happening, but Blixt actually takes it a step further. And the interface allows you to interact with this lightning wallet very simply and straightforwardly, but it also gives you insight into exactly what's happening behind the scenes. And even more than Breez, gives you full control over interacting with your channels in a very intuitive way. So it's quite remarkable.

[00:04:30] HS: Yeah, I'm not trying to hide things. Like in the normal operation of Blixt, you can just, get up and running fairly quickly and easily, but I'm not trying to hide the things for the user. Like it's all there if you want to get into the nitty-gritty. So I'm not hiding stuff. But it's still not targeted towards advanced users. It's still targeted towards new business stuff. It's just that when you want to, or if you want to, you can dive deeper, which is not a necessity.

[00:04:59] P: I love it. I love it. So let's go through sort of what is your Bitcoin story? How did you get involved with Bitcoin? How did you get involved with the Lightning Network and how did you get involved with Blixt?

[00:05:10] HS: Sure. Yeah. So I think I heard about Bitcoin fairly early, everyone has heard of Bitcoin early, but I never got into Bitcoin until late 2014, like just before the big Mt. Gox crash basically. And then I just started buying Bitcoin because I thought it was cool technology that you can have a digital token that you can't duplicate. I thought that was amazing.

I'm not coming from the libertarian viewpoints, although I'm aligned with that view point of view. And I've learned through the year what sound money is through Reddit and Twitter and so on. So I'm mostly coming from a techno technological background. Yeah, I started buying Bitcoin and [inaudible 00:05:51]. I mean, it took a while until I actually understood what blockchain is [inaudible 00:05:55] concepts, but eventually I got a good grip grasp of it.

Yeah. Started learning more and got involved pretty much in the SegWit [inaudible 00:06:05] and started supporting the USF movement. And then when Lightning kicked off, I was really into Lightning, of course. I love the concept of having cheap and fast payments. And then one day in 2019, I just said to myself that I wants to make my own wallet, because that's something I have had in mind for years to make Bitcoin wallets. And the reason being I wanted to make the user friendly and easy it's useful it's available. So I just started one day in April. I think started working on the wallets, like Blixt. So here we are basically. We come a long way. Yeah.

[00:06:42] P: I love it. I love it. What made you pursue the specific the specific approach that you've taken with Blixt. Did that just occur naturally or [inaudible 00:06:49].

[00:06:48] HS: Occurred naturally. In some way naturally [inaudible 00:06:51]. I don't like when wallets and applications in general hide too much. But the philosophy of Blixt is not to be in a way, but you should be able to do stuff you want to. So that's like the philosophy I’m trying to make, to follow.

And I think I managed fairly good with Blixt. I’d probably out some kind of power user mode and then have a normal mode so you don't have all the different stuff there. But as it stands right now, that's how I will Blixt. I think even power user have also used it. They want to have convenient features such an LSP Node. Like a node that connects you to network automatically and stuff. [inaudible 00:07:32] these things. But then if you want to, you can get into nitty-gritty and just open channels yourself, like manually indexed. So it's like having the cake and eat it too, if that makes sense [inaudible 00:07:44].

[00:07:44] P: No, it totally does. And I think you have succeeded at that wildly in a way that I haven't seen before. As I said, again, for the audience, the Lightning Network works, basically you have nodes are set up, right? And you have Bitcoin Core, which is the software that enforces the rules that are agreed upon in the Bitcoin network. And it's very decentralized, censorship resistant. It's why a country like China “banning Bitcoin” for the ninth time doesn't have any particular effect because it is a distributed network all over the world. And you have Bitcoin core. And then separately you have a an implementation of a Lightning protocol. And there're multiple different implementations. There's Éclair, C-lightning, LND are the most popular ones right now, but they all sit on top of Bitcoin Core and they add this additional functionality, the ability to open channels with other lightening nodes. And then you can send payments directly to those lightning nodes.

But much more significantly, the way the network is set up, you don't actually have to have a direct connection to another node in order to send or receive payments from it. Instead, as I was saying earlier, it's like a spider web and you can – If I want to send a payment to someone that's 10 hops away, my node will calculate the most cost-effective route and then will send that payment bouncing through the network until it hits its final destination.

And there're three different types of nodes, essentially. Or not even nodes. There're three different types of users, very broadly speaking, right? There's somebody who just wants to use the Lightning Network because it is very fast and because it has very low fees. And that's somebody, you can just download a mobile wallet and be interacting with it immediately.

There're merchants who are rendering services and then collecting fees. And then there are routing nodes, which are basically like people who are like, “I want to run the nuts and bolts, the guts of this technology. And there're a lot of us who are interested in doing that, because it's fun, it's super interesting. It's like a real-time strategy game where you're adjusting your fees in order to incentivize specific routes to be taken or not taken, managing your channels and all that kind of thing. And but you don't have to do that in order to interact with Lightning Network, as I was saying earlier.

And basically, Blixt lets you interact with that complexity if you want to, and you can see it very compelling way. Or you can abstract all that away and just have it automatically taken care of for you. That's what Hampus was referencing.

[00:09:58] HS: Yeah, exactly. You can go in easy and then you can get into the heavy stuff later on if you want to, let's say.

[00:10:04] P: Yup. Yup, absolutely. I'm also curious, my perception is that you've focused a lot of energy on implementing newer functionality and features ahead of other wallets. And I wanted to talk about that. Where does that come from? What's your impetus for that?

[00:10:18] HS: Yeah. I've been pretty heavily involved in the LNURL specification and stuff. Yeah. And what LNURL is, for those who don’t know, it's like a protocol or a separate protocol to enhance the experience of using Bitcoin. So let's say that you want to withdraw money from an exchange. Then you have an LNURL protocol that helps you withdraw from that exchange. And how you do that is just that you scan a QR code just like you would for paying someone. It's connecting you to do different stuff with the Lightning Bitcoin.

So I’ve been pretty involved in the specification writing process there. Why I’m so involved is because I’m very enthusiastic of improving user experience. And one of the ways to do that is to be involved in the specification of things like improving and creating new specs or stuff. Maybe I’m not there number one number two in the most feature-flag lightning wallets regarding LNURL. It's probably me or Anton, the creator of the protocol itself in his wallets. That's why I’m so involved, because it's such a great way to enhance and provide good user experience.

[00:11:25] P: What is the name of the Anton's wallet?

[00:11:27] HS: His new wallet is called Simple Bitcoin Wallets. It's usually called Bitcoin and Lightning. That's what his [inaudible 00:11:34] new version of it. So that's something you can definitely should check out. It’s called the Simple Bitcoin Wallets.

[00:11:41] P: Okay. What are the differences between that and Blixt?

[00:11:43] HS: He's pursuing some others like host, the channel concepts, which is like a sim custodial solution and stuff. And also his only android it's only – Well I am for both iOS and android moments and probably more platforms in the future. So there are some differences there. It's a good wallet. I use it sometimes as well when I’m not using Blixt. Yeah.

[00:12:06] P: I’m going to download it right now. Interesting. Interesting. I’m extremely excited about LNURL. I’ve only recently started really playing around with it. But again, for the audience, right now, in the both 11 spec, which is what I would say all if not most lightning wallets use, you have to generate an invoice in order to receive a payment. So if I want to get paid by Hampus, I have to open up my wallet and say this person's going to pay me 20,000 sats and then I have to send an alpha numeric character or the code to Hampus. Or I have to basically show him a QR code and then he scans it and then he can send me sats.

Now there's kind of ways around that. There's like key sending and stuff like that, but it's kind of beside the point. But with LNURL, it adds a bunch of really interesting additional functionality. And Hampus, can you give us at a high level what that additional functionality?

[00:12:56] HS: It's really four different protocols in LNURL. But we can start with the one you touched on. Like you have one called LNURL Pay, which is it's a protocol that's in the end the results in a vault 11 code. If I send you an LNURL pay code, that can be reduced as many times as possible, because it will just keep generating new vault 11 invoices for you. That's a way to get around this limitation of lightning invoices only being usable one time. But with LNURL pay, it also adds some other neat things that this I enjoy like you can provide the image of the actual product that you're buying that you provide a good user experience to see what you're buying. You can also have authentication seeing which site you're actually interacting with. If you buy on shop.com, you will see that in links that okay this payment is going to shop.com. So you know that you have a secured connection to the actual fire. And that's important for when you're doing transactions to known parties. like in this case I just want to buy some shoes somewhere, for example, then you can use like this trusted porter.

But it also lays the foundation for something called the lightning address, which has been really popular in the recent months. To explain what lightning address is that it's the same format as an email address. But instead of sending email to the recipients, you're actually sending money through lightning. So I have a lightning address called the hampusappblixtwallets.com. So if you type that one in into Blixt, it will send me some sats via that address basically. And that builds the top of the whole LNURL protocol, if that makes sense.

[00:14:38] P: Yeah. Can you add a little bit more detail there? How does that actually work and how robust would you consider that?

[00:14:44] HS: I think it's very robust in the sense that LNURL pay is robust, because what happens is that when a wallet sees lightning address, what it does is just convert that to a URL then it makes a request to that URL. And what you get back there is the LNURL pay response, like the normal flow so say. So that's how it works.

Now I have some of my own problems with that because I don't want this to be locked into LNURL pay per se, because lightning could also use offers potentially or even keysend. So it doesn't need to be locked into that LNURL pay, if that makes sense.

[00:15:20] P: So can you give an explanation of what difference between keysend and offers?

[00:15:25] HS: Oh, getting into the deep stuff. Yeah, sure. Kesend works is that the kind of depends on we need to explain how invoices work then as well, because if you do a normal lightning invoice the receiver is generating a secret that it holds for itself and then it makes a hash of that and truth that's in the invoice. And then it sends the invoice to the payer. Basically what happens is the payer builds a path to this receiver. And that happens when that's done the receiver is revealing his secrets and that's how the normal lightning flow payment goes basically. Just briefly on that it's a really difficult concept.

But then what happens with the keysend then is that the sender is actually generating the secret itself and then it just encrypts that data and sends that over to – It makes a path to the receiver and then it trips a message to the receiver which is the actual secrets. Upon seeing the secrets, the receiver will just continue the normal lightning payment flow basically. So instead of the receiver clicking secrets, the payer – I’m not really the person that it's a little explained here get the grasp of at least.

What’s cool about offers then is that it kind of makes lightning to a more generic on your network. It makes it like tor. In tor you're using online routing to talk to different servers and what notes and services. And what offer is doing is that it's using the lightning network as I or generic tor network. So what happens is that the sender wants to pay the receiver so it just sends a message through the live network the receiver and asks for an invoice. Then the receiver will send back the invoice through lightning network to the payer. You never leave the like [inaudible 00:17:17].

[00:17:19] P: Oh wow! I actually didn't realize that distinction. That is really cool.

[00:17:22] HS: Yes. It's kind of cool. You tell me that you stay in lightning all the time because right now you have to give the invoice in another media. You need to either crypt out or send it to an email or something. [inaudible 00:17:34]. In some way the actual invoice needs to get to the sender. Yeah, it keeps everything inside lightning which has its benefits.

There's one thing I want to say about that though that it would better if you would pay for the actual online routing message. Like this would be for free. It's like tor, but right now in lightning everything is every routing node is getting paid for each payments. But with offers that ceases to be the case. So that's like my complaint about the current proposal. Because I would like it to be paid just like every payment is paid if that makes sense. So that's a critique I have regarding the current offer proposal. And I know this is not like something new or something unheard of or unknown. But I guess we'll eventually get there.

[00:18:19] P: And Offers is part of bolt 12, correct?

[00:18:22] HS: Yeah, exactly. It's synonymous. Bolt 12 is more boring name like offers is fun –

[00:18:27] P: Oh, literally, the term offers encompasses all of Bolt 12.

[00:18:31] HS: Yeah, I think that's the case. Yes. That's my understanding of it, yeah.

[00:18:34] P: Interesting. Are there any aspects of LNURL that Blixt does not currently support?

[00:18:40] HS: Basically what everything in LNURL. There are some things that is difficult to do with as a non-custodial wallet that lies on server. There is like a ping protocol where let's say you have funds on exchange. Like you can withdraw those funds via LNURL withdrawal. But there is also an extension to LNURL withdrawal that lets the exchange ping a server when there is funds available. So let's say that I send you some sats on a service. That service can then ping back to your wallets basically. That's the kind of the point at least. And those things, it's not so easy to implement as a non-custodial wallet for that. I have some ideas to do that. Yeah, if that makes sense.

There are some new stuff regarding the lightning address that I want to develop as well, because right now you can send two lightning addresses but there is no way to receive Blixt. So that's something I’m also working on fixing so you can have your own the lightning address goes to your Blixt basically.

[00:19:46] P: Wait. I’m sorry. Can you repeat the last sentence again? You said right now you can do X but you can't do Y?

[00:19:51] HS: Yeah, you can send wallet you can send to a lightning address but you cannot receive it through a lightning address index. Like you don't have a key at blixtwallet.com, right? You can only like send payments not receive. That's something I’m currently working on addressing as well because that's what they really need. Because right now most of the that has received support – Or actually all of this, all of the services that have received support they are custodial wallets. So it's like an uphill battle here for non-custodial wallets to be able to do this.

[00:20:24] P: Got it.

[BREAK]

[00:20:30] P: Alright, Bitcoiners. I want to tell you about our newest sponsor. This show is brought to you by ledn.io. I have been super, super impressed with the guys over at Ledn. I've actually known the cofounders, Adam and Mauricio for a very long time. I've had the pleasure to watch them build Ledn up from a tiny, tiny startup, to now a super impressive institutional-grade Bitcoin and crypto lender. Y'all, I'm so impressed with these guys. They are offering some of the best rates out there. I don't think anyone even comes close to touChing them. You can get 6.1% APY on your first two Bitcoin that you deposit into Ledn interest accounts, and you can get 8.5% on USDC deposits. I mean, I know other competitors, they're not even close. If you're going to put your crypto and your Bitcoin into an interest account, Ledn is by far the best. And on top of that, like I said, these guys are hardcore Bitcoiners and they know the products and the services that Bitcoiners want and appreciate. They came up with the b2x. It allows you to put your Bitcoin in and leverage it up. And you can, with one click of the mouse, get twice the exposure to Bitcoin. So if you're super bullish, Ledn has you covered with a super, super easy way to get leveraged with b2x.

And then on top of that, they know that Bitcoiners care about your reserves. They know that Bitcoiners don't like under reserved and not full reserved financial institutions. So they are pushing the frontier in transparency in the digital asset lending space. And they are the first digital asset lender to do a full proof of reserves and proof of attestation through Mariano LLC, a public accounting firm. So the Ledn guys, they know what Bitcoiners like. They are legit. I encourage you guys to check them out. Do your own research and go to ledn.io. That is ledn.io, and learn more.

[INTERVIEW]

[00:22:25] P: Benjamin, you requested to speak. I pulled you up. Did you have a specific question?

[00:22:29] Benjamin: Yes. I have a question for Hampus. Yeah, I’m a fellow developer, but mostly focusing on traditional iOS app development. And my question to you is, Hampus, what advice do you have for someone who wants to get into a lightning development and what resources have been useful to you besides mastering the lightning network? Do you have any advice for someone wanting to get into the space and start building stuff?

[00:22:53] HS: That's a good question. I will say that it's very important to get familiar with the implementation that you're going to use. Let's say you see lightning or LND. It helps a lot to actually get understand how it works in and out if you're going to use one it's usually when you do laughing stuff you you're going to use one of the popular implementations instead of doing it yourself, you can do that as well, but it will take too much time. So get familiar with how a lightning implementation works and how you use their API and stuff. Because when I started using lightning I went with DC lightning implementation and I learned like how I interact with it to be able to do services and stuff.

The other thing I would say is that there are some very good resources available for developers at least in the LND sort of space. There is like a Slack group that you can join where we have several channels for developers that can ask questions and get feedback and help on regarding different things. So that's also a thing I will recommend doing. Like knowing the different communities out there one of the goodness I mean is the LND Slack group, which is very huge, very popular to get into that. I don't know. It's difficult. It's just read a lot about the fighting stuff. I just went head in basically with lightning. Yeah. And also there is a mailing list as well but it's pretty noisy nowadays I will probably stay out actually. You're in the different quantities available at least.

[00:24:21] Benjamin: Yeah. Thank you, Hampus.

[00:24:22] P: I would definitely recommend just diving in. I think it's the best way. Yeah, write some stuff, lose some sats.

[00:24:28] HS: Yeah. That's what I did. I just installed C-Lightning and just made the –The first time I made some something with lightning I installed C-Lightning I made a simple little page that shows the RQ code for invoice. And then I got some sats from that basically. Taking these small steps or say that's my advice at least and we are reading the mastering lightning. As you said, that's definitely a huge thing, a good thing to do. Like it will help a lot.

[00:24:54] P: Or alternatively, you can do what a lot of us have done in flood net, which is to just ape in and @reckless.

[00:25:01] HS: Yes.

[00:25:02] P: [inaudible 00:25:02]. But also, yeah, break some stuff. That fear when you first make your first on-chain transaction and then the fear when you first set up your lightning note and you open your first channel and then realize you totally fucked it up and it's way too small and then you have to close it out and open a new one and. Then you think I’ll never make that mistake again and then of course you make it hundreds of more times.

[00:25:25] HS: That's part of the journey, man.

[00:25:26] P: Absolutely. No. But all joking aside, this is an incredible time to be experimenting with lightning and running your own node and everything related to it because on-chain fees are so cheap right now.

[00:25:37] HS: Yeah [inaudible 00:25:38] and all others really like helpful.

[00:25:41] Benjamin: And I must say it's so exciting to see how fast the network is growing. Look at the growth, 500 Bitcoins added to the network in just like 17 days. So how much is it? [inaudible 00:25:50] stick.

[00:25:54] P: I’ll take. I’m curious, actually, I have a very specific implementation question for you. So is it possible to use LNURL off to basically – I guess you can by design use it to uniquely identify users. And the only things the user has to have is a lightning node and a Trino node, a full node or in a Trino like Blixt. Can you use – As I’m saying this I’m realizing I’m answering my own question. But I was going to say is it possible to use LNURL auth to uniquely identify users and then basically have generated withdraw QR codes that are tied to a user? And of course you have to build an app around that would offer that functionality. But there's no way to do that natively, right?

[00:26:38] HS: it has so much to me natively. But maybe you should also quickly just touch on what LNURL auth is.

[00:26:44] P: That's a great idea. Go ahead. You'll get a much more cogent explanation than I will.

[00:26:50] HS: So. I’ll take. Yeah, what LNURL is, like it's one of the four sub-protocols of LNURL and what LNURL auth lets you do is that you can use your lightning wallets like a login mechanism. Instead of using a username and password for sites you can use your private keys inside your wallets to authenticate yourself to the site to flipping the whole thing like you're not storing using a password on the service anymore. You're providing the credentials up front to the service so you don't store any sensitive information anymore on server side, which is a huge benefit seeing how we have data leaks all the time with passwords and stuff being leaked. So that's what LNURL auth prevents, because it's just using published cryptography just the same as Bitcoin and lightning does.

So yeah, in practice how it works is that you just scan a QR code just like you scan a QR code to pay, but instead you're logging into the site. Yeah, that's how it works. If I ask questions correctly you want that to tie that into withdrawal code and stuff. But it's dependent on the service to implement this. But I can touch on a similar thing that we actually just recently made the specification of in the LNRUL space and that is extensions for LNURL pay.

So let's say that you want to buy something. You make an order. Then you use LNURL pay to pay for the product. At the same time you can tie that into an LNURL process. You can authenticate yourself at the same time as you're paying. And the advantage of doing that is that you could then later on go back to that site and see your order by just logging in via LNURL auth if that makes sense.

When you pay for something you don't need to register really. You should register while you're actually making the payments. Then use that information later on like a week later you're just logging into the site with your auth, LNURL auth public key and then you have your order there again. So that's like a neat way to get rid of this way of registering on every site. Like you just do that while you're paying for the thing you want. It's not like a neat thing that we recently made for specification in the LNURL space.

[00:29:15] P: Love it. So I’ve used LNbits, for example, right? LNbits has a great little site you can run it on like an umbrella or any other node implementation you want or on your own server. And it has a feature where you can generate an LNURL withdraw QR code where basically things for the audience of course you can do things like all right like scan this QR code. And then as soon as you scan it you get 100 sats. You can give that to people or have it up on your website or anything like that. And one of the things I thought was interesting is that it has an advanced LNURL withdrawal code generator where you can set certain specifications like it will auto generate new QR codes after each scan and then it will also – There's also a delay so that it's only possible across all the instances of the QR codes to withdraw funds every 10 seconds or 25 seconds or whatever you want to set. It at is that something that LNbits is implementing on its own or is that part of the staff?

[00:30:09] HS: Yeah, I think that's the thing that LNbits are doing on their own because like you have the all the possibilities in the world with URL, because you can just program your own not smart contract but it leads to a contract. You can just have these kinds of rules. And yeah, I think this is something that they're doing themselves as far as I know. I think it makes sense the housing of rate limiting as well. But touching on the LNbits withdrawal things is that they have a really cool thing where you can actually store your withdrawal code. You can actually store that inside the Blixt and some other wallets. So why that makes sense is that let's say you have money on an exchange. If they support LNURL withdrawal together with something called balance check you can actually store your accounts from that exchange inside your wallet in, in this case Blixt wallet. And then you can just withdraw. You can see your funds that you have in exchange and you can withdraw at any time inside your wallet. You don't need to leave, yeah, basically.

There's only thing that's for seeing in the future which will be more popular that you are just having a lot of your services inside your wallet. And that's also ties into lightning address. Like I have a contact list Blixt with all my friends that you can just store inside the wallet just like you could with other financial apps like Venmo and Cashup.

[00:31:32] P: Interesting. Currently, that is relatively centralized, correct?

[00:31:36] HS: I guess it decentralized in the way that it depends on the LNURL service. It depends on how you look at it. LNURL itself is not centralized but it depends on where you're actually receiving information. Like you can always set up your own things if you want. Not everyone will of course. It's a protocol I should say.

[00:31:54] P: Yeah, that makes sense. I guess I’m part of the reason that I’m asking is just because of all the incredible stuff that's been happening with Facebook and Instagram and everything else today. I can't help but love it because the Internet was meant to be and was built to be a much more decentralized system than it is today. And so seeing this type of chaos where people are like, “Oh my gosh! How could this happen? How could there be a single point of failure that if it breaks everything gets totally fucked?” Makes me just turn it in and say it's cool.

[00:32:26] HS: Yeah, exactly. So I guess that's in favor of things like offers and stuff. But I think they have both LNURL and offer has their own use cases of it, I think. It depends on what you want to do basically.

[00:32:37] P: So I don't know what the current timeline is. When will we be able to start seeing both 12 offers in wallets and in the wild?

[00:32:45] HS: Yeah, that's a tough question right, because I think that see lightning is it's going fairly well for them like implementing offers rust is the author of respect so it makes sense. What we want to see though is another implementation actually implementing offer because that's like the conventional way that like both lightning specification gets made. Like you need two implementations generally to make something association I think. So let's see. I mean it doesn't look like we have LND does not have an implementation yet at least which is a bummer. I don't think [inaudible 00:33:19] and others have it either. So we'll see how it goes.

I want to play around and test offers for Blixt as well, but it's difficult because like Blixt is based upon LND. It really needs LND to support offers to make it work great. It needs to be in the actual lightning implementation. It's not like a tricky situation there. So we'll see how it goes.

[00:33:43] P: Have you thought about what would it take or why haven't you considered putting C-Lightning instead?

[00:33:49] HS: I decided to go with LND because I had to make a decision when I started Blixt basically because it's heavily integrated. It's heavily integrated into LND right now. And the reason why I picked LND was because C-Lightning did not have support for any like light client or [inaudible 00:34:06]. It needed a full load to run C-Lightning when I first started Blixt. So there was no choice basically. I had to pick LND. So yeah that's why I went that route. And I think in the end it paid off of course. But that's why. C-Lightning recently is supporting clients I think.

[00:34:25] P: Yeah, yeah, absolutely. It makes sense. Have you thought about switching over? Or at this point is it basically maybe just visit your monstrosity to migrate that it's not worth it?

[00:34:33] HS: Yeah. I’ve had some plans to at least support multiple backends. It's difficult but it's probably cool of course, but not today at least because my focus right now is making stuff stable. You don't know what the future unfolds. So we will see what happens there. The thing is that's all my code expects LND stuff. So it's difficult to shoehorn in C-Lightning stuff if that makes sense.

[00:34:57] P: Yeah, yeah, absolutely. Why do you think we don't see more wallets and services supporting LNURL? I think like LNURL withdraw is becoming more and more popular. But I don't know of any services. I’m sure there are some that support off.

[00:35:11] HS: Yeah. It's a bummer. The LNURL support among wallets has been fairly great recently. Back in one year ago or even a half year ago it was pretty abysmal in my opinion. But nowadays we've almost got full support across the board basically at least for the like you have the base protocols then you have like extensions for those. But the support for the base protocols are fairly good nowadays for the wallets. For these services, I do not know actually. It's a bomber. It's like a chicken egg problem. But we got the chicken now basically. We got wallet support. It's just the services that needs to get better here and start supporting LNURL run because it's provides such better user experience to use LNURL especially if you want to let's see what we draw manually from somewhere. It's really a pain to cop the invoice code and paste it in and so on. With LNURL you just scan it instead. Like it's nothing else. You don't need to by lagging behind so much. At least I’m happy that the wallet support is really good at the moment across the board.

[00:36:17] P: Yeah, yeah. It's been pretty exciting to see. Yeah, I’ve just been going through awesome LNURL, which is the fiat drafts. In fact, I’m going to post that right now to the to the room. It's a fantastic set of resources that go through everything. The specific technology behind everything we're talking about and it lists a ton of examples of wallets, websites that support the functionality and features and it also has links to all of the specific specs that we're talking about. Or not specs. What would you call these?

[00:36:41] HS: We called like sub-protocols, yeah.

[00:36:44] P: Sub-protocols. There we go.

[00:36:45] HS: Yeah. I did this awesome LNURL element is a great resource. It lists all the different popular wallets. As you said if you want to try out LNURL, there are a ton of different – There's also different services such that you can just try it on basically. So yeah that's a great resource to have.

[00:37:02] P: Oh man! Sorry. I can’t walk and chew gum at the same time apparently. My phone, I have to do this like arcane ritual in order to successfully be able to host the space without crashing. Snd so I’m trying to go through it right now while I’m talking to you and then also posting this link. But it's pretty difficult.

Shifting away from offers and LNURL, what else are you super excited about in terms of things that are being developed in Bitcoin, the lightning network?

[00:37:27] HS: I’m really excited to see Taproot getting activated. And first you have some behind like I remember back in the spring summer with the exact world site lots of people are excited for Taproot. So it's great to actually see it getting activated fairly soon. I think it's somewhere in November it will get actually the domain. I will see what sound will stop it up. I hope that we will eventually see the improvement to lightning called L2. Yeah, that's a big one, because that helps – I mean, I love L2, but it helps a lot regarding many different things especially if you want to have water towers and stuff in lightning and will provide huge improvements to the lightning network.

[00:38:09] P: Did you just say – Wait. Did you say watchtowers or water towers?

[00:38:12] HS: Oh yes, watchtowers.

[00:38:12] P: Oh man, I got so excited. I thought there was like this new thing that I’d never heard of. Like does it store liquidity somehow and then you can distribute it back out into the network without having to put on your own battery node? Yeah. for I need to stop saying just for the audience I think that's implied, but I go back through one of these recordings and I said that probably 10, 15 maybe 20 times. But a watchtower is you can basically run a watchtower service on a node. Because if you are running a lightning node, the essentially constant uptime, because you have these two of two multisig contracts with other nodes. And if your node goes offline – And essentially what's happening is the lightning channel is over simplification would be to describe it as a bar tab. So every time you send funds over a lightning channel, the balance of the channel shifts to your remote peer. And then when they send you funds or they route funds from their end through you, the balance of the channel shifts back towards you. And then at any time either one of you can do what's called a cooperative close where you basically decide that you're going to close the channel and net out the balances and then you get what you’re owed and they get what they’re owed.

But if you go offline, then, in theory, someone can essentially publish a false state or an out-of-date state and they can basically claim that you owe them more money than you do. And there are very strong incentives to prevent people from doing this. One of those is that there's a long delay that basically when somebody tries to force close because you're offline they have to wait a significant period of time. And during that period of time if you either come back online and then your node will immediately broadcast the actual channel state, which they've also signed so then it becomes really clear that they were trying to cheat you. Or if you have what's called a watchtower setup where basically there is another node that you are updating constantly with your channel state. And what happens is even if you go down and the other person tries to screw you, the watchtower will automatically basically broadcast what's called the justice transaction.

And then when that happens either if you come back online before the timeout elapses or if you have a watchtower set up they will post a justice transaction immediately. And then not only do you get your funds back, but you get all of the funds in the channel back. So if a person tried to screw you over they forfeit all the liquidity that was on their side. So there's a really strong incentive to not cheat anybody on the lightning network for that reason. So you don't even actually have to have a watchtower set up that you should. Just the threat of watchtowers is enough of a disincentive to prevent people from trying to cheat each other. So that's what a watchtower is. But go ahead. Would you add anything to that?

[00:40:50] HS: No. I thought it was good explanation. I just would briefly touch on why with L2 I think it makes water towers more feasible because the watchtower doesn't need to store as much data for its users than in the current way of how lightning works. So that's why I’m excited about L2 regarding the watchtower things at least. It scales better I’ll say if that makes sense.

[00:41:14] P: Can you describe what L2 is? You can say no.

[00:41:18] HS: Yeah. I haven't thought of it in like a categorical way I guess. It depends on cutting out transaction middle basically. You can just shortcuts. But it's really difficult to explain. Sorry. I’m not sure. Maybe someone can request to speak and have a better explanation than I can do but –

[00:41:36] P: Yeah. I’m terrible at describing L2. But what I will do is I will read the Bitcoin Optech summary of what it is. Bitcoin explains L2 is a proposed enforcement layer for lightning that allows any later channel state to replace any earlier channel state. An L2 can be used with a penalty mechanism similar to the one used with existing lightning channels, that's to say a justice transaction. L2 doesn't need the penalty mechanism in order to be secure. Without a penalty mechanism, there's no harm in publishing an old state except that it costs transaction fees to publish. This makes it less dangerous to try to restore a lightning node from a backup after a sudden failure or some other problem. It also makes it much simpler for three or more parties to open a single lightning channel together enabling features such as channel factories.

Another consequence of lightning channels without penalties is that lightning nodes using L2 only need to store the latest state. For certain devices that lack larger amounts of persistent storage, for example, hardware wallets, they may not be able to store enough data to effectively use penalty-based lightning. But as long as they can store a few kilobytes, they should be able to use L2-based lightning.

[00:42:41] HS: Yeah, precisely. And that applies – The last thing that applies to watch towers as well. It only is to store the latest state of things. Doesn't need to store commitments. So that's why it scales better in general with watchtowers.

[BREAK]

[00:43:00] P: Bitcoiners, I am so excited to tell you about the Bitcoin 2022 Conference. You guys, Bitcoin 2021 was absolutely a smash hit success. It was over 13,000 Bitcoiners coming together, breaking the barriers on who can come together and celebrate freedom, celebrate Bitcoin in the energy was absolutely electric. Unfortunately, it was just oversubscribed. There're just people flowing out everywhere. And this year, we are learning. We are making the conference bigger and better. We are moving over to the Miami Beach Convention Center. And we are going to be throwing a massive four-day festival for Bitcoin, celebrating Bitcoin, bringing together the greatest minds in Bitcoin, and the greatest businesses in Bitcoin, and lastly, the culture of Bitcoin altogether.

We have a four-day extravaganza planned for you guys for Bitcoin 2022. Day one is going to be industry day. It is a day where you can buy a special ticket in order to just mingle and make business deals happen. Day two and three is going to be a full-blown Bitcoin conference. This is our main conference is going to be on April 7th and 8th. And then lastly, we have the Sound Music Festival day four. Imagine going to Coachella, but for Bitcoin. There's going to be very few talks. It's going to be all about the culture of Bitcoin. It's going to be all about hanging with your fellow plebs. And it's going to be an absolutely amazing time. There's going to be Bitcoin musicians, Bitcoin artists, and all your favorite Bitcoiners, and just an amazing environment to party and just see it all, soak it all in, and to get people to realize that a Bitcoin world, a world filled with Bitcoin people doing Bitcoin things is the world that they want to live in. That's what Bitcoin 2022 is all about. That is what the Bitcoin Conference is all about. That's what Bitcoin Magazine is all about. So it is going to be a celebration of Bitcoin, the Bitcoiners, and this amazing movement that is going to make the world a better place.

Go to b.tc/conference, learn more about the Bitcoin conference. Learn more about all the amazing things that are happening in Miami around the Bitcoin Conference, and buy your tickets. And guess what? If you buy your tickets with Bitcoin, you save $100 on all the tickets and $1,000 on the whale pass. So if you want the VIP pass, the Big Kahuna, you buy with Bitcoin. You save $1,000. That's a lot of sats. So go and do it right now today. Don't wait. Prices are only going up. This is going to be a can't miss event.

Bitcoiners I want to tell you about The Deep Dive. The Deep Dive is Bitcoin magazine premium market intelligence newsletter. This is a no fluff, hard-hitting incredible newsletter going deep into the market helping you understand what's happening with derivatives, what's happening on-chain, what's happening in macro, what's happening with the narrative, and what's happening with the tech. My man, Dylan LeClair, is an absolute savant. He is making his name known in the Bitcoin community. Getting shout-outs left and right, getting on podcast left and right, and him and his team are bringing you everything that you need to know about Bitcoin. You don't even have to be on Bitcoin Twitter .You can ignore every other newsletter. This is the newsletter to rule them all. Go over to members.bitcoinmagazine.com. Sign up today. And if you use promo code macro, you get a full month for free. You have nothing to lose. What are you waiting for? Sign up? See the incredible work that Dylan and his team are putting out. And if you don't like it, just unsubscribe. You don't pay a dime. But if you do, it's going to be well worth the SaaS in investment in understanding Bitcoin, in gaining the confidence to continue to invest in Bitcoin and making the right moves around Bitcoin. And it's going to be well worth every single Satoshi. Again, can't recommend it enough. That is members.bitcoinmagazine.com, promo code macro. Do it today.

[INTERVIEW CONTINUED]

[00:46:59] P: Yeah, I had a funny experience. And again, when you're using lightning network as of right now, you have to store the entire history. So what ends up happening is your channel BB can get very large very quickly especially if you are a large routing node, your hard drive can become – Or your SSD should be running it can become full way faster than you thought it would because you have to store the entire history of the channel states. And if you make the mistake that I did, which is where you spin up your watchtower service and then you have 10, 20, 30 plebs connecting to your watchtower, it'll happen very quickly. So this will allow a much more economical and efficient way of storing channel state, channel automation.

[00:47:43] HS: Yeah, definitely. It's kind of we're not in a hurry but it will be good to get it really soon here because like it's El Salvador is still rolling ahead with their stuff there and lightning in general is growing rapidly. But we'll see how the future unfolds here. I hope that we'll get L2 sooner than later at least. Wwe'll see, because it starts to be upgrades to the network in general. And it also helps – As you touched on briefly when you read the Bitcoin Optech letter, it's safer for like mobile wallets as well because let's say that you want to restore Blixt on a new phone. What you could do with L2, you could more securely just copy the whole state over to the new phone and be rest assured that your fonts will not get slashed. Because right now with the penalty system, you call the interior get like food yourself and try to run your new phone on all states by mistake. Like it's not intentionally. And that will mess things up for you. In those cases, L2 helps a lot as well for mobile users. So it's not only for watchtowers and routings and so on.

[00:48:47] P: Yeah, absolutely. When you know all of us – And Matt is in the audience, is one of the earliest part of the flood net founding crew as well, but we all learned the hard way. When you’re using a lightning node, you have to constantly be backing up your channel state. So every time your channel state changes you got to back it up. And initially, this is called a static channel backup, and I initially thought that this was all of your channels that if you lost access, your node went down and crashed, you could just restore your fully functioning node to a new installation or implementation. In fact, that's not the case. All a static channel backup does is it allows you to essentially bag all of your [inaudible 00:49:24]. Yeah, you basically are asking them to close it, to force close the channels for you because you can't risk that you have the wrong state and it's going to get totally messed up.

[00:49:33] HS: Yeah, it's game theory thing there I think to the point. Yeah, it’s not like excellent backups. They're great, but they're also not so convenient for mobile users because if you want to change your phone in some wallets you will need to close your shouts, which is not very convenient. So here is where L2 can help a lot in my opinion for user experience, because then you can do the copy of your channel database, but you can be sure that you won't get screwed by doing that basically.

[00:50:05] P: Yeah. And one of the things that's been – To take a breather, and it’s been so exciting in the –To see the lightning more recently and then especially what we were hoping for what we successfully built that with Plebnet is these actual relationships that exist outside of the lightning network when members of the community, when their node went down they literally – Well, when this happens, they will just post in pleb and be like, “Hey, my node's messed up. Please don't force close on me. I’m trying to reboot and everything. Or if my node goes down, I’ll get five or ten messages from people that are like your node is down.” And then in a lot of the times I won't even know about it.

And so when you have these community-based groups that are forming these connections with lightning network when they’re running their notes, it allows for a level of shared learning and a much faster adoption than you'd see otherwise. And I think it's probably the way that – All right, I think it is one way that the lightning network will continue to grow very rapidly, shared learning groups, out of band communications.

[00:51:05] HS: I think the plebmet phenomenon is amazing. Like it's so huge as well. It's great to see. So yeah, I definitely agree with that point.

[00:51:14] P: And I think ideally that wouldn't be the case. Ideally everything would be native so to speak. That’s the way it is.

[00:51:20] HS: Yeah. Yeah.

[00:51:21] P: Matt, thanks for joining us on stage. How you doing?

[00:51:23] Matt: Hey, good. Okay I was wondering, are static external backups still the best option if your node goes down?

[00:51:30] HS: Yeah, I would say so. Yeah, it's the way to go, right? If you preferably wouldn't go down but I guess it is still the effective standard for dealing with these kinds of things. And it's also like static center backups is also I think it's relies with on game theory as well as if you understand quickly. But yeah for realty notes and stuff if you all in wealthy node I think your channel backup. Static channel backups is the way to go. Yeah, I will say so.

[00:51:56] Matt: The only way you can use the other backup is if you actually back up and then immediately shut your node down.

[00:52:05] HS: Yeah, yeah. That's why it's scary with the current system. That's why I’m still torn over implementing it for my own wallet, Blixt, because I don't want my users to be screwed by mistake in some way copying an old states basically. So these things will be much better if we move to L2 standard. But yeah, at the same time, I myself has actually managed to copy over the database file and migrate with just copying the database file. That was for my routing node, that is. But yeah, it's scary. You need to be absolutely sure that it's closed down and not talking to the network at all just completely inactive in that way.

[00:52:48] P: Yeah. I did the same thing recently, and I felt like Samuel Jackson in Jurassic Park when they have to go in and restart the electrical fences or they're all going to die. It was terrifying.

[00:53:00] HS: Yeah, it's scary actually, yeah. So I did that's actually quite recently when I moved the hosting provider, because I didn't want to close down all my channel stuff where it opened. I just copied it over. It was fine as well. You just need to have to sure that it's completely closed or stopped in a new capacity away.

[00:53:18] P: Yeah, that's the trick, right? Making sure you're not going to break everything. But I know that –I’m not sure exactly if some lightning wallets are actually, and mobile wallets, that is, utilizing the copy methods I’d say. Because I think we touched on that last week for recall correctly that Breez might do something like that. But I’ll probably check with them and see what they do. But yeah, I still think it's scary to copy especially if it's for my users. Like I myself can get through. But, yeah, it's scary.

[00:53:51] P: Yeah. I don't know the specifics of Breez, but the only way to do the backups is you have to connect it to Google Drive. Maybe they support Dropbox and other system, but it's basically just constantly updating it.

[00:54:01] HS: Yeah. And then that's not – You’re trying to screw up there. [inaudible 00:54:06] So that’s kind of scary. Yeah.

[00:54:07] P: Should we pull some people up and take some questions?

[00:54:09] HS: Yeah.

[00:54:10] P: Let's do it. If you're in the audience and you have a question, take a moment to focus your mind. And one thing that I notice is that when people come up and ask questions they'll sometimes give like a very long story about that sort of builds up into their question. You can just leave all that out and just ask the question so we can go as rapidly as possible and give you the answer you want. So let's go for it. I’ve got one single request. Bossman Jones, let's do this. Please don't be someone who's just trying to get up on stage and scream their name or talk about banana bread. Don't do either of those things. And he's gone. All right. That did not go as expected. Does anybody else have a question or is everybody like totally intimidated by the highly technical topics we're going through? You shouldn't be. The only way that we all learned was by asking questions that didn't make any sense and articulating them poorly and then having people correct us.

[00:54:59] HS: Oh yeah, just ask simple questions as well. It got fairly technical today. But we can go back to basics as well. No problem with that.

[00:55:07] Matt: What was the reason for the LND update today?

[00:55:11] P: You're cutting out. But I think we got to just your question. I’m actually not sure.

[00:55:14] HS: You talked about the vulnerability, yeah, got posted today. I read it briefly. It seems like it's mostly affecting like routing nodes and stuff, because I immediately updated my like the Blixt SLP node. So that's up to the latest. And I’ve also already published new versions to play story on the app store. It seems like some kind of dust attack. There have been recent effects similar to this as well before I think. It's just like you're building up on top of the, yeah, dust limit I think it's called. But yeah, it seems like situational. I’m not sure exactly how feasible the attack is. But I will say that it is at least critical and everyone should update. That's my understanding of reading the actual report. But I don't think we will see any attacks in a while. Let's hope not at least.

[00:56:02] P: Interesting.

[00:56:03] HS: It also affects like – I’m not sure if it was all, but it seems all different implementations at least the popular ones. There is like a protocol level vulnerability, which is scary actually.

[00:56:14] P: What is the like worst case scenario for this vulnerability?

[00:56:18] HS: I think if I understand it correctly, something like you will commit. I might be could be wrong here. So don’t take my word please. I think you screw yourself by quitting too much transaction fee when closing this channel or something like that. I might be wrong here. So if someone can just request to speak and maybe have a better explanation. But for my reading is that you will commit too much fee basically just screw in your whole channel the function having it. But yeah, it sounds like that at least.

[00:56:45] P: All right. Asked and answered. I agree with everything Hampus said. That's all we got. No more questions. No more raised hands. I feel like we have not only gone through Blixt wallet, Bolt 11, Bolt 12.

[00:56:59] P: Also heavy topic. Yeah.

[00:57:01] HS: But also I feel like we've ended world hunger. I’m the conclusion I’m choosing to draw given the fact that there are no more hands raised right now. And on that note, I think I’m going to close out the room. Is there anything else, Hampus, that you want to let people know about that you want to make us all aware of before we –

[00:57:18] HS: I don't know Yeah, check out Blixt wallet if you would like. I’m fairly active on Telegram if you need help and just straight out, or any other products in that case as well. The time to try out lightning is now because the fees are low, the adoption is rapidly growing, growing right now. So it's a really good time to get started and try it out at least. As I said especially, since the fees are so low now. So it's a good time to get bootstrapped into the new monetary system.

[00:57:46] P: I could not agree more.

[00:57:48] Matt: Can y’all hear me?

[00:57:49] P: We can.

[00:57:49] HS: Yes.

[00:57:50] Matt: Okay. Sorry for my being on a run and in a storm. But –

[00:57:55] P: Wait. We can’t hear you anymore. We can’t hear you. I can hear you now. Try it one more time.

[00:58:01] Matt: Okay. If you’re wondering about the lightning network, you can learn more at Plebnet. I will say do you want to run your own. But thank y'all for the room if you all can hear me. Sorry.

[00:58:12] P: Yeah. And if you want to join Plebnet, the URL is plebnet.org. And that will send you to the telegram group. There's an amazing wiki that thousands of people have contributed to, Mads and I and about 15 other people got together several months back, these money is four or five and I decided we wanted to build Plebnet. And it's been an incredible journey and the people that are there and there now are doing the lord's work, salt of the earth.

[00:58:36] HS: And if you want to try out Blixt, you can go to the website, which is blixtdwallet.com, which is blixtwallet.com. And you can just try the interactive like demo wallets that is on that site. It's very fun to just try it out. Then if you like the wallet you can just download it for Android and iOS.

[00:58:56] P: Yep. I would highly encourage everyone to do so. Because, again, as I was saying at the top, the thing that really struck me about Blixt is that it does a phenomenal job of showing you detailed, highly technical information about the lightning network, but also displaying it in such a way that you do not have to be tracking on everything that's going on in order to effectively use the wallet.

[00:59:15] HS: Thank you for having me. This was our time. I guess we touched on a lot of big topics. But yeah, it's also a great time to develop into stuff.

[00:59:24] P: All right you have to come back soon.

[00:59:24] HS: Definitely.

[00:59:26] P: All right. On that note, I’m going to close this out.