TFTC: A Bitcoin Podcast - #174: Antoine Riard

Episode Date: June 29, 2020

Join Marty as he sits down with Bitcoin Core contributor Antoine Riard to discuss: - Onboarding millions onto the Lightning Network - BIP 157 - Full nodes - Bitcoin Core wallet refactoring - AltNet - ...Time-dilation attacks on the LN - CoinPool - Schnorr + Taproot - much more Find Antoine on the bitcoin-dev mailing list and in IRC Shoutout to this week's sponsors. Cash App. Start #stackingsats today. Use the promo code: "stackingsats" to receive $10 and contribute $10 to OWLS Lacrosse when you download the app.

Transcript
Discussion (0)
Starting point is 00:00:00 What's up freaks, it's your boy Marty here to introduce this episode of Tales from the Crypt. A demented pleasure of sitting down with Bitcoin Core contributor Antoine Riard. We sat down in person, first in person interview in quite some time. Very special interview for me because it was good to get back in the studio and be able to see somebody's face while I'm interviewing them, get some social cues, drink some wine. Very, very fun episode, long one. Long rep, three hours, I think you guys are going to like it.
Starting point is 00:00:29 This episode is brought to you by our good friends at the Cash App. You freaks already know all about them. They're helping you stack sats. They're helping you send sats. They're helping you receive sats. Letting you sell sats, if you so please. And on top of that, they're allowing you to make sats the standard. You're not stacking fractions of bitcoins anymore.
Starting point is 00:00:45 You're stacking whole sats. Mentally, it's a lot more pleasing that way, in my opinion. On top of that, they have Cash App Investing. If you want to stack slivers to stonks, you can do that on the Cash App. If your favorite stonk is a little too expensive, you can buy as little as $1 because it's connected directly to your bank account. There's no 4-5 day waiting period. You can start stacking sats today. And guess what? Cash App may even be your bank account.
Starting point is 00:01:12 They're allowing individuals to direct deposit into the app. You get accounting numbers, routing numbers, and you can use the Cash App as your bank if you so please. Cash App investing is a subsidiary of Square and member SIPC. As always, make sure you use the code stacking sats. That's one word, S-T-A-C-K-I-N-G-S-A-T-S. You're going to get $10, and $10 is going to go to our good friends at Owl's Lacrosse in Chicago. That's Owl's Lacrosse, not Al, not that dirtbag Al
Starting point is 00:01:40 with some weird issues. Owl's Lacrosse. Woo, woo, woo, woo. Download the Cash App. Use the code STACKINGSATS. Enjoy this episode with Antoine. It was a pleasure sitting down with him. I wish him well on his journey back to France.
Starting point is 00:02:27 Bitcoin wins. In the world of fiat currencies, Bitcoin is the victor. I mean, that's part of the bull case for Bitcoin. If you're not paying attention, you probably should be. What is up, freaks? Welcome back to Tales from the Crypt. It's your boy, Marty Bent here. This is a very special Thursday night.
Starting point is 00:02:46 This is the first live interview, in-person interview. Not live, in-person. It's making me feel alive. I'm not looking at somebody through a computer screen. I can know for sure that this person exists and I'm not getting an AI version of somebody on the other line here. I'm sitting down with Bitcoin Core contributor Antoine Riard. Antoine, welcome to the podcast. Thanks, Marty.
Starting point is 00:03:09 Thank you for coming and have wine with me throughout all this. I've, like I said, been interviewing people over Zoom. Sorry to say that. Conversation is recorded, so it's going to be put public anyway, so I don't mind using Zoom for that. But I do think them centering Chinese activists, that's another conversation for another day. Looking for other software. Yeah, so my big friends are going to mock me right now because I've been like pretty demanding privacy concerns. But I made a mistake towards someone these past months, and this is part of my excuses.
Starting point is 00:03:50 So, yeah. What's the mistake? This? uh this person knows okay it's between you and that person maybe we'll find out one day what the hell's going on we met you said over a year ago i can't believe it's been a year since we first met at bit devs almost a year ago then we had uh beers after bit devs very passionate conversation it was you um fabian yar elikai i was there for sure yeah you're sitting at a table talking about what you guys were going to embark on starting your chain code residency yeah i mean
Starting point is 00:04:25 the residency was just started uh i think personally it was my third day in new york i just arrived morning of 12th june last year and directly getting started in the residency and getting the flow meeting everyone uh switching to an english context and uh first day was just introduction for us and we started hard. Like we started hard Thursday was Matt on the Bitcoin ecosystem Bitcoin history and
Starting point is 00:04:56 in the afternoon if I remember correctly it was like Ethan Amon on like Eclipse attacks and this kind of stuff and the third day our big day was Sir Austin peer-to-peer and Julia
Starting point is 00:05:12 Fenty on privacy on the peer-to-peer layer and we had like this awesome beat there yeah yeah i think i remember peter wool was there sippa was there not this one not that one no that was for the oh that was number 100 exactly yeah it was socratic meetup number 100 getting the mixed up yeah i'm like i miss yeah it was like quite like it was a blast my first beat day if i really remember like you arrive in new york and you enter into this room and you have like 200 people it was really crowded like the first one like last summer there were a lot of people and you have like um few uh bitcoin protocol
Starting point is 00:05:51 developers uh more than five like more than you can count in your hand and you have like really intense debate for two hours and people got i mean sharing knowledge and it's it's really like it was really special for us like to start the residency like this it's always a magical feeling in bit devs um i miss it terribly and i'm going to miss it uh when i when i leave new york but i'll come up for some more bit devs uh throughout the years so what was the you came from france uh what was what was that culture shock like from from a bitcoin community perspective and then from a france to new york perspective okay so you were explaining well there's probably like 20 Bitcoiners in France or Paris?
Starting point is 00:06:36 No, I mean, we are the awesome community. I haven't seen most of them since Hawaii now because I've been in New York. But it's really like, it's really more like friendly one. People are more hanging out together, but not that much technical. We don't have like,
Starting point is 00:06:55 they used to have technical presentation. We don't have anymore. We don't have like big day where you have like people gathering links and going systematically through every link and trying to engage conversation and trying to make people think about it and trying to prevent people doing mistakes with hardware wallets. And yeah, I think like that much people are interested in really deep technical stuff. Yeah, it's right.
Starting point is 00:07:29 Like, I do love those dinner meetups where you're just shooting the shit, getting cosmic about the future of Bitcoin. But BitDev is special in that. You really dive into the technical details. You don't understand Bitcoin if you have never been to one BitDev instance. And it can be the New York one, but I've been lucky. I think I've done BitDev on three continents. Oh, really? What other BitDevs have you been to?
Starting point is 00:07:55 Okay, I've done one in London. And I think my best one was in Tel Aviv for scaling Bitcoin last year. Who Michael Fulkson runs, London Crypt. Yeah. Yeah. It was. Yeah. And then is Udi running Tel Aviv or no?
Starting point is 00:08:11 Tel Aviv was a special one for scaling Bitcoin last year. Yeah. Yeah. It was really good. Like we were like in the embassy, Bitcoin embassy there. It was too much crowded, but it was a good one. Three hours one and we are like, John was really good. It was really good.
Starting point is 00:08:27 John Newberry was leading it? Yeah, John Newberry. Shout out to John Newberry. John, I miss you if you're listening. So speaking of John Newberry, legend at Chaincode Labs, what's your residency been like? What has it been like since that first week? Okay, the first week. You don't have to go week by week.
Starting point is 00:08:47 I think I can quote from memory. I can quote from memory every day of the, I mean, the first three weeks of the memory of the residency, because each day was, like, you know, each day we are, like, different presentation, different topics, so I talked about the first three of them. The fourth one was EDKI on double-spin attacks, and us doing presentation for the other resis. The second week of the residency was mostly digging into Bitcoin Core with the help of John, actually, and going through the wallet, going through the different security model of Bitcoin Core,
Starting point is 00:09:30 going through the validation engine, going through us doing more presentation on the bips. And you learn about really weird stuff. You know, like, I think one of my, I mean, we had this presentation by Eli Kai on OpVer. And I'm not sure if you know about OpVer. OpVer? It's an opcode in Bitcoin script.
Starting point is 00:09:56 V-E-R? Yeah. Yeah. And so it was parsing the version of the software directly on the stack. Hmm. Yeah. Is that like an auto-update?
Starting point is 00:10:08 like this opcode was letting you fork like like if you use this opcode between different versions you will just fork the network it'd be like a branch exactly it was like this kind of wrong drawing of satoshi design it was like uh disabled in 2010 or something like this but it was really good doing like doing this kind of can you find it here oh maybe it's okay so i never think this book this book is bitcoin v0.01 alpha wow i mean there is really a book about that yeah there's a book shout out to uh copyrights i just put it right it's not open source i think it's not creative commands all right okay imagine maybe okay let's well okay if they're up there up there okay i can't find it
Starting point is 00:11:07 It's, let me find it. Yes, it is. It's here. You just turned two pages and found it. On the left one. So it's up, not, up, ver, up, if, up, not, if, up, ver, if. Yeah. So how does it differ from up, ver, if?
Starting point is 00:11:29 I think it was doing the same, but doing some kind of control flow. Like if, if I don't know, I don't read, I haven't read this opcode, but I think he was doing something like if version is something branch left or branch right. Yeah. Yeah.
Starting point is 00:11:47 So, so it was a second week of the residency was beacon core, like beacon core controls. So has Opvair been deprecated? Opvair was? Has it been like taken out of the code base? I hope so because if not, If not, I mean, I can fork the network, like, tonight. Well, let's hope it's out.
Starting point is 00:12:09 Yeah. I haven't checked. Well, and the third week was, okay, I think it was the first in-person training of lightning developer in the world, for the first time in history. And it was really, like, really cool because we had, like, Christian Deckard,
Starting point is 00:12:27 Rene Picard, we had Fabrice Durand from Async, and we had alex bosworth from liking labs and we had um we're like and we were actually to have touch uh touch doing some liking stuff touch yeah exactly yeah that's what we'll get to that later in our conversation but i want to talk about discrete log contracts at some point yeah yeah for sure uh and that was like our three weeks of training the liking one was still experimental because people are just doing presentations on stuff they released like a week ago on the main list or two weeks ago and it wasn't spec out at all so a lot of you know not unraving but just giving you the high level ideas and three weeks of formation education deep education and when
Starting point is 00:13:19 you are done with this you start the coding part you start like the project part which was completely different but awesome too and you're thinking about what you're going to work on to this three-week period right or do you come in knowing sorry do you come in to the whole residency knowing what you're going to work on after that three-week period or you sort of figure it out okay i used to work already on uh when i started the residency i was working on Rust Lightning since 10 months, months. And
Starting point is 00:13:54 I was working on Bitcoin Core already before the residency, just getting started at that point. So I think I split my residency between bouncing back between Rust Lightning and Bitcoin Core. It was really cool. Did you know that going in though or did you just decide
Starting point is 00:14:10 a couple weeks in, here's what I want to focus on? I already know that I already like big Rust Lightning pure painting before starting the calling station. And I was just willing to get the merge. We got the merge with Matt. It was like, okay, it would be interesting
Starting point is 00:14:29 to speak about this after, but it was like really experimental stuff on dynamic fee bumping, which is for Nike really important. And then I started to do like in-depth refactoring of the wallet and the node interactions. and like i'm not sure if people are really aware of um the historical and like how much blotted was the code base yeah it's we've talked about it on this show before but to refresh your freaks
Starting point is 00:15:01 memories in bitcoin core at least we're fixing a lot of things that satoshi sort of didn't think through in the design too well whatever and one part being that the node in the wallet are sort to connect and it's hard to develop on one section because the other sort of entangled yeah i mean like the code path of the i mean if you take the code from 2010 or 2011 the the code path of you know like marking an output for spending or something like this and validation were just like the same like these lines were just following each other and part of my work there were just like splitting the locking between the wallets and in the main port and it was like it was there since Satoshi and so in getting there like I started to I
Starting point is 00:15:51 started doing its you like last year and my main peer on this was marriage in April of this year so it took me like 280 days something like this that's pretty crazy nine months of us yeah you've been working on this Russian pretty closely for with Russ you know yeah yeah Ross helped me a lot like I mean it has been like he was working already on multi process and I just like he has a bench of okay I started to work on this part of the code base of beacon core code base because you know I was working on rust lining at some point I was you know what I'm going to take the rest line implementation and I'm going
Starting point is 00:16:37 to plug the backend of Bitcoin Core. And I was naive, because there is no such ready to plug Bitcoin Core backend. So I was like, okay, let's try if I can clean the bits. Let's try if I can, I knew about the multiprocess work, and I just start to solve to do in the codebase and trying to, you know, I have in mind what should be the backend for Lightning nodes
Starting point is 00:17:05 and how it should be easy to plug it to Bitcoin Core. It's not something, it's still today, it's not something. But he was learning a lot, like trying to push him forward on this side. And yeah, Ross helped a lot. And multiprocess is going forward. It's going forward, like there is currently one of the big last peer on multiprocess
Starting point is 00:17:30 has been opened like two weeks ago by Ross. Oh really? Yeah. And this is like sort of the... The build system part has been merged. The one I was mentioning, the inter-process one, lets you actually talk between your GUI and the Bitcoin node. Yeah, that's what I was saying.
Starting point is 00:17:48 You don't want to talk about it because you haven't been in the GUI too much. But the GUI just got its own GitHub page, correct, Marcos? I think it merged. I think it's still a proposal right now. I mean, okay, so we are like this talk on IRC. two weeks ago, and people at that point are like just, you know, it's starting to be a big open source project, and how do you, like, cognitively scale,
Starting point is 00:18:18 like, a project of this size, and, you know, like, mangers, like, they have to, at least to be sure that each peer are not going to touch, you know, GUI changes are not going to touch validation ones. And even if in the name of the peer, you have this is a GUI peer, you have to check the files, you have to check. And being able, it's really likely
Starting point is 00:18:51 it's going to stay in the same tree. But being on a separate GitHub project will let people, maybe people who are willing to contribute of the GUI, it would be less daunting for them to make a change without touching. Yeah, it's like a staging ground. Yeah, a staging ground. We'll see, it can be worse,
Starting point is 00:19:14 because the GUI is not that much. I don't know that much people who are actively working with the GUI. There is few of them, and it's pretty cool. Yeah, it's trying to have a beacon core more modular. Mutual process is part of it, refactoring the interface, between components, it's part of it. Getting the GUI on its own repo, it's part of it.
Starting point is 00:19:38 Yeah, it's . So for a dumb, non-technical pleb like me, the way I understand a GUI, the Graphic User Interface, Graphical User Interface, whatever it is, is it just UX, UI on top of the protocol, just pulling data and displaying it? Is it that too simplistic? Well, like you said, there is a GUI between core.
Starting point is 00:20:08 There's a lot of people using it. I'm not one of them. I didn't want to bring it up and call you out, but you did it yourself. How are you going to know the user's experience? Okay. Download the GUI tonight. No, no. The GUI is part of the code base by default.
Starting point is 00:20:29 You don't use it. you know what i will tell you like a little secret there is like combining flag to disable degree so i don't have to compile it agree when i'm running you can call there's a combining what a compiler's flag oh compilers file so you just go from compile yeah and you don't yeah i mean do you just pseudo whatever oh yeah something like this yeah yeah and but yeah i mean residency i I spent digging into the wallet. I spent learning about the code base, learning about beacon core review process.
Starting point is 00:21:08 It's quite like, it's really like something which is really a part, I think, as an open source project. The review process is something like really like resource, really heavy, and when PR are starting to touch critical parts of the code base, you have a lot of people caring about it, you have abos on it, and it's going to go through multiple rounds. People are going to, okay, at the high level, do we need to do this change? like you know it is worthy to burn like maybe 1 000 hours of people hours yeah that's but 1 000
Starting point is 00:21:57 hours of people bandwidth yeah and even if it sounds like it can be an improvement you have at some point to you know like wait wait between and then you get into the whole again game theoretical opportunity cost discussion of how long should we discuss this yeah Well, I've not seen yet economic studies of people who use times and how maybe we can came up with some kind of stochastic process, you know, like randomly picking up here and like assigning people to it. Maybe it can work. But, you know, it can be like some kind of weird cocktails doing this.
Starting point is 00:22:41 And I'm not good at picking up cocktails or not. like yeah so you like to start fresh uh yeah i mean like so beacon core review process it's you start by the audio level and then you start the coding part and i think it's um that's something like if you're doing a lot of review and i like reviewing personally so like asking you what's your review methodology you know like close your laptop take a pen take a paper and write down what's your review methodology you know Like, do I open the code first and, like, read the code, like, dumbly or, like, mechanically during the first pass?
Starting point is 00:23:21 Or, like, I'm going to try maybe the description of the PR by its author. If we are implementing a BIP, maybe I should read the BIP first. Is the BIP going to match the code? Is the BIP, like, descriptive enough? You know? And that's something you can't, that's something we're always improving at. That's something we should,
Starting point is 00:23:47 there's always ways to do it better. And the great thing now, like people, we start to be like more explicit about it. The Bitcoin Core Review PR Club is just doing a nice homework here. And this happens at IRC, right? Yeah, it's on IRC.
Starting point is 00:24:04 every Wednesday in the morning, 1 p.m. in New York time. Yeah, it's like 1 p.m. It's also because people just go through some PR, explain what markers to look there. I mean, if it's something which is heavy cryptographically, like is it making sense? Is the algorithm correct? Is there a way to improve performance with the better data structures?
Starting point is 00:24:35 Is this documentation good enough? Is it described being good enough for the future reviewers, for the future people who are going to use the part of it? Unborn reviewers at some point. Unborn, yeah. It's unborn reviewers. It's doing an awesome work at unborn reviewers. And honestly, if you learn something working on core, the bottleneck is not writing code
Starting point is 00:24:57 because writing code is okay, you know what I mean? Like even C++, that's okay. It's review, right? Attracting people and being sure that people are going to be, being sure we are doing reviews in a short span of time and being sure that, you know, you're not going to let three months between two reviews on it
Starting point is 00:25:23 because you have to get back to the whole conversation Yeah, because it's all a very moving target, right? Because there's reviews going on another part of the code. So being a chain code for the residency, I had, like, awesome... It was really... It was an awesome opportunity getting faster and learning faster about the review process.
Starting point is 00:25:45 I think at the end of the residency, I was starting to get into the loop, the reviews loop, yeah. So it was three months last summer. Has it been worth that time investment to learn the process? The residency? Yeah.
Starting point is 00:26:00 I don't see how it could have been like. We can, like, I think it was the first time the residency was so long. But there was no better way of getting Bitcoin protocol development. And I've been like, it has been an awesome opportunity.
Starting point is 00:26:18 And I'm really like, thankful towards John and Jonas who have organized and sweat numbers of hours on it and make things really, really good for us to just do good code. Two legends. Two legends of the game. They're great.
Starting point is 00:26:41 Well, before we hop on to your work, I want to stick on the review process here. And you were mentioning get out the pen and paper and tell me how you review. So what are the different ways in which people... Do some people just run the code and see how it runs? Few hints. First, you should ask yourself, is this a documentation peer? Is this a refactoring peer? Is this peer implementing a new BIP, like the Taproot one or like LA?
Starting point is 00:27:06 Is this peer, and there is like a second matrix to run, what's the risk of missing out this peer? Like, if we fucked up the review process of this peer, what can break? you know, are we going to just break the GUI? Are we going to break the wallet? Are people may misuse the neural PC and overpay fees or something like this? Or are we touching like the core validation giant? Are we doing some kind of removing some SMU TXO pure,
Starting point is 00:27:42 which is doing complex refactoring and we should be like really careful or are we touching like some bits and like, you know, encapsulating structures in the peer-to-peer stack. And like, and depends on this, you should allocate yourself times, you know, like documentation, you're going to spend less time for sure.
Starting point is 00:28:07 And, you know, in an ideal world, you will spend infinite time on removing, right? Because you will always come up with new ways and new way to do it better. like we don't live in that world you know you have time constraint and review your exhaustion after multiple of after multiple runs is something we should think about it be cognizant of yeah at some point we have to move like do incremental steps to move forward yeah and that's i mean and then even like after the review process like the conversation about like it's not ending after
Starting point is 00:28:49 the review process you know like yeah okay i'm spending i'm spending like and i think everyone in course i've done this at some point but reading huge parts of the code base and thinking how you this could break you know like at some point i was trying to does like buffers like if i send you a lot of blocks if the buffer going to explode and crash the nodes and i was like the buffer buffers like data buffers yeah yeah and all of them curves are like you know like well well done you know you you see that people have thought about it before you yeah and you see like the level of thoughts and the amount of time people are spending on getting right the critical part is just mind-blowing yeah well it's got to be right like you hope if you're using this network
Starting point is 00:29:44 that that type of thought is going into it it's like thank you for reviewing it and that's like somebody i'm not i'm not one of them like i'm not one of the biggest rulers i'm far from being one of them i'm just but you are a reviewer you have reviewed have you yeah yeah i spent i haven't reviewed so you've done more than me uh that but it's crazy and so let's talk about like what This spring, you've come out with a lot of stuff. Wait, let me go down the list here. You had a very interesting email to the dev mailing list in May about onboarding millions onto Lightning,
Starting point is 00:30:28 how to do that in a scalable, secure, and private way so that people can access the network with some privacy, how BIT 157 plays into that. We'll get into the specifics there. But on top of that, wallet refactoring, which we've been talking about already, time dilation attacks that you and Gleb worked on, CoinPoll, which also you and Gleb worked on, AltNet, and given presentations on Lightning Network. Doesn't need to be chronological. There is a chronology. There is one because I was working on this right refactoring.
Starting point is 00:31:03 And one part of it was like, okay, no, the wallet will have its own tip. You know what I mean? Like the wallet and the node, they will have different views of the blockchains. Depending on when the node sends the wallet information. Yes, exactly. I spent the summer like bouncing back between wallets and Lightning and at some point say, you know what? What if my Lightning nodes has a different view than the other guy?
Starting point is 00:31:32 your lightning node has a different view than your lightning counterparty or your full node yeah your full node yeah and i explained the issue to matt and he was like yeah of course it can work and i think i explained the same issue to siros and he was like oh yeah it will work and people weren't really aware about it and i think at some point just so for you freaks out there the way I understand this right now. So you spotted a problem where the lightning node and your full node that it's connected to
Starting point is 00:32:08 could have different chain tips and that difference could be... The full nodes, like... Okay. Every lightning node should have access to the chain. Yes. Yes. And the full node of my counterpart
Starting point is 00:32:22 may not be on the same chain. Ah, okay, there it is. It's your counterparty in the channel. Yes, exactly. Okay, there we go. What happened starting from then? And thinking more about it, I came up, I described the issue on the lightning mailing list,
Starting point is 00:32:37 like November, December last year, and it was like the starting of diminution attacks. So I'm not sure if you're familiar with Eclipse attacks on beacon core. Yeah, I am, but we can refresh. It's basically when your node gets surrounded by malicious nodes, right? It feeds you bad data. Yeah, there was like, it's coming from peer-to-peer distributed system, which has been studied in the 2000s years. But, I mean, basically, you are not going to view, and that's something which is not in, I think it's not in the Bitcoin white paper.
Starting point is 00:33:17 But one of the assumptions is miners are honest. And the second one is the network is not partitioned. you know like there is something like the internet and there is and we can flow information through it and part of this information is blocks and if my full node is not connected to the internet anymore or is not connected to the honest network anymore i'm going to be like splitted from it i'm going to yeah and while you're split you're going to think you're on the right network and you think you're on the right network right it might not be true right And that's interesting because Ishan Iman came with this idea of Eclipse attacks on Bitcoin in 2015.
Starting point is 00:34:01 And at that time, he was saying, OK, you can lose money if, first, it eclipses you. And secondly, I'm able to mine blocks to do a double spam or able to reorg the chain or do stuff like this. Digging into this, for Lightning, you don't have to have ashrate access. So this is an assumption. This is where Gleb called me out. That's the whole point of why time duration attacks are interesting. Because you don't have to be a miner to steal funds from your Lightning nodes. So the way I understand it is if you're not a miner, it's only a griefing attack. So you can't technically steal.
Starting point is 00:34:49 You're just pissing somebody off. We're opening a channel, you know, you and I. You know me. I know you. Don't trust each other. It's block 100, right? And if I try to shoot you, you're going to have, let's say, 20 blocks. Period.
Starting point is 00:35:12 Blocks period. And between these 20 blocks, using a full node, correct? Yes. Let's keep simple for now. And yeah, it's great. So there is like, we are doing, starting to do HTLC between each other and sending phones back and forth. And, and so at some points you still see blocks,
Starting point is 00:35:36 but blocks are going to come up slower. And due to block violence, There is no way, internally, for you to know if it's just a bad Poisson distribution or if it's someone messing up with my full model. Yeah, I mean, we saw alternatively, I think, two or three months ago, something like 14 blocks in 50 minutes or something. Yeah, that's exactly the issue. You can't know because that's the way the hash rate and blocks are mounted, right? and so you see blocks coming slower and you know everything is fine and at some point i'm going to be at block 120 and you are still going to be at block 100 and now i can close the channel with a
Starting point is 00:36:22 revocate commitment transaction and in the eyes of the rest of the network this transaction is like it right and when you're going to see this transaction it's going the so this be a force close the time window periods is going to be force closed okay and you're not going to be able to punish me okay so and there is like variation of these scenarios on the because there is like two kind of time logs in lightnings to keep it simple there is the justice one and than the one between the ops. You know, I send Alice, send an HTLC to Bob, and Bob send HTLC to Carol.
Starting point is 00:37:04 And the HTLC on Carol is going to be on the lower time log than the HTLC between Alice and Bob. And actually, using time deletion attacks, you can exploit the time logs between Alice, Bob, and Bob Carol in a way to steal phones from Bob. So, time deletion will work against any routing nodes, but it will work also against live clients today. And more effectively, correct?
Starting point is 00:37:34 Yes. Well, if you are using Bitcoin Core, which is great codebase... Disclaimer. Disclaimer. I'm working on Bitcoin Core. Okay, take a sip, take a sip. I'll introduce the wine here. Oh, yeah.
Starting point is 00:37:56 Or do you want to introduce it? No, no, do it, do it, do it. No, this is your gift. Yeah, yeah, okay. You brought it. Okay. It's Chateau St. Julien. 2016.
Starting point is 00:38:04 Well, okay. The fact is they don't sell it the good years in New York, or not where... What's a good vintage? 2015 in bordeaux is really good yeah yeah 2015 2009 2010 if you're really lucky get a 2005 uh yeah yeah why uh what's a good season of bordeaux like more wet more dry just depend which um c'est pas do you are you looking for like chateau saint-emilion yep no no what's like a good what's like a good season season yeah years i mean no what's the weather like during 2015 I know this 2016 arts of rage not awesome year not an awesome one yeah
Starting point is 00:38:49 yeah it's good it's okay it's very good I'm enjoying it okay cool thank you for bringing it yeah so SPV clients SPV okay let's say you want to buy a Chateau Saint-Gilles your lightning can you buy why no lightning today I'm sure it's some bar there's a bar in germany right bar uh room 77 room 77 right i've been there like too much time i've never been there no i haven't i've never been in germany but never been in germany okay i'm not sure if are you a real big player get there i guess not okay all right um okay so fuck is like beacon core we have like strong anti-eclipsing measures.
Starting point is 00:39:39 We are going to distrust inbound connections. We are going to... Okay, so you are going to bootstrap your node. You are going to fetch addresses from the DNS dealers. And then you are going to connect stochastically to outbound peers. And then you may open inbound connections and people may connect to you.
Starting point is 00:40:02 We care about testing. like when you send me an ip address i'm going to test if the connection if the this ip address is a real one that's what fear is doing grossly okay how do you test that we have a thread opening going through it's a thread ah it's not a thread like no it's not a thread i think And if I remember, it's just like in open connections, we are going to every 30 seconds or something like this. Maybe it's two minutes. I don't know.
Starting point is 00:40:38 Something like this. And we are going to open the connections, ping the node, and if it's on Starbucks, we are going to keep the address in our database. So there is like, and there is also the fact that we are going to select IP address by prefix, by internet prefix, and being sure we don't have too much peers
Starting point is 00:41:01 in the same internet prefix. Yeah, does an Erebus work around this? What? Or the Erebus attack, what? Well, no, we are, like, because, like, you know, doing IP prefix selection, it's too much. Like, it's already 2016. We are already doing more fancy stuff right now.
Starting point is 00:41:19 And Gleb and Sipa have worked on this, which is, okay, the internet architecture is mostly you have an IP address, which is just an address for sending you information. And this IP address is going to be, you are going to allocate a range of IP address to ISM, Autonomous Structure, Autonomous System. system. And this autonomous system is going to be your ISP, or it's going to be some entity on the internet during routing stuff. The fact is, the internet architectures, there is a lot of merge between ISPs, there is a lot of things like this, there is a lot of dynamic there. So you may have a lot of IP address, not in the same prefix, belonging to the same ASN
Starting point is 00:42:13 at the end of the day. So that's more fancy. You can do this in 0.20, it's still experimental right now. But we are doing progress on this. But my point is, beacon core, there is a lot of work down on preventing Eclipse at the protocol level, or at the peer-to-peer level. Link layer is different right now, actually. SPV clients.
Starting point is 00:42:40 There is no strong anti-eclipsing measures on the client side. Because that's what matters. So it's like Electrum side? Yeah. Let's say you're running Electrum or Neutrino. And they are going to connect to Electrum servers or Neutrino servers, B157 servers. and they are going to, you know, I can send them a lot of junk addresses
Starting point is 00:43:11 in the way to write garbage in their address manager. And in that way, I will optimize my Manishu servers being picked up as a connection to the network. So someone can easily today, like, just, you think you see the right chain? you think you're connected to an honest Electrum servers it might not be
Starting point is 00:43:37 and and so in the context of time deletions so would an attacker spoof your node with a bunch of fake IPs and you're like oh where's the real one I'm just like right now it may change but I can run just a lot
Starting point is 00:43:53 a lot of them if I'm running 1000 Electrum servers and I'm not sure if they're doing IP prefix, I'm not doing IP prefix selection. But the fact is like today you have multiple like client backend, you have Neutrino, Electrum, there is multiple B457 implementations. To be secure against Eclipse attacks, all of them must integrate the same stuff that we're doing in Bitcoin Core. And people are spending like full day on Bitcoin Core, like it's a full full-time job just being sure we're secure in Eclipse attacks.
Starting point is 00:44:30 Yeah. So it's hard to imagine these SPV clients put in at the same time. I mean, like, getting the SPV client or like clients, like, just, OK. Just there is no SPV, like, there is no such SPV clients. It's more, like, rational to speak about like clients.
Starting point is 00:44:52 SPV has never been, like, re-implemented. So like-lens, speak about like-lens. And like-lens are subject to time deviation attacks because I can make you connect to my malicious Electrum servers and I'm just going to slow down the blocks. I'm going to, instead of announcing you a block every 10 minutes,
Starting point is 00:45:13 I'm going to announce you a block every 20 minutes. You're going to accept it. It's going to be fine for you. So here's a question I have. It might be a stupid question. like i know third party third parties and oracles are frowned upon but like in a contingency case we weren't like an alarm system to recognize if your wallet software was behind a consensus chain tip could you put software in that wallet software pinging like a blockchain.info or
Starting point is 00:45:43 blockstream.info okay and letting you know where their chain is and like if you're behind Okay, that's exactly what I've started to work on after time deletions. So yeah, so time deletion, I think it was also like, Gleb and I trying to, you know, right now it's really new. The protocol is like three, four years old. If that. Yeah. Okay.
Starting point is 00:46:12 Okay. It's still something we explore. Lightning security mobile is still something we're working on, and we're sending all interactions, and interactions with the first layer, it's something which is, it's really tedious. And Lightning, it's, you have to, it's not only you have to receive the blocks,
Starting point is 00:46:41 you have to receive them quickly, timely, because it's a clocked system, right? You should see the blockchain as a system clock. And if someone can mess up with your system clock, your security is in danger. Yeah, you described it in... Time deletion paper, yeah. As like livability, or what's the word you used?
Starting point is 00:47:03 Let me find it real quick. Which one? I expect it's here. yeah yeah so yeah so damn Jason we mr. interesting points we started to explore it's the ID then you can link an attacker can map your liking notes to your full node and your i'm listening i mean you are running a full node yeah you are running a liking node they are sharing the same ip address it's likely it means like your liking nodes is using this full node as you know as a backend yes it's so you can connect the two exactly and
Starting point is 00:48:00 Most of Lightning attacks, knowing the full node of your Lightning nodes, it's a building block for making more fancy attacks. So we started to explore a bit this interiors mapping. If people are looking for cool Lightning priority research, we would be glad to help people doing more research there and being sure like in my opinion we we should like we shouldn't be able to observe that this lightning node is using this full node and you can like you know let's say you are a big lightning service provider and i or americans or something like this and i can buy channel from you you know i go through your website and i buy a channel from you it means
Starting point is 00:48:54 you're going to broadcast a funding transaction. Yeah, you get a bit refill or lightning power users, something like that. So doing this, I can just see bit refill if you're using this full node because transaction origin inference is still something on the peer-to-peer level. It seems like a hard problem to solve.
Starting point is 00:49:15 Would you have to run a VM for your lightning node or something like that? Ah, it's more like, well, our conclusion is like, But you're also not set up. Well, no matter what, wouldn't the Lightning HTLC be connected to the node no matter what? Even if you do have a different IP address, you'd just be able to connect those two IP addresses? At the end of the day, I mean, Lightning Channel, it's Bitcoin transactions. Yeah.
Starting point is 00:49:42 And this transaction, they have to appear at some point on the network. Right. And they are going to propagate, right? So, it's, there is not a clear separation between them. And that's the same, you know, I can, maybe I can slow down block announcement to your node and seeing that you're going to reject HTLT on the other layer.
Starting point is 00:50:05 And because we have gossips right now, there is, there is a bunch of heuristics right now. Yeah, there is a bunch of heuristics right now And you can guess. You can try to, you're going to build, like, this double map. You have a map of lagging nodes, and you have a map of full nodes, and you are doing, like, creation between them. Yeah, so, like, a surveillance heuristic that you could use.
Starting point is 00:50:29 And we haven't, like, we are doing, like, caring about security, but when we speak about lagging is more private, okay, first, we should define more lagging privacy attackers. We don't have, like, we don't have model right now. and secondly you should integrate the whole bitcoin first layer as part of your study yeah it was um talking to a meaty what she's been doing at the p2p letter just thinking about rebroadcasting alone and we broadcast like that makes sense because for lightning node your rebroadcast is going to be more aggressive because it's time-knocked.
Starting point is 00:51:10 So I haven't done yet, but observing transaction propagation on the base layer and being able to know that this pattern of propagation means that this lightning node
Starting point is 00:51:25 is doing off-chain lightning or something like this, that's something we should start to think about. Especially in the early days, it's the best time to think about it, right? Yeah, it's still early. But let's not set bad like let's not create sunk costs that we can't overcome or technical debt i guess would be the correct term in this yeah it's like you know i think lightning is really binary here um
Starting point is 00:51:51 there is this whole like fees uh these issues so we were working on time dilations and digging more There is this idea of doing dynamic feed bumping for lightning. That's called anchor output. It's one of the big objects spec right now. And so we were reviewing this spec, all the lightning developers. And Matt and I were trying to break it. So we're like, oh, this is introducing a suggestion goal. Either way, this mobility could be used at the period.
Starting point is 00:52:37 You know, like someone catching your transaction as a flight and increasing the fee rate or stuff like this. And the sad thing, we realized at some point, these attacks, we are able to do these kind of attacks against the current version of Lightning. And that's Airbnb. pinning. Matt has a great mailing post on this.
Starting point is 00:52:58 And, you know, that's exactly, like, we do things... You could essentially drain a side of a channel, right? You could essentially drain one side of a channel at this point. Yes, I can, like, I can still HTLC, but by... Okay, in Lightning
Starting point is 00:53:13 there is this idea, like, I make you an offer. You know, I'm going to, okay, if you give me a pre-image, I'm going to, to, in this time period, I'm going to send you the money, and I'm going to propagate backward the pre-image, right? If I don't give the pre-image, you have to time out, right, at some point, right? Yeah, you have to force close.
Starting point is 00:53:37 If you don't do this, you are in danger. Backward, you know, backward, someone may time out the HTLC, and if in between, if on the forward link, the HTLC is claimed forward, right? You are going to be at loss. You can't call that back. Yeah. I mean, Lightning is some kind of, you know, the Bitcoin blockchain is some kind of big ledger, right?
Starting point is 00:54:04 You must have an input, and you have output, and output must be in balance with input, right? Yes. And you have to think about, Lightning does the same accounting issue or the same accounting model but it's an individual one like everyone is doing its own accounting yeah and you're just trying to make sure that you're not the ledger changes on lightning aren't in uh incompatible with potential attacks and force closes at the htlc level yeah you have to keep your accounts
Starting point is 00:54:47 equilibrated right you know that's and if you if someone can break them and then putting like the probabilistic like nature of like block time into all that like makes it even harder right it doesn't it doesn't matter okay it doesn't matter uh um it doesn't matter here but okay bitcoin base layer everyone is checking everything you know like every four node is going to enforce the full set of consensus rules that's a double you know the double spam yes people are interested in this lightning is solving the double spam problem by reversing the logic okay let's dive into that yeah that's
Starting point is 00:55:27 exactly this you know how so well because you know so we are doing this contract between you an eye. That's a channel. We open, we share a finding output and chain, and we define some kind of semantic on it, you know, and we are going to update the state. And if you try to cheat me, you have to prove to the chain that I'm cheating by punishing me by providing a relocation secret. But that's your job, you know? Like, if I'm Carol and I'm not involved with this channel, if you get stolen, that's your issue. I don't care. This is why Watchtowers
Starting point is 00:56:09 exists. It's different, but lightning is fundamentally lightning. It's a switch in security model. It's just like it's private justice. Privatization of justice. Okay. I like that framing. Is that
Starting point is 00:56:25 necessarily a bad thing? We are using the blockchain as a judge. Okay. But that's your job to have a lawyers to be represented on chain and good lawyers mean good software that basically looks over what's going on yeah like my dad is not a lawyer but you know like there is this idea of you have to you know you it's your job to pay the good fee rate for your justice transaction being included in the chain before the time lock expires it's your job to getting a good access to the chain right it's your job then you know like being sure you're not sending more htlc forward
Starting point is 00:57:05 than you're receiving backward so and all self-sovereignty or money comes extreme responsibility yeah like that's that's something i i think i'm not sure if even us lightning developers under at how much like laying a switch on this side and what kind of work we have to do to make this kind of
Starting point is 00:57:30 thing secure because at the end of the day in acting you are running you are running a hot wallet you know
Starting point is 00:57:37 you are here on the internet and if you are running a public node everyone can connect to you and everyone can try to game the bank right
Starting point is 00:57:46 I mean and especially as the bank is launching out here as more UTXOs get locked up and lightning channels created and more value the incentive just rises you know like we're working on this time of damn deletions okay damn deletions it assumes you can do
Starting point is 00:58:04 eclipse attacks on the base here right um i love today i think it's really hard like what to eclipse attacks on the peer-to-peer layer you know like someone connecting to you and like trying to like flood your address management something like this what i'm fear of is attacks on the link layer you know like you can pour this in academic papers but ursp trying to rob your lightning nodes if you're a big lightning service provider is that something i'm concerned so you couldn't do something like lev and peter have been working on to avoid depending on one ISP well okay okay I think I can't remember exactly the numbers but the fact is it's like 30% of beacon traffic is going to the same I
Starting point is 00:59:01 think it's even more X maybe 50% going from part of the same deep internet architecture link like chair one and chair two ISPs and as not just a starting block in the way then we can diversify the beacon Eric and ensure we We have more diversity at the internet architecture level. More diversity of full model. Sounds like we need some antitrust to break up these ISPs. It will make like, like ASMAP is making time duration harder for sure.
Starting point is 00:59:32 Yes. But it's always still like, you know, you're running a big lightning service provider and you are using one internet service provider. And, you know, like when you are working on security and attacks, Like that's, you know, it's really hard. Like if this attack's realistic or not, is this like winging the in, like the out?
Starting point is 00:59:55 And at some point, it's like most of the time we see some component as something monolithic, like an internet service provider. At the end of the day, you know, there is rogue employee. There is people who can bribe there. you know it's it's i think that's it was last year like coinbase they were like they have like zero day firefox yeah yeah and you know the price of a zero day firefox on dark market it's something like 100 000 dollars really yeah so they use two of them so the attackers
Starting point is 01:00:34 burned $200,000 to try to steal from Coinbase. Were they trying to brute force their... Yeah, I mean, it's just a budget attack. You know, that's how much money people are already committing just to try to steal from you. Yeah.
Starting point is 01:00:52 To burn. That's pretty crazy. Yeah, so, you know, Lightning right now, it's in fancy parts, but, you know, that's... I mean, I think that's fair. i don't think anybody would disagree with that infancy i don't think anybody would disagree
Starting point is 01:01:08 with that yeah yeah um and people i think people are nice or like i think we don't have like sophisticated attackers right now like like or we if that would be the case we wouldn't have a network today but but it's not going to stay like this it's not like people are like banking is a complex protocol so it's I don't think it's understood right now by anyone trying to steal from them from it
Starting point is 01:01:36 you have to you have to foresee that these lending service providers like five years from now they will have like maybe one thousand bitcoins
Starting point is 01:01:51 locked up in their different channels and that would be a lot of money and then like you know like bribing an employee from the ISP that's that's probably worth it that's worth it yeah that's right and so yeah what do you believe helps solve these problems like something like schnorr and taproot helping no no it's more p2p level stuff no peer-to-peer so we finished the time deviation papers and at the end of the day uh end of it we're okay you need like strong anti-eclipsing
Starting point is 01:02:25 at the base layer and like harder than that we have and so you know like people were
Starting point is 01:02:34 I was super lucky like last summer because one of the residents was Richard Myers from Gotena shout out to
Starting point is 01:02:44 Richard Myers been on the pod before he's doing with Gotena and TX Tena
Starting point is 01:02:50 yeah so we had crazy talks you know mesh net and this kind of stuff and actually like you want you want you know right now you receive the block only through your internet connections you need more diversification you can't trust on your physical link or you need multiple of them and so it's hard because like or like your operating
Starting point is 01:03:21 system or hardware or not being, you know, you don't, your system is not going to maybe come up with a radio, UHF radio transmitter receiver or the kind of stuff you need to receive block from space if you're using block stream satellites or like reading transactions through radio or this kind. So, ideally, you want to, everything we can use to transmit blockchain information, we you use it and that was kind of the idea like i've had like this proof of concept pr in beacon core which is called alt net and it's just a way to integrate like integrate different link layer integrate like so it says something like i was reading and
Starting point is 01:04:14 and I didn't read every part of the GitHub page, but is this like an alternative to Fiber or something like that? No, Fiber. Fiber's going to the miners. Okay. Fiber is re-optimized. That's the thing you don't want to touch about it.
Starting point is 01:04:30 It's different gossip networks. Is this what it would be? It's basically, you will have a secondary peer-to-peer stack, and this peer-to-peer stack we'll have drivers you know like and these drivers
Starting point is 01:04:47 one of them may talk radio another they may use Wi-Fi another they may be
Starting point is 01:04:52 using shortwave right and right now if you're using like blockstream
Starting point is 01:04:58 satellites you have to run another Bitcoin core a fork of Bitcoin
Starting point is 01:05:02 core and you have to connect it to your first full node and it means you're going to and blockstream
Starting point is 01:05:09 satellite people they have to maintain it they have to do a lot of work and you want You want to ease this and you want this.
Starting point is 01:05:17 Well, we have a lot of discussion on the Bitcoin Core side, but thing is, for Lightning, and if you are running any Lightning routing node, you want, first, you want to have a diversity of block headers, receiving the block headers or receiving the block from different sources. And you want multiple access to broadcast your transaction. because you may have to broadcast a justice transaction.
Starting point is 01:05:44 And if I can source all this, you know, it's game over. So the cool thing is if we start to pour work on deploying this kind of stuff and, like, being sure you can combine them, you know. Yes, that's my big question. Like, would it be different transaction-related networks? So, you have one for the satellite, one for ham radio. Yeah. And would they only be able to communicate with other nodes using that?
Starting point is 01:06:19 Well, everyone using a driver, right? Yeah. Yeah. Yeah. Okay. And the cool thing, you can, like, oh, and my proof of concept wasn't using radio. It wasn't using satellites. It was using the lightning communication layers to exchange inhalers.
Starting point is 01:06:38 And this is completely new, right? What? This is new. So has anybody done this before? Well, it was something like we have talked about between lightning developers for a while, exchanging headers. No one has done the coding integration.
Starting point is 01:06:53 So I just took two C-Lightning nodes. I just have a module to talk with two B-Control nodes. And the two B-Control nodes weren't connected between themselves. And they were using the Lightning nodes to exchange headers. and so let me think how this would go the one node would feed a header to the lightning network connected to to it and then it would that would then send a transaction through the lightning
Starting point is 01:07:20 network and take multiple just like like my my poke would just yeah just send data yeah but multiple you're using from another node to another node to the end the cool thing like on lightning like we have encryption and authentication by default so it means now like you know if we can have like you may even secure i mean you can use a lightning network as a way to propagate first base layer data exactly do you think this is step up man i mean like that's that's yeah that's cool okay much is a faster propagation no it's for security yeah for security. Because right now, like, there is step forward with BIP-324 by Jonas Cheney on encrypted communication at the base layer, but it's not deployed yet, no? And on the
Starting point is 01:08:19 base layer, you don't want identity, you know? No, no, no one wants this, you know? You want structure-less network with like pseudonymous peers. Yeah. So even like authenticating, like an encrypted channel with authentication is trust at first use. And it's not, you know, it means like some infrastructure attacker can still like intercept communication and do a man in the middle.
Starting point is 01:08:51 But if you are using the Lightning communications, Lightning nodes, they have a static public keys, which is known, which is their identities, and they are using the noise framework to encrypt their communication by default. So it means if you exchange headers through lightning, and if an infrastructure attacker tries to intercept them, everyone is going to see it.
Starting point is 01:09:18 Hmm. So how would somebody catch that, the headers jumping from node to node to get to this? node yeah how would an attacker catch up with there too well you love to break communication between liking nodes but this communication are are educated and they are encrypted so you will see it you will see that something is wrong yes okay so it'd be broken encryption yeah you don't break encryption just get you know like you get around the buckets drop the packets right but you
Starting point is 01:09:52 see it you see that something wrong I don't receive ping and pong message from a Lightning period anymore, something is wrong. And, you know, part to what I was saying before on Lightning security model, which is private, it also has to be, like, more dynamic. If you see something wrong,
Starting point is 01:10:10 you know, if I lose access to the base layer and I have pending HTLC, what should I do? Hmm. If you lose access to the base layer, you have a pending HTLC. somebody trying to open the channel or no i'm sending you an htlc and maybe you claim it on
Starting point is 01:10:33 chain and maybe i have to uh i have to extract the pre-image and get paid backward and i lose access to it or maybe you're trying to cheat me and trying to trying to cut um you know trying to cheat me like you're just broadcasting a revocative state i lose access to the base here I mean like you know that lose access to the basic that's not good what should you do try to connect to other peers as quickly as possible and do what yeah oh you mean you're like you know you're you're you're full on hmm so your full node that you're connected to is fucking you over in this your phone is fucked up your phone okay I get access to the chain it's a very good
Starting point is 01:11:17 question because how could you trust anything well you can't trust oh you can't yeah that's that's bitcoin you don't trust right or how could you be confident well how could you verify well i mean the only okay theoretically the only way to be confident there is to have perfect information in any case if you have perfect information if you receive the block in a time efficient, you know what to do. You know if I, should I close this channel or should I claim and change this HTLC or this kind of set of actions.
Starting point is 01:11:56 So, back to my ALKNET proposal, that's how do we get there or how do we, not perfect information because that's theoretically, but on the engineering side, how do we ensure that your full node is receiving block from radio, is receiving blocks from space, is receiving blocks from...
Starting point is 01:12:17 You know, you may integrate with TOR or something, which is like... So you call on another transaction relay method. It's really like using different physical... Yeah, so if you're getting it from an ISP, you're like, all right, the ISP is not serving to me, let me get it from the satellite. Like, internet is a shit in New York.
Starting point is 01:12:37 It's pretty terrible. Okay, like, that's really funny, because, like, you know, you live in New York and you say, like, you know, like, New York, like, these great cities. Honestly, you have, like, a third-world infrastructure. You're preaching to the choir, brother. Internet is not the weirdest one.
Starting point is 01:12:59 No, I mean, Subway is pretty... Subway is pretty good. Like, banking or the trash system. Guys, I mean, you are late. I mean, like... What do you mean? Well Travels
Starting point is 01:13:12 I mean you'll see Yeah Oh travels Travels Yeah it's I mean like We don't do Okay
Starting point is 01:13:21 Let's get back to No no get into What's going on in France Compared to New York Well Okay We don't throw Our trashes
Starting point is 01:13:32 On the street On the street It's so dirty Guys It stinks Yeah Well you know what That's
Starting point is 01:13:39 Okay I don't know if I can qualify myself as a New Yorker but I've done this experience to literally walk on a rat you're officially a New Yorker that's the badge you do that
Starting point is 01:13:55 when I lived on the Upper East Side I lived on 2nd Avenue and it was when they were doing the subway up there and literally the two years that I lived in this apartment they did construction on the subway the whole time i lived there they opened it up the week i moved but that's besides the point there was a rat village on our corner for two years that was yeah it's dozens and dozens just
Starting point is 01:14:19 climbing over each other i'm used to them you know that there are the nature we don't get in new york somehow that's uh that's new york uh stockholm syndrome when you get used to the rats this is normal the trash is normal but it's actually interesting uh having gone to school in chicago where apparently before the city burnt down it was very similar where people were putting their trash on the sidewalks is they change it they put it to alleys in the back i haven't been shocked in chicago being like it's trash on the streets it's one of the cleanest cities i've ever been to and lived in and because they re they were like all right we fucked up the first time around we can't be putting the trash on the streets let's make alleyways no don't do
Starting point is 01:15:01 I mean, like, maybe it would change at some point, but that sounds like New York style. We also have a lot of trash here. Like, people need a little... Yeah, okay, that's also... Okay, I have to confess, I'm here on a G1. Not an H1. Not an H1, a G1.
Starting point is 01:15:22 You know what a G1 is? No. Okay, a G1 is a cultural visa. Is a what? Cultural, culture... Theoretically, it lets you work in the U.S. for a year or eight months, something like this. And you're here to learn about American culture. Oh, a culture visa.
Starting point is 01:15:41 Cultural. Yeah, yeah. You know, you're here to... Well, Bitcoin is very liberty-minded. It's a free and open source, individual liberty, individual sovereignty. And that's deep. No, but I had to do American culture experiences. So, I got, like, awesome 4th of July fireworks, you know, seeing from move stops and seeing all this kind of stuff.
Starting point is 01:16:07 And I got, like, Thanksgiving, so it was awesome. I got Halloween. And I think rats started running for our structure and yelling on the L line the Friday night as part of it. It definitely is, especially at 2 a.m. when you got a homeless dude jerking off in the corner. That's part of the American culture that you got to soak in. yeah i mean like well it was in the test question is were they staring at you and the answer is yes they were yeah of course do it wrong welcome to new york yeah it's yeah i have a love-hate you know like you come to new york and you think it's about finance and money and what one of the
Starting point is 01:16:52 thing which strikes me the more it's not that much about it it's it's more about energy and like people are getting the flow and getting there and actually new york has one of the best art life i've known uh it's really excellent like okay before quarantine and corona and blah blah blah but it's really a part i think the art life in new york and the numbers of jazz good jazz clubs and theaters and stand-ups and yeah yeah it's i mean stand-ups one of my favorite things to do uh go to the comedy cellar uh yeah that's one thing i'm gonna miss the music the live music here is dope you can go uh see a show any night you want to the art is dope depending on what's your fancy you want to go yep see classical stuff uh this would be blasphemous to a lot of
Starting point is 01:17:46 a quint maximalist but uh modern art there's a lot of good stuff here man i'm so like leaving the city like oh yeah i have so much museums and especially the mama i have i have not been through every part of it so and i thought yeah i need to come back to finish the mama at least yeah yeah it's a that's a big one to go on it's a big one it's a big um yeah back to lightning security model is really important. Do you think it's a
Starting point is 01:18:22 solvable problem? Do you think we'll ever get to a point where it's like, alright, this isn't solvable and lightning failed? No, it's definitely solvable if we do the right engineering moves and we ensure that
Starting point is 01:18:38 people who deploy big lightning nodes understand the lightning security model. So, Lightning Security Model, you need to access timeless information, so you need to – ideally, you want to receive the block from mesh nets or radio or do multi-arming or receive the blockages from DNS. And Matt has some stuff here, which is experimentally working. You want to do dynamic fee bumping.
Starting point is 01:19:08 Right now, we negotiate the static fee rate. That's update fee. Paul? So, dynamic fee bumping at the Lightning Network. So, this would be like a RBF on the Lightning Network. Okay. So, I use Zap as a wallet, and I'm seeing circles, circles, circles, circles. After five circles, it'll be like after I wait X amount of time.
Starting point is 01:19:30 Probably the better way to explain it. But, like, I bump it a little bit. Exactly. You know, there is, okay, someone is trying to shit you again. there is, like, this re-rocket communion transaction being on chain, right? And you have, like, maybe a day of blocks or maybe 20 blocks,
Starting point is 01:19:51 just configuration or implementation stuff. And so you see this time lock. It's going to be a reactive one. And ideally, you are going to bounce the few rates at every block. And you are going to be more aggressive when the time of expiration arrives. Because if you don't do it, you're going to lose money.
Starting point is 01:20:15 Now, there is an issue with this, which is what if Myers or Northern TT try to play with your chain access or your chain view and try to make you think you're under attack to make your lightning fee simulators going crazy and you're burning a lot in fees for something which is not. How realistic is that, though? You'd have to depend on a pool to do that, wouldn't you?
Starting point is 01:20:50 I think Gleb has done a post on them, and we write down this scenario on the mailing list like two or three months ago. It's just like... So would a mining pool have to single out one HTLC and do this? Well, let's say miners, by a correlation, they decide to stop mining blocks. And that's back to my point on perfect information of your liking nodes.
Starting point is 01:21:15 What should you do? Should I close my channels or should I stay off-chain? Hmm. Hmm. Right. If you have a lot of link-lead redundancy, if you receive the readers... Because if you try to close your channel and it's a bad force close and you're counter-party.
Starting point is 01:21:35 No, the point is, like, if you have this kind of theoretical, I don't know if it's theoretical or practical, it's definitely working. But if you don't have perfect information, you should close your channels because something is wrong, right? Yes. Yes. so everyone is going to try to close each channels at the same time and everyone is going to be in competition for fees and who is going to profit for fees?
Starting point is 01:22:09 the miners. So miners may have theoretical attacks against liking that makes sense so one of the real engineering challenges on liking is being sure we go as close as we can from this perfect information thing. So would it be attack
Starting point is 01:22:30 on the whole Lightning network and not just so that's where my framing's been wrong. Now I get it. I was writing down this time deletion paper and at the end you start to think about more sophisticated attacks. And working on altnets
Starting point is 01:22:46 and working on having more blocks and haters link layers redundancy like you know like I'm concerned about
Starting point is 01:23:01 earthquake scenario like you know what if in some country you know you drop like export
Starting point is 01:23:08 83333 8333 you drop support for that yeah I mean you just censor Bitcoin right
Starting point is 01:23:15 it's happened I mean what's the Chinese firewall right it's going to happen like the Lightning system on top of it is like, you may crash the whole Lightning system on top of it.
Starting point is 01:23:27 And the issue is like, if you assume that people who are going to use Lightning may not have the funds to pay on-chain transactions, it means like, if you can repeat these attacks two or three times and force everyone to go off-chain to on-chain, after doing this, you just make Lightning you just kill lightning yeah it's a precedent that nobody will be comfortable hopping back on that yeah exactly you know and i i'm still i'm spending a lot of time right now uh you know digging more
Starting point is 01:24:02 into internet architecture and i'm just turning like better like internet protocols like dns BGP Bitcoin is not running on the magical box it's running on the internet today and the internet today sadly is not secure and the sad thing is how the way you are
Starting point is 01:24:27 securizing internet today is relying on certificate authorities and public key infrastructures which is re-centralized something with .org has been going on yeah like that and like and that's bitcoin business may have issue lagging is even worse okay like uh and i'm not i'm concerned about if the current internet architecture is secure enough for lagging
Starting point is 01:24:58 yeah i mean that's something we should definitely think about with this time restriction because of the the instantaneous nature of the way lightning is supposed to work the way you you have to react you know like okay people working on terror like you don't get you okay Let's say, TOR has put a whole lot of work on censorship resistance and getting sure that people in countries where TOR is censored, they can still get access to information outside of it. But the Bitcoin information is a different kind of nature than, you know, like newspapers, formations, or Wikipedia information. That's money information somehow, and the lightning one is damning money information. So, if we are not censorship resistant, it's not only you don't get access, you lose money. Yeah, that's not what you want.
Starting point is 01:26:04 That's like, you know, like, at the end of, like, if Lightning works, like, and we have to think about this kind of, how do we mitigate these kind of scenarios? And, and people are doing awesome, Like, all people working on, you know, Richard Mayers, Galtina, Lodzha Mec, Venues and Games, awesome people that can beat with them. I mean, they're part of the world right now about how we can decrease our reliance
Starting point is 01:26:36 on the current internet architecture. That's a way we should go more forward. I completely agree. I mean, is the goal of Bitcoin is to be as robust as possible? And, you know, people are working a lot about minings. I've just did a lot of minings. The week, I'm like, okay. You spend a lot of time trying to think about what the Bitcoin security model is and what the lagging security model is.
Starting point is 01:27:07 Well, I'll step in from like a mining perspective here. People are thinking, I mean, speaking a lot about mining. personally i'm as much concerned with the network side the internet yeah i would be more concerned about that actually because we have like even thousands the isps don't have any skin in the game the way miners do where like miners are paying for hardware and energy and infrastructure you know they didn't care about it you're like yeah my internet when i have my okay you are in the middle of some like you know like
Starting point is 01:27:43 like in the virus meeting and you are talking about like really important subject like you know what should be the color of the next generation of HTLC it should be purple but but your connection is dropping because you are in New York and your internet is not readable
Starting point is 01:28:01 yeah it's not it's not tenable Starlink come yeah will Starlink help this there is a good mesh net in New York I haven't tested
Starting point is 01:28:12 NYC Mesh yes Matt Corallo is very involved I think he's a bit involved yeah well I think in New York
Starting point is 01:28:18 you can receive maths headers for a awesome awesome city I think so awesome city
Starting point is 01:28:26 I would not be surprised I'll say that but but it's like and back to my iNetwork
Starting point is 01:28:33 like I'm thinking about scenarios where in your geographical areas, there is someone who is tuning to receive blocks from space, and
Starting point is 01:28:46 you spread the blocks or headers from radio to all the people around you. And they can relay it over the ISP. Exactly. So, to be to have a network a base-linear network
Starting point is 01:29:02 being more robust against partitions you don't need everyone to run the most sophisticated link layer redundancy which is getting the background space but you need someone in your geographic areas like bouncing the blocks you know yeah just double checking like all right what you're getting from spaces exactly the kind of logic i want to hopefully get into beacon core like you receive the block from space and you spread the blocks from all the other people on radio mesh net or so with this change up peer selection essentially it's even it's even like like you know there is no peer selection when you get the block from space because it's one way you know you can't
Starting point is 01:29:48 even know yeah yeah and that's also one getting this more sophisticated link layer redundancy is you can send transaction through space because it's only reception for lightning you have to broadcast transaction so you're pulling data from space lightning you have to push it out your isp is wire recruiting you from the rest of the internet you receive a block from space and you may broadcast a closing an unilateral commitment transaction through radio to secure your liking notes you know you want to decrease your attack surface so could you broadcast that lightning transaction in radio and via ISP at the same time?
Starting point is 01:30:29 Yeah, you should do both. But any communication channel you add to your full node is going to make it more robust. Exactly. And if the marginal cost of it is easy to do, and that's one of my goals
Starting point is 01:30:45 is making it easy to integrate different communication, you will do it. That makes a lot of sense. And the cool thing is if we have this kind of infrastructure, Now, if people care about being able to broadcast a transaction through video, it's not the main one, but it might be a good chunk of transaction broadcast may happen through video. I would love that. I mean, don't do something with an IP address.
Starting point is 01:31:20 Don't tie your IP address. you have data just pouring on you from the skies I just need a receiver to pick it up we had this discussion it's really funny so I've never I just had like an epiphany not an epiphany but like an aha moment in my head
Starting point is 01:31:36 receiving block data via satellite is much better because there's no IP attached to the end man that's the hard point I want more like I want things like that has never computed in my mind like now I'm just getting it IP address, at the end of the day,
Starting point is 01:31:52 there is a way to link it back to you. Yes. Radio wave. Anybody could be sending those radio waves. Radio waves, if they don't use internet, yes. Some of them are using it, but you can spoof IP address more easily. Because it's local.
Starting point is 01:32:07 You don't need something. Yeah, exactly. So VPNs wouldn't even help here? Or they could help marginally? Well, if you want, the architecture I have in mind, Well, we, ideally, if we can leverage the Tor work on censorship resistance, we should be able to do it.
Starting point is 01:32:29 With, there is, I'm not sure that the same security assumptions, and because they're, you know, like, them, they want a lot of, okay, it's maybe really low-level stuff, but they have, like, Snowflakes, which is a way to bypass resistance using WebRTC. And basically, you ask people to open their brother
Starting point is 01:32:57 and serve as a bouncing point for your internet connections. There are an incentive program. You know, how we convince people to give a bit of their brother resources to help people bypass censorship resistance. So it's open to anyone. You know what I mean? It's a bit altruistic. Exactly.
Starting point is 01:33:17 an altruistic model means for Bitcoin it's super easy for an attacker to override it yes so that's one of my
Starting point is 01:33:25 reasons going forward with altnet is where I know Tor is deeply integrated in Bitcoin but the censorship
Starting point is 01:33:33 resistance of assumption of Tor are not the same than us yeah Gleb does not like Tor
Starting point is 01:33:38 from conversations I've had with him because we had this discussion back and forth between Gleb and I about okay should we try
Starting point is 01:33:46 to push people to using Tor as a default for broadcasting transactions. And we are coming with good and bad arguments since we had these conversations. He's made me question Tor more than anybody I've spoken to. What? He's made me question Tor, like myself. Yeah, I mean, if tomorrow you have all,
Starting point is 01:34:06 like a majority of Bitcoin transaction traffic going through Tor, now you have an incentive to re-attack Tor. you know if you have like millions billions of value worth privacy value worth striving going through
Starting point is 01:34:20 it hasn't been designed for this yeah like that's also like how bad did we fuck up the internet the first way around
Starting point is 01:34:29 like having to deal with all these problems like that's funny because when you go through like internet history
Starting point is 01:34:37 like okay internet has been organized around a set of standards requests from commands from the
Starting point is 01:34:44 IETF one of the first one in the 70s or 80s was about netbench was the idea of you know mining resources on the internet maybe one of the most like one of the ancestors of bitcoin
Starting point is 01:35:00 yeah I think they don't like they did it you know we are the internet Well, that's like, it reminds me of Guern's piece, like Bitcoin is worse is better. Like, is it ever going to be good enough? Or is it just good enough?
Starting point is 01:35:20 And that's what actually makes it good in the long run. It's just in production and works. It may not be perfect, but we found ways to work around it. Or is it getting to a point where there's too much tech debt and it'll just collapse upon itself? That's the question. It might collapse because, you know, what's fascinating, like, Fascinating, like, HTC, you know, now they're doing phones. They're doing these phones with hardware wallet support.
Starting point is 01:35:50 Yeah. It means, like, fabricants now start to have the incentive to design specific stuff for servicing a segment of Bitcoin users. it just you see how much like you know pressure or how much
Starting point is 01:36:07 like unlike the level of security we're expecting of Bitcoin is mostly not compatible with our current
Starting point is 01:36:16 operating systems and like yeah what is it didn't Sip and Greg Maxwell find like a an earn OS or
Starting point is 01:36:23 HTTP or something like that was it what or OpenSSL oh yeah it was exactly Oh, yeah, okay. That's a bit different, but...
Starting point is 01:36:38 Okay, the OpenSSL bug that Greg and Sipa found was about OpenSSL wasn't guaranteeing compliance or conformity of signature variety between the different versions of it, something like this. Which is okay for most, you know, for most, which is okay for most applications being built on top of it. That makes sense because when you're a bench and you're using OpenSSL or when you are a client-side architecture, you can say, oh, you know what? Update it.
Starting point is 01:37:20 Update with the new generation of OpenSSL, right? That's super big when we don't have like auto-update, right? So, we have to be interoperable between different versions of it. The whole backwards compatibility comes into play. What? Backwards compatibility comes into play. Oh, yeah. And so, that's an issue.
Starting point is 01:37:40 And we have to be careful about it because, for example, you take distributed denial of service attacks. It does. It does. On the internet. So people were aware about it back in the 80s, back in the 90s. And they were like, that's okay, there is only good guys on the network right now. It's not. No, we are academics, we are researchers, we are internet hobbyists.
Starting point is 01:38:15 The issue now is if you are running major internet infrastructure, you have to spend a hell of a lot of work being secure about it. And we have something like Cloudflare. People are going to burn a lot of money for being secure. And we can't afford Cloudflare on Bitcoin. We can't afford security mechanics or this kind of security infrastructure, which is centralized by design.
Starting point is 01:38:41 Yeah. So we have to care. Is that something which motivates me a lot, doing all this security work online and being sure we have peer-to-peer style of countermeasure against it to be sure we are not going to have that people running these big lightning
Starting point is 01:38:59 nodes five years from now they don't have to use a Cloudflare for being shaken. Would Bitcoin even work with a Cloudflare like thing? For the freaks out there, Cloudflare is basically just like a time buffer and
Starting point is 01:39:14 it would waste the attacker's money if they're making that many calls. Like hey you're going to have to wait this long no matter what. You can't DDoS us they have a lot of resources and I think they are implementing a lot of ingress and egress filtering to be sure
Starting point is 01:39:29 and maybe resource public key infrastructure to be sure when you are sending a lot of IP packets to all of them, it's coming from a legit but in like Bitcoin yeah, we are secure internet is relying
Starting point is 01:39:46 on PKI we can't afford this Like, we have to come up with new security paradigms. And lightning is fascinating because somehow, like, okay, you take a network security book, you know, back from your computer science class, and you burn it, and you get lightning. In a good way or in a bad way? Well, I mean, you do everything you shouldn't do, you do it. like you know like you're running something on the IP I mean I the default line implementation I can connect to you and I can open a channel with you and I
Starting point is 01:40:28 can start to rebalance the channels and I can try to steal from you and there is this idea like you know I'm going to send you a packet and you have to sanitize correctly this packet and I'm going to send it back but forward and if I failed I may close the channel that's something we have seen on lightning you know like it's weird security assumptions like you know like oh okay so we are opening a second bottle that's we're opening a second bottle of wine uh we're going from a burdough to syrah we'll see how this goes this is from scribe 2017 can i see you this is uh oh napa valley napa valley yes even us french we knows we know about napa for sure
Starting point is 01:41:17 do you know about Napa yeah I mean do you know about Napa that's some of my favorite wines I'm kidding we uh my my father-in-law is a wine snob so actually we did the taste testing on uh Saturday he likes to do taste testings on Saturday dinners every once in a while we did a Bordeaux a Cab and or no we did a Bordeaux no we did a French Pinot a California
Starting point is 01:41:48 Pinot and an Oregon Pinot yeah very good tasting and you have this peer to peer security model no okay so what I'm trying to understand
Starting point is 01:42:03 like I can't tell the way you've been describing it as far as like does Lightning providing an opportunity to create better security models or is it harder and we have to think harder to create an equal security model okay you have to zoom out of the question
Starting point is 01:42:20 is at the end of the day you want to secure your money right so what you should ask is your money is more secure in a bank which is using the legacy internet
Starting point is 01:42:35 architecture compared to a bitcoin or lightning sub that's the comparison yeah and comparing it to like internet security and messaging protocol security for different applications outside of money like they're not as high priority as nbd not not these kind of requirements no so if you answer, I want, I prefer to secure money through Bitcoin or Lightning. For Lightning, we have to design new security mechanism. And you have to think about how much is different from TLS or like IPsec. And which has been designed in a client-server way. And you know like, I spent like, I think yesterday I was using witness transaction ID, transaction relay,
Starting point is 01:43:33 peer, which is one by Suos, to get this in Bitcoin Core. And that's, okay, like, I just feel sad about it. But the thing is, at some point, we'll have to extend the way we reject here transaction from the network, from propagating the network. What transaction? Oh, okay.
Starting point is 01:44:03 Right now, if you are sending an invalid, yeah, if you are sending an invalid witness transaction, it's not going to be, it's not going to be added to the beacon core rejection feeder. Which means you're going to redownload it, which is not a concern right now, but we have to do it before to deploy Taproot to avoid a bandwidth increase because the witness nodes are not going to be able to verify the Taproot transactions.
Starting point is 01:44:31 So not any credit ones. So there would just be like longer to rebroadcast because it drops out and it's not even... It would be a waste of bandwidth. Yeah, it's not even included in the mempool. For legacy... Well, they're not legacy. If and when, if and when we have Dapproot, at some point we have two sets, you have Dapproot nodes, Dapproot-abraded nodes,
Starting point is 01:45:02 and the rest of all. Thing is, so we are doing this change right now with Bitcoin and at some point if we add witness transactions to the rejection features of BeaconCore, Lightning nodes relying on a non-upgraded full node are going to be in danger. Because they won't recognize it. They are not.
Starting point is 01:45:31 No, it's even worse. The state won't recognize it. It means that my channel counterparty can broadcast a nil-format transactions through the network to get it rejected. and then when I'm going to be honestly trying to broadcast it it's not going to
Starting point is 01:45:51 my witness transaction ID are not going to fetch it so a change on the high level, a change in Bitcoin Core transaction relay policy may break lightning if we don't care about it
Starting point is 01:46:07 that's that's a lot of my I'm spending a lot of time right now trying to understand how changing Bitcoin core may silently break Lightning. That's something very important to think about.
Starting point is 01:46:23 Yeah. Do most of the Bitcoin, I don't mean to say most, what is the better question, better framing would be do the developers working on these upgrades care about
Starting point is 01:46:39 Lightning, most of them, or are they like, hey, this is better for the protocol level? Well, you know, Lightning is what? 1,000 bitcoins? Okay. I got Clark Moody's dashboard right here. You have real-time monitoring. It is 951.16 in public nodes, so.
Starting point is 01:47:01 Yeah, yeah, yeah. I'd say I'd bump that up to like 1,400. No, not 50%. I'd say like 1,200 to 1,300. It's nothing. It's market money compared to the rest of the network. Agreed. Yeah.
Starting point is 01:47:15 Okay. So people are working on BeaconCore, it's an application like another, they care about it for sure, but lighting is hard to understand and being sure that only just BeaconCore is secure is a lot of, is already a lot of work enough, we start, we start to talk about it, how like, you know, how we concur, okay, first, you know, like, I think that's something we should have, like, as a community, like, you know, like, a lot of people, they don't care about lightning, and I understand them, and should we, should we add more complexity, can occur to make the life of lightning or any other option application easier
Starting point is 01:48:12 it's a great question right because as you just mentioned it's hard enough to review uh core as is and then thinking about the externalities of the second layer being built on top of it and then having to take them into consideration and oh well this may not mess anything up at the protocol level it's going to fuck things up at the second layer yeah no like Again, going back to what we were talking about earlier, like how much time, dev hours, mind hours. Yeah, I'm just like, right now I'm just... Does it grow exponentially at that point?
Starting point is 01:48:44 When I'm reviewing peer-to-peer stuff right now, I'm reviewing first with a peer-to-peer mental model, is core correct, you know? And first with the lightning ones and trying to understand how they can... That's... It's really how we... should we have a safe
Starting point is 01:49:05 API you know like beacon core maybe should document more stuff and especially around the mempool like it can be worse okay I wrote about the mempool stop saying the mempool around mempools
Starting point is 01:49:22 right yeah I'm speaking about each knows mempool that's like the crazy thing from an economic like so I come from the economics finance side of it I'm just thinking about mempools as like pure, shout out to Zane Pocock who wrote this last week, but like thinking of mempools as like pure pricing mechanisms and clearing houses for Bitcoin transactions and the fact that they're distributed and each node is getting parts of different mempools and together you sort of have a very good idea. there is no global mempool
Starting point is 01:49:58 that's no and there is no first scene which means you know like right now lightning fee models it's quite hobbling and clutches you know it's that's not what we want what we want is a
Starting point is 01:50:14 dynamic model where you can bump the fee rates and it means like it means like you know if you see the mempool starting to be under congestion you're liking again and you see like okay i can i see your first increase i can still afford these free rates i'm okay i'm secure i can close my channel in time efficient i'm seeing you know another fee spike and at some point i like i'm not going to be able in the worst case scenario i'm not going to be able to afford
Starting point is 01:50:49 to closing all my channels at the same time if someone tries to attack me? Or for congestion reasons? Or what should I do? Should I close preemptively my channel? Should I try to move
Starting point is 01:51:04 try to move Sats to the other side of the channel? That doesn't do anything. They're attacking you anyway. If you have like 100 bitcoins up in your 19 channels you may but are all those channels susceptible to that attack are we getting let's say let's say i'm
Starting point is 01:51:25 doing a time duration attacks on your liking notes you may want to close all your channels you want to i'm go back to to chain i'm going back to on chain i want to okay i'm going to lose business watching his business or american business but it's more that's okay you know what it's better to go and chain close everything get on the operations that loss exactly now if I may, you know, I may have as a backup reserve to spend as a fees. I may have only like 20 bitcoins or backing up 100 bitcoins. When it starts, like, on the mempool congestion side, when I'm starting to be insecure, you know, that's a hard question.
Starting point is 01:52:08 Yeah, what are you willing to pay to have the peace of mind that... And the lightning paper was mentioning this kind of issue. And the way there's something in right now, it's just dynamically increase the block size. Yeah, okay. Okay, Martin right now is finding out. I'm shaking my head now. And they were like thinking,
Starting point is 01:52:31 okay, we should have this kind of weird software. And like, we're not going to do this. No. Like, personally, I would be like, care about mining i would be really uncomfortable like doing this kind of software for bitcoin and that's bad that's a weird precedent ascent too weird change of the protocol level to accommodate layers above it well you know sig action input is somehow it's more like
Starting point is 01:53:01 even type root like even type root like you know that would make sense when people are using fancy Bitcoin script policies. Who is using fancy Bitcoin script policies right now? Multisig and Lightning. I think so. So, okay, that's another discussion we should have as a community. It's you know, like what softworks are
Starting point is 01:53:31 doing softworks to get better off-chain system, like Personally, I think that makes sense if you care about privacy and skyrocketing of the wider system. I'm working on both Bitcoin and Lightning, but I don't think... At the end of the day, I think that's the same thing. You think Lightning's additive, so... I guess that's a question most people would have, is the pace of change that Lightning would demand
Starting point is 01:54:07 as opposed to the protocol level like if it that's you know I at some point so I'm working on wrestling in a decay I'm spending a lot of time about how we're going to... what Lightning has been designed for, for what kind of people, people with what kind of economic needs, payments, what they're looking for. And Lightning hasn't the same development path than the Bitcoin one. And they are not the same community, and I'm concerned we might have some kind of divide, communication divide, because we have too many lists. That's something which is really basic, but how many people are tracking both and understanding issues in both,
Starting point is 01:55:08 not that much. I'm concerned about like aligning communities, moving fast for And we have to because there is a lot of work to be done. And the base layer, people are like, we care about getting digital gold right. And if we don't get digital gold right, we can't get lightning right. They are beating on each other. So it's not a dichotomy at all.
Starting point is 01:55:43 It's not antagonism at all. The thing is, let's say you see millions of Lightning, or let's say people like, we designed this Lightning experience, which is, I really see Lightning as a missing step on the whole Bitcoin experience between exchanges and the full load, like the render. What do you mean by that?
Starting point is 01:56:19 I mean, like, right now, people are like, you know, people are like, you're a real big courier and you're running your full node or you're on an exchange, right? Yeah. Okay. On all the people running your full node and, like, okay, you are running your full node, but do you, like, do you audit your kernel, compilers, linker, loaders? I mean, do you have a clear idea of your trusted computing base? I mean, have you, like, disabled Intel Management Engine if you're using x86 or, I mean, are you doing x-ray scan of your platform or, like, are you understanding cryptography well enough to assume correctness of every primitives using the Bitcoin protocol? Or have you demonstrated the interactability of the discrete logarithm program from mass first principles? Or like, or are you doing like, have you a strong personal, you know, when you left your device, the device on which your phone is running and then turned dead?
Starting point is 01:57:24 And are you doing any kind of measure boots or like trying to be sure that the firmware hasn't been changed? Or have you like, you know, like. You can always, you can always outpure the purists. like hey well when you have done all the steps uh i mean i will call yourself sovereign individual in the meanwhile that just that just ranges you know and yeah it's a spectrum that's a spectrum okay so it's not binary it's not full not against the rest of the world it's just thing is there is scenario which may uh impact more people than you know like hard fork or like a part of the community trying to hard fork that's going to concern all of us your operating system being
Starting point is 01:58:10 secure that's just your your issue i might not use the same one but as as a user or as a citizen of the network trying to answer the question is what can fuck up my money right right so it just it's just a range it's a range of trust model it's a range of and you should
Starting point is 01:58:34 suite the trust model or you should suite the set of tools which you understand or you have the knowledge
Starting point is 01:58:44 to use it and and that's not static you know you may start by having your coins on an exchange spending time spending time
Starting point is 01:58:52 yeah it could be like a business that grows and you accept bitcoin more and then like your incentive to figure that out grows as your business grows right? Exactly like I was like
Starting point is 01:59:06 I don't know if it was quarantine or anything linked to this but I have like a high whole time numbers of people asking me questions on key management that's not something they're going to tell you when you start the job of Bitcoin protocol developers but everyone in your circle
Starting point is 01:59:22 of friends is going to ask you questions on key management Yes. It's one of the most stressful parts. Yeah. So I was trying to learn about it. And you have friends of friends. And I was running the personal survey.
Starting point is 01:59:41 Okay, how long did you take from going from an exchange to starting to run your own node, starting to be comfortable with hardware wallets? took me a few years exactly exactly i mean i took it i downloaded electrum and sent it to electrum pretty early on but like when it comes to like verifying everything via full node it took me a while yeah that's that's years like when people are talking about scaling bitcoins and all this we should define what does it mean scaling bitcoin you know like there is one increasing value
Starting point is 02:00:23 you know we issue against USD dollars but other can be just increase their hash rate or increase the number of public nodes running it or increasing the number of people like participating to be Dave or like at the end of the day
Starting point is 02:00:39 like many variables that go into that overall decentralization right value of Bitcoin like like it's this equation that's an algorithm with a lot of variables you have the code right and you have variables like hash rate like number and like it's not only code like you need people to run this this full nodes you need like people behind it and and getting like one metric to like
Starting point is 02:01:13 you know like if there's one metric we can increase on it maybe it's security like hash rate increasing is something like that's pure physics laws we all agree on this and it's like that's my favorite part about it too is because if you take like a 30 000 foot view i think i may have a unique perspective on this because i do this podcast where i speak people like you people building businesses um people uh trying to get others to adopt bitcoin who have no idea the technical detail that we're getting into tonight uh and then i work for company where we're getting into mining and i think that's also the beauty of the the stakeholder system that satoshi set up where in a lot of instances particular stakeholders aren't even
Starting point is 02:02:05 aware of what the other stakeholders are doing and they're just working in their own self-interest and your perspective is your developer wants to make sure that you're producing secure robust scalable efficient code a miner just wants to be as profitable as possible a user just wants to make sure that their money's secure and i think these stakeholders working disparately are doing a good job of honing in on what they're focused on and they don't even realize it but the network's getting stronger over time as they focus in on what they're focused on i think we at the end of the day security is like or like we need a clear understanding of bitcoin security and you know sometimes we wake up in the middle of the night and i think i'm just on the whole bitcoin security
Starting point is 02:02:56 model i'm doing it myself there's like other like still new stuff like oh like mining policy distribution or propagation like the rate of propagation across the networks like thing is if we want to hash rate you know that's an offer of that's a we have to be sure that the rules of the games are well functional you know like the code base you know we don't have like inflation back the 2018 fashion yeah oh dude have I told you that story yet
Starting point is 02:03:31 has Matt told you that story I was like we were going to Riga and Matt was like oh no you didn't tell me Matt was like writing the disclosure
Starting point is 02:03:40 yes to that and it was like me and him in the airport I was like what's going on he's like you'll find out
Starting point is 02:03:45 yeah I'm not going to dwell on security issues but it's okay If you're a beacon developer, you might have to deal with securities in any stage of exhaustion or in any geographical place you are. So keep this in mind. Just get some sleep.
Starting point is 02:04:10 At the end of the day, outside, you guys are, I don't want to say you guys, we're putting the onus on developers. but at the end of the day we're all dependent on this code and most people using Bitcoin can't read it. It's one component. It's one component. It is but you're verifying for us. And that's concerning.
Starting point is 02:04:36 Right? But do you expect everybody to learn C++ and do this? That's a really good question. Do you think that'll happen in the future? Well, back to my point that I don't know anyone which is able to understand an operating system, a laptop, and have our knowledge, but like a few people maybe. You have to rely on social chain of trust.
Starting point is 02:05:05 You know, we bootstrap Bitcoin on web of trust. Yeah. Yeah. So, and we have to have a clear model of all this layer. you know you have you have base layer of developers on top of it you have like people going to be deaf people like being involved into it following newsletter being sure like a lot of people will yell if bitcoin developers tomorrow start to you know like merge some weird software yeah mr hod will be right out there yeah and on top of this like like involved community
Starting point is 02:05:39 you have you have people who have a friends who is deep into bitcoin you know like and you have like this on top you have like people they bought bitcoin like and if we want to somehow scale bitcoin you have to maintain the ratio between these different kind of layers right i think uh aj towns went into this for the post correct about the adoption funnel um i think it's different Yeah, it's a great blog post, but we don't have a clear idea of how do we onboard each segment. Maybe you have a double degree in computer science and economics, and you are a great candidate to get into Bitcoin. Maybe you are strong in computer science, but you don't understand economics. economics maybe you understand economics but not the others that would be really
Starting point is 02:06:41 interesting like understanding what is the onboarding path of the current people running full nodes right because understanding why they're running a full node will give us leads on how to onboard new people running full nodes yeah like before we hit record i was showing you the bitcoin wallet tracker and i think that yeah yeah yeah you showed me this that's that all these this kind of tools which make it easier, right? And I think we should have like, it's always, you can always be more secure
Starting point is 02:07:13 or you can always have more mastery on your own side, right? And you know, I was talking about having link layer redundancy previously. And I think if we integrate like, if we are able to give like these capabilities to Bitcoin full node, assuming you buy some dishes to receive the back from space. But now you have different case of Bitcoin full node.
Starting point is 02:07:37 You know, we have the really secure one, which is like the deep backbone and you have just normal ones, public ones and you have private ones and you have live clients on top of it. And that's how we build like, and it's a question of proportion. Like, you know, like, if you have 10,000 night clients for one full node, that's not good, right?
Starting point is 02:08:05 No. No. If you have 10 or 100 for one full node, that's maybe okay. And to put this in perspective, too, like, this isn't even from a privacy or attackability perspective. It's, like, from a pure bandwidth perspective, right? Yeah. so I spent a bit of time digging into this and right now I think the cost of running a Bitcoin public node it's 300 gigabytes it's it's it's one of these
Starting point is 02:08:41 hard scanning bottleneck Bitcoin I think and we can say of course of course we We can, that's okay, just run full nodes on data centers, but we don't want this. We, ideally, that's not something you can, you shouldn't be able to know about it, but you want geographical diversity of full nodes. Yes. Yeah, right now, most of them are in Germany, the U.S. We want more full nodes in South America or Africa. that's agreed just simple distribution logic yeah the thing is and that's funny but thing is like
Starting point is 02:09:31 our one of these bottleneck is the internet infrastructure in these countries and when i think these countries that's new york maybe one of these countries i mean it's 50 bucks yeah it's pretty shit dude okay it's there's monopolies that's like three times the price i was paying in paris guy i i brought up antitrust we need to fucking break up the is here so when we say like okay the the whole like third world country between developing countries is completely wrong because some area of developing countries maybe may have the old infrastructure but that's not something we should integrate and it means we can't rely only on or we
Starting point is 02:10:17 technically we can we can okay assume like get more more participants get more users and we see this lightning economy uh blossoming uh you you need to serve them you need blockchain access to serve them bandwidth is going one of the bottleneck especially if they're running on spv clients like you know like some spv clients are I'm not going to name them they know who they are but their default configuration is you download the wallet
Starting point is 02:10:53 and you connect to the trusted servers no bueno I'm not I understand it's easier for sure that's not what you want to do in the long term well that's an interesting question I had with
Starting point is 02:11:08 this dude Mike Peterson who's down in El Salvador trying to develop a circular bitcoin economy in this village el zante right and he said custodial apps are yes they're the easiest to use right now but he agreed that the user should use or move towards non-custodial apps so do you see a a user journey where a lot of bitcoiners start with these custodial apps and they realize to contribute to the network and actually make like are the
Starting point is 02:11:44 incentives that strong where like hey i should use a non-custodial app because if if if not me then who and if not enough people do it it completely fucks it up we we we fucked up the internet somehow about how do we onboard internet users and how like i don't know like internet startups are just like okay how we how kpi is going to be how we increase the time of our users spend on the applications it's disgusting yes thanks maury it's it's we need to rethink the you know like what doesn't like as a hallway you onboard people and projects and the hallway it's and i don't like to call this project do you consider you become from another product no no what is this for you it just gives me peace of mind
Starting point is 02:12:42 that's a cool it's way to get peace of mind like okay and how do you you know like design tools which make their user smarter or more independence or like it's ux it comes down to ux design right yeah but that's there is like like i'm not a ux guy but people are going to do like project management for bitcoin they can't use the hardbooks because that's not that's not what you want no no so i mean the idea you have a clear identity of the users you have their ip address their billing address uh you know their name first thing that's terrifying me yes well then you're talking about like ux research and how that conducted you're not going to be able to conduct ux research in the way that
Starting point is 02:13:36 traditional apps can because they have that all that data at their fingertips down to the metadata yeah somehow like all like this big internet platform they succeed on designing a brother for our mommy or for our grandparents right that's yeah at the price of dude this is pretty crazy two days ago yeah my sister is like lives in colorado lives in the mountains she came home this summer to nanny for my wife and i she's watching our son and she has a special like nutritional supplement i've never heard of before yeah it's from the netherlands she or new zealand excuse me she gets it delivered to uh where we're staying opens it up and just literally like reads the package sorry freaks i'm on instagram i'm like hitting a story
Starting point is 02:14:31 literally not even 20 30 seconds later i got served an ad for that company that my sister just mentioned that i've never heard before it was like the most i was like come on instagram like wait like a day or two please like privacy is one of the thing i care the most on bitcoin and you have like multiple uh way to conceptualize privacy is first one privacy because it makes money more fungible um 100 it's not the only one privacy because you give people like this space of self-expression and not being forced to be in public not being forced to you know self-censor yeah and there is a third one which is where the current internet is failing it's if i know who you are i can just it's easy like to tweak like you know like serve people the good
Starting point is 02:15:31 ads or based on their prevent previews previous buys and get that in the loop you know like and you have tools like the internet or just like huge marketing ways or like just instagram doesn't don't have an incentive for you getting out of the platform it has an incentive to you spending a hell of a lot of time here because the more you're going to spend time there, the higher the rate of taking on ads or doing some American... Bitcoin, there is a trade-off with self-sovereignty,
Starting point is 02:16:13 but that's not what we should design. We should design tools for people to have more self-determination around their space, environment. Yeah, it's like, who's your base user and who do you build for? Like, should you concede? And we should care about different, like, as I was saying,
Starting point is 02:16:37 if you have a lot of technical knowledge, if you have grown up, you know, I used to do kernel dev. If you have grown up in a Unix culture, that's okay using all these tools. That's not, like, that's not... It's not your average person. yeah yeah i'm not like i'm not saying um i'm saying we should have this ascending model for
Starting point is 02:17:00 bitcoin where you may start really low on i'm going to use a custodial wallet the long-term perspective is how do we get people running from it like it's maybe like multiple years process like well i've said this plenty of times on this podcast i'd like to get your opinion on it like i think as much as bitcoin is a software revolution if it is to be successful in the future will be a hardware revolution as well it's i think it's more education like one of the real bottleneck is you know like if you are using a linux or if you're using some kind of digital degrees right like that's how hard bottleneck with bitcoin and if you increase digital accuracy being able to you know like very just verifying the signature of the
Starting point is 02:17:53 software and components you're downloading if you're able to make sure like make sure you are going to use an operating system of maybe that's coming like debian coming or maybe you too or something like geeks ups with this too Right. With Carl's work, Carl is doing it. How is a fucking you on this? All right. Yeah. Being sure we minimize the surface attacks or to chain, make it easier for people to
Starting point is 02:18:23 if you have left things to trust, that's easier for people to to verify themselves. Yeah. Yeah. But some like you want this model of people are going to learn through their Bitcoin's path, right? and how we design Bitcoin tools, systems and wallets that's
Starting point is 02:18:43 Bitcoin Unix is still something to be written yeah I agree and that's, I mean I can only think of my own user story my own user path like I started out on Coinbase I had a fucking Coinbase debit card at one point
Starting point is 02:18:59 I was like buying shoes at that shit I was like ah fuck, probably shouldn't be doing that Is Coinbase the original scene of every bitcoder? I think so. Hopefully not moving forward. Hopefully we convince enough people moving forward not to use Coinbase.
Starting point is 02:19:17 Exchanges are part of the ecosystem. But they're part of your running exchanges. You have to. You're not going to be able to operate. Disclaimer, this podcast is sponsored by the Cash App. No, I know.
Starting point is 02:19:34 but then like steve we had this conversation um you know my opinion on this no i i mean and that's like it's actually i i don't dive into these conversations and you're not on bitcoin twitter but uh there are factions of and i see all sides and i probably um i probably fall somewhere in the middle where it's like ah like where you have like the samurai wallets of the world the hardcore cypherpunks like the only way to get bitcoin is like via bisque and um or in the street like meeting somebody doing like a cash trade for it and it's like how scalable is that that's so here's like the frame of questioning i go down it's like how scalable is that uh considering the liquidity on these markets
Starting point is 02:20:28 and the loopholes you have to go through. And then on the other end, yes, it's so easy to buy Bitcoin on the cash app, but are we shooting ourselves in the foot in the long run? That's really something we care about with LDK. It's how we maintain the same security and privacy concerns going on higher tiers. You know, like, beacon cores are some kind of standard on security, privacy.
Starting point is 02:20:59 How do we ensure that when we go on the higher layer, we maintain the same level of it? And how, like, being sure, you know, like, fucking up lightning wouldn't, it wouldn't mean not scanning the network. it wouldn't mean scanning the network in a dystopian fashion yeah yeah you see
Starting point is 02:21:27 yeah it's like we might have a lightning network but the privacy can be like so bad
Starting point is 02:21:34 or like security can be really like shit yeah centralized you have to trust
Starting point is 02:21:41 you're only going to open channel with people from which you have authenticated their pubkeys it's something I
Starting point is 02:21:52 I mean being sure that's you know what's when you're doing a lot of security or something we care about security or software correctness being sure we build
Starting point is 02:22:09 trustworthy systems and you know like and we were talking a lot about internet and how much internet is a shit but that's I grew up in France and we have this
Starting point is 02:22:26 huge bureaucratic system it's unreliable because they change a legal API every year for tax or social reasons and that's my experience of someone growing up in this kind of country but in other
Starting point is 02:22:42 a lot of countries it's going to be like electricity got off in the middle of the day or like network outage or like how do we build trustworthy system and how do we define what's a trustworthy system as a community that's something which is
Starting point is 02:22:57 hard right but we should especially thinking of the different ways in which it can be disrupted like you just described the government can come in every year and change the law or you can have bad connectivity or storm in one part of the earth fun problem to try to solve that right
Starting point is 02:23:14 it's a big problem yeah back to the why Nike Myers and your Cypher the point of the Twitter crypto with this strong Cypher community
Starting point is 02:23:29 you know like something I don't have done I haven't been through all the numbers but how much money did the miners get as block reward the last year?
Starting point is 02:23:49 I can tell you the last block. I have the numbers, I'm just asking you. Yeah. Do you know? Something like 6 billions. That sounds right. How much transactions do we have by day? I think the latest,
Starting point is 02:24:04 I think I saw 14 billion a week. Yeah. Number of transactions. 44,000 3,000 last time I checked 3,000 transactions a day 300,000
Starting point is 02:24:17 300,000 yeah so it means it means you have to provide 20 millions of fees I mean for the current hash rate we get
Starting point is 02:24:34 you have to pay by day the users of the Bitcoin system have to pay 20 million 20 millions or
Starting point is 02:24:47 between 10 or 20 millions right to make up for yeah I mean like it's it's 6 billion divided by
Starting point is 02:24:55 300 today yeah roughly roughly this order of money I'm gonna assume that you're better at math than I am
Starting point is 02:25:01 oh yeah you're working fine this morning i know i'm trying well sorry you're getting to like a free market developing my point is like who is going to pay pay for miners when we you know like we we got a halving uh recently i was i was super lucky because i think i was one of the only bitcoiners being able to party physically for the Arlene.
Starting point is 02:25:33 During quarantine. Why is that? They know. It was cool, guys. It was like 11 a.m. on the East Coast? No, it was the middle of the day.
Starting point is 02:25:45 Oh, yeah. It was like 2 p.m. Yeah. We just left New York. People were at home. It was a cool Arlene party. I was at a conference
Starting point is 02:25:55 or the digital conference. Shout out value of blockchain or bitcoin oh fuck i'm gonna yell out for that but so i have a theory i'd be interested to hear your thoughts on this and it's a theory i haven't tested it out for sure so you know jevons paradox is an economic term uh um do you feel some paradox yeah so jevons paradox is basically the assumption or not the assumption it's the observation that uh the the thought that you become more efficient with a good uh would lead you to believe that you would use less of it so prime example yeah prime example is gasoline like uh so or oil combustion to be more broad
Starting point is 02:26:45 like you think if you become more efficient with that you use less you're more efficient why you need more and it just opens up more use cases so i have this theory with bitcoin utxos as they become more efficient, that there will be more use, and that's how a fee market will develop. And that's exactly what Lightning is about. Lightning, you untangle
Starting point is 02:27:06 the raw value of the DGXO compared to the payment throughput, which can be exponents larger. Yeah, that's magic. Wizardry. So you're picking up what I'm putting down. My point was, we have
Starting point is 02:27:25 But when, and I assume that everyone is interested keeping the same level of mining hash rate because that's a security parameter. You know, like in cryptography, we're talking a lot about like the size of the key between 2048 and 4096, right? In Bitcoin, our security parameter is the hash rate. That's a really fancy algorithm,
Starting point is 02:27:52 which is encoded by not yet specified rules in Bitcoin Core. But we are really aware about this security monitor. What do you mean? The hash rate. Not specified. You're saying that you're going to be able to calculate hash rate? No, I'm saying Bitcoin value is somehow tied to the hash rate. I agree.
Starting point is 02:28:13 Yeah, right. But were you alluding to that we're going to have better hash rate calculations within Core or something like that? No, not at all. I'm saying that the combination of Bitcoin Core and a high level of hash rate somehow make Bitcoin more secure. I agree. And if people are using Bitcoin, it's because they demand this level of security. Yeah, it's a whole feedback loop, right? Exactly, exactly, right.
Starting point is 02:28:45 like a price was discovered that price leads more people in exactly to chase that token that token goes higher miners like i want to mine that it becomes more secure you tell everything yeah but how do we maintain uh this offer of ash rate when the black world is going to be exhausted i'll tell you how i'll tell you what we're working on a great american mining what i agree so the company i work for outside yeah we mine and we go to oil fields no no you have to have a demand for it you offer mining who is going to buy you well it's not demand for bitcoin it's demand it's again it's it's completely uh sort of perpendicular to bitcoin where uh bitcoin provides one of the only opportunities to save money in another
Starting point is 02:29:39 economy in the oil and gas economy where they have all this waste and they have an incentive they don't even care about the Bitcoin but you what you're mentioning is how do I provide a cheaper offer of money right it happens to be cheaper but that's not what these energy producers are thinking about they're You're just thinking about, I need to get rid of my gas. Oh, yeah, exactly. Because if I produce too much of this gas and it's not consumed, then I'm going to get fined.
Starting point is 02:30:11 And I just don't want to get fined. I don't care about the Bitcoin. I'm more like, okay, is mining company would be interested if they get paid $1 billion by year? It depends on how much you put in. What? It depends on how much you invest, right? Yes, exactly.
Starting point is 02:30:27 But I assume like infrastructure is being deployed and it's being deployed in the... They expect, like, being paid at this level, like, 6 billion by year. Who? The oil companies? The whole mining ecosystem. Again, it depends. It depends on what they put into it, right?
Starting point is 02:30:44 So that's the thing about the mining industry, is the price to be profitable is getting driven further and further down. But it's still, like, substantial, like, in billions order. Yeah, at this point, yes, but in the future, like, ASICs literally hit a
Starting point is 02:31:00 physical barrier which they cannot get more efficient and then you have more competition which should drive prices down. So the question is
Starting point is 02:31:09 are we in the next decade because that's what matters are we going to see an order of magnitude decrease in the manager cost of mining
Starting point is 02:31:19 from 6 billion to 600 millions in the way they are operating? I can't speak with any certainty to that point. I don't know.
Starting point is 02:31:29 it would make sense to me that's something we should consider that's interesting but that would make sense to me on the mining we can I'm not an expert in oil or gas
Starting point is 02:31:42 so I can't speak here but I think we'll get driven down again it's going to transition to a point where everybody's looking for the lowest cost energy yeah there's plenty of miners getting free energy right now
Starting point is 02:31:54 and that's going to become more widespread I would imagine some mining industry chasing for every waste of energy in the world yeah literally
Starting point is 02:32:03 leading us to a type 1 civilization but you need demand the demand is there already the demand yeah but because because
Starting point is 02:32:14 black space is cheap right now because it's we live on the no I'm not talking about demand for black space I'm talking the other side of the equation
Starting point is 02:32:22 the demand for raw energy excuse me raw energy yes like there's demand like there's so much okay okay there's so much raw energy being being wasted that there is demand to have that but at the end of the day someone has a marginal cost which is lower than everyone yeah i mean that's how art market that's how capitalism works right yeah
Starting point is 02:32:46 that's right but but we might that's interesting and i haven't considered yet this in part of my scanning, Bitcoin research, but you need a demand for the black space. You need people to pay the fees. Yes, and there will always be demand for censorship-resistant transactions. Just look at what's going on in the world.
Starting point is 02:33:08 Okay, you have six billions. Okay, assume we keep this as a constant in the next decade. Six billion, three hundred transactions, twenty millions by day. This means roughly thirty dollars by transactions.
Starting point is 02:33:23 sounds about right yeah okay do you think we'd have 300 300 000 transactions by day at 30 dollars price no all right but so but this gets back to my point about the mempool and and because like what i wrote about last week is like like individual usage of the network will drive innovation like people will like try to send transactions they won't go through like fuck that fucked up so you get batching you get consolidation you get century you get incentives to move towards snore and taproot where you can condense a lot of this or i'm getting i'm getting weird looks right now where you can be more efficient with it yeah we have the southern of okay not the southern but we have a bunch of way making uh compressing transaction yeah yeah we just
Starting point is 02:34:20 as developers right now we don't have that much incentive on working on making transactions more value efficient on the chain we have but it's still like low like there's a bunch of technologies we can work on
Starting point is 02:34:36 but still. But until a certain point Bitcoin as a network and users within it are gonna hit up against these thresholds like realize limitations some people will fall out like we've seen this in the price range. But my point is like if Bitcoin is a digital gold,
Starting point is 02:34:52 like if you're thinking Bitcoin is a digital gold, you're going to do like, what, two or three transactions on the network by year? I don't... See, I view it as that, but then I see myself using Lightning. But... Like, because it's useful.
Starting point is 02:35:09 It makes it easier for me to, like... So a good example is Bitcoin Bounty Hunter. Is that good? That's my whole point. If... I don't think we will... If we think Bitcoin as a digital gold, going through post-block reward subsidy exhaustion,
Starting point is 02:35:28 we won't have enough demand to maintain the same demand. This goes back to Jevons' paradox, right? Yes. One of the ways of doing it is, like you were saying, like a non-chain channel funding transaction is a way of entangling the price I pay to use the payment system from the overall value I can get.
Starting point is 02:36:01 Exactly. Yeah. And that's what, I mean, you know, like somewhere at the end of the day, Satoshi has done some weird bets. There is a Satoshi bet, which is we are going to be able to bootstrap a Bitcoin economy before black subsidy exactions to pay for a consistent hash rate.
Starting point is 02:36:25 And this consistent hash rate is going to give people confidence in Bitcoin value. I think we may already be there, dude. We already passed there? Dude, are you that much confident? I mean, being in the mining industry, the amount of capital that's being dumped in it now and the incentives but what if they have like three
Starting point is 02:36:46 like okay assuming a zero block reward what if there is 3,000 transactions by day how many of them are going to be burned I don't find that plausible 3,000 like my point is like
Starting point is 02:37:01 it goes back to the stakeholders right then you see like the hodlers who aren't mining who aren't looking at code they wouldn't naturally see it like alright maybe I need to
Starting point is 02:37:13 spend something but like maybe that's my tax for living within the system that's like to assume that nobody
Starting point is 02:37:19 assume like to assume 3,000 people they were making transactions exchanges would make more than that one day
Starting point is 02:37:26 I don't know unless you're bitmex I mean bitmex is the only one batching right batching is a that's hard
Starting point is 02:37:33 like I I should I should I should god batching a batching library for people. That's how do we get to this equilibrium, or guaranteeing we have the same level of hash rates
Starting point is 02:37:53 after block subsidy exertions, and maybe due to block mining costs being marginal, becoming more marginal and energy being cheaper, or it's maybe like people having 100 transaction and more value of it, I think. That's something we should be concerned as a community. No, I mean, this is something I think about a lot. And, like, I actually don't worry about it.
Starting point is 02:38:15 A lot of people, like, and I've been called out for not worrying about it. I don't worry about a fee market because I just think, again, the secondary and tertiary effects that Bitcoin has on other industries that Bitcoiners who are so focused on the protocol don't realize is... Because you have a constant demand. I mean, at 30 dollars in transactions, people doing on-chain transactions are mostly HFunds, and there is no, like, 3,000 HFunds in the world or something like that. Can we do, like, some kind of Fermi? But you could also on-load people directly onto Lightning, and then even if you're doing that, if they're not making on-chain transactions in their HTCLs, or LCs, excuse me,
Starting point is 02:39:00 uh the provider that's doing that will be doing that right can you shortcut your arguments like even if people are onboarded onto lightning directly they never touched on chain uh the way that like the person who onboards them is going to be making on-chain transactions yeah i mean you you can combine um you know i was working on this uh coin pool id idea oh yeah i was like i thought we weren't gonna get to coin pool i love coin pool okay so it's similar to coin swap no no it's completely different i know it's second layer it's not it's not protocol layer the point is like even if you assume like everyone is using lightning you need snore for this correct you need a bunch of things
Starting point is 02:39:51 One of my concerns is, even if everyone is in Lightning at some point, you have some kind of UTXO-set scanning bottleneck, which means it's going to be a high cost for a full not verifying the whole things. And you want some way to evaluate channel. There is this idea of channel factories. It's a paper that has been published by Christian Decker in 2018 and 2019. And the way we are using one base data transactions and from then we are going to find out multiple channel funding output. Coin pool is exploring the same way and we are considering another assumption. The issue with the tree construction like China factories is
Starting point is 02:41:05 doing if you if you fall on chain the whole tree like other people who are siblings of the trees will have to pay the price to close their channels and join another China factories so basically consolidating a bunch of users into one transaction that transaction is pretty malleable via a Merkle tree depending on who wants to hop out of the coin pool.
Starting point is 02:41:36 Coin pool is like instead of doing a tree of transactions we are going to encode the transaction tree in a Merkle tree. In the taproot Merkle tree we are working on
Starting point is 02:41:45 the point or designing proper thing. So that's the question I had when I first looked at it. So you have this
Starting point is 02:41:53 Merkle tree and every lift on the Merkle tree many users involved in it, correct? Exactly. And if one pops
Starting point is 02:42:00 It's a fancy multi-party channel. If one's like hey I want to take my money and go home uh-huh it just adjusts the merkle tree but like does that create a utxo for that person who goes home say yeah does that create like a transaction for that person who goes home if you want to go go out of the pool it means going on chain right yeah you you uh a pool if we are designing this flexible enough you should be able to open channel with anyone being
Starting point is 02:42:25 participant of the pool or you might you know we are reassuming with Gleb that Lightning is cool. Lightning might be 80% of Bitcoin traffic in the coming decade at the end of this decade. It might be not the only protocol like you know people are working in vaults, people are working on coin swaps, people are working on I'm a bit involved in DRC specs, it's a cool project. As we are doing more fancy protocols, flexibility is somehow an enemy of privacy. Because doing transactions which are expressing more, like including some contract or option protocol are leaking more information and I'm really concerned if you're like
Starting point is 02:43:25 you know internet it's like tens and hundreds of different protocols if we have a beacon ecosystem with ten different protocols you have to and you imagine like people like you know like I have this lightning channel I'm closing this tiny channel and I'm sending funds to a vault. And now people can use like-informations and the expressivity of your Bitcoin Vault
Starting point is 02:43:57 scripts to learn information about yourself. Because the scripts only accept... Let's say Miniscript is awesome, right? Because it lets you encode easier, safe policy. Let's say I'm the only guy
Starting point is 02:44:13 using 95 relative time locks it's gonna be obvious exactly you know what I mean exactly yeah
Starting point is 02:44:26 like if you so standardization even though it may be scary to some people may actually be flexibility
Starting point is 02:44:34 is somehow urging privacy and how we do solve this it's still a pain in the ass so is this just like a dick measuring contest between developers
Starting point is 02:44:43 on what standardization is better no it's more about i'm 100 percent about people doing vaults uh people using creative time logs i just want to be sure that we you know like on the current internet uh there is a lot of privacy attacks on the using different protocols oracle you know like your DNS request, or even at networks, like weird stuff. Every protocol we are going to support on Bitcoin is going to be, might be, might leak information. Might be harmful for privacy.
Starting point is 02:45:26 So with Coinpool, with Gleb, we consider both like, first, how do we scale? How do we scale Lightning channels opening and closing? It's basically a patching trend. Yeah, yeah. So first, trying to come with a solution more optimized than channel factories. And we are trying to consider also,
Starting point is 02:45:51 how do you avoid privacy leaks between portables? Because you might not care about your privacy on Lightning, but you really care about your privacy on vaults. Because on your vaults, you have your saving. kind of saving accounts and switching from one to another yeah yeah so my mind just got put in a press I'm like I can't even like yeah and every protocol every protocol designers we you may do the work using cool privacy tech like dark proof trees, script-less scripts.
Starting point is 02:46:32 With scoring pool, we are trying to come with, you know, like, solving privacy, answer for all, or some level. Not perfect, there is no thing, but it will be like some kind of 1.5 layer between the base layer and the layer 2. What would that 1.5 layer just be, just the Merkle tree within the HTLC? Well, where the top script of your Merkle tree will be a finding out point of your channel, of your mining channel.
Starting point is 02:47:05 Okay. So the information of who's involved in that Merkle tree would be hidden in your funding transaction? Yeah. Grossly, yes. Yes. That's more like... So everybody's getting in this one transaction. Everyone is...
Starting point is 02:47:27 You can't tell who's in it. You commit funds to a pool, and then you have, like, this multi-parter channel with everyone as a balance. And the balance is enforced as a leaf of the tap script. That's what confused me. Like, when you're updating that, when people are pulling their money out. Yeah. Like, do you, how do you not deprecate privacy on the way? Like, you're just creating, like.
Starting point is 02:47:53 You don't, like, you don't know who is exiting from the pool. Okay. But at the end, when the pool's done, will you know how many people were in it? Well, the pool may be forever or maybe for a long time. And I may have multiple Charles. How do you know it's Alice, Bob, and Carol or not all Alice? Alice could be Bob. Yeah, and Carol could be just Carol.
Starting point is 02:48:13 Yeah. Interesting. It can be like, I think we should, I'm talking to a lot of people doing privacy research. I think we can reuse a lot of assumptions which has been made on CoinJoin and just doing off-chain CoinJoin CoinPool is some fancy off-chain CoinJoin
Starting point is 02:48:35 yeah well that's why I thought you compared it to Coinswap because Coinswap seems superior to me in that where it's like hey, me and you are going to integrate or we're going to Coinswap Coinswap is more like here I'm going to give you an address
Starting point is 02:48:51 that you send this to And you are going to change the color in an option way. I think CoinPo is just like, we are just trying to increase the offer, the privacy offer. And one of my concerns with CoinGen or CoinSwap, it's going to be too much expensive. Is that scalable?
Starting point is 02:49:13 Well, if you want a lot of privacy, you will burn a lot in fees. Yeah. if you use Whirlpool be careful of like the pools you're getting into the fees are not cheap this sentence has not been
Starting point is 02:49:34 backed by any scientific research but I think Coinsop is going to be better than Coinpool but less deployable harder to get used by users just because of the UTXO yeah, on-chain fees It's too much.
Starting point is 02:49:49 Yeah. How do we design a scalable privacy system? The design we offered with Gleb was just an attempt. It's years, years before we have anything looking like this. It is just like, that's a real discussion we should have. How do we design privacy for the average guy? how do you design which is
Starting point is 02:50:18 economic in some type right yeah that's what I mean I like hopefully coin pulls easier too
Starting point is 02:50:25 yeah hopefully there can be a GUI put on the taproot miniscript whatever it is like hey
Starting point is 02:50:32 do you want Margie you can have any GUI you want I want the best GUI that's ever been
Starting point is 02:50:41 made I'm not just I'm not going to get laughing at me CLI fan over here
Starting point is 02:50:46 but that's what's gonna that's what's gonna make this shit happen yeah I think your point is like how do you design
Starting point is 02:50:52 like how do you abstract all that how do you abstract that Merkle tree that's the question right yeah that's part of
Starting point is 02:51:01 like you know I was talking about dystopian lighting I'm not sure if that much a good UX choice
Starting point is 02:51:09 the people are saying you know you shouldn't be a world about channel you know you should like I want to send money to someone
Starting point is 02:51:18 doesn't matter about the routing power if users don't understand channel and if the default autopilot of it is picking up channel for them well if I'm your LSP I can censor your transaction
Starting point is 02:51:33 so you have this trade off between how much you know how much knowledge you assume in your user and how much censorship resistant payments you offer them yeah but it's like it doesn't software like the bitcoin wallet tracker where you can just do a plugin into your node and it makes pulling this data a lot easier how do you design things like bitcoin white trackers we are like uh keeping a lot of privacy well it's just your electron wallet being connected to full node
Starting point is 02:52:08 to your full node on your own device. That's awesome. That's pretty cool. That's pretty cool. And we should... Maybe you have to connect to the internet to download the plugin, but if you verify the signatures,
Starting point is 02:52:18 you do it in a secure way. So most of my time is not spent about fancy lagging attacks or privacy research. It's about coding and russlining. And russlining is the first component of the LDK. and if you're in like are you worried about ldk marley it is ringing a bell but i can't describe it off the top of my head right now what do you know about it it's just something
Starting point is 02:52:53 development kit like okay if you like you have already an ecosystem of wallets in place right and how do you give lightning capabilities to them uh yes yes like Electrum is going through this problem right now that's why Electrum 4 has been held up Electrum guys are awesome they have awesome developers they are literally developing Lightning from scratch
Starting point is 02:53:18 to get it into their work in Python right? yeah and that's we are talking about Lightning and how Lightning may solve
Starting point is 02:53:33 like provide demand for block space because you untangle the on-chain value from the payment throughput. And if you want, one of my personal hypothesis is in the next decade, we are going to see the bootstrap of Lightning economy
Starting point is 02:53:59 in some part of the world is going to be like single digit. It's going to be unnoticed. It's going to be unseen. It's not going to be part of any new Pre-Purse title, but it's going to be awesome, right? It's going to come out of nowhere. Exactly.
Starting point is 02:54:13 People are going to be like, oh, I can use this for this. First day there is one guy, and at the end of the week there is a whole city. Well, that's the conversation I had yesterday with our friend Mike Peterson, who's down in El Salvador, really incepted that idea in my head
Starting point is 02:54:29 is like thinking of M-Pesa in Africa and, like, who are the first to adopt mobile technologies, particularly mobile technologies that move money. It's actually people in developed countries who are able to leapfrog this shit because they don't have the preconceived notion of, oh, I need a laptop. You don't have the legacy system.
Starting point is 02:54:46 Yeah, exactly. And, like, how do we, you know, like, how do we design a big-swing experience for people who don't have a payment system right now? I think that lightning is one part of the solution, And what we're trying to address with the ADK is trying to build this experience. And building experience means making it easier for what's on the ground, integrating Lightning. I think money is for sure a thing, and you need to adapt to every culture, country, payment.
Starting point is 02:55:26 You don't have to adapt to every culture, country, payment. You just have to adapt to what's easiest for people to understand. There is different scales of it. So we envision Lightning, like LDK, being a building block integrated in any wallet experience. And people should be able to design the landing experience they need to. If you want zero-conf channel, you should be able to do two. yeah well i would analogize that to like any human on earth regardless of where you're from your educational backward background or your understanding of bitcoin bitcoin and lightning
Starting point is 02:56:06 for them should be like somebody who's thirsty and needs water sees a river running and they know like a river running produces clean potable water yeah like bitcoin and its software built on top of that should be like that like hey i need to move money around the world i recognize this network does that yeah you know what's fascinating with lightning it's fascinating because um the way we bootstrapped um markets economies in europe uh it has been a long process starting the 11th century somehow and what were the tools of merchants you know like what are the tools of merchants in Venetia,
Starting point is 02:56:51 Gena, and basically they were using something which is called
Starting point is 02:56:56 the letter of credits. Serve credits? Letters of credits. Oh,
Starting point is 02:57:01 letters of credits. Yeah, it's Alice asking Bob to pay Carol
Starting point is 02:57:10 if some condition is fulfilled. On a high level it's the exact same mental
Starting point is 02:57:15 model as a lightning. People are building a chain of payments.
Starting point is 02:57:19 So we're just making more sophisticated for what is old is new again. Lateral credits were used in merchant cities to like, okay, I will sell like what people were trading in the middle age. Grain for salt. Wine. Wine. Yes. Very applicative to this. So I'm going to sell you like 100 wine bottles like from Barcelona to Venice.
Starting point is 02:57:46 and I want to be paid so I'm going to withdraw a letter of credits from a local agents and the local agents are going to be in touch with the guy in Venetia and make his balance at the equilibrium and the local agent in Venetia is going to pull money from the
Starting point is 02:58:17 guy receiving the goods. I mean, letters of credit is not something You're describing like channel
Starting point is 02:58:24 management there. That's exactly what I like. We are liking someone using cryptographic tools to reproduce some
Starting point is 02:58:32 weird middle age tool. Is it a weird middle age tool? This weird middle age tool has been the
Starting point is 02:58:41 horsepower of market economy in Europe for a while. Yeah, I mean, so that's the question, like is it replicating a middle age practice or is that middle age practice just like human like is that our natural tendency to like
Starting point is 02:59:00 this is the way we agree socially. You know what's fascinating? And this is just making it faster and more automated. What's fascinating with letter of credits it was the backbone on market economies and he was just relying on some kind of
Starting point is 02:59:15 web of trust and beyond any national legal framework. Yeah, will Carol ever show up and be like, Alice did not have that money that she pulled from my account.
Starting point is 02:59:23 I'll piss off. You have a, you have a system where people weren't, you know, I was able to do international trades without being part of the same.
Starting point is 02:59:34 And what, and what made that possible? Social incentives, right? Like, everybody had a gun to each other's head it wasn't a physical he wasn't relying on trust
Starting point is 02:59:44 he was really relying on yeah but that's like but he was working is there a certain level of trust that humans have historically we were living like he was working on the scale of middle age Europe there is like
Starting point is 03:00:00 a whole lot more people involved in today's economy so you need different ways to express trust and cryptography is part of it I agree Antoine
Starting point is 03:00:12 we're three hours in okay I mean I'm really excited about it I mean like just you know
Starting point is 03:00:18 like providing like Hong Kong style financial infrastructures with everyone pocket yeah
Starting point is 03:00:27 it's fucking awesome yeah and you you don't have to be in Hong Kong to get the same level of services no
Starting point is 03:00:32 yeah thank you for doing what you do it's three hours isn't it crazy that we get to do this or i mean i can't speak for you okay so this my goodbye to new york this is my goodbye too okay um this might be my last it's been like awesome year uh like uh going to miss like central park i'm going to miss bashwick and i'm going to like you know But even Times Square, which is not loved by New Yorkers.
Starting point is 03:01:03 Don't bring up Times Square. Sometimes Times Square can be the magic place. In what way? Seeing the depravity of humanity in one central place? It's a goodbye, not a farewell. That's true. It's a goodbye. It's not a goodbye.
Starting point is 03:01:22 It's a I'll see you later. I'll be back. Dude, I'm happy that you've had this incredible year. and it feels like again like the content of the discussion tonight is on stuff that you've put out over the last six to eight months and yeah yeah okay you just had a three-hour conversation i still have more questions i haven't uh spoken about dlc uh i have a good news we have a clear scope for getting a 1.1 dlc spec in the next coming months it's going to happen like like ShortBits guys, Chris, Nadav, DRC guys, Thibaut.
Starting point is 03:02:03 It's fun stuff on top of flying. Shout out to Ben the Carman, too. I love the ShortBits team. Yeah, it's a cool guy. But, I mean, like, you know, like, Bitcoin is so young, and that's this huge, huge thing, like, this new continent. I mean, we don't know the diameters of it.
Starting point is 03:02:20 We don't know the size of it. And we should, like, be patient and doing stuff right. Thank you. Thank you, thank you. that is i think the common thread between this podcast and the newsletter that i write is that i think more people need an exponential amount of more patience with this stuff because we're so goddamn early like let's do it right or not do it at all patience please you're not going to get everything out of the box it's going to take time yeah don't worry marty i'm taking more crazy
Starting point is 03:02:51 rights on this thing well thank you for that and this has been fucking thank you for being the first person to meet me in person in four months to do this podcast i this has been the best most rewarding conversation i've had in quite some time don't worry about the wine spill no no okay not very easily great where can we find out more about you where can we help you okay next time I'm going to bring Chateau Saint-Emilion 2005 Left Bank
Starting point is 03:03:25 It's going to be good It's going to be good Alright Alright We're going to record next week Okay Goodbye New York That's all we got
Starting point is 03:03:34 This week freaks Peace and love Tiki

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.