Buck Perley is one of the co-hosts of Austin BitDevs and an engineer at Unchained. We discuss his work improving Unchained's open source sovereign multi sig app Caravan.
Buck on Nostr: https://primal.net/p/npub15gaw9fpcwrleq332pl95xndencvwgwdtfee6ejlngp7waeh0e35sg8r670
Blog Post: https://unchained.com/blog/unchained-2024-open-source/
Caravan Repo: https://github.com/caravan-bitcoin/caravan
Caravan Website: https://www.caravanmultisig.com/
Unchained Website: https://unchained.com/
EPISODE: 148
BLOCK: 877362
PRICE: 1062 sats per dollar
support dispatch: https://citadeldispatch.com/donate
nostr live chat: https://citadeldispatch.com/stream
odell nostr account: https://primal.net/odell
dispatch nostr account: https://primal.net/citadel
youtube: https://www.youtube.com/@CitadelDispatch
podcast: https://serve.podhome.fm/CitadelDispatch
stream sats to the show: https://www.fountain.fm/
join the chat: https://citadeldispatch.com/chat
learn more about me: https://odell.xyz
(00:00:00) Fox Intro: Bitcoin as a Sanctions Hedge
(00:01:12) Show Introduction and Feedback
(00:02:09) Guest Introduction: Buck Perley
(00:06:06) BitDevs Meetup and Community
(00:07:30) Unchained's Open Source Contributions
(00:09:02) Caravan: History and Evolution
(00:13:10) Caravan's Recent Updates
(00:19:05) Caravan vs. Sparrow: User Preferences
(00:22:32) Blinded xpubs: Privacy in Collaborative Custody
(00:38:14) Collaborative Custody Models
(00:52:02) Summer of Bitcoin and Open Source Contributions
(01:00:15) Fee Health and Privacy in Bitcoin Transactions
(01:07:03) Encouraging Open Source Contributions
Sanctions that they went after individuals, country and also took some of the Russian assets and said, hey, we're gonna give to Ukrainian people. When that happened, bitcoiners came out and they said, you are actually going to further accelerate the demise of the US dollar because now you have introduced this sanctions risk. There's a paper that came out of the Harvard Economics Department where they talked about, will countries now start to buy Bitcoin not for price, not for the sovereignty, but actually as a sanctions hedge. Russia. And so Russia is actually doing that. Do you think they're the only one? No. I wouldn't bet on it.
[00:01:12] ODELL:
Happy New Year, freaks, and happy Bitcoin Wednesday. It's the 1st day of 2025. It should shape up to be a massive year for us, and I have a great conversation lined up. Per my last episode, I asked you all if I should include these mainstream news media clips as I have in the past as a time capsule. It seems like the consensus is keep the clips. Don't make them 12 minute sailor clips, which is what I did 2 episodes ago. So keep them on the shorter end, and, get rid of the music at the end. So that's where we're going so far. If you have any comments or feedback on that path forward, because you guys are a huge part of the show. That's why I come in so often, with dispatch. That's why dispatch keeps going.
Feel free to give me feedback on Noster or through Fountain Podcast App, which has got Noster integrated. So if you put it there, I get tagged on Noster and I can see. So that's awesome. This is obviously, Citadel Dispatch, the interactive live show focused on actionable Bitcoin and Freedom Tech discussion. I'm your host, Odell. And today, I am joined by Buck Perley, who focuses on a lot of the open source work that is done over at Unchained Capital. How's it going, Buck? It's going good. Excited for, New Year. Happy New Year. Yeah. Another year in the bucket. That's right. Keep on pushing.
I guess before we get started, I know you mostly as one of the foundational elements of BitDevs Austin. Do you still run BitDevs in Austin?
[00:02:54] Buck Perley:
I cohost. I don't know. It's a it's a it's a group effort to to run it, but I've been cohosting it yeah. It's funny. I I when I first moved to Austin back in 2018, I was I just reached out to Justin Moon on Twitter and, said, like, hey. I'm new here. I don't know anybody. You're a Bitcoiner. Can we get lunch? And so we're chatting. I was telling him some of the stuff I was working on at the time, and he was having, trouble just filling out topics, during bit devs. He's like, do you wanna just come and talk? Because he didn't he didn't wanna keep on trying to come up with topics. That was before he did Socratic seminar. And so I did a couple talks about products I was working on, And then when we moved to Socratic seminar, it kinda brought me in, to to host, from time to time. And then and then Ben Carmen kinda joined in as well. And then since then, Justin Moon has kind of, like, walked off stage a bit, into the twilight, I guess. And, and, Carmen and I have been mostly Carmen. He's the most consistent of us. But yeah.
[00:04:01] ODELL:
Yeah. You outlasted Moon. That's an accomplishment. Yeah. Freaks, as always, the Nostril live chat is at zap.stream/odell or cildispatch.com/stream. All the links for cildispatch are at cildispatch.com. I might remove that live chat if it's not active right now and everyone's nursing off their hangover. But we'll keep it open for a little bit longer. So, BitDevs is every month in Austin at Bitcoin Commons. It's modeled off of BitDevs in New York. It's focused on, technical developments that happen with the developer focus every month. It's my favorite style of meetup. It's a Socratic meetup.
So so did have you done all 12 months this year, or did you miss any?
[00:04:48] Buck Perley:
I did miss. I had to I was I was home for the December 1. So this this one, I might have missed one other.
[00:04:56] ODELL:
So you got, like, 1010 of 12?
[00:04:59] Buck Perley:
Yeah. At that's pretty good. Yeah. 10 or 11, I think I got. Yeah. It's pretty good. It's a grind. The meetup the meetup life is a grind, so that's impressive. Yeah. Carmen made everyone. Did Carmen make everyone? No. He met he broke his, like, 2 year streak this year.
[00:05:16] ODELL:
Oh, wow. Yeah. Okay. So Moon is out. Carmen's getting flaky. You're not hitting everyone. I mean, do you have do you have Youngblood that's ready to carry the torch or?
[00:05:29] Buck Perley:
Vivek has has, seared salmon has been stepping in a couple times, has been helping. Ryan Gentry is is local and from, Lightning Labs. He'll come in from time to time. So, so, yeah, we have we have subs that we can we can tag in. And Justin Moon is is, you know, sometime often still around. So,
[00:05:49] ODELL:
he just doesn't wanna be at the front of the room. He just wants to still heckle. Right? He literally has done that a couple of times. He'll be heckling from the audience. It's like Yeah. The the best place the best place to sit in BitDevs is, like, the first two rows so you can heckle but not be actually the cohost. That's like the ideal situation. Okay. Awesome. Yeah. We have BitDevs here in Nashville as well. Ours is run by Steve Myers, Matthew Ramsden, and Pee. And I think they haven't missed a single one, this year. None of out of the 3 of them haven't missed a single one. Now, I deserve 0 credit. I maybe have been to 2 or 3. This was a very busy year for me. But, anyway, enough with BitDevs. I wasn't expecting the BitDevs inquisition, but it's my favorite thing to do in Austin. Like, if I do go to Austin, I try and plan it around to BitDevs, so I wanted to Yeah. Follow it out. For anyone watching or listening, it's easy to plan because it's always the 3rd Thursday of every month.
[00:06:44] Buck Perley:
I think the we we missed we moved it around once, and I was that for TabConf maybe? There's one that I think we we did it for the first time since Parker had been starting to organize it. So it's easy to plan around, which is kind of a fun aspect of it, that consistency.
[00:07:00] ODELL:
Okay. So I pulled out the ZapStream live chat for now. I am watching it on another screen freak. So if you comment there, I will bring it back. But until then, you get to see our beautiful mugs in full picture view. I had a feeling that New Year's rip was kind of aggressive in terms of live chat viewership, but, Buck and I did early nights with our families, and we're ready to rock and roll for 2025. So it seemed like a great way to start the year. So, Buck, what are we talking about today?
[00:07:34] Buck Perley:
Well, I mean, we can talk about anything. There's always lots to talk about. But, yeah, we've just published this morning, in the past week. We Unchained has published 2 blog posts, kinda like year end reviews. And, one, was on the Unchained side, but I thought it would be worthwhile. We kind of had a low key, very active year on the open source side of Unchained. And so I thought it would be just a nice exercise to to I kinda just started off as a bullet list. I was like, oh, we could we could actually, you know, turn this into a blog post and let people know what's going on. And one reason to to do that, to talk about it, is a lot of what we did this year was focused on developer experience, DX, and, you know, instead of UX, to make it, more inviting, easier to contribute, because I think there's a lot of useful tools, that we have there that we basically we public we we write some of our libraries open source that we can also use in our own closed source and to to put that stuff out in the in the ecosystem when we can. So a lot of work going in this year for that and kinda just want to share it out. And, also, incidentally, as a byproduct of that, some new user facing features that, I think some people should be pretty excited about.
[00:08:54] ODELL:
Awesome. So, I mean, I'll link the blog post in the show notes. If you're watching on YouTube, it's already in the description if you wanna follow along. So, the main focus has been this project called Caravan, this open source project called Caravan. When was it create I feel like it was created maybe 4 years ago or something like that. It's been a while.
[00:09:15] Buck Perley:
Yeah. I think the first iteration of it, came out a year or so before I even joined Unchained, so it's been 5 over 5 years, I think, since the very first version. And it was originally released as, just a sovereign recovery tool, kinda once we came out especially once we came out with our Vault product. So Unchained started with loans, and then we kind of forked that to have Vaults that, clients could control control the the the majority of the quorum of keys. And then, we wanted to, you know, kinda prove to people that it was safe such that even if we went away for whatever reason, your funds could still be recovered. And the options for doing that weren't super user friendly, typically had to be connected to a full node. You know, Electrum is very difficult for nontechnical users, and Unchained is primarily geared to people that, you know, care about self sovereignty, but, you know, maybe don't have enough time to be playing around with Electrum and, you know, Redeem scripts and and, all of that. So, yeah, it came out about 5 or 6 years ago as just, we call it a stateless coordinator. So, you know, not thinking of it as a wallet because the wallet is kind of it's this ephemeral thing that exists to the relationship between keys. It's not a node.
Coordinator is really just an interface for coordinating between the keys that are involved in in a wallet or even just an address. Our first version really was just a single redeem script for recovery.
[00:10:42] ODELL:
Yeah. So, I mean, when Caravan first came out I guess the first context is if for some reason you're not aware, Unchained is a financial services business. Their whole business is based around this idea of collaborative custody. Their Vault product you hold 2 keys. So you hold, like, basically 2 hardware wallets. And they hold one key. If you lose 1 hardware wallet, they will help you spend in that situation. And they basically, like, hold your hand during the whole process. The trade off being, first of all, it costs money. And then the second being KYC and privacy. And then they have their loan product. And in the loan product, you hold one key instead of 2 keys.
They hold one key, and then an institutional partner holds the 3rd key. So, in that situation, the 2 institutions have to come together to liquidate you or steal your money. So you can watch it on chain. You can see it's not rehypotheticated. It's just a strictly better situation, if you're doing a Bitcoin collateralized loan. And then Caravan came out. And when Caravan came out, it was Presparrow. Right? And so this whole idea of if you're holding 2 of the 3 keys, the reason you're doing it is not only to make sure that Unchained doesn't steal your money, but in a worst case scenario where Unchained goes out of business or something bad happens and Unchained can't, you know, service their customers, that you can still spend your money. And that process was a very complicated, convoluted process, which was not good to tell users. So, Caravan was created. This open source project that was independent of Unchained to allow you to easily spend. Now, one of the first ways I ever actually used Multisig with hardware wallets was with Caravan in the early days. Because, like I said, it was pre Sparrow. It was pre Spectre.
And basically the only other option you had was with Electrum. And as Buck mentioned, it is stateless. So, if you think about it from like a practical sense, like, the way you're interacting with it is you run Caravan, and then you basically every time, you're, like, adding every hardware wallet. I guess you can save a, like, a config file. But, you add each hardware wallet, and then it generates your, like, this multisig coordinator thing where you can see how much funds you have, create spends, create receives. Okay. So with all that context in, this is interesting. The YouTube chat is actually more active than Nostra chat right now. Well, that's why we stream everywhere, and YouTube does have 2 and a half 1000000000 users.
The so what what's new with Caravan? What have you changed? So Caravan felt like the ugly stepchild for a while. It was, like, way ahead of the game, and then kind of everyone stopped using it. And it was just like, if if Unchained goes away, you could just use Sparrow. It wasn't really it just it seemed unloved. And I feel like this year, that changed. Right? This year, it became it became loved again. So so what what has changed? What improvements have been made, and how you think about it?
[00:13:36] Buck Perley:
Yeah. I think that this the Sparrow piece of it is important. Like, we we're we work closely with with Craig. You know, he's added support for our our configuration file. We we collaborate, pretty closely just to make sure things keep working, and and I think it's like it goes to the ethos of kind of an open source ecosystem where you can have you can have competitors that are not, like, still friendly and and work together. Right? And so it's really great that our users can go to Sparrow as well and have a better, a platform that gets more regular love, like a full time developer type of thing.
And Caravan still serves a different niche, just the the fact that it is stateless. You know, you can use mempool.space. Again, for for people that are our customers, where privacy isn't your top concern, it is really nice to just be able to spin up this, you know, pure JavaScript only thing to interact with your wallet. Nice thing too is that that makes it way more portable. So So another kind of neat thing that I I think is kind of underappreciated is that you can enter now this we we had to make some change to our back end, in Unchained, but now you can fully interact with your vault, your Unchained vault without ever logging into Unchained, and, like, everything will continue to work.
So you you can and you can do that from anywhere with with Karavan. So so that's that's pretty neat. And then another another piece of it that's important for us is for anything that does have to do well, with well, we have 2 primary, libraries. 1 is now called caravan wallets and the other is caravan bitcoin. So a lot of anything in our code base, even though we do it on chain, that is interacting with hardware devices or that is interacting, kind of with, like, like, the Bitcoin side of stuff. Just kind of like client side, code, whether you're estimating size and fees or or whatever.
We do that in our open source code, and then we use that at Unchained. There's lots of benefits for that, whether it's, you know, there's security, you know, just the, fresh air, sunlight being the best disinfectant type of thing, open, to outside contributors. So there's a lot of reasons to continue showing love to that ecosystem even outside of, like, well, now there's alternatives. And this year, we kind of I there's a few things that I kinda wanted to do. It was it was pretty clunky to to develop on it, especially if you were new to the code base. The code itself had not gotten a lot of love, and so it you know, like like we were saying, it's 5 or 6 years old. So there's a lot of kind of, like, older libraries that needed to be updated, older kind of coding practices, no typescript, things like that that we kind of wanted to just bring into the year 2024.
So that was a big focus. One big thing too is to make it more friendly to an open source contributing ecosystem. We we kind of rebranded it away from being, you know, an Unchained thing, and instead be Caravan, which is maintained by Unchained, kind of like a Red Hat style model. And there's a lot of advantages to this. I think one, it's just, you know, people, open source developers, I think, are just gonna feel more comfortable contributing something that is its own kind of open source brand rather than, like, feeling like they're doing free work for a company. And we do want this to be something like, there are other wallets and coordinators that do use our, our libraries, and that's we wanna encourage that, and I think that's a good thing. So we wanna bring more people in. One of the things that actually kind of spurred this was, when the when Ledger came out with their version 2 app, the that Salvatore was, doing for Ledger to bring in mini script and a lot of the major upgrades that he brought over there, He he he wrote it to be PSVT version 2 to native. Like, you needed to interact with that. And it turned out there was no client side JavaScript libraries that could interact with PSVT version 2, And Casa needed to upgrade to support, we needed to upgrade to support, and there was kinda, like, gist and stuff being handed around or, like, to add this code, just copy and paste it in. And and to me, it just seemed like crazy that, you know, it's not, like, the the benefits of open source that kind of everybody can benefit from upgrades and things like that. And I also was thinking, like, of course, Casa is not gonna contribute to a library that's called Unchained Bitcoin. Right? I and I totally understand that.
And I thought it would be better to have some you know, they still might be hesitant to contribute something that's that's Caravan, maintained by Unchained, but still I think it makes it a little bit easier. So we wrote this p s p t version 2 library, and I kinda wanted to move things towards this this caravan branding. And and that was a big first step. And before moving things over, kinda wanted to make a lot of large architectural decisions as we were as we were migrating. Like, that's the opportunity to make big changes. So that's what a lot of the things that were going on this year, from a high level. And then along with that, we were able to get a much more velocity, outside contributors, more features, and, yeah, it's been it's been good. Awesome.
[00:18:56] ODELL:
Yeah, that makes that makes a lot of sense to me. So, from from you you mentioned, I guess, where do we go from here? I for for a user, a lot of this seems developer focused. From a user perspective, or like I guess like a client perspective, when do you think, people will be When should they use Sparrow versus when should they use, like, because that's the big thing for me. Like, I I used Caravan early days, but now, I mean, Sparrow's just so so good. I don't know. It's like hard. Like, you could even have a Sparrow. A lot of Unchained I've heard this. A lot of Unchained customers actively have Sparrow just open with their same vault on their same vaults on Sparrow, so they can watch it there and they can interact with it there.
[00:19:49] Buck Perley:
Yeah. And, I mean, we are happy to encourage that. I like, honestly, I kinda think of it as a personal preference thing. And, again, Craig can kind of he can he can move a lot faster because it's kind of his full time project, And so they get more features out. It's certainly more featureful. And a lot of you know, I think the the big advantage with Kravan is the stateless aspect of it. And so, you know, the a big reason to use Kravan is if maybe you're away from your node, you don't have a way to SSH into it or whatever it is, it's a good way to you can use caravan. You can still point it to your your node if you want to, or if you don't care about, you know, it's pseudo doxing your addresses, you can use it against mempool or or, the block stream back ends. So a big part of it though is is actually, like, this is a caravan, the coordinator is kind of a testing ground and approving ground for some of the underlying code that anybody else can use, in in their spaces as well. So, you know, one one reason to maybe use it, or contribute to it is to kind of encourage that ecosystem. Whereas the Sparrow ecosystem is a little bit more self contained, and they push I think Sparrow does a great job kinda like pushing the the UX ecosystem forward. Does a fantastic job in supporting that. I think being able to have tools and, you know, Bitcoin JS Lib is is is a version of this as well. We the caravan libraries now are are similar to those.
Actually, some of them are wrappers around it that are a little bit more user friendly for building multisig wallets. So, otherwise, you know, we love to hear that people are using Sparrow, and I think it's just a great, it's a it's a great kind of, like, case for collaborative custody as the model for, you know, the future of, Bitcoin custody in the fact that you can collaborate you collaborate with us, you get a key from us, you can use your wallet wherever you want outside of that. Right? And in the future, that's gonna open up even more models of collaboration. So, you know, this year, we also you had talked about how we have, you know, you hold 2 keys, and now Jane holds 1 key, but now we have connections where, when you can hold a key for your family member.
And, you know, maybe you don't want to be, you know, you don't want your funds to be KYC, but your family member doesn't care about the KYC because they care more about security. They don't trust themselves as much, but they also don't wanna hold 2 keys. Now you can be a part of that. You know, your your funds aren't KYC, but you're helping your friend or family member, to to manage their funds. You can now interact with that Vault as well in Caravan or Sparrow, and and anywhere. Right? And so I think or Electrum. Right? So I think that aspect of it, to me, is just super cool. So, you know, which one you use is kind of irrelevant. The fact that you can use multiple and be using an Unchained Vault is is the real magic. Okay. So, I mean, so what I hear is, first of all, it's incredibly lightweight,
[00:22:50] ODELL:
and you and by default, the whole setup is you don't use your own node for it. So if you're not running a node, and you can use it with your own node. But most people probably don't and they just hook it up to mempool or Blockstream. Obviously, there's trust involved there from a privacy and a sovereignty perspective. Like, you have to trust that they're verifying the blocks and that they're not logging your addresses. I will say that Adam from Blockstream and Wiz from mempool have said that they don't log and aren't taking aren't tracking that, but you can never verify. The only way you can be sure is if you use your own node.
And then the second piece is that it allows you to give back to the ecosystem and actually there there there could be competing companies in the collaborative custody space that then borrow some of that code and use some of that code to build their own product suites. And you guys are kind of, nurturing that ecosystem, being happy that there are competitors in the collaborative custody space because it's such a strong fundamental of Bitcoin's value prop. This idea that you're not trusting someone else with your money. Okay. So, it sounds like more and more is the case that that actually, like, on the way Unchained works, like, if you're using Unchained is kind of built on on top of Caravan. Is that what you're insinuating? Or is it kind of a parallel thing?
You you mentioned, like, some new features that are not unchained that exist because of the improvements to caravan. Like, what kind of features would that be?
[00:24:26] Buck Perley:
Well, there's definitely shared code. And so as my anytime we can write code in the open source realm, and then bring in, like, that's gonna be our preference. One example was to get, spend to Taproot support in this year. It might seem like a trivial thing, but the upgrade process was grueling. It it took many months of of work to kind of because we had to upgrade from Bitcoin JS version 5, version 6, which was had different dependencies, different, build system that that we had to build in before we get it to work. Caravan had spent a taproot support first, and then, we could upgrade the code in the on chain platform so that we could support it, there too.
So that's one example, that that came in. Another example it's actually a few kinda new features. Nice thing about Karavan too is we like, Karavan supports more than Unchained does, and that's just because the nature of, like, if you're hosting your own wallet, we don't, like, it doesn't even have a back end. The back end is your wallet configuration file and the blockchain. That's the database for Karavan. Whereas on chain has a lot more moving pieces. So you can have, you know, 7 of 7 wallet if you want Karavan. We don't really care about that. But, so that said, some other, things that we brought to Caravan that we could see come into Unchained or Unchained kinda like family of products.
One is, this is a cool thing that I we wanted to add descriptor support. It was something I was curious about, interested in, and, but I didn't want us to build our own descriptor library, basically, like, a mini script parser. And, so instead, since BDK is written in Rust, then you can compile Rust to WASM, and you can use WASM in a browser or node in in in, you know, JavaScript environments. I worked with Steve from the BDK team. We built some WASM bindings that could, turn, turn a multi sig wallet or the JSON that, caravan works in, convert that into a descriptor, and and then vice versa as well. Now on the surface, like, a multisig descriptor is pretty simple. You can just parse it easily if you want with, just pure JavaScript. But by using BDK under the hood, first of all, it means that we are using the standard pretty much, BDK, which is written on top of, Rust Rust Mini Script. It means that, like, that code is pretty well vetted. It's used in a lot of wallets, so we don't really have to care about, you know, maintaining bugs or anything like that.
And it also means that we're basically supporting Mini Script under the hood. Descriptors are basically just, you know, layer on top of mini script. So in the future, even if we don't support this in Caravan, you know, that library can, and then you could use that elsewhere. So, so that was a nice advantage. Now we don't have descriptors directly yet in Unchained itself. It would be trivial to do. We just wanna figure out a good UX for it. It's not huge amount of demand, but you can convert your caravan your Unchained wallet into the descriptors and then import them directly into your Bitcoin note if you want, which is a neat thing. But, really, it was about having a playground, a proof of concept. And the other thing that we added this year, and like all of the developer experience things, that I was talking about earlier allowed us to play around with this was and this, I don't think there's any support for in Sparrow is blinded x pubs, which is something that Michael Flaxman proposed years ago now. And there haven't really been very many kind of production implementations of this aside from Flaxman's library, multi wallet, and then, Ashsheen wrote the SIG Bash, I think it was called.
And, I mean, x blinded XPubs are pretty simple conceptually, just adding kind of random pass on the end of an existing one. So I first wrote a library that could be imported to any JavaScript project, npm install, caravan bit 32. And then there's tools that will give you the blinded XPub. And then from there, it's pretty easy. Just build an interface. I put a lot of, you know, scary warnings because if you don't keep track of that bit 32 path, or expect to use it with a some devices don't support random paths like that, you could be in trouble. But kind of proof of concept in there, and that incidentally came from a project that we are working on internally in Unchained. We don't have it officially on the road map anywhere yet, but it is something that we've been interested in for a while, and that would help with kind of KYC concern. Okay. So let's set 2 things here. First of all, explain
[00:29:06] ODELL:
to we have a wide variety of listeners of dispatch from the technical curious to the more technical. And by the way, no pressure here. Steve Myers is listening. He zapped, 21100 sets. Steve Myers is BDK. And also, as a callback, he's the guy one of the 3 guys that runs our bit devs, in Nashville. We also have zaps from Musahi 718 and NoGood. All 3 of them zapped 21100 sats. I'm gonna keep an eye on the ZapStream. If it gets more active, I'll pull it up on screen. The so two things. Just, descriptors. Why would a user want descriptor support?
[00:29:55] Buck Perley:
It's not the most important thing in the world, but descriptors are a kind of it's a it's a more, transportable, way to describe your wallet. So once you have a descriptor, you know, you can Sparrow already supports our the caravan JSON. But if we had supported descriptors earlier on, Craig wouldn't have had to write that, and you could have just exported the descriptors and imported the descriptor exported the descriptors from Caravan and import them directly into Sparrow. And then, Bitcoin Core, that's how their, wallets are now just described, is using descriptors.
So you kind of need to, the the the descriptors are just like that, ability to be compatible across anything that's that's real standard with, with in within the ecosystem. And this is comes down to the age of caravan too. Like, caravan was written before PSVT was really widely adopted. It was still kind of just like in the early days. There's no descriptors. We're pretty early then as well. So a lot of this stuff, again, like, we have our own, you know, company priorities to try to make money and and whatever. So we have to shift those things. So this is a lot of it, it seems trivial and, like, we're just catching up,
[00:31:16] ODELL:
but I think it's important. Awesome. Alright. Yeah. It makes it much easier to interact with multisig wallets from a user perspective. Like, much more straightforward.
[00:31:24] Buck Perley:
And they have air they have error correcting and stuff as well. Like, they have check sums that are that are built in. They're easier to parse and and whatnot.
[00:31:32] ODELL:
Okay. Blinded xPubs. This is something that I've been excited about since Flaxman mentioned it to me at a bar. Yeah. Probably, like, 5 years ago. I don't know when it it was, like, early days of Unchained.
[00:31:45] Buck Perley:
Yep.
[00:31:47] ODELL:
Why why would a user care about blinded x pubs? Big picture.
[00:31:53] Buck Perley:
Sure. So let me start explaining how it works, and I think that that helps understand why you would care. So, if you if you think about it when you if you go, like, early days of Multisig and why there wasn't anything like even Sparrow before and why Caravan was important, Multisig was pretty much something that individuals did on their own with their own keys. You weren't collaborating as much. So you take your 3 or to 5 seeds or whatever, you export xpubs from them, create your wallet, geographically distribute your keys, and you have your wallet, you can get your address, you can deposit, and, you know, you're relatively secure. Unchained, and, you know, places like Casa kinda start introducing this idea of collaborative custody where you have multiple participants in a quorum, peep different people that hold different keys.
The advantages of that are it distributes risk, you know, you don't have to know where some of the participants keep their keys. You don't have to trust yourself entirely with the security of the wallet, you know, with your funds. So that's really, really important. So in that scenario, rather than you bringing in your devices and exporting XPUBs, you get an XPUB from every participant, you contribute your own XPUBs, and now you have a wallet, and you can do you we've been able to do this in Caravan forever. I think, Phil, from Unchained, he did this, you know, famous bet years ago using caravan between different collaborators to basically put it into an escrow using caravan with everybody contributing their own keys. And then based off who won the bet, they signed and I think I participated in that.
[00:33:27] ODELL:
I think I got in trouble because I did it drunk. I was trying to show that it's so easy to do that you could do it drunk, and, I got a little bit of a lecture from, Unchained Leadership. Uh-oh. But you were able to do that. Yeah. It was very straightforward. That was the whole point.
[00:33:42] Buck Perley:
That easy. So, like, that that shows the strength and beauty of Calabrio custody. Now, however, you still have this kind of problem of privacy because everybody that contributes a key if when when you've given an XPUB, you know all of the public keys of yours that will be used in the redeem script for all the addresses. So you can get an initial level of privacy where if you don't share the wallet config, with one of the participants, that participant can't know the addresses that have been deposited to. However, they can know once those average addresses have been spent from. So because they check the chain data. The the way it fit Yeah. Right. Exactly. So you look you can you can look at the chain data and see because once you spend from a a p2sh or p2wsh, the redeem script has to be revealed, and the redeem script has all of the public keys, even the ones that are not signed for. That's you have to include that because that's the preimage for the hash in the pay of script hash.
So in the example, if it's like me, you, and Phil in a bet, and you give me an XPUB, and Phil gives me an XPUB, and then I create a wallet, and then I start depositing funds to it. You guys don't know the addresses And we don't know how much money is in it until you spend from it. Right. Yeah. But then once you spend, then that privacy starts to get lost. So blinded XPUB is the idea of rather than you just giving me an XPUB and then me using that XPUB to generate the, the receive and change addresses and just plug it into to caravan, I can then randomly generate, in in in the proposal, Flaxman suggests a 128 bits of entropy.
So what that means in BIP 32 path terms is basically adding 4 new depths to the HD path. So if you think about you have an XPub and it's typically was, I think, depth 4, and then you just generate your, like, 0 for receive, 0, and then, indexes for address. Right? What this is, it says before you start generating your addresses, you add 4 more depths. And the reason for that is the only way that you can what you're doing if you in the previous example, when you're watching the blockchain, you're basically taking your xPub, generating the standard, indexes for your xPub to look up the public keys.
But if I'm generating 4 depths of randomness, for for numbers, basically, the sequence numbers in there, you would have to generate, you know, however many addresses for each one of the possible depths with a 128 bits of entropy and then watch the blockchain for any of those possible public keys. That becomes completely infeasible, to to monitor. So what this means is now instead of you giving me an XPO and I'm just using that directly to create a wallet, you give me an XPUB. I generate a 128 bits of entropy to to create a new XPUB. That XPUB is what's called a blinded XPUB because it's you don't know that XPUB. Only I know that XPUB. And the cool thing about the BIP 32 is that it you can generate unhardened, PAS without private key information. So you give me, an XPub, and I can generate whatever, unhardened public keys. Awesome.
And once once you've done that, then you don't know the balances. You can't keep track of anything until I ask you to sign, and then I have to give you that blinding Right. So, I mean, the
[00:37:25] ODELL:
the bet example is actually not a great example for this. If you wanna think about it from practical terms, first of all, Multisig is particularly really great in organizations. Right? In an organization, you don't want just one person in leadership holding the Treasury to the Bitcoin. Right? And, with Open Sats, Open Sats has, our entire treasuries in Bitcoin. We keep no balances in bank accounts. Literally, the entire operation of the organization relies on that Bitcoin, being secure and being able to be spent from in the future. And so you want multiple people in the organization to have shared control where none of them can spend individually, but they need to come together to spend. It's very, very great for organizations in that particular scenario.
But it does mean in the current setup, without blinded XPubs, that every person in your organization you bring in knows full balance history, knows full transaction history, and sees all the intimate financial details of the organization. Now, you can imagine situations where what you really want is you want a couple individuals in the organizations to effectively have what you could think of as, like, backup keys. If, for some reason, the main operators die or lose access to funds or something bad happens, you want these backup key operators to come into play, but you don't want them to see the intimate financial details of every transaction in the balance history unless that actually happens. Now, from an individual perspective, you can also imagine a situation where I, a family member, want to help my uncle hold his Bitcoin, but I do not want to know how much Bitcoin he has or when he transacts.
But if, god forbid, something happens to him and I need to help, you know, my aunt recover the funds, I could come into play and I can help recover the funds. And, at that point, I'll know balance and transaction history, but that's fine because she needs me to help her recover the money. And so this is a major breakthrough or a major, this has been a major goal for a long time in terms of collaborative custody capability.
[00:39:37] Buck Perley:
Yeah. It's it's really powerful in those kinda, like, emergency recovery positions. So I I the the the best way I think about it is is for, like, a lawyer who's managing kind of your inheritance scheme. Right? Like, you don't want your lawyer to have to to know the balances that you have. But in case of an emergency, you know, time of your untimely passing or whatever and your family needs to recover, they can take the blinded blinding factor, those random bits, take it to the the the lawyer is basically giving you their x pub. You generate a random x pub from that, and then if you need them to recover, then you say, hey. Like, we need help distributing these funds. Can you please sign? And then if you never need them, then they never need to know your balances. So you kind of opt in. It's like opting into the,
[00:40:23] ODELL:
KYC. So this is supported in Caravan today.
[00:40:27] Buck Perley:
Yeah. So if you were to if you get that XPUB from your lawyer, you can paste in that XPUB, and then there's a button that says blind the XPUB, and then it'll generate if you if you trust the code and it's auditable, so you, you know, if if you wanna, you can look at it. You can turn off your Wi Fi so you make sure it's not sent anywhere, and then it'll give you the path, and it'll give you a new x pub, and it'll use that in the new wallet. But it's very important to back that up because if you don't have that x pub, because it's not a standard,
[00:40:55] ODELL:
it's just as hard for you to recover it as it is for So you're basically you're backing up the config file which keeps all the data, and that config file And you need that path. You need that path. But the config file is keeping the path. Right? Yes. And but that config file is a privacy risk if it gets leaked. It's not a security risk because you still need the private keys on the hardware wallets.
[00:41:20] Buck Perley:
Right. So I think, like, using cloud backup for things like this, you know, especially if it's, like, you know, some encrypted cloud backup is perfectly reasonable, because you're not giving up, you know, access to your funds, but it means it's recoverable in case Or redundant
[00:41:33] ODELL:
USB backup or Yeah. And and you should side on redundancy and perseverance of the data rather than going, like, full paranoid because it's if it does leak, yes, it sucks because it's a privacy leak, but you don't lose access to your funds. But, if you lose it, you lose access to your funds. So, you gotta keep that in mind. Okay. So Yeah. Yeah. Go on. I I think about it like there's there's no difference between somebody stealing your funds and you being unable to recover it. Like, your your access to your funds is still the same,
[00:42:05] Buck Perley:
and so you just gotta always keep in mind that, you know, complexity is the enemy of security.
[00:42:10] ODELL:
Most Bitcoin is lost by mistakes, not by theft. The okay. So the dream here so it's available today in Caravan. I think you're correct that it's not available in Sparro yet, but if Craig listens to this episode it might be available in Sparro soon. The the dream the dream has always been that Unchained, is the blinded ex pub. Right? The dream is, like, you have an organization like Unchained. They hold your hand. They come in in a backup scenario, an emergency scenario, or an inheritance scenario. But in the meantime, they don't know. They don't know your your addresses or your balances.
Yep. Is that on is that in the road map? Is that ever gonna happen? Is that just a, like, a pet unicorn dream?
[00:43:04] Buck Perley:
I'd say it is a it's a pet unicorn dream that is on the road map, if I could say that. Yeah. I mean, I I I guess I can't promise anything, but it is something that's actively being worked on and considered. You know, we we recognize there's just there's a lot of different types of Bitcoiners, that value the type of service that we provide, even those that are are very private privacy focused. Right? So most recently, I think in the expansion that we added to connections, we are addressing some of that, which is people that are like yourself that are privacy focused, but still have family members that, you know, it's more important for them to have the hand holding than to have the privacy.
But the ability for you to help them, I think, is super powerful. So just like through, you know, expanding collaborative custody, kind of having more opportunities for uncle Jim. But then there is, like, we also think that a user like you values the security that our key itself has. But you don't want to KYC yourself. You don't wanna onboard into our platform. But, the bet is you would still pay for access to our key because of the security that's involved there and the reliability of it. And so giving more people access to that key in these different models is something that we recognize there is some demand for, that there's utility for in the space. And so we we definitely want to address that. And, like, the code that was written into caravan the caravan bit 32 library that was then used in the caravan coordinator is something that came out of some of this work that we're doing internally
[00:44:42] ODELL:
to try and explore some of this. I mean, I think particularly it could be very valuable to power users that want some kind of tooling for inheritance. Because inheritance is Yep. A is a is a difficult problem to solve and is has to be treated on a case by case basis based on your strat model. And, Yeah, it's mostly it's an unsolved problem that people have to work very hard on in terms of if they care about freedom and privacy. It's much easier if you're using it in a more hand holdy way. I'm kinda curious because I wasn't aware, and maybe you seem more familiar with it, this new, like Uncle Jim style collaborative custody model where where someone like myself or someone who's listening to the show is holding one key in their family's quorum.
That's live and Unchained right now. And how does that work, like, how does that work in in practice, like, if the user was actually going to do that?
[00:45:45] Buck Perley:
Yes. So my my normal day job is actually, like, I I primarily work on the the internal tools and code. And and, most of my time in unchained, I've been working on the wallet infrastructure team. So I was actively, part of building this this tooling out over the past year. And yeah. So the way it works is when you are so when you kind of onboard into unchained, you plug in your devices or, you know, pass in your your cold card configuration file, and then your kinda your keys at a hard depth are available on the platform. You can now and you've always kind of been able to do this, but we've been making the the infrastructure a lot more robust.
Share that key with somebody else. Dhruv, our technical cofounder, he he came out with this report, not too long ago called the network of keys. And the the idea is that, like, the dream of collaborative custody shouldn't just be you come into our platform and you're using our key or you're using partners that we vet, but it's really just like, we just want to be another participant. We wanna be another option for a participant in your form. We think we'll be one of the best, participants, but we want people to, you know, really be able to make that choice and have to, you know, we earn that trust type of thing. So if we build the platform in that way, you should be able to choose other people, including what we're calling connections, people that you know yourself. And, honestly, the people you're gonna trust the most aren't a company even that's you know, has long, track record of trust in this space, but it's gonna be your friends and family.
We recognize that you should be more trusted to your family than we will be. So we just wanna be one of the partners. So yeah. So once your keys are uploaded, those XPUBs can be shared and then child, derivations generated to create wallets from that. So you don't need to plug in your device every time you're gonna create a new wallet with your your friends or family. You have that XPOD that's already up there, and then we derive ChildPass from that, and they can create as many vaults as they, we can't use any loans at the moment. But yeah. And, you know, eventually we want that to be a model for other companies too. We we think that this network of keys should be more than just Unchained and your connections, but companies that kinda like vie for for your business there too. Okay. So
[00:48:09] ODELL:
I I mean, I could see this being very helpful for, like, wealth advisors or technically proficient lawyers too. Yep. So but in The DAX stuff, that this was that was built by the founder of advised funds. So if you remember, Freaks, I had Phil Geiger on from Unchained, a little bit ago about their donor advised funds, which is a way to put Bitcoin towards charitable causes like OpenSats for the future and keep it in Bitcoin in the meantime before you send the funds out. You get immediate tax benefits charitably wise, but you can keep it in Bitcoin.
The but in practice, so Unchained is still has a so your your usual vault is 2 of 3. I imagine that isn't changing anytime soon. Usually Unchained holds one key, the users holds 2 keys. Unless it's an organization which was already set up in a way that you could have, like, 2 different members of the organization each hold one key, and then Unchained holds a key. So does it look it looks like that, like how it works with organizations? Or can you actually can you replace the Unchained key? Can you still use the Unchained platform and have 2 family members have the key and you have a key? Okay.
[00:49:26] Buck Perley:
Not yet. But we we do wanna get to that. Got it. You know, kind of like being the platform for collaborative custody, as well. And then if you want to purchase eventually, you know, if you wanna purchase access to the Unchained key without even being on our platform, you know, that's the blinded xpub side, you can also do that. So really, like, a lot of Right. In the blinded xpub side, it's like I'm a power user. I don't even onboard to the platform. You're just giving me the xpub. I'm blinding it. I'm paying you for, backup recovery in a worst case scenario situation. That makes sense to me too. Yeah. And then if yeah. If you need us to sign, you're basically gonna create a PSVT on your own and send us a PSVT and say, please Right. So, I'm,
[00:50:05] ODELL:
but but just just currently as it currently as it currently stands, the idea, the functionality that exists right now in Unchained is I'm onboarding my uncle. By the way, Uncle Jim, when I came up with the term Uncle Jim, I was the uncle. My uncles are actually all no prequiners. They're not prequiners yet. So, I need my siblings to have kids so I can actually become an uncle, Jim. But my uncle, I'm onboarding my uncle. He's finally like, I'm gonna buy Bitcoin. And I'm gonna do it the right way. He holds a key. I hold the key. Unchained holds a key.
And then if he screws something up, as long as I don't lose my key, Unchained still has their key, and we're good to go. Yeah. It's a great model. And the other the the
[00:50:52] Buck Perley:
the reverse is also true in the sense where, like, you know, I see I think about it this way too with my family. If you were managing first of all, you don't you also don't wanna be the technical support for your family. I see that as another yeah. It sucks. But Unchained is the best at the business. Like, our frontline teams are as good as it gets for giving that type of support. And a lot of people, even family members, are willing to pay for that, and you're just offering the security now. You're not No. You give them the white glove. They have they have a question, and you're like, just talk to talk to Unchained support. Yeah. And then the other thing that's an advantage of it is not just if if your if your uncle lost their key, but if something happened to you and that family member is like, crap. Like, what what the hell do I do? They can contact Unchained, and they still have 2 keys. Right? So this is something I I constantly worry about. Like, if I'm managing all of my family's Bitcoin, if something happens to me, I'm still the single point of failure. You really don't want that. So it gives you peace of mind,
[00:51:50] ODELL:
on You don't wanna get hit by a bus and then have your uncle lose his key. Have his uncle lose his his Bitcoin. Okay. That makes sense. This is all awesome. I love this direction that that you guys are going in. What so what else are we covering here? I see Summer Bitcoin in the blog post. Where does Summer Bitcoin where are they involved?
[00:52:11] Buck Perley:
Yeah. So, I mean, a common thread through the whole blog post was just kind of, you know, wanting to make our open source code more open source ecosystem friendly, easier to build on, more inviting for outside contributors. And the summer Bitcoin program kind of fit into that. I think the as I was getting more active in that library in summer Bitcoin was kind of shopping around for projects, that they could pair with I I guess I should practice just for people who don't know that summer Bitcoin, this program has been running for a few years now. I think they started out just in India, but now they're all over, taking, you know, technically, minded high school and college students, so a lot of, you know, CS, majors and and whatnot that are interested in Bitcoin, but, you know, might not have a big a technical Bitcoin course at their school.
They they basically do, like, a boot camp style ramping up on Bitcoin fundamentals, technical fundamentals, understand how that works. They have, a vetting program. They have some, like, tests to evaluate their skills, and then they reach out to open source projects that would be open to taking contributors that we and then so I was reached out to, and they asked for for project proposals. So I put up a few, and we had we had some really great contributions. And I I think, like, the again, the point, you know, while, you know, maybe a lot of the people are listening to this or read the blog posts aren't developers or don't really care about a lot of this sort of stuff, I think the key takeaway is is you have to do a lot of kinda, like, foundational work, especially in open source to to create something that can thrive, get other contributors that bring, more user facing features. And we kinda got some of that out of the summer of Bitcoin. So we had, 2 technical we had one design intern and then 2 technical interns that that were working on projects that landed code that are now available in caravan for anybody to use.
We don't have user facing aspects of that yet, but, it's being it's being worked on and other people can use it too. So one was a library that we call caravan health, and it's basically a, the this intern did a lot of kind of prerequisite work of just researching, like, statistical analysis of of what would contribute to a wallet's health, like, if we were gonna talk about health metrics. And the interesting thing there too is that there's 2 we we kind of narrowed it down to 2 elements of health. 1 is fee health long term and the other is privacy. And really interesting about that for a wallet is oftentimes those 2 things are in conflict.
If you want really good privacy, you're gonna have really bad fee health. And if you want really good fee health, you know, by consolidating UTXOs and whatnot, you're gonna have very bad privacy. And so all of the work during the summer went into building out these models and then writing out the code that could take in transaction history, UTXO, UTXO set for a wallet, or analyzing a specific transaction to give you a rating about the health of that wallet. It's a big project to then turn that into a dashboard, but, this is the advantage of of how we're building out Qaravan now though is you have an individual library that anybody can use, ingest that code, and build out their own dashboard, including in the caravan coordinator itself.
And I think, you know, when we have something like this, it would be something relatively new. I should also just say, like, a lot of credit, for this type of work goes to to Merck who did, you know, from the Bitcoin core contributor, he's been at Chaincode Labs, and, I forget where he's moved to now, but, he he did a coin selection research for his dissertation and then built in new code for this in Bitcoin Core. And so we we take some of that work into account in terms of the waste metrics, which kind of analyzes the UTXO size, that people have. So, Yeah.
So we still have all this code that we wanna kinda, like, build dashboards out of d three maps that, you or d three JS to build out actually like like this, you know, the mempool space type of visualize visualizations. And then the second project is really exciting in is another library. Again, you can use in any code base that you want, but we're also working on building a a UX for it within the caravan coordinator is caravan fees. And the idea for this is is fee bumping utilities. And so, we haven't had RBF in caravan, again, another way in which Sparrow is is pretty far ahead. But we wanted to build out both RBF tools as well as CP, FP. I think that is also kind of there's not a lot of really good tooling for that, in the space, and it can still be a beneficial way to fee bump.
Obviously, there's a lot more attention in this in general around, like, all the package relay work and ephemeral anchors and all this sort of stuff, and I think the code that was written by this summer Bitcoin intern could be easily leveraged into that. And the way that he wrote the code, I think, is really nice, really modular in a way that's basically you put in a transaction, and then you can set this function to tell you, okay, which is the most economical fee bump strategy, whether it's CPFP or RBF. But for those who don't know, CPFP is child pays for parents. You basically have a child transaction that fee bumps a parent transaction that got stuck in the mempool.
And then based off of that, you can then say, okay. Take this transaction and build an RBF transaction that accelerates it or build the child transaction that will spend one of the outputs to fee bump it based off of this target fee. And then it'll just spit out a PSVT that you can then take and drop it in anywhere, whether it's in your own UX or or put it somewhere else. I think that's really neat, and it includes code also for, cancellation. So a lot of people think about RBF as just an accelerating, feature, but you can also use RBF to cancel a transaction that just sends back to yourself if it's been stuck in the mempool and you no longer wanna send it, and RBF supports that too. So all that code is there.
It works in theory, and, we're gonna be starting to build out tooling in the next couple months. So the intern another cool thing about this program is it creates kind of long term Bitcoin developers. So there's other projects, people I think BDK, if you see this on the chat, he can confirm. Yeah. They have a a a summer Bitcoin intern that turned into a full time developer. This, the guy who's writing the caravan fees package is continuing to to contribute, which has been just really cool to see. Just like, you know, very young, new, developers that are just super hungry, you know, contributing to the space, which, I appreciate as well because, like, the open source stuff in Unchained, it's more of a passion. It's not, like, the priority, but I I want us to keep on moving it forward. So it's really gratifying to have other people that kind of, like, share in that. Yeah. I mean, summer Bitcoin is
[00:59:16] ODELL:
awesome, is an awesome project. They have there's so much demand for summer Bitcoin and not enough internships that they're often oversubscribed at this point by a lot. It's, like, 95% oversubscribed, maybe even higher we actually had a Vanderbilt student named Will who always hangs out around Bitcoin Park who who got into summer of Bitcoin and it was a really great experience for him and now he's he's going into bitcoin development in a big way it was pretty cool because we we when we first met him he was you know leadership at his at his blockchain club at Vanderbilt and he was like a fresh fresh eyed crypto curious guy and now he's laser focused on Bitcoin development and specifically Bitcoin development not you know the the many many shit coins out there okay so there's a lot to unpack there I'm pretty excited about all those developments The fee health, privacy health is really cool.
And just to put a little context out there for the listeners who might not be aware of the of the trade off of the back and forth, when you when you do an on chain Bitcoin transaction, it's not your fee is not based on on the amount of money you're sending. It's based on the actual size in in terms of data that that is gonna be on chain. And so what happens there is is the biggest contributor to that is how many inputs you have in a transaction. So when when you might see a wallet and you're like, oh, this wallet says I have 10,000,000 sats in it, It doesn't actually the the wallet doesn't have a a a set amount. It's there's a bunch of you can think of it like bills in your wallet. There's a bunch of UTXOs that add up to that.
And if you have a bunch of small ones in there and they're all being combined to send a larger amount, you will pay a higher fee. The lowest fee burden you will possibly pay is if everything's in a single UTXO. And that's obviously horrible for privacy because you've consolidated all of your UTXOs in there. So there's always been this back and forth between automatic UTXO selection, whether or not it should prioritize fees or should prioritize privacy. And really, I think what has has become obvious for a lot of people is you gotta have to give users, very intuitive controls so that they can kind of make the decision as best as possible.
And so this idea of, like, a fee health, privacy health dashboard, or visualization, I would it seems to me like the holy grail. That would be awesome to see. And just for some context, by the way, Freaks, there's a lot of people saying that, like, we need to rush quote, unquote scaling solutions to Bitcoin and whatnot. CoinMetrics did math. For this year, Bitcoin sent $6,600,000,000,000 worth of Bitcoin on on chain. This year, Bitcoiners have sent. And meanwhile, if you look at our live mempool dashboard, you can get into the next block at 4 sets, per byte.
So it's pretty amazing how much value the Bitcoin network continues to clear. I I don't you know, I I think people aren't gonna start thinking about these few things unless we start to see more it is scarce. Block space is scarce. And and as we start to see more demand on the demand side, and fees hit a more sustained high fee type of environment than people this becomes way more important to people. But the problem is is if you're not thinking about fee health ahead of time, it could it could you could get into a really bad situation. I remember in 2017, there was a lot of, congestion and a lot of, Bitcoin chain usage. A lot of people think it was spam related, But Coinbase, for instance, had a bunch of small inputs, and there was rumors that were circulating that fees ended up going down. But if fees hadn't gone down, that they would be in a situation where all these UTXOs were prohibitively expensive to spend. Where you can imagine a situation where, they they think they have $7,000,000,000 but it costs them $4,000,000,000 to send the $7,000,000,000.
And then all of a sudden, you have a really bad situation. So that's the context there. RBF versus child pays for parent. You can think of RBF kind of like you're replacing the original transaction and child pays for parent. You're the the outputs from the original transaction, you're spending those with a higher fee, so then all the transactions together. So the cool thing about child pays for parent is you could be on the receiving end of a transaction, and you can increase your fees. With RBF, you have to be on the sender side. And I do think that's interesting that you mentioned the cancel aspect. That's been kinda controversial calling it cancel, but I think it's very intuitive to users, particularly in a high fee environment. BlueWallet most famously added a big cancel button that effectively is just an RBF to yourself, which people go back and forth on. But I think that makes sense for users, who have a transaction stuck, and they just want it back in their wallet. But what else have we what else haven't we covered that you're excited about? Is there anything else?
[01:04:27] Buck Perley:
I mean, I'm I'm trying to say, you know, still on the this the summer Bitcoin thing, I think it's interesting that you say that now there is a scarcity of, of projects. And I will say, like, it's a lot of work, to basically, you're adding more people that you're managing. And they are young developers, so you really have to be careful. You already have to, like, give an extra amount of scrutiny to open source code because this is code that anybody can see and judge you on. And so it's a reflection of our whole project, anything that goes in. So there's a lot of work on that side. There's a lot of work on the, yeah, just kinda like guiding them, like, you know, what you're expecting.
But, you know, one aspect of making caravan easier to contribute to and then also, for, Summer Bitcoin in particular, I guess, is, like, it's it's selfishly, it's also like a pipeline for hiring. So anybody that's out there that's listening that's a developer or wants to be a developer, finding open source projects to contribute to, just to learn about, you know, find a we try and tag issues as, like, good first problem. Like, I got started in Bitcoin development by just, answering, issues that people had in the Bitcoin project, which is a JavaScript implementation of Bitcoin. And it was such a approachable library.
It was so well written, cleanly written that I could learn a lot about how Bitcoin worked, whereas the c plus plus Bitcoin Core was just far more intimidating and harder to understand. So people that are interested in it, like, I heard you, like, come over to the Caravan repo, you you know, find a problem that you wanna fix, test things out, as it even just small stuff, like, continuing to help with the refactors and adding TypeScript. You'll learn a lot. If there's a feature that you wish Karavan supported and doesn't, add it in. Put up a PR, and we'll test it out and, you know, eventually get it in, which, I think is a great aspect of open source. It's a, you know, big goal that I had in terms of the work that we did this year.
And for people, like, if you don't get into the summer Bitcoin program for whatever reason or, your proposal because you also like, you submit a proposal to the teams and then you get accepted. So I had to reject some people that wanted to work on caravan stuff because time is the scarcest resource. So, yeah. And but if you still wanna contribute, like, put up PRs. And if they're if they're valuable, if they're helpful, people you know, we will look at them. So I I highly recommend, getting into that.
[01:07:03] ODELL:
Awesome. I just wanna do a quick shout out to the freaks who did join us in the live chat and, supported the show via Zaps. As always, CIL dispatch, is free of advertising and is funded purely from Bitcoin donations from our audience. You can support, basically, 2 ways. If you're in the live chat, you can support with Zaps, or you could support through podcasting 2.0 apps, like Fountain Podcasts. The top 3 supporters of the last episode was Lincoln with 10,000 sets, 8 Myth Ranir with 7,777 sets, and Sean with 5,000 sets. Thank you for your support, and thank you for all the comments that you leave on fountain. Like I said, it is NOSR enabled.
It looks like Mav 21 just came in and zapped 10,000 sets. Happy New Year. Thank you, Mav. What else? Citadel Dispatch. I don't know when the next one's gonna be. Rabbit hole recaps tomorrow. So this week was Money Matters, Dispatch, New Year's Eve, Dispatch, rabbit hole recap. But there should be one next week. I think there'll be one next week. You can follow me at primal.net/odell. I'll keep you guys updated, or you can subscribe on YouTube. Subscribe on your podcast app, and you get notified that way. Buck, thank you for joining us. Do you have any final thoughts?
[01:08:27] Buck Perley:
Uh-huh. Stay humble. Stay curious. You know, I think there's, we need more curiosity in the Bitcoin space. I think that's an important thing. That's that's the last thing I'd say, I guess.
[01:08:39] ODELL:
I love it. Thank you, Buck, for all your contributions. And, maybe, you know, some of these things will get added to Caravan and get added to Unchained, and we'll follow-up before the end of the year. It'd be a big year. That'd be awesome. I think so. Yeah. We're gonna keep building on top of this momentum for sure. I will link Bucks and Pub in the show notes. I see someone asking. Make sure you give him lots of love on Noster so he uses it more. Huge shout out to Buck, huge shout out to the freaks. Love you all. Stay on the stack sets. Peace.
[01:09:14] Buck Perley:
Thanks.
Fox Intro: Bitcoin as a Sanctions Hedge
Show Introduction and Feedback
Guest Introduction: Buck Perley
BitDevs Meetup and Community
Unchained's Open Source Contributions
Caravan: History and Evolution
Caravan's Recent Updates
Caravan vs. Sparrow: User Preferences
Blinded xpubs: Privacy in Collaborative Custody
Collaborative Custody Models
Summer of Bitcoin and Open Source Contributions
Fee Health and Privacy in Bitcoin Transactions
Encouraging Open Source Contributions