juraj Welcome to this collaboration between Option Plus and Bitpunk.fm Unwound. I'm here with Josh. Well, here, I mean, on the internet, of course. We are separated by a very long transatlantic cable. I can't pronounce it. So welcome, everyone. Hi, Josh. hello.
josh Let's uh let's get this kicked off there we go.
juraj Okay i'm tuned in that's right hope hope i won't drop out that's right right perfect yeah great to be.
josh Here like it's great to uh been looking forward to talking to you.
juraj Yes me too uh we should uh do uh you know how people are making fun that's now now bitcoiners interview each other how uh how right there were about 100k bitcoin so we should do that at some point or maybe not but it.
josh Hasn't hit 100k bitcoin so.
juraj Yes yeah they're not right yes and inflation is pushing the target farther and farther away 100k when Bitcoin started anyway we have a much more pressing matter here because the Albycalypse is coming.
josh Yeah this has been what I think has been interesting about this is, yeah Albi kind of like and it's really you know it's not like their fault but they really onboarded a bunch of people everyone really enabled the, you know, as far as I understand, the podcasting 2.0 kind of boom here. But for, I think, mainly custodial KYC reasons and kind of regulations, they are trying to migrate everybody. They're basically rug pulling. They're nicely rug pulling everybody, which is understandable. And now it's like the tide has come out and now everyone has, now there's that kind of like a scramble to find a solution. And so I guess what's nice is you haven't, you've been doing this for quite a long time you've got a few books that talk about the different lightning options so you know it's like very curious to talk to you about this but i think i think there's a lot of a lot of questions i still see is like why maybe this is a nice place to start is like why can't people just keep using uh the key send which is the pod the main podcasting um which is the main podcasting method that everyone's using so like what's wrong with key send and why is that not going to work anymore or or i mean this is like yeah that's that's like the for some people i think that's the question is like what's you know yes yeah.
juraj Yes, so basically, let's maybe start what is going to happen and why people are using Albi. So you are listening to a podcast, hopefully using podcasting 2.0 app that can stream sets and boost. That means that there are some lightning payments involved per minute, which are actually batched but they're accounted for per minute and if we are exceptionally insightful or funny you can boost us and that's a payment with a message, on both sides on podcaster side and at least I think but especially on the listener side there has to be an integration between a podcasting app, such as Fountain or what are the podcasts? Podcast Guru, Podverse. Yeah, yeah.
josh Yeah, these kind of breeze even.
juraj Breeze, breeze, yes. So the problem here is that if someone is making a podcasting app, they don't necessarily want to implement lightning wallet and some do fountain has an integrated wallet and breeze is actually a wallet that can also play podcast so it's kind of the other way around um so what these other apps have done especially those that are web-based is that they outsourced all the lightning mess and how payments are processed to Albi, which was like an API. You would do something like similar to whatever, Facebook Connect or something. You would sign in, kind of pair your client to your wallet. And the app would just basically over some API say, you know, pay this podcaster. They're cool and funny. And Albi would handle the payment. So they're turning off this. Oh, what is happening? Yeah, yeah. Explain, explain.
josh Yeah. So I just set up this. We'll have to take this detour. But I just set up. So, I just set up today my cassette answering machine, and it is an analog cassette answering machine. I have an analog telephone adapter connected to a VoIP service, and it's got two cassettes in there, one 20-second tape loop for my outgoing message, and then this incoming message that's set for 30 seconds. And then people can call and leave voicemails. But it has this feature, I guess, where so you can do 30 seconds or three minutes. But if you hang up before the time is done, it just beeps fills that time. So I either have to listen to a 30 second beep fill or a three minute beep fill. So I've set it to 30 seconds and then but people then get cut off because they don't realize how short it is. But so, yeah, people, people are.
juraj So someone was leaving a message.
josh Someone was leaving a message. Yes.
juraj An old school voicemail.
josh Yes.
juraj I have also left you a message, so now I can hear it from the other side. It's basically the same except for the beeping that I don't hear when you hang up.
josh Yeah, I have to look into that, but I don't know why it doesn't detect the phone hang up signal on certain calls. But yeah, anyway, I'll try to mute it when it comes on.
juraj All right um i i wanted it to be on i think.
josh Uh okay yeah we can say it's fun we'll see like.
juraj Yes yes hopefully.
josh Okay so yeah so i'm sorry i interrupted you yeah hopefully yeah all right all right yeah so um so let me try to summarize what you had because just because i because all some of this is also um i came in this news so we had albi that was acting as this api, for, you know, this is Albie now, not Albie Hub, like the OG Albie, was acting on this, this... API for certain podcast apps to integrate with so that they, as a podcast listener, I could have this account with Albi with some sats on it. Then when I boosted a podcast such as this one, it would actually make an API call to Albi and then Albi would do the lightning payment. Is that correct summary?
juraj So one of the features of Albi, unlike many other custodial wallets, is that it could actually do the key send. So what's a key send? So normally, when you use Lightning in any contemporary setup, except for Podcasting 2.0, you would actually pay an invoice one way or another. So you would get a string starting with LNBC, for example, that would encode the note pubkey, where to pay, how many sets, description, and some technical details, expiry, hash of the payment, and so on. So one feature of this invoice is that it is one-time use. It can only be paid once. So that's different to a Bitcoin address, for example. With Keysend, what you could actually do is you would only have notepub key. And you would just say over the lightning protocol, send some sets to this node and it would just go through without any invoices or anything like that. So that's like, it is very understandable that they have chosen this way for streaming sets to actually work because otherwise you would need to figure out how to get the invoice. But we will have to figure it out. So that's a problem.
josh So why was Keysend, was there a use case? So basically, Keysend, you know, someone can just send you money, which is like an email. Like you can just send, you don't, once it is set up, you have the node pub key, you can just start pushing sats to someone's node without really their permission. So was there a use case for Keysend besides podcasting when Lightning was first created or what was the?
juraj I don't know, but there was all this talk about streaming sets, not only for podcasts, but for like charging electricity and so on. One important thing about Keysend is that you can also include some tags and values, which can kind of identify what this payment is for and include some more data about it. So that's how some services can, for example, identify when they run only OneNote. For many users, they can identify what the payment is for. So if you set up your value for value podcasting, you would probably do this key value thing with some weird strings there.
josh So okay is that because you the there's a tool that you made that integrates with um seed lightning to look at the ln invoice i think uh to to see the message of like what the podcasting 2.0 community calls a boostagram and is this is this the inside that is the metadata you're talking about where you would put some of that information.
juraj Uh it's in the description of the payment that's uh i think another thing uh it's uh it's basically some JSON-formatted extra data. I don't know actually where it comes from. List invoices on my node just pops it up. So I saw it and parsed it. So what you're talking about is I made this podcaster dashboard because I really don't like LND. So I run a core Lightning node, which I... Don't love i don't think it's a super great idea to write a lightning note in c which can have like buffer overflows and and fun like that uh but i don't like lnd like it's uh they they're they're lost maybe we'll talk about it a little bit more later but okay so i i am running a core lightning node and all these fancy tools for podcasting 2.0.
josh Were made for.
juraj For lnd so.
josh Right so.
juraj I instructed my friendly ai model to code me a dashboard.
josh Yeah and.
juraj Uh it's working it's pretty pretty neat so.
josh Nice yeah it's like the i think the lnd one is called helipad and uh it is it is uh similar but i there i know the podcasting 2.0 people are using it with like a graphical there's a whole gui and they can see it on a web page so they sit there and will read the boosts as it comes in and so this this is so the this data is then in part of the json it's part of this json packet that's coming in with the message yes in the key send payment yes so all right so so key send basically if i'm just trying to summarize here so keysend then lets you is is kind of seems to be geared to uh sending payments without an invoice without an amount so i can just freely send and it has this ability to ride data in the entire case on packet okay okay so that exactly so that's what we've had forever so now the thing i'm curious about because i i'm kind of coming in the lightning a little bit is okay so keysend existed but then there was this my then there was these other payment methods like bolt 11 and some other things that i'm probably skipping a few but then why doesn't keysend work for other like why do we make a why did the community make other lightning payment methods like what's wrong with keysend um these other ones yes.
juraj Uh i think uh One problem is proving payments and being able to pay only once. Um which is a nice feature uh by the way i was able somehow to uh to pay uh and. Bolt 11 invoice i was buying something and i paid more by paying simultaneously from two notes and i don't know how technically possible but actually the merchant wrote to me that you send us more money but there was an amount in the invoice it was not like a free invoice and I just scanned it and hit pay but it's timed out on one note so I paid it with another wallet and somehow the pre-hash got propagated and took the payment also as part of the payment from the first note as well so anyway so yes this this was the idea the reason I told you this story is that it's not perfect but basically this idea of signed invoices you can you can make sure that it comes from the note if you know the note key is signed the pre-hash pre-hash is basically a confirmation of the payment so if you have a pre-hash and an invoice that was signed by the note you have proof of payment which is useful because. You can you can prove that you paid the merchant there is an expiry which is also nice because when people want to hedge the exchange rate for example on the other side they want to make sure that you know you won't pay the invoice tomorrow when you wake up you need to request a new invoice with a new amount so it has all these nice features And I actually like it. With KeySend, you can think about it as a permanent address, like a Bitcoin address. You can send whatever amount, how many times you want. Invoice is one time. It can include an amount. It is signed. You can prove that you paid it. And it contains a description, some kind of identifier and so on. It can also include so and another thing why invoices became popular is that they support private channels and you can you can include route hints so you can say oh maybe you don't see how you can reach me through the lightning network here are some hints if you talk to this node they will know how to pay me maybe they have a private channel so you can you can actually add a little bit more into into a bolt 11 invoice which is what you call a lightning invoice these days okay um so.
josh Um so that sounds so bolt 11 sounds like the typical kind of like coffee shop kind of use case.
juraj Or services use case.
josh You, I want, you know, I go to get a coffee. I say I want the, you know, flat white, hipster flat white from hipster coffee shop. And they ring up the invoice. They present the QR code. I pay it, the lightning wallet. And there we go. Like, now we're gonna, okay. So then that's the, But the problem with Bolt 11, or not really a problem with Bolt 11, the problem with like invoices in general is that it's not a tip jar, right? So if I, once I put it up there- it has this one time i i did i did troll people on nostor pretty hard right before we talked and said uh hey definitely do not call me definitely do not. Definitely the volume is set really loud this would be this would be an inopportune time so it is it is uh i was set up all morning and no one i was sad that no one was calling and so i just had to put the proper beep and now uh okay so but yeah i'm glad i kept it to 30 seconds okay yeah so bald 11 so great for this kind of invoice i want you i somehow you know ahead of time to send this particular amount that's either arranged you know in a shop or a priori or something i it sounds like it has this but the keys the the routing thing i've seen be a problem before with key send because especially with new nodes that have very few channels uh You know, the bald 11 seems to fix this. And okay, so that's bald 11. But then the issue would be for podcasting is you, you know, you would have to either programmatically always generate a bald 11 or somehow you'd have to have this back and forth where I want to send you this boost. I want to send you X amount. Then it makes me an invoice and I pay it. So it could work. There's nothing preventing it from working with podcasting. that's just like this kind of infrastructure doesn't work. You probably need some other server or something to facilitate these kind of payment flow.
juraj Which seems awkward. Yes, but it's what we'll end up doing. So let's go there.
josh Yeah, true.
juraj Because this is where it leads, actually. Because the client apps really, like the wallets, the APIs, they don't support and don't want to support this key sent. For example, you can have one of the options for the, Albicalyps for the listener side or the payer side will be Cashu Mint, which can pay both 11 invoices. And in order for the payment to be atomic, you need the pre-hash thing because that's how the Mint can prove that it has paid the invoice and the token is spent. So there is no trustless way or trust minimized way to kind of avoid these invoices. Anyway, so I think like when you send me the podcasting 2.0. Uh podcast episode and it seems like they are like uh the the people doing the the specification for value uh for value in podcasting they can kind of uh are at peace now with the fact that they will have to pay invoices or the they will have to find a way to to pay invoices and get the way with key send because they're not going to convince the whole industry of lightning wallets to start supporting key send because it's a much smaller group of people who are in yeah testing 2.0 so it's just not gonna happen um one of the criticisms for this is okay you need a little bit more back and forth like you need okay you need to ask someone to generate an invoice for you get it and then pay it and key send seems like more straightforward um that's what they were also talking about in the podcast uh it's true it is more communication but uh even like simple payment doesn't matter how it's paid. It's like for three hops for like if you pay through three channels, if I count it correctly, it is still 21 messages back and forth just to settle that micro payment. So like, okay, give me an invoice and pay it will be two messages more. So it's like...
josh 21 messages for a key... You're saying it's 21 application layer package. Oh, I see.
juraj For three hops because you need like... And I probably... It's more conservative. Maybe it's even more. Basically you need to add the htlc to every commitment transaction so that's like four messages back and forth and then you settle when the when it's paid you basically clear it out so, so it's chatty like lightning itself is chatty so adding like two more packets back and forth for like, give me an invoice and here's the payment. I don't think it's like that much difference. But yeah, it is a little bit more chatty, but I don't think this is such a big problem. We are like sending messages back and forth anyway.
josh I see. But one of the things that came up out of this is that most of the podcasters, I think, are running their node on one of the either Umbral or Start9. And I think a lot of them are using Start9, which has this current feature of basically making, you know, people are running at home, their Start9 box is at home, and they're using Tor to expose external ports. So there was, for example, I even tried to look in to some of the Lightning other options, and there were some, it wasn't clear to me if it had to be like a clear net, like it basically had to be publicly accessible or not. So on these other, okay, so yeah, so, so the fact that it's behind TOR, it doesn't matter.
juraj No, no, it doesn't. It's a peer-to-peer network, so you can route through it even. You can even do only on messages now within the Lightning Network protocol, so you can ask another node to pass a message to you. So, like, I don't know in practice, but the theory of the protocol is that this shouldn't matter. And this, like this, well, one more thing. I don't think you are right. I think most podcasters actually use Fountain or something custodial for the receiver side. They just give the... Oh, okay. Yeah, that's true. Those that run their own notes, maybe you start line. But I think even from the podcasting 2.0, most of my guests on the podcast, I just tell them, send me your Fountain address or I'll be. It used to be I'll be. Uh, so yeah, I think now most of them just use a fountain as a, as a wallet, but it's a, it's again, a custodial wallet and we'll see how long they'll be comfortable with this.
josh But that's, see, that's the, that's the concern, right? Is that you fountain is the, you know, you know, and, um, you know, I have nothing against fountain, but like fountain, you know, is people are going to fountain and then, I don't know they could get the knock on the door whatever i don't know what jurisdiction fountain is in but anyway they get the knock on the door and then they're gonna have to do a similar thing that albie's doing and they're like guys we can't let you i mean so.
juraj I think that's not even that. I think there is one more problem is that when you are running this service and suddenly you realize you have a lot of user funds, like when it really grows, you will just have other people's money. And I'm not sure that I'll be actually got a knock on the door. I'm not sure if it's a regulation thing. I think because they also had for a long time invite-only sign-ups. I think they were just not comfortable with holding other people's money, which is understandable. I wouldn't want to do that.
josh Yeah, right.
juraj It's a note with private keys online on the internet. If someone hacks it. So, yeah. Yeah, but anyway, so what we were talking about before my... Oh, that it's going over Tor. Yeah. So now let's talk about how you can get the invoice. There are protocols for that, and this is what the conversation is about. So easiest... Oh, wait, something happened. And I think we are good.
josh Yeah, it looks good.
juraj Uh, so, uh, so one, one way how to get the invoice is someone somehow sends it to me as a string, of course, not really usable for value.
josh We're talking about, sorry, we're talking about ball 11 invoices.
juraj Ball 11. Okay.
josh Ball 11. Okay. Okay. And so I'm the, I'm a, the situation you're setting up is I'm a podcaster and I want a ball and I have a ball 11 invoice and this is how, this is the picture you're painting. Okay.
juraj Got it uh okay uh maybe one uh intermezzo uh nostr basically has similar problem uh they don't use key send they use lightning address which which we'll talk about what it is uh but i think a good solution for value for value should be uh ideally the same solution that nostr ends up with uh Because, you know, people do podcasts. Like this integration of podcasting 2.0 and Nostra would be nice. I've heard that podcasting 2.0 are not very happy about Nostra or not super fans. Like, yes, Nostra is very boring. That's why I love it. Oh, yeah. But just saying that Nostra has the same problem. There are creators that want to be paid. And they use some kind of service. It used to be Albi as well on the receiver side and also on the wallet side. They're usually... Should be a way for the nostre client at least the twitter like clones um for the for the event kind one basically the the short uh message social network message um we should be able to pay the creators and send zaps each other so it's the it's basically the same problem um how do i get the invoice so yeah sorry just.
josh To this to summarize the same problem meaning that the both of them are both nostr and podcasting 2.0 are unique in that the pay er is deciding how much to pay which is yes the com which is different than the coffee shop use case so in the so if we just generalize this we're talking about content creators in a value for value world the payer is deciding how much value to return, which is a different payment flow, because they can either send one sat or whatever, 33 sats, but they're deciding. And so that's why we're saying, okay.
juraj That's one thing. And then another thing is that when you are paying in the coffee shop, the receiver is there. It's online. You are interacting with someone that is online. Which for a podcaster, okay, maybe you as a podcaster are not online, but you have a note that is online usually. Uh something is serving the rss feed something is serving the files so something is online but with nostr it can be you know my grandma and she went to sleep and she put her phone into airplane mode and she doesn't have a node or a server or anything so so uh this is a little bit trickier in the nostr side and it would be good if we found a way how to kind of solve this problem in the in the same way for both nostr and uh and value for value because right now i was like for example my first uh uh guest uh for for a podcast that i wanted to stream sets to uh in a in a 50 50 split um i just asked her uh give me your wallet of satoshi address because i thought you know that's what you put on nostril so that's how zaps work so i put it there but of course it doesn't work because wallet of satoshi doesn't support keycent yeah right okay so so uh yeah you know um right so so so so uh so the the receivers what i'm saying uh it doesn't necessarily have to be the podcaster that that is hosting the rss feed it can be a guest it can be uh you know So an editor, sound technician. Music artist, and so on. And, you know, we can't assume that they have a note online or we can assume, but then it would be custodial. So anyway, just a framing of what are the considerations. So how do we get the invoice? So if we come at peace that this is going to not use the KeySend flow, but invoices, we have several options. There is some third party service, some API that gives us the invoice. That is an option. There is a standardized API, which is called LNURL. that's in a form of a URL. It's basically a service. You send a request to it and you get a Bolt 11 invoice back. So that's one way. Of course, invoices are not very nice, not very user-friendly. They're quite hard to migrate if you want to, I don't know, use a different service or something like that. It would be nice if it would be possible to have it in a form similar to an email address. So that's what an Allen address is. So an LN address looks like an email address. So it's username at domain. And there is a way to look up the LN address. Actually, there are two ways that's starting to get complicated. But basically what it does right now, it returns an LN URL. So a url form and then you need to go to the ln url to get the.
josh Invoice okay so this was the thing that i okay so i this was the thing i tried to look into and was found that it was i thought this was difficult to do with the start 9 tour situation so i looked up the ln yeah so okay okay so i looked up tried to do an ln address which is similar i think to like a nip 5 you put a well-known JSON domain. Okay, so then it's like, okay, so I can get that. So it was easy to get, you know, that set up. But then trying to get the LN address for the client application to reach the server to get the invoice, that I think is, yeah, so how, so, okay, so, okay. That's where I got stuck.
juraj So this is a big problem and I think many more people will get stuck on this. So the flow, so what you just said, so basically the way it works is the wallet that wants to pay or the client, the podcasting app goes to the domain slash dot well known slash something. And it gets a json file and the json file says okay i know about this user and this is the lm url should you want to pay this user uh very similar to nip5 nip5 is nostril verified address uh the the the structure is a little bit different i i think nip5 is one big json file for, all the users at the domain and ln address is a well-known i don't know ln address and then username and okay just just for one but the flow is basically the same so you go to the web server. This web server serves a static file it doesn't have to know anything about lightning so you can have an LN address on a totally dump machine where you just like put a text file. But then there needs to be something that speaks LN URL. It still doesn't have to be your note. So you can still have your start line somewhere in the basement and something that can get invoices somewhere else, but they need to be connected somehow. And this is not easy to do. So that's why i don't like this solution and it seems that people are kind of converging to this solution um so that this this was one of the reasons we started talking about this actually yeah and right and i was like a little bit complaining that this doesn't look right to me uh especially for the like the nostril use case or the you know not the podcast host but guests and sound editors and all the other people they might not run a web server with ln url and well-known file and, something that generates the invoices because.
josh Basically so okay okay i'm glad you're mentioning because basically so the options if you self-host this is now you you need the web server which i think most podcasters have their own domain so that part was easy you have the start nine node They have that. The issue is this bridge software, which has this bridge gateway thing that has to be both publicly accessible and connected over toward the thing. So now you need, I don't know, this is like just some of, this is the weird component. And then for the Noster case, It's even more confusing because it's like, what do I do with this? And I think the third thing, which in some discussions I had with some people, is that this is basically what Albi does. Like Albi, I think, provides this service of converting.
juraj So does Wallet of Satoshi. You can get an LN address. One interesting thing that can provide you an LN address is a service like npub.cash, which basically creates an LN address and converts it into a Cashu token and sends it over to you over Nostra, which is nice because you don't have to be online. When you come online, you just receive your direct messages from the service, collect all the tokens and claim all the sets. So it's kind of semi-custodial, but you can do that.
josh So it's like an inbox for...
juraj Yes, sets.
josh A lot. So, all right. So just, okay. On that note, someone just told me right before this call that if I change this voicemail to three minutes, that they would probably start sending me Cashu tokens over audio to...
juraj All right.
josh Yeah. So I have to dust off that I need... I was just before I was looking into how to convert. I need to make like a Twilio webpage or something that you paste it in. It converts it into the audio format. I can decode it. Sends it or calls me and then comes back. So, yeah. So, okay. So, but I think the subtext of all, because you've mentioned it a few times, but the subtext here is I think maybe you're thinking about some Cashu based. I'm wondering if there's some Cashu because you've since mentioned it and I've experimented with it as well, But I don't want to reveal your secret, if that's what you're leading up with.
juraj I don't know the secret yet, but yes, we can talk about Caching as well. What is nice about it is basically it's a way to receive and send sets. It is semi-custodial, but you can choose your custodian and you can run it. So you can do it with nPubCache. i'm not sure but but with these services uh there's an open source implementation you can have an allen address that sends you sets on your own Cashu mint so it doesn't have to be that you give your sets to a third party yeah but you don't have to be online and like there is some node that has to be online the mint or uh yeah right and and the relays that receive the token and so on but necessarily like your wallet doesn't have to be online uh what Cashu also allows you to do which is quite nice is it is possible to lock the token into a pub key because you can have a bitcoin script so they can like they can even be like pasted publicly if uh if the if they're locked to your public key. So basically, there are ways that how you can use this with Cashu and they're like super lightweight. So for like streaming sets, it's nice because it's a small string. You send it once and it's even like easier than a lightning payment because it's like just a string. You send it once and it goes through. But it's semi-custodial. It's not as standardized, and maybe the fatty people wouldn't like that. So, you know, we converge to Cashu and so on. But what is interesting, I think, in this case, is this integration with Lightning address. I think that could be used, and that's pretty cool. And on the payer side, we will talk about that a bit later. But it's also a way to have an API. So kind of to replace Albi with an API of a cashmere that can also pay the invoice. So for the creators of these apps, I think this is a very, very nice way to do it as well. Anyway, so... Problem with LNURL and LNADdress is you need a domain name, so you need to rely on domain name system. With podcasting, you kind of do, but maybe the editor doesn't want to rely on it because domains get censored, deleted, you forget to pay, and you already have a pubkey. So anyway, another thing is this web server that has to be online and be able to interact interactively with some kind of lightning node. So there's Bolt 12. Now let's talk about Bolt 12, which I like as a solution the most, to be honest, even more than Cashu. Uh the problem is uh we won't make it with both both 12 uh until uh albicalyps is what.
josh Is it again in january or in march yeah they're saying january 5th is when is i i think january 5th is yeah so it's uh it used to be january 26th and then people looked it up and then it's actually and i i think there's like some nuance to what is actually collapsing but uh like it's not like uh yeah i can't remember it's slightly more nuanced but yeah it for a lot of people it uh it is going to affect something so so yeah so it's it's pretty quick it's.
juraj It's it's like the mayan calendar you.
josh Yeah.
juraj Exactly. So this is...
josh They... Yes. Thousands of years ago, they were anticipating this. And then just... The precision back then of analog calendars, you got to give them some slack.
juraj Yes, yes, yes. They didn't foresee Satoshi being a little bit lazy and releasing B2B a few years later. All right.
josh Okay, so we have, so, okay, so this is, so Bolt 12, which is like the latest, I'll let you know what I know of it, which is not much, and then you can, so, so Bolt 12, I know, because it started, I think I started it here in detail in the summer when I was at Prague, and the thing, the advertising marketing that I know about 12 is that, you know, it's like invoice based, but it has some nice privacy features that, and somehow, like this was the main thing that really bolt 12 there's two main things that these are my takeaways it has added privacy features although i can't speak in detail to what they are and it has the ability to unlike a bolt 11 invoice to be like a static qr code so you can reuse this qr code so these are the two marketing bullets that i know of bolt 12 that's basically the extent.
juraj Yes, they are right. Both of them. I learned about the privacy features again today because I forgot about them, but they're basically blinded paths. So it is adding privacy to the receiver side. The center side was already private. So it's basically like meet in the middle kind of payment and it's using only on messages and only on routing. So it adds privacy for the receiver, which is nice. The static QR code. So there are two types of Bolt 12 standard, how do you say it, URLs or QR codes or however it's encoded. One is called Bolt 12 offer that starts with LNO and that's basically the reusable invoice. And that basically says hello, I am a note and if you want to pay me, this is how you can reach me and I will give you an invoice. So it's the same thing that Alan URL does and Alan address does but. What is nice about this, you do all this chatting over the Lightning Network so you use only on messages peer-to-peer you can reach reach the note if it's uh if if it's uh you know behind tor and you are not it is a direct way how to ask a note to give you give you an invoice, uh so so when i realized this a friend of mine urza has written a nice uh software that is called pay to uh uh it's on ea to number two or pay to no t-o um okay it's a it's a command line utility for core lightning uh and you can say pay to and paste anything so alan url ln address bolt 12 It will offer anything, and it will figure it out. It will get the invoice over LNURL or Bolt12 or whatever displayed to tell you how much you can pay, what is the minimum, what is the maximum, write a description, and then it will figure out a way how to pay it. If this worked with the with the podcasting wallets we would be super happy because you would just paste anything into the valley recipient i see back and everything could be paid anyway so when i heard this that this is the flow that you uh that you basically ask the node to give you an invoice i thought okay let's create a rest service uh that does it for anything because this node to get the invoice you don't need any channels you don't need anything you can just send a message through the lightning peer-to-peer network and say hello node i have your offer give me an invoice and then this rest service would just give the let's say the podcasting. Wallet the client wallet, this invoice to pay the problem is that it's Bolt 12 invoice and they're not compatible so because, this is a way like you don't necessarily need to support Bolt 12 offers because you can convert them to invoices, with a fairly small piece of software. It doesn't have to be in the node, actually. It can be anything that can talk the protocol. So it can be like a public service, but then the problem is that your node needs to pay Bolt 12 invoice. But this is more common than being able to pay Bolt 12 offers. So it still might be. So Core Lightning supports Bolt 12, Eclair, LND, no, what is it? The Lightning Development Kit or something. Oh, okay. LND doesn't. So LND is the only widely used software that doesn't directly support Bolt 12. Even paying Bolt 12 offers. But there is a software which is called LNDK not to be confused with Lightning Development Kit which is I think LDK. LNDK which is this small piece of software that can talk to LND and figure out how to pay Bolt 12 invoice. So the payer side is, You can like, okay, you can't pay to like, let's say through cash or like, there are still many wallets that can't like parse and pay both 12 offers. But when you look at the nodes, the actual nodes that are underlying all these programs, there is all of them have a way to pay both 12 offers. Even like yes so strike uses LND on the background and they kind of pushed it and strike now allows to pay it and they even pay both 12 offers and they even have some kind of tooling how to test interoperability and so on and I think that they've been somehow involved also in this but yes they are using this LNDK. For the strike customers to be able to pay both 12 offers. So the payer side, like, okay, like really there are wallets that can't pay. I don't know, like cash probably cannot pay both offer, but it's not, It's wider than people believe it is, actually. There are many, many wallets that can actually pay these Bolt 12 offers. Receiving them...
josh Many wallets, but not the podcasting clients yet.
juraj Yes, but they don't know how to pay Bolt 11 either. They can talk Albi API.
josh Yeah, right. so i'm just i'm just yeah so i'm just so yeah so a lightning wallet um i don't know probably like breeze but breeze is also a podcast player but like uh yes um yeah okay okay so then okay so they can all pay it's all so you're saying to summarize what you're saying not all many of like the.
juraj Payer side is easier i would say.
josh The payer side for bolt 12 offers is pretty well supported right now is the summary of that of what you're saying I think.
juraj That's my impression at least the node software like for major like lightning nodes there is a way to pay both 12 over that's what.
josh I'm saying I'm.
juraj Not sure about the real wallets that people use I don't know you know.
josh Like Breeze.
juraj Has LND in it but.
josh Probably not LNDK.
juraj I don't know if I can actually try. Let's see. While we're talking, I'll try to pay some offer.
josh This is also... I guess the other thing is that I think there are, it's uh man it's just there's there's other categories of users right where there's i think a lot of users who really aren't you know are mainly in the u.s i mean you i mean is like strike even available in like i've used strike in europe to pay things but ken without doing i don't think.
juraj I don't think i can register for strike.
josh That's i don't think the google play store has a strike i thought that they did something where they went in to europe and i think they got they left or something or yeah.
juraj That's that's the only reasonable thing to do if you are offering this kind of.
josh Service right yeah current.
juraj Regulations i don't but then it's also kyc and.
josh So then so then i have a right so i would say there's like categories of even bitcoin users right so you have if you take like the cypherpunk kyc free kind of people who who i think a lot of this we're talking about those kind of options but then if you in the u.s i would say there's a lot of just strike users who um are very whatever they it's kyc but they're comfortable using strike but what's the equivalent like strike wallet for europeans that is like is there something that is not or is there no middle ground I'm.
juraj Not much into.
josh So I don't know like.
juraj A lot of people use wallet of Satoshi which is a custodial solution oh there is actually there's a any coin the Czech exchange has a pretty, widely used wallet actually which is called, Bitlify I don't know, Yes, Bitlify, I think.
josh Okay, I think I've heard of that.
juraj That's like Venmo. You can also pair it with a phone number and you can receive Sats on your phone number.
josh Okay, so the two biggest, I think, in the US are, at least I hear people using our Cash App and Strike, which allows a KYC option to then send in Sats.
juraj But still, does it have an API? like somehow like you can send a boost probably by clicking send but like you can't stream sets really.
josh Correct. Yeah I don't know how it well it gives you a strike for example has a LN address so you can be like for receiving. For receiving yeah.
juraj But for sending like when you want to stream sets I don't think it can stream set. I don't know.
josh You can boost you can well you can send I mean I've used it for Nostra payments yes Nostra zaps but.
juraj That's just a bolt 11.
josh Yeah yes but I don't think it can do yeah I don't think it does key send so this is the this is the so.
juraj So yeah so back to bolt 12.
josh I personally.
juraj Think this would be the best solution for both Nostra and value for value, just not right now because it still needs the magical lightning 18 months to be implemented widely. Right.
josh Yeah. But the question I have about 12 is, okay, so say you're, how does it fix, How does it fix the Nostro grandma use case where I onboarded grandma and she wants to receive, she gets to receive. So how does BOL12 change that situation for her?
juraj For offline receiving, it doesn't change. She would need to use some service that would hold the sets for her and convert it to cash or send it to her.
josh Yeah.
juraj Or a custodial wallet. So like… Like, it doesn't make things work, it just enables more use cases for people who don't want their own domain or have the nodes behind Tor on like in the basement and things like this. So, so the thing is, so in order to be able to pay over Lightning, you already need to be able to talk the lightning protocol like something needs to you know pay the invoice even for key sent you need to be able to send messages and actually most nodes allow even over api to to uh they allow you to send like onion messages or normal messages over the lightning network so if you are sending sets over lightning something already speaks this protocol and this interactive uh so using bolt 12 for getting the invoice is like you don't add another layer of complexity. You don't need port 443 somewhere. Like if you are able to receive payment, that means someone is able to somehow reach you through the Lightning Network. So I think this is like, it's getting the payment information close to the node. And you already need this working in order to be able to. So that's what I'm saying that adding like LN address with DNS and then pointing to LN URL with the web server. It just adds so much complexity that is like really extra. Like you don't need it to receive payment. So that's my problem with it.
josh Okay. So let me try to. so with both with bald 11 which is the typical lightning invoice the the way to pay that is we need this gateway dns we need to have this ln at we need to get an ln address one way to get an ln address is through ln url or i'm sorry one way to get an url is to get an ln address which needs the domain name and needs this gateway thing to reach back to the node so it needs slightly more infrastructure. Bolt 12 simplifies this by eliminating the kind of like Web 2 technologies and does everything over the Lightning network.
juraj Yes.
josh To allow the... Okay. That makes sense.
juraj Which you need to use anyway.
josh Which you need to use anyway. Okay.
juraj Yes.
josh I got it. So then let's... Okay. So that's now clear to me. But let's step back even further because all of... There's... Essentially to participate in Lightning, you have to have a node right this these are the you need to have channels open you have to have a node with channels and i think so there's i this is the i think this is like uh what this albi apocalypse is doing is upgrading everybody's lightning knowledge right because all of this was just nicely solved by this third party which was one of the options you could we could just go back to some other third party right and now we're all trying to figure it out so if i we step it But then there's solutions like, for example, Breeze, which like runs a node on a phone somehow.
juraj Yes.
josh So, so how can we talk about that? Cause you wrote about that a lot in one of your books. And so why isn't this because, uh, so, you know, for example, a lot of the podcasters onboarding people to nodes, you know, they go through channel management, they're helping people open channels and, you know, they're trying to like get people to do the hard way. So what if I, you know, why can't I just breeze? Why can't people, what's the breeze alternative is like, Like, look, my phone's always connected to the internet. You know, is this not an option or what's the status with?
juraj It could be an option, but yeah, is it always connected to the internet? Like when you take a flight, you're probably, you will miss some payments. Then it needs to wake you up with like a push notification or something when the payment is received. Um but i i think there are there are ways to do it uh so um.
josh Okay so then my so my mind i'm just so it's like all right so we can you basically need something or just run you need some daemon running 24 you need a server you basically need a server and so the server hat hat the architecturally the server either has to be on a like machine that's running in a basement if you're like or a digital ocean kind of thing you have to be running this you're running it on your phone, you can do it but it has all the problems of constant battery drain how like this is just like not meant for mobile use, At the end of the day, we have a kind of like a peer-to-peer model at the lightning level layer. That's all peer-to-peer. But in order to send things, we have a client-server model where the apps are clients and they need to somehow communicate to this peer-to-peer layer to get it to, you know, to actually push the payment through.
juraj Yes. Okay.
josh So that's where I think friction is coming in. because at least for me, because it's like you think about it peer to peer and that's what the Bitcoin podcasters and things want to throw around decentralized peer to peer. And that is true at that layer. But for humans and AI bots, which haven't started, I guess, paying each other lightning. Why can't, has the AI not, have we asked not AI to like start making these payments? Like why are we talking about this and not having AI do these payments for us? This is this is quite i have.
juraj I i have consulted heavily with ai on this.
josh Yeah so what does ai what does ai say has it not is it are we is it not at the level of solving lightning problems yet no no game up okay okay so okay so i think that's that to me that is where i think the friction is because it's like you you still have this client server model and you have a phone which is the client and it has to connect to some server to send this payment. Then the question basically at the big layer is that are you running the server or is a third party running that server? And then that kind of drives a lot of these like payment options and stuff like this. Because if everybody in the world where everyone is running a node, then keysend basically works just fine. Like that's maybe another option. If everyone just runs a node, then keysend wouldn't have to actually change because then everyone, for any, it's a linear scaling, everyone has a node, everybody has a client, then it works perfectly.
juraj So it is, I think, reasonable to ask the podcasters to run their notes. But if we want to kick this off, I think the listeners, like, they just install something like whatever.
josh Fountain.
juraj But Fountain supports KeySend. So the problem is with the other ones. Maybe everyone just has to switch to Fountain, but still custodial, okay? I love Fountain.
josh Yeah, no, no, but Fountain is that... So Fountain, in my mind, the way I'm thinking about this is, okay, I want to use Fountain, but what I'm doing in order to send a payment through Fountain is I'm loading up a client in the client server model and asking Fountain via Fountain's whatever API, REST service, to make this payment.
juraj Right?
josh Right, so this is, so Fountain is then- It's not beer to beer.
juraj Yes.
josh Yeah, exactly. So, you know, they could be, yeah. So, but, you know, I guess what's then frustrating to some people then is like, okay, we're in this, you know, if this was like normies, non-Bitcoin people, then, you know, you definitely just third party this and make it super easy. But then it's like, all right, people are, I think there's, I think people get frustrated is like, all right, we're already supposed to be Bitcoiners, But then it's like those Bitcoiners can't, you know, they're not running nodes, even Bitcoin core nodes. And then, you know, so then it's like, so now, so if on one sense, it feels a little bit lame if like, you know, we're here, we are trying to make Bitcoin podcasts or whatever. And then everyone's just third partying, sending the Bitcoin payment. So it's kind of like, well, what do we, like, what did we, I don't, did we win? You know, like, cause yeah.
juraj Yeah. Well, Nostra is like that, you know, Bitcoiners, but they use Primal wallets, which ask for your name and whatever. And so, yeah, people are lazy. Like, I think we need to support both use cases. Like, I don't like, like, even, you know, my mom is a Bitcoiner and she doesn't run her own node. I would gladly run it for her, but she wants to interact with this ecosystem. She has Fountain. She listens to podcasts with Value for Value, but she's not going to run her own node. So one solution that is kind of in the middle is this Uncle Jim model that I would run a node for my whole family, basically. Which is the Cashu model. Then the Uncle Jims can serve very extended families as well.
josh Yeah, so let's talk about that. Yeah, because this, you know, Albi Hub, which is, I think you can run without sending an email. You don't need an Albi account. I have not. But it now has this feature to do this friends and family model somehow built in. And what I kind of want to explore this a little bit, because i think this is perhaps the better model and it doesn't have to be with albi hub but the the uncle jim model because um what i think is also different you know so like everyone i don't know i don't know you know especially in bitcoin there's not like a random person out there who's a bitcoiner who like has doesn't. Probably talk to someone, talk someone's ear off about Bitcoin in the physical space. You know, like they're in the real world, a networked of node person they're communicating with that. And they're making, you know, we're making little anarchist, little, you know, parallel societies around. So this, I kind of like this little model of like, to me, it's almost like a bulletin board service, like an old school BBS. You know you would call you'd have your old one you check your messages and then there was like it's almost i guess it's also like a mastodon style um thing where you're having this little network of nodes i guess it's not decentralized it's distributed not decentralized i can't remember which way but yeah so this model i think is nicer because then you have yeah the only problem then you potentially could be holding you're you're back into like you're holding other people's money etc etc but like i don't know at some point um it's in someone's self-interest for them to become the node the the uncle jim for another group right we're there yes so i don't know this one feels the only problem with it is that i guess you can't you know you people just have to volunteerism it's the it's the same problem with like uh self-organizing groups it requires small you know, volunteer leaders-ish to like kind of do this for small groups, but so yeah.
juraj Yes. And there's also a kind of middle ground such as FEDI, where you can kind of decentralize the... So FEDI is like, like Cashu. But you have like, let's say, three out of five multisig. So there is no single entity that can rug pull.
josh Oh, okay.
juraj They need to cooperate. So that's also neat. So there are kind of shades to this. I think we will have also like a large group that wants to remain custodial. There are like hardcore crypto anarchists that want to run their own node. And there's a lot of space in between, I believe, that we should support. For the Uncle Jim model, you have Cashu, you have Feddy, and you also have AllenBits that also supports multiple users. So all of these are kind of nice. Uh so that's that's kind of in between i think uh like you know we are talking about small payments here yeah hopefully they will become uh we will all become very rich very soon when uh bitcoin does uh one million x right right um but uh so so that can happen you know, So Uncle Jim holding, you know, a hundred bucks for streaming sets and then it's suddenly a lot more. So we can all dream.
josh Yeah, all the channels go down, Jim's house.
juraj But yeah, yeah. So I think we should support all of these models. So, okay, so one thing that, okay, so let's look at it from also from the side of the payer or the podcasting app in this case, or Nostra app and the receiver side, because that is also something that we have not done systematically. So a payer size site, I think more than anything, podcasts, players or people who are making these players, they want just some easy way, some library they would call and they would say, you know, pay this podcast for a minute or for boost. Um one important requirement i think is that it needs to work over web it needs to work from javascript because many of these apps are either like react native or just pure web apps that, don't have like a they can't run a local lnd on on the machine because they run in the browser so uh. I think this was the primary reason why they were using albi in the first place because it was it was easy uh so that's one thing to consider and i think uh like the the okay so so the question is. For albicalyps uh why won't just everyone switch to fountain you know it's also a custodial service Albi was a custodial service, and we say okay so your software podcast guru sorry it doesn't work anymore and we are switching to something that works that's also an option so my question is I don't know if you have any idea how many users do these apps actually have is it 80% fountain, 20%. I mean from the value for value because most people 99% don't use any value for value at all.
josh Yeah, I'm just thinking through some of the shows where they call out because with this Helipad app, they are seeing the Keysend payments come in and it says where the app is coming from. Really?
juraj Okay.
josh So they look at when they read it they'll be like, you know, BitPunk FM boosted 3333 from Fountain. So they, yeah, so they're, when they, when they read this, when they read them, they are able to tell. And I would say, It's a pretty, well, I don't know. I feel like Fountain is probably 20% maybe and the rest of the 80% are other, either Podverse. I see a lot of Boost CLI, which I don't know if you know, I haven't looked at that tool, but I see that a lot. It's a command line tool to send a payment. So it's probably, it sounds similar to this pay to thing you have for L&D. I'm sure it's L&D because I think that they're all running. So Boost CLI, there's a lot of payments that come in through Boost CLI. Um i think these are mainly not and this kind of well yeah so boost cli uh podverse i think comes in quite a bit podcast there's another thing called curio caster which i feel like they say is like the og this was like i've heard this is the og um actual like zap or boost here i think it's all web-based actually curio caster um so.
juraj How does it work yeah.
josh This is when for a place.
juraj Also Albi probably.
josh Yeah, I think everything was probably Albi. But there was also an issue which I think is less... Okay, so there's another thing there we can talk about too is the idea of Nostra Wallet Connect, which I'm also uninformed about, but there is...
juraj I will talk about it. Yes. Okay, there is an app name in the description of the KeySend. Okay so yeah so that's how let me see yeah let me see so grab app name i will do uh oh you're looking for boring yeah yes and i'm not gonna parse the json i'm gonna say throw.
josh It through jq just.
juraj Cat it JQ okay I wouldn't know yeah yes Harry want me to chat or.
josh AI how to do JQ JQ will parse JSON nicely.
juraj I'm just gonna do grab it's gonna be faster so, so app name okay uh and i have 3600 key cents and uh fountain is uh 3400, okay i was also testing breeze myself so that's 100 so anything else than fountain and breeze in my note yeah rounding error like no one okay like it's a fountain yeah.
josh So fountain's really pushing so i guess yeah so found so on the podcast listener i i would have to say i don't think i really started boosting people until fountain so.
juraj Yes fountain.
josh I think really um.
juraj There are 30 there are 30 key scents that are different than fountain and breeze and let me just see what they are uh i know you asked someone to boost my podcast because it was not working so one of them is, shootout to who was it?
josh Chad F.
juraj Yeah, shoutout to Chad F. And let's see. Name podverse okay so which is so so so that's uh wait okay i'll do i'll do grab minus v chat f because yeah right okay so i have 17 more and there is one other user of chatverse cipher citizen okay and then then there's someone actually boosting bitpunk fm where i got the splits, okay so seems that if we convince cypher citizen and chedef to switch to something else than pod verse there's no Albycalypse there we solved it one hour 21 minutes yeah we've well well i think I think to be fair.
josh The, the, the, the.
juraj The, the, I'm not a representative.
josh No, no, no, no. But I think, I think the issue is the, the, the clips is happening on the podcaster side because all there's a lot of podcasters who are onboarded, whose key send is going to an Albie. I mean, so for users, I don't think it ever, yeah, I don't think it ever mattered really. Um like they the the hardcore the the ogs were yeah are using podiverse and some of these other ones yes um but like the the latest wave is coming yeah for sure i think fountain picked up a bunch yes and it doesn't really affect them it affects i think a lot of musicians and podcasters who have keysend addresses that are going to an albie um an albie and I'll be run node.
juraj Yes.
josh They're the ones that have to migrate. And then they're like, Oh, well, what do I do? What do I do now? Yeah.
juraj All right so yeah so so that's true okay let's finish the the payer side but uh yeah this is a good point yes so basically what would be cool uh is a way to migrate from albi in such a way that there's an API that is easy to use. And there are three, I think, usable APIs. And these are Breeze SDK. So that's something else than Breeze entirely. It has nothing to do with the Breeze wallet. It uses Blockstream Greenlight. So what they do is that Blockstream basically spawns a very minimal Core Lightning node in their cloud, but they don't have the private keys. So everything that needs to sign the commitment transaction or anything like that goes through the API to your phone and it signs whatever needs to be signed. So they don't hold any funds. So it's non-custodial, but they do all the gossip chatting on the network and whatever channel graphs and all these things that you don't want to do on your phone. One of the reasons that Breeze, the original Breeze is so slow and often doesn't find a route to pay is that it needs to sync the channel graph. So if you turn it on, like if you start the app after a month of not using it, It is really not usable for the first few minutes because it doesn't have the current channel graph, because it does routing and everything on the phone. With this Breeze SDK, what they do is you run a node, you do everything on the block stream site, but you still sign the transaction, so you don't give anyone custom of your funds. So it is quite similar to what Phoenix does. also. The Phoenix wallet basically the same idea custody keys are in a very small app I've actually read the source code of the Phoenix wallet the whole lightning part and it's pretty simple, and so Breeze SDK they have SDKs for app developers for native Android and iOS apps. Very usable. For the listener side, it's quite okay because if you're listening to a podcast, the app is running anyway. So no need to stress about battery use or anything. It's the app that is running. And if you send one payment every 10 minutes with batching and it signs a few messages, it's not a problem. and I've checked the API. It is very, very easy to use. So I suggest actually, like I would be very thrilled if, for example, Fountain had this as an option. That would be pretty cool because they would not have custody of your keys and it's a core Lightning. So it can do Bolt 12, it can pay Allen address, Allen URL, anything. So that's one option on the pairs.
josh Yeah. Mm-hmm.
juraj I highly recommend and it's like open source of course greenlight api is not open source it's it's running in the cloud i don't actually know if you can run there not maybe not but, for app developers it is quite okay and they're like pretty nice limits even for free use okay so that's one thing uh then i think uh the the problem with this is of course uh web apps cannot use this uh as far as i know it is sdk for for mobile native apps not for for just web but maybe maybe that's yeah.
josh But ai can make the javascript api.
juraj Yes yes i think they have a javascript api actually but i'm not sure how um how well it works like for receiving it would not work probably but for sending you're still online so you're because the problem with the web web app is, we can talk about it later people try to use mutiny as a destination which which is a web wallet currently deprecated and they're shutting it down unfortunately it was pretty nice project but that's running a whole lightning node in JavaScript in a web page but that doesn't really work because if your computer goes to sleep or the browser decides that this tab has been using too much energy it gets shut down but for sending I don't think it's a problem so maybe it could work also for, for the client side, for the payer side. Yeah. Then we have Cashu Means. They have a REST API, so that's quite nice. Cashu Means, you can have basically a very simple Cashew wallet. Cashu wallet is like all the SATs are basically a bunch of strings. And you can even use recovery seats and so on. So payments are very simple. And what you can do is you can call a mint and tell it to, I think the call is melt, which means here is a bunch of tokens. Please pay this Bolt 11 invoice. So basically the one API call and you pay. you can also also receive. So that's a mint call, which gives you an invoice. And if it's paid, you get a cash token. This is pretty nice. You also outsource all the routing, all the links to some software that has a node and everything. So you don't have to run anything. So this is, I think, the most equivalent to, or one of the most equivalent to Albi Hub. No, Albi, actually, the original one. But you can choose your own custodian. This can be the Uncle Jim model. The problem is it can't do kisent, but other than that, I think this would be the best option maybe, or I don't know, but it seems like a very good option for this, for Podverse and for all these web apps, because you can call it from JavaScript. The client side is pretty simple and the additionally users can choose their own custodian I wonder how difficult it would be to actually implement key sent in the mint probably.
josh Yeah, so this is what I have like two questions here that I'm now mulling over one is what is it what is it about the lightning network that requires this constant connection right so what like it's running over TCP right like what like why is there a keep a lot like what's you know if I make, you know the it's it's a it's a layer above a tcp ip connection and these tcp ip connections are not constantly open yeah they're like they can come so what what is it why does the you know what's the deal like why can't it be isn't there some time where it has to just check like once a day a channel if it can reach the server once a day it's fine like what's the the the no yeah.
juraj The mobile wallets are not.
josh Online all the time like like breeze.
juraj Wallet is like if you want to send if you want to receive you have to become online and when you're sending you exchange the messages pay the invoice and you can come offline again.
josh So because receive okay so in order to you can be offline but then no one can send you anything this is the yes yeah okay yes.
juraj Yes but for for for the podcast player this is not a problem so because.
josh Yeah right playing.
juraj Podcast and sending or or not.
josh Yeah for.
juraj The payer side i think this can be a really good solution and you know choose your own custodian and it has pretty good privacy like uh like the mint doesn't know your balances for example.
josh Right so let's you know let's because is there not a model where um again kind of like a, I mean, maybe this is the cashing model. Like if you, if you, if there is just a intermediary node on the lightning network that can just, it like, I want to say, I want to send you, you have a podcast. I want to send it to you, but your podcast, your node is offline. There's, but there's no concept of store and forward messages where some intermediary node is going to be like, Oh, I can't reach your eye. So I'm going to hold this message until his node.
juraj Comes up.
josh And then forward it this this concept doesn't exist right because that.
juraj It it does uh uh to an extent but um uh like that there were invoices that would do this holding the problem is uh that, um so so basically you can have a very long htlc htlc is the lock of the path so basically what What you do is you create a path to the end node, the funds are locked, and then when the receiver claims it, it's claimed all the way back. And the problem here is that unless the node claims the money. There is no way to atomically get fees. And the problem is that the funds are locked in all the channels. So that's why no one wants to hold the invoice for you for 24 hours because it might not get settled ever. And then however many Bitcoins are locked. So it's a spam fighting problem. That's one issue. um okay so so people yeah we're kind of playing with this yeah but but this is the problem but but Cashu uh cashew would be a little bit kind of trusted intermediary uh that that can do this so so yeah so basically it would be like a like a like an email server you know yeah it would receive the email for you okay it can go down and rack pull you and steal your email but when you come online you you just download it and then it's yours so yeah i think this is kind of a good middle ground so especially for the cases when you are like um online very often but not like right right right super all the time so which.
josh You know i don't know like the um what has kind of impressed me about you know lightning is like how little i haven't heard of too many like major lightning hacks or lightning you know based like you know is it this is uh i think there was more in the og bitcoin wallet days of like things all this happening but lightning is all everyone's hot walleting or the whole whole thing's.
juraj Hot wallet.
josh And like you know i don't know if there's been a major ode in one of these nodes that has just wiped out uh.
juraj I mean i i don't know i.
josh I mean we don't know of one but.
juraj Like there were some there were some bugs there were i don't know of any like super yes uh, Yes, I've heard about one hack, actually. It was with the... Yes, there was a well-publicized hack that actually ended up in the Bitliffy wallet that I mentioned, the Czech one.
josh Okay.
juraj That's why I remember it. I was actually replying to the victim of this hack because they said, oh, I know where my money ended. It was on this node and it's Bitlify, so just give it back to me. But it's a custodial node for many, many users, doesn't do KYC.
josh And.
juraj The funds were.
josh Sent immediately.
juraj Somewhere else so they don't.
josh Have the funds.
juraj Anymore so they couldn't really help him.
josh I think there are hacks but.
juraj You like how the wallet snow.
josh Well this is my, everyone wants to say this is just everybody for example the hardware wallet stuff everyone goes oh you can have a mobile wallet whatever, but we're all doing this with Lightning. Yeah, maybe the amounts are smaller, but the opportunity's there, and everyone seems to be okay. Yes.
juraj Well, watch until the first hardware wallet does a Lightning wallet, which is possible. It's not actually...
josh But yeah, I mean, okay, you say that perhaps trollingly, but this is my point. You know, it's like, what's a hardware wallet that does Lightning? It's a mobile phone. I mean, it's going to be like, what do you, I mean, do you want it to be connected? Do you want it to be the node? Because you could put, you could also probably take a Lightning node, which is like some PC, plug it into a Trezor and have the Trezor do the signing. I mean, if you want to do that, I mean, like, but then, you know, what's the, but then the issue is then we're back to, this is my issue with these hardware walls, you're back to like some automated, so yes, the key could stay in the Trezor, but you're not going to go run to the basement every time to press a button, to like stream sats, you know, like now it's an automated For the node.
juraj Yes.
josh Yeah, it's for the node, so it's protected because it's It's protected from the node having a software vulnerability of exposing the key. But now we're back to like, well, if the node is compromised, it could potentially send it because it's going to be automated. So like, you know.
juraj What do we... Well, it wouldn't make sense if the sending was automated, if you couldn't confirm it or if it doesn't need to confirm it. But you can definitely set up some rules. You can say, you know, only send this amount. And you can actually do it like this amount per day and you get the current day by block headers. So that's possible. But the main problem with hardware wallets, with Lightning was that you need to sign much more often. Because if you have, for example, a routing node, you are changing channel states all the time. but you actually are, All the time, you can sign the message or sign the channel state that gives you more sets than you had. So if you are receiving, then yeah, I'm glad to sign anything that gives me more money than I had.
josh Why not?
juraj You can do that in a hardware wallet. For routing, that's the same case. You have two channels and you end up with more sets because you collect the fee. But you need to sign two channels at the same time but you can also do that so in principle there is like even a routing node kind of hardware wallet and you don't need to click anything, but yeah for listening to podcasts that wouldn't work right alright so Cashu should be explored maybe we can look into integrating Keysend into Cashu and if we do that then all the web apps can just switch to Cashu from AlbiHub and so in this case you would.
josh Have a Cashu so it would kind of be like the podcast clients would have Cashew tokens and then when they want to send.
juraj Well podcast clients what do you mean by podcast clients your browser it could be a browser yeah exactly it's client software it has.
josh A Cashu token and when it wants to send it will send the token to.
juraj The mint.
josh Which is then also a lightning node and then yeah so this mint could.
juraj Also there is literally API call saying you know pay this invoice here is the token yeah.
josh So, and then the podcaster could then get key sent because there's, again, this translation.
juraj Yes, but the key sent is not there. But maybe even like having an... So there's this Melt API call?
josh Yeah.
juraj Wait, let's see if it actually can be key sent.
josh You're saying right now. Oh, okay. Yeah, so.
juraj Cashu Melt. Okay, Cashew Melt is not something to search for. I got organic cashew.
josh Yeah.
juraj Wow. I should buy this.
josh Cashu butter.
juraj Okay. Okay. Cashu API melt Bitcoin protocol specification. All right. Should I contact my friendly? Okay. My friendly AI Googling. Yeah. Yeah. It's like the protocols are in the files numbered 12345. There's the documentation. So Cashu Mint API Melt Syntax. Okay. Search online. Anyway. Okay. So search for this. Yeah.
josh Okay so this is but the problem is um the issue is so this would let's just assume let's say they did it so i guess there's a few i guess there's a few problems one Cashu on the pod really we're talking about like five major podcasts anyway so like they they'd have to like learn about Cashu and integrate things that and cashew is kind of i think changing rapidly so i can see i can see the hesitation from a podcast client to like integrate Cashu perhaps um the second issue is um, Well, the benefit would be then the podcasters could keep their lightning notes with key send and they would just do the translation. So it's just, but that's the.
juraj Yes.
josh And then the other thing. All right. So that's Cashu. But then how does, because I think in that same section you have, I'm looking at your.
juraj Yes.
josh You have Nostra Wallet Connect, which often comes up.
juraj Okay.
josh Yeah.
juraj So people don't so it's probably the most stupid name ever invented for a technology. Nostra Wallet Connect doesn't have much to do with Nostra so it is using Nostra relays but it's totally unrelated to Nostra so okay so. What is it what it is it is a protocol standardized protocol, with which an application such as Podwares can talk to a wallet that's it the Nostra thing there is that it doesn't call the API of the like the endpoint like Cashu Mint or Albi or something like that but it sends a message through a Nostra relay and that's for solving this exact problem that you don't have a domain or web server or open port or anything like that. So it can actually run on your phone and you would agree on one or a set of Nostra relays that are used just for encrypted communication. So you could have your wallet on your phone, which supports Nostra Wallet Connect. And then you just exchange these connect strings, which have some key material that authorize this app. For example, a podcast player to control your wallet and pay invoices on your behalf. You can have rules there, like maximum amounts that can be paid or something like that. So this is ideal because it doesn't... Like, first of all, it is usable from web apps because Nostra is just a REST API, Nostra Relays. So you don't need to connect to funny TCP ports or whatever. You don't need port forwarding. It is encrypted. The privacy is not very good of this, but okay, it's two random keys talking to each other And you don't see in the messages, but you see all the metadata. So that's the thing.
josh The people see the metadata between the client and the relay.
juraj Yes.
josh Okay. All right. So the over normal TCP connection or HTP in this case.
juraj HTTPS. Yes.
josh HTTPS. Okay. Okay. So, okay. So it's no different than the internet.
juraj No, but the relay sees which pub key writes to which pub key, I think. So that's.
josh Oh, okay. But.
juraj Yeah.
josh But why would you not run your own Relay in this case?
juraj Well, if you're running a web-based app and phone wallet, then you're probably not running a Relay. But yeah, Podverse can run their own relay, of course.
josh Okay, okay, okay.
juraj Yeah.
josh Okay, okay.
juraj I think this is not such a big problem. So basically, this is one of the ways how you can replace the Albi API in a standardized way. Uh the problem is the support of wallets so yeah not not many wallets actually allow incoming nostril wallets connect connections or support the protocol um the the weird thing is that like when you see the page with support yeah you don't know which side so for example btc pay server which is awesome i use it it says that it supports uh nostril wallet connect, but from the other side so if you create a store it can use a third party nostril wallet connect. To to generate invoices and receive so this is good if you have an e-shop and you want to use BTCPay server, but you don't want to run the node on the server or it's like a friend or something, it can pay directly to someone's wallet, but that wallet needs to support Wallet Connect. And unfortunately, the list of actual wallets that can be used for paying, we are still on the payer side, is not that good. Let's see Nostra Wallet Connect. So there's Albi for one more month. And let's see Bitcoin Wallet. So there's Albi, Mutiny, which is also going to be discontinued. KasaOS, Cashu.me. So that's a cash wallet. Which is quite nice because you could support cash wallets. There's Coinos, which is pretty awesome as well. It's a custodial wallet. I think people have been talking about.
josh Yeah, I've heard of this.
juraj Coinos, LivPay, which I don't know, Micronote. I also don't know it. Mutiny is going. And then Umbrell and Start9.
josh Okay.
juraj But that's it. So no Phoenix, no Breeze, no Zeus. But yeah, there are options. Like Cashu.me, I think is a good option. And if you have Umbrella or Start9.
josh So when you say Cashu.me, I can then have some app. And if it supports Nostro Wallet Connect back to Cashu.me, it will send the Cashu token or it will do the melt to send the... So basically, I'm going to say I want to...
juraj No, this is a Lightning protocol. So it only deals with Lightning invoices. So it will kind of abstract. So you would have like, so Cashu.me is a wallet for cashew. So it stores the tokens, but the Nostra wallet connecting would be used just to pay invoices and receive and convert it to Cashu tokens.
josh Okay, perfect. So I could have a podcast player and if I want to send a boost and if I'm using Nostra wallet connect to connect to Cashu.me and I have cashew tokens in there from the...
juraj Any mint that you want, yes.
josh Any mint I want. It'll basically look like I'm sending a Lightning payment, but because it'll just melt whatever Cashu tokens it has to do on the back end to satisfy that.
juraj I think so. I hope so.
josh I have tried. Yeah.
juraj So two problems that I see. First is still doesn't do key sent. Second is Cashu.me is a web wallet. So the same thing. Oh, yeah. run always but on the client side but you would need to have it open in some type because it's a web app so same with Mutiny yeah.
josh Okay, I don't know all this is coming to me like, All of this is saying to me that we're, you know, basically a lot of these problems go away if you've run a daemon somewhere.
juraj Yes.
josh And I think like, whether that is on some sort of cloud thing or, you know, whatever, but this is, this is like the fundamental problem we're coming back to. It's like, we need these things need always on computers somewhere. And if you have that and you can either.
juraj For the player side, it can be similar to Ember, for example. Ember is a Nostra signer that runs on your phone, and any Nostra app running on that phone can just use it.
josh Sure, sure.
juraj You can do the kind of same thing.
josh Yeah, okay. Okay, that's good to clarify. Yeah, the sender, I guess, can be asynchronous kind of in and out. But like, I think it, but it seems like in this kind of, if we're trying to make this circular parallel society where it is like, everybody is both the sender and receiver, then it really seems like.
juraj Oh, yeah, yeah, yes, you are right. I would love if everyone ran their own note, but I just got an idea. So the Cashumi wallet is open source. So basically, the Podverse can just put it right in the app, like the JavaScript inside. It can run in the same type.
josh Oh, nice.
juraj That is not a problem. So the only thing is it doesn't do key sent.
josh Yeah, so Podverse.
juraj But that can be like.
josh I don't know.
juraj No, I'm very inclined to create an API call to just do a Cashu mint that just pays key sent and then I'll be Calyp's is over.
josh And then, yeah, take the, you know, I don't think anyone have any issue with like the routing fee or whatever, you know, having.
juraj No, I don't want to run the node, but.
josh Oh but wait but yeah I mean here's the code you know you would have this client library let's say.
juraj Client and server, and also the Cashu Mint needs to support the API call. That's the, like the client library really is, you know, here's tokens and send them to this node and this description.
josh I, you know, I think Cashu really for these kind of small payments is really nice. Like the amount of, that's kind of what I was kind of like hinting at with this hot wallet thing is like, you know, just, I mean, it's the no one is sending amount where this is going to be an issue and it's like everyone's using their phones anyway so if i don't to me the Cashu and what i like about the cashew mint model is yeah it really can be pushed down to uncle jim or get some service doing it like it you know from from albie's point of view if it was running i mean albie would probably you know it could run and it would all you know yes it would no longer be i know it's then i don't know i guess it's a legalese of whether it's not it actually is custodying funds but if it's not holding the tokens you know there could be an argument it has the stats so but like let's.
juraj Not let's let's not even even go like what is illegal like if you do it for your family or.
josh That's the better way yeah That's completely the better way.
juraj But then you can do this also with AlbiHub.
josh Yeah. Okay. I'm just, yeah. So I guess, you know, out of all, yeah. So I mean, okay, let me try to summarize everything we're talking about. So like, there is, I'm going to look at your chart here. Okay.
juraj And then we have the receiver side. So maybe we should summarize after or...
josh Yeah, go ahead, go ahead.
juraj So receiver side, I think Bolt 12 would be the easiest. No port forwarding, no DNS, no HTTPS. It's not much more chatty. It is a little bit more chatty, but we are chatty anyway. It's not super widely supported. So I think, honestly, Bolt 12 in two years will be the choice and we would have to deprecate everything else. But we'll see anyway, my question is do we need to support Keysend in the future depends on what users will switch to after Albicalyps maybe not even well.
josh The one thing I think is I think one thing that is that people like about Keysend is this sending this message with the payment and I don't.
juraj You can do that with Bolt12, definitely, and also with LNURL.
josh Okay, because I feel like there was some discussion where it became difficult to send some sort of message with the payment and some other of the payment methods. But I'm… Oh, interesting. Yeah, I think this was… I remember that being talked about, but I don't know, unfortunately, the details there. Okay, but… Okay, so… Okay.
juraj And my question is if it would be wise to do like multiple options, like say, you know, I did this podcast, this is Uri, this is my note, you can send me, this is my Bolt 12, you can pay the offer and this is my LN address and whatever your client supports, you're free to do it. I don't know there's pros and cons for having multiple options because in order to be able to receive everything or all the that people can send you the best would be to have all the options but then every podcaster would have three things which is probably not optimal, so another way to handle this is, to basically have services that would convert maybe even in like semi-castle deal way so some kind of bridges exactly so I would I would say okay here's my bolt 12 and LN address but if you want to key send me just use a bridge or something like that.
josh Yeah. The people in the driver's seat here, I think, are really the podcast apps, right? They're the ones that are really, because I think the podcasters are going to set up whatever they can set up, but it's the apps. Without the apps, the ecosystem doesn't really exist, which is why I think, you know, like Oscar from Fountainhead and stuff is driving, they're really driving. I mean, there's a lot of also smaller apps who are really driving the thing because they're the ones that are making it easy for the users to send the payment to the content creators. So I don't know if they care, to your question about, do you need to support Keysend? I don't know that anyone, I've never as a listener being like, oh, this is actually going, it's not really up front in my mind that this is Keysend. To me, I'm sending a lightning payment. So I don't know that it has to be that.
juraj The question is what, like, let's take the example you know i have a guest on my podcast they're not lightning gurus they yeah right they just so so basically actually uh when i when i sell it to them you know you should have these i i always tell them to use fountain and i'm not saying to them you will receive money because they will receive 3 000 sets unfortunately we're sending micro payments waiting for the boosts to and yeah and so on for this podcast but uh uh but what i'm telling them is this is a way to interact with the audience so if they have a comment they can send a boost with a comment and you can see it in your fountain app and you can like you can kind of right live with the podcast this is a commenting section of the podcast you know yes so uh but then you know I don't want them to because the guest can be whatever an Austrian economist that has a phone and they don't run their node and this is actually a way how I want to onboard them so it needs to be easy also on the receiver side I don't think, but it is easy with Fountain it is easy it is custodial for the 3,000 sets that they will get.
josh Right, right, right.
juraj Yeah. Another thing is, of course, like, for example, many of them have a Phoenix wallet, so they also have a Bolt 12 already. So they usually have Bolt 12 before they have a key sent and lightning address.
josh Yeah, right, right. Yeah, I guess even in that case, honestly, even all the stuff we talked about, they honestly really don't even care what the thing is. It's just a matter of how does somebody onboard. I think we were talking about this earlier. it's like the medium is the message right so you you have you have the fact that you're getting some sort of bitcoin payment is the message right that is you know that is it's like oh and then here is the you know there so that is driving this thing and uh there's all this comment that is with it is riding with it that is like the combined like oh you know it's the similar to someone sending me a postcard you know it's like that if i'm forcing them to post right it's like how do you want to communicate with this and then it's you know so i yeah i i have all this i think a lot of the to bring it to a higher level the and you know the it's this is like the onboarding discussion but and and onboarding i think is always going to be difficult in a decentralized world like it's not people want to keep making onboarding easier but you only make onboarding easier when centralized players you know come into it like they're you know this is, the pros and cons. People want decentralization, but also easy onboarding. And I think, there's a... I don't think they understand.
juraj I don't think it needs to be too easy. I don't want the normies. Right, yeah, that's what I'm saying.
josh It doesn't... But there is...
juraj It shouldn't involve sinking Bitcoin blockchain in the basement node for two days and setting up SSH keys and so there's...
josh Well, yeah, no, but like, you know, if we can throw, so all of this is assuming that it's hard to run a Bitcoin node, right? But that's basically, we've taken the assumption it's hard to run this Bitcoin node. And because that's hard, we've been dancing around all this. The other thing is it could just become easier to do that, right? You can imagine, I mean, hardware, you know, is getting, is always getting hard. The only thing that is, you know, deflationary is computer hardware, right? It just keeps getting cheaper. It's the only other consumer product that just keeps getting cheaper. So, I mean, there is going to be, you know, a time where, like, I mean, I just recently got a, like, small mini notebook thing, a notebook or, like, a B-Link kind of computer. I think it was like 249 for like a 32 gigabyte ram 500 gigabyte uh nvme and it was like an intel i5 or something so i mean these you know i think it would probably obviously you'd want more storage but like that's pretty reasonable for like uh and it's a pretty lowish power i think it was like 50 watts or something like this but you know eventually those are going to also come down i guess that's my other point here is that the hardware we can we can just take advantage of the fact of that. I mean, we can keep trying to solve this with software. In a year, the hardware will be cheaper and faster. In another year, you know what?
juraj And a hardware wallet is what, 79 euros for Trezor Safe 3?
josh Yeah, exactly. Right, so that's another, you're getting a whole Intel thing with a GPU and everything. And yeah, or you can get two, you can get, you know, one and a half hardware.
juraj I think everyone should have a note for like, like for Bitcoin, for photos, for backups, for home camera systems, like you shouldn't upload it to Chinese cloud.
josh Yeah, right, right.
juraj And soon, hopefully, some kind of AI, like local inference. I'm very much for it. Actually, I wrote a small book on Cypherpunk visions. And there I was kind of hoping for it's not a book with predictions. It's my like hopium and it didn't talk about Bitcoin price, but there's a chapter about like home nodes and they're useful for many things besides running whatever Bitcoin light node. You know you can you can really do useful things at home control whatever iot and exactly and like everyone already has a router at home some sort of router some sort of with access point you want your laptop backups like where do actually uh apple stopped making these time machines or time capsules, they had these ones. And so where do people keep their backups now? They run a NAS or plug in a hard drive or something? So it's like many people actually already have some kind of node. But it should be easier to run a Lightning node. Phoenix D is amazing, actually, for this.
josh Yeah, I guess the, I mean, even in the, I don't know, even in the intermediary or intermediate um you know if you you could just do i mean so not quite as something as like voltage where you're like getting like lightning nodes as a service but like if you just spun off if you if there was a cloud someone someone basically gets a hetzner box and then they say okay i'm gonna proxmox or whatever vm out this thing i'm gonna spin up a bunch of virtual nodes for people uh you know from their point of you know they look like they're hosting it services and then it's like you as you use that to get thing until people like decide to bring it back i mean i don't know it's just it's like i get the part of the i think the frustration here is like we're dancing around the problem that people just can't you know you know we're trying to trying to make it easy for people like you said the guy the austrian economics guy with just a phone but it's like at what point do you bend over backwards to i mean that could also be another solution, right? It's just like, say, screw it. We're not going to do Keysend. We're going to stay on Keysend, and if you want to participate, you've got to run a node. I mean, that's also another option, and just see who sticks around.
juraj But it can be custodial as well. I think, yeah, like this is what I like about Bitcoin and like free software open source is that there are many options. There's like, you can, like, you know, with the Bitcoin thing. You know, I don't know what wallet you run. It just works with any other wallet. So, and people are experimenting and some people take risks. Some people uh you know grandmas use etfs and like yeah anyone can do whatever they want so that that's what's nice and and i think this is what we should keep so that's another thing i didn't super like about the the podcast we were mentioning we should put the link to it which by the way i i really like the podcast but this this particular part was like when they were playing with strike i'm like okay strike yes you have like your site is tied to u.s and few other countries and people who can do kyc who can actually have the papers uh passport with the correct logo but there are many people who just can't do that yeah um so i think the message here is that, or my wish, I don't know, message, but my wish is that we keep it as open as possible. And like, they were not against it, of course.
josh Yeah, right, right.
juraj They didn't say that it's the only solution. But like the first options I would consider would be those that are most available. And again, like fountain here, you can even buy sats on a fountain with like Google Pay and Apple Pay. You don't even need to know what Bitcoin is.
josh Oh, really? I didn't know that.
juraj Yeah, yes. You can just top it up probably for a high fee. I don't know.
josh I didn't even know that.
juraj But it's like you can onboard people to this value for value thing even if they don't know what Bitcoin is. So it's quite nice.
josh Yeah, I mean, Fountain's definitely the main one I'm using. My only... I love Fountain. I think Oscar's doing a great job. Sadly, I think as it got, I mean, it's got to be difficult as the app developer, but I feel like it got better with Noster integration and it has some very cool features with paying and stuff, but then it got worse as a podcast player. Like I, it just does weird things for me, like when I play and then I come back to the app and then it has like the other episode or it's just like, so, yeah, so sadly.
juraj I reported this back and Oscar said that it should be fixed, but I think it's not as fixed as….
josh I would hope.
juraj For me, I have this project now that's called Loaded For Me. Loaded For.me.
josh Yeah.
juraj And I don't have a business model for it. So basically what it does is you register. I don't even ask for an email. It just make up username and password. And you give it a link to an article. and it turns it into a podcast episode in your own private podcast feed so if you can't read podcasts or don't have time yeah right you have your own private podcast um so i thought that i would just add value tag for it uh because you know i run the software it's running uh right behind me uh so uh uh so not uh like a server infrastructure it's running on mac mini so i thought okay it would be neat to have value tag there yeah uh but fountain for some reason is not sending sets if it's a private rss feed so if i just edit manually as an rss feed which is custom for you it's not a podcast index or anywhere else yeah yeah it just doesn't stream sets at all so oh interesting so that's another bug uh but i don't like i switched to fountain like i use Pocket Cast before which was a really good podcast player by the way I think still is but doesn't do doesn't do payments. So I'm happy with Fountain it has its box custodial wallet but it's I.
josh Think I agree Pocket Cast also, for example the one thing is that when you're in the car, Pocket Cast will actually pause the audio of the podcast, play the car navigation, and then resume. Where most other podcasts will just soften the background.
juraj Oh, yeah, that's right. I didn't notice it, but you're right.
josh This is amazing about Pocket, because when you're listening to something, you actually want to hear it. Just lowering the volume doesn't cut it. You actually have to pause it. And a podcast is one of the few that has this feature.
juraj Okay.
josh Yeah. So, unfortunately, this is what I mean by, like, you know, As a podcast player, I think Pocket Cast is probably one of the top ones.
juraj I like the feature that it's trimming the silence. Like when you listen to Lex Friedman and he thinks for 15 seconds.
josh Right.
juraj I don't really need to wait. Let him do the thinking.
josh Yes. Yeah. So it has some of these nice. Yeah.
juraj Yeah. Yeah.
josh Okay. Okay. So let's try to summarize.
juraj Yes.
josh Let's try to do a nice. Steve. I'll try to do this here. And then uh okay so we talked about types of lightning payments of which uh you know you had basically had three things we got key send which is like the og what currently podcasting is running on now the main one and then there's invoice based ones uh which are bolt 11 and bolt 12 and then this kind of third method is a kind of Cashu kind of hybrid thing so these are like in the Lightning ecosystem, you can do these things. And then, okay, so then going, how does this work with value? The current method is keysend. So that's what everyone's doing. Invoicing with alt 11 has this kind of awkward issue of with an ln URL. You gotta get the ln URL, which needs something to communicate back to the node. And with an LN address, it is a nice way to look up the LN URL. But then there's like the Stoldest Bridge thing. And then the only thing I think we didn't talk about, but what I think those podcasts, what the podcasting 2.0 thing was talking about was using an LN URL with this options JSON section, which would then possibly have a KeySend address in it as a backwards compatibility layer.
juraj Oh, cool.
josh So the idea would be, and I think Oscar was even trying to push this to get it in the LNURL spec, but one kind of transition thing would be everyone set, all the podcasters set up LNURLs, which still breaks all the existing podcasts. We switch over to LNURL, but then you have this options field, which then can have multiple different payment methods. Currently would have keysend vault 11 and then you know vault 12 when that comes along you would just add that to your options JSON so you why.
juraj Not add it to the RSS specification of the value recipient that would be better I think.
josh Okay, so then in the value tag, you want to put, well, so that's one.
juraj Here's my keysend, here's my bold URL, here's my bold 12.
josh Yeah, that's an interesting point. Yeah, because then it already has the keysend address, so you could just have the XML pick whatever. Yeah, why bother doing the lookup? I feel, yeah, okay, all right. That would be good.
juraj Because then there is something you need to look up, and then there's some server that needs to do this.
josh Yeah, you already have the RSS.
juraj And it would also break the compatibility because the old apps that understand the old RSS feeds would not understand this. So I would say, you know, it's just ads.
josh Yeah, just change the XML to have a different option.
juraj Especially in a backward compatible way.
josh Yeah, I don't know. Yeah, I would send that to him because i'm not sure okay so that that one i feel yeah okay i'm not sure okay okay so then uh, uh then let's see so then but yeah ball 12 the benefit so i had mentioned the two benefits the ball 12 were the privacy for the sender you have the static qr code and the thing that you informed me about today was that it basically the third marketing bullet is that it communicates only through the lightning network so we eliminate all the web 2 stuff so those are the three marketing bullets of why people should care about bulk 12 um okay nostr has similar problems is you know basically if you think of nostr content creators as podcasters they're content creators they have similar issues they want to get paid uh or they can get paid in payment so it's really a similar group so i think your thesis is trying to think about them similarly so we solve it kind of like more generically for this kind of situation um uh and then yeah so then lightning wallets we have you know basically that stole the same case non-custodial custodial you know run a server don't run a server this is going to be the trade-off like forever this problem is just uh. You just have to decide whether or not it's worth it to do all this or you'd be okay with the custodial solutions, right? Way forwards.
juraj Well, you can run a non-custodial wallet on your phone, but just not to receive.
josh Okay, yeah. And then there was other, the other kind of interesting one there, which I'm kind of thinking about, is that green light model. Fortunately, unfortunately, kind of locked to green light. But i'm i'm kind of like the thing that when you were mentioning this i'm wondering is like if it would be nice if there was a more generic way where people could run imagine like you can run open some other lightning service provider could run a green light model where they run the nodes and then allow people to do it like that would be interesting i think um but right now currently only blockstream has this capability okay and then yeah way forward you get really this is uh there's two sides to keep thinking about the payer side and the payee side um and uh yeah kind of like i think the kind of thing that you're bringing up is like trying to make this thinking about how it works in a web kind of progressive we didn't mention we didn't talk about progressive web apps but really web kind of like client things making sure it's compatible there and then the receiver side you know all those same issues like again vault 12 is the seems to be the kind of standard where we're no longer need dns everything's lightning network. Unfortunately not going to be ready for albi clips so there's this thing in the middle maybe um but all this is to say that uh yeah so so so yeah it's all very it's it's i i hate i don't want to say it's all very new because i feel like everyone says it but like this is uh i mean this is just the the i actually don't think this is gonna really you know this this is to me is what the whole ecosystem is about like we're building all this from the ground up like so i don't even like the i don't know that they say like the word new or early or whatever but like we're all contributing to this collective idea of what we understand this is what it is we want and it's being built out in kind of like this small little anarchist groups of things so i mean this is this This is just what you, this is just how this works.
juraj This is Bitbunk.
josh Yeah, this is Bitbunk. Yeah, there you go. Yeah. So this is it. This is the nature of the beast. Like, you know, I don't think this is ever going to, I don't know, I don't think this is ever really going to change from this, really. Because like I said, you can get it to be easier, but then you're on Coinbase and that's super easy. And we could have that, you know. but like that's that's the alternative or you have to be work in this thing where now it's relationship based you know you have to talk you're talking to people working this out you know and I think that's, Like there is no, I guess what I'm saying is there, I think people say we're so early imagining a future where this gets easier. I'm saying this is not going to get easier. This, we're here, we're in the future. Like this is, this is it. Like this isn't going to get, this is going to be this forever. Or we adopt a Coinbase model and that's how it gets easier.
juraj It is, it is going to be easier for the users, I think. But imagine from the other side uh like i was learning like coding and things in like early 1990s and like i can't imagine how anyone could learn what i know now about the current technologies like from the start like i wouldn't even know where to start you know that was like zx spectrum basic right one book that was like 30 pages long and and then you know there's like i remember like early days of bitcoin um we had a hackerspace in bratislava and we had amir taki amazing guy and he spent a lot of time in bratislava and one day he. Drew like a like a like a tree like a mind map on a on a on like this you know office uh board uh papers like like these big uh papers and he said this is everything that you can know about bitcoin like there is nothing more because he he has written uh parallel implementation which was lit bitcoin which did everything it was no it had like bitcoin script everything so i'm going to teach you everything about the technology not the philosophy but everything about the current technology of bitcoin and he spoke for i don't know uh maybe two days uh yeah uh but like we knew every byte we knew you know this is like this is these are the opcodes this is what they do this is you know what the current discussion is about but it was like one one big tree yeah but you could do it over a week right right right and then you knew everything there was to know about bitcoin yeah and uh we have been talking for two and a half hours just about ways how to send lightning payments. And we didn't even speak about the bytes. It's a very high level. It's going to get more complicated for the technological side. You're absolutely right about it.
josh Yeah, I think that's okay. I think, you know, I think that's, yeah. I mean, no one, but that's the thing with technology. It works on abstraction layers. Like I am in the middle of like, you know, soldering things to chip pins and looking at a microscope for, you know, like JTAG pinouts. Right, but most people don't even think about this. and they can go on and do quite many things with software without realizing that there's these lower-level protocols that can change the CPU. So, yeah, I think...
juraj There is an RFC... Where is it? There's an RFC 1925, the 12th Networking Truths from 1996. And there's the number 6A, which is a corollary of six, is it is always possible to add another level of indirection.
josh Yes, yes, yes.
juraj It's a very good RFC. Yeah. So this is what this podcast and our discussion has been about.
josh Yeah, exactly.
juraj Layers of indirection, you know, lightning and Bitcoin and LN address and LN URL and you go look up something here and there and there's DNS.
josh Right. Yeah, exactly.
juraj Exactly. Yeah.
josh Yeah. Okay, I think, yeah, this, well, I mean, I think this helped. I definitely now feel a lot more clear on all the different options. You definitely did the lion's share here with this. I don't know if you're going to make this mind map. I think people would really appreciate this.
juraj I can share it. I didn't update it with your inputs, though, so it's just this. We didn't talk about everything, though. Yeah, well, I think that's fine. There's one last thing. There's BIP353, which is a way how to publish both 12 offers in DNS that look exactly like LN address, but use a completely different protocol.
josh We can save that one. I think people would appreciate this because it's big enough where you, I mean, I really like MindMap. How did you make this what software did you use to make this mind map by the way x mind this one oh yeah i have the same i have x mind yeah so i thought i recognized it so yeah the um yeah so it's i personally like my maps and i think it's this something like this because you start going down a path and then you realize there's other things that connect and relate to it so it's i think yeah i think people would really like this um just make sure it has a date on it because it'll probably get stale in a month. So make it very obvious that it's, that would be my only suggestion.
juraj For Albycalypse.
josh Yeah, exactly. Make sure it's...
juraj Or December 2024.
josh Because it'll show up. Yeah, no, I, yeah, hopefully, if it, you know, if people tuned into all this, this, I think, was pretty exhaustive. I think what was nice to have your perspective is that although I like I said really like Oscar it's nice to have kind of like a perspective that someone who's not necessarily like, And I'm not saying he's biased, but he's an independent self-rationing, doing things in his self-interest kind of thing. So you just have to... And then with your background, with all the different payment stuff you've been messing with. So yeah, so you mentioned the pay, but let's just close out with some of the projects that you've been doing with regaining the podcasting because you just did. You've got the the one you just mentioned you've got a sea lightning uh dashboard, yeah and you just did a youtube two chapter thing yeah.
juraj But that's very simple but it's also for podcasting 2.0 so basically with podcasting 2.0 you can do uh chapters like on youtube that's you have one podcast and it has like several parts we we will probably have a i will do it i use a service called alphonic for podcasting i highly recommend it uh um it fixes the audio so the levels and the noise and it will probably not erase your uh very cool background i have to check my voicemail but it basically fixes the audio with one click and it uploads it to YouTube, converts it to MP3, creates a summary, a transcript and chapters. But the chapters are in YouTube format. And for podcasting 2.0, we need it in JSON. And I don't like writing JSON by hand. So I have a small script in Python that converts it. And you can also add images. So that's nice that each chapter can have a different image. That's what you told me. And I decided to do an episode. I did an episode about meditation. Unfortunately, it's encrypted for most of you because it's in my native Slovak language, but Josh can understand it already. He's learning Slovak.
josh A bit, yeah.
juraj And I decided to use all the podcasting 2.0 features that I can because there's a track that I did under my musician name, which is D. Ohm. I had a guest speaker who read a part of Paul Rosenberg's book, so I wanted to send splits to her. Then I'm mentioning I took a zero-gravity flight with my friend and I used the video from the parabolic flight when we are in zero G. So I sent splits to him. So it's like time-based value splits. Then for the reading, I wanted pictures for each part of the reading, different pictures, so it's kind of changing. So if you're looking at your fountain or whatever podcasting app, you get different pictures for the passage from the book. I added the transcript there, which is also a podcasting 2.0 feature, I believe. So I tried to kind of use all of this. But for the JSON, I needed this.
josh Okay, yeah, that's amazing.
juraj That's on my GitHub.
josh Okay, nice. I have not done... So Alphonic does the transcripts. I have not done the transcripts feature yet. And then you're hosting... What hosts are you using to have the pictures and stuff? You're using WordPress-based...
juraj Yes, I use, yeah, yeah, PowerPress.
josh PowerPress.
juraj Blueberry is the company. PowerPress, but I'm hosting it myself because I don't want any third-party service. But that's basically generating the RSS feed. That's what it does. But it also supports value time splits and like value for value and everything.
josh But it's pretty easy. You can upload, because for the chapters, I had to, for the chapter artwork, I had to basically upload them to like Nginx and then I had to I did it very manually, where I put a bunch of JPEGs in a folder in Nginx and then called them out by chapters.
juraj So it has a very nice chapter builder where you can just click and upload everything, but the problem is that it didn't save so I spent 20 minutes clicking it and I think the problem is that you need to kind of publish the episode first and then edit the chapters so I lost everything so I said screw it I'm not going to spend another 20 minutes clicking.
josh Writing timestamps and choosing images.
juraj So I just took the chapters from YouTube and converted it to JSON.
josh With the script and.
juraj It was faster to write the script than to do.
josh It manually okay okay i see yeah yeah i think i heard they did that yeah they wanted the ability to publish the you know they wanted the ability for someone else to do the chapters basically so you can that way it's decoupled so you publish and then you can have a chapter and then you up then you update the rss to point to the chapters the chapter.json and then it allows.
juraj Yes it allows So you can have the builder or you can just give it the URL to the JSON.
josh Okay. Yeah. Yeah. Okay, so yeah. So you're out there.
juraj And what are you up to? What are you up to?
josh Yeah, so I've got the voicemail.
juraj And it's the new BitPunk.
josh Yeah, the fifth, 0.5 is going to be a holiday issue. I have, there's going to be a Christmas. There's a guy named Hey Citizen who makes a bunch of decentralized music. He's got a Christmas song called It's Christmas Time Again. So we're going to pull that song in. Someone did a reading of a Christmas carol. uh also on podcasting too like a full-on five actor narration like super high quality what yes super so so uh so.
juraj So does it do a value time splits.
josh Yeah based on when, yeah it just does the like high level value one yeah that would be pretty that would be pretty intense yeah so i'm gonna pull this in uh i did what i like about the christmas carol is that you It gets kind of pushed down as socialist propaganda, this miserly person. But I personally like the anarchist kind of interpretation of it, where you had this guy who just out of his own free will had a self-transformation event, and then realized he should be a better person without any interaction from the government. He just had this transformative experience. So this is my interpretation that I like of The Christmas Carol. So yeah so there's some I'll use some clips from that it's like a 50 minute thing so it's quite long but I'll pull it and then and then the big thing there's two things other things is I want to do a FM soldering kit, So I have 60 of these FM radios. They're quite small. They're smaller than the board is smaller than the cassette. And when you solder them up, it'll be an FM transmitter. So what I want to do on the tape is then kind of do like a solder by numbers. Like, all right, take this. So we'll go through that. And then you can take your cassette player, plug it into the thing you just soldered, and then listen on another FM receiver.
juraj And you have a pirate station.
josh And now you have a pirate radio station yeah so it'll be quite small in like 10 feet and it's a very like but it'll it'll get the idea across and then the last thing there's this book i don't have it oh i do have it um this guy on uh he actually one of the first people to leave me a voicemail um this guy wrote the book the phonics the radiophonics laboratory, and his name is justin patrick moore i knew i'm a sub stack but the conversation went like this, he's like oh I have this book I talk about like electronic music and like radio stuff and I was like do you know have you heard about Sig Sally you know from the I did that thing with talking about the 1948, analog encryption and he goes yeah I have a chapter on it in my book and I was like just give me the link I will I will buy the book this is all this is it so so it's quite overlaps quite nicely, so I have a book review yeah wow book review yeah so book review so then so hopefully I get the audio out you know before the end of the year and then probably the tapes in january cool.
juraj Cool looking forward.
josh Yeah this one should be fun should be fun yeah and then i'll try the pepper in uh try to set like a christmas mood so maybe some like fire crackling fire crackling in the background introduce it with like some uh you know lounge christmas lounge kind of music and try to try to set the the audios yeah i don't i don't know if i'll sing yet but we'll see.
juraj Cool cool all right this has been fun.
josh Yeah yeah.
juraj Head over to bitpunk.fm to hear the episodes of bitpunk.fm and and option plus podcast is at optionplus.io.