Oddbean new post about | logout

Notes by matt | export

 Dear lightning Gods. anything but a force closure now.  
 Honestly embarrassing this is even a thing worth worrying about :( 
 Honestly even with lightning as it exists today there’s no excuse for force closes being often, that’s just an implementation issue. 
 Temp channel failures (usually liquidity issues) are rather fundamental to the protocol, force closers aren’t. 
 Most people consider privacy and censorship resistance as extremely overrated until one day when ... 
 Bitcoin. 
 It turns out some pools are, without telling anyone, just acting as proxies for other pools.

This should scare you.

This should scare you very very much.

https://x.com/0xb10c/status/1780611768081121700 
 Money is expensive 
 Sadly not, it’s too unlikely to be *exactly* the same. 
 Yes 
 MEVil (or centralizing MEV) is one of the biggest threats to bitcoin’s value, but it’s poorly understood. I wrote about what it is (and isn’t) and how developers and bitcoiners must consider it carefully if we want bitcoin to survive.

Notably, we need to be incredibly careful when we’re looking at the new wave of bitcoin L2s - rollups can be incredibly nasty for the destruction of bitcoin - or not. Devs building these things have a responsibility to bitcoin, and the bitcoin community a responsibility to inform and avoid systems that risk bitcoin.

https://bluematt.bitcoin.ninja/2024/04/16/stop-calling-it-mev/ 
 Just saw a “flashbots on bitcoin” pitch deck. I’ve never seen such a blatant and dangerous attack on bitcoin.

Make no mistake if this succeeds, and MEVil becomes a big thing on bitcoin, Bitcoin is doomed. 
 No, I’m never a fan of such claims. In this case I’m not joking.

https://bluematt.bitcoin.ninja/2024/04/16/stop-calling-it-mev/ 
 Always have been. 
 Depends, a user’s wallet might not have a way to do RBF easily or they may not have enough funds available on chain. 
 To be clear, out of band fees is not the same thing as out of band transactions. 
 No, there’s enough value in these things it doesn’t matter if it’s discounted at the fee level or not, people would eventually have done it. The question is only if they do it carefully or not. 
 Craig Wright has discontinued his claims against Bitcoin developers (incl me) in the TTL case (where he was asking for a fork of bitcoin that seized random coins and gave him free money)!

https://www.reddit.com/r/bsv/comments/1c5mdv2/notice_of_discontinuance/ 
 The bill finally came due for the lawyers and he’s bolting. 
 Lollll Signal has a ton of dependencies on rust crates from a guy working for huawei. I hate modern software development 🤦‍♂️ 
 Building a mass market non-custodial lightning wallet integrated into a nostr client that actuall... 
 Take a look at ldk-node for the lightning part. Does what you want with very little effort (just pick an LSP) and we’d be here to support it. 
 DEMAND is currently the only Sv2 pool. Ocean has said they want to add it eventually, but afaik don’t have a timeline.

But, more generally, go talk to miners! Explain why this is critical for bitcoin, and, thus, their business. Harass them on Twitter, make sure they hear it. 
 Sadly not allowing miners to select their own transactions as of yet. 
 I agree with this.  It is a major issue.

Bullishness is NOT warranted.  Bitcoin mining is centra... 
 Pools. 
 When bitcoiners start harassing every large pool and miner at meetups and on Twitter, maybe. Until then we’re just LARPing. 
 Mining is fairly decentralized already, transaction selection (ie the thing that matters for censorship resistance) is not (because it’s controlled by the pools). Moving that task from pools to the miners would make bitcoin a lot more censorship resistant.

It’s not perfect, something like P2Pool/BraidPool may be better, but it’s 95% there and pretty achieveable, getting miners to move to something totally different is a big ask. 
 I mean, in sum…. Not really. Industrial mining is just huge and you’d need a *lot* of Bitaxe to make a difference. You can attend your local meetup and try to find miners/pool operators and talk to them about the issues they’re creating though! 
 It’s time for miners to wake up and start migrating to Sv2.

Mining centralization is as bad as it’s ever been and the bullishness on bitcoin is totally unjustified given miners don’t seem to care about bitcoin in the slightest.

If it doesn’t get better nearly every PoS chain is literally going to be more decentralized and censorship resistant than bitcoin.

If you care about Bitcoin you are responsible for fixing this. Pressure miners. 
 You can attend your local meetup and/or me active on Twitter/nostr and try to find miners/pool operators and talk to them about the issues they’re creating though! 
 Yes I’m proposing simple outreach. There’s no reason miners want to avoid Sv2, so it’s really just a question of socially convincing them to do a bit of work to switch. 
 https://stratumprotocol.org/getting-started/ should get you going mining against DEMAND (the only pool that supports Sv2 today). If you have any issues please join the Sv2 discord! 
 Nah that’s just naive. Sure, economic incentive is some of the best pressure, but social pressure works too, especially when there’s no economic disincentive as with Sv2. Why are public large bitcoin miners not being harassed on Twitter to adopt tech that is good for Bitcoin? 
 DEMAND is currently the only Sv2 pool. Ocean has said they want to add it eventually, but afaik don’t have a timeline.

But, more generally, go talk to miners! Explain why this is critical for bitcoin, and, thus, their business. Harass them on Twitter, make sure they hear it. 
 So maybe that’s why we need to explain it to them loudly and repeatedly….. which was my whole point :) 
 Go talk to miners and pools! Explain why this is critical for bitcoin, and, thus, their business. Harass them on Twitter, make sure they hear it. 
 Yes, that’s also why if “MEV comes to Bitcoin for real” we should probably give up on Bitcoin as a censorship resistant system (and, really, thus Bitcoin as a whole). 
 P2Pool did this a long time ago! More recently Bob Mcelrath has been working on reviving a variant of it using DAGs to increase the share chain block rate calling it BraidPool. I believe it’s still fairly early on. 
 They’ve contributed a lot to the design of it, but sadly they don’t yet allow you to select your own transactions when hashing. Only DEMAND allows that as of yet. 
 The miners will automatically switch to a fallback pool or solo mine. They will in no case stop mining the template they want. 
 Dmnd.work 
 Which hardware wallet will be the first to integrate human readable names and finally put something useful on the screen? 
 There’s a huge gap in the perception of self-driving cars between San Franciscans and everyone else. And it’s not because of the hype cycles that dominate SF tech - it’s because SF people replaced Uber with Waymo a year ago and haven’t looked back at the comparatively-terrible product of Uber. 
 Nah, almost all the cases people make a big deal of are actually cases where a human would have done the same, or worse. There’s a lot of people who like to scream in SF, very few for legitimate reasons. There’s obviously some teething issues with the tech, but overall it’s almost certainly better than your average Uber driver. 
 Compared to Waymo? Yea, very terrible. 
 (Though Cruise’s tech is noticeably worse, they’ve had a *lot* more cases of definitely-their-fault accidents than Waymo, which has had vanishingly few). Sadly they get dumped into the same bucket. 
 Probably Ubuntu as well, given it’s based on Debian Testing, but I haven’t checked. nostr:note1mqvnsk7me3wt3xd2pqyu04chlvygdphkt5p8sm56wxa28agxtc5stt2l5q 
 Looks like someone managed to get a backdoor into ssh in Fedora and Debian testing. Patch systems ASAP. 
https://www.openwall.com/lists/oss-security/2024/03/29/4 
 Source in git has the malicious binary, though. A malicious committer did it, not just anyone. 
 Honestly that’s mostly cause the exploit was kinda shitty, though… 
 Bluesky has done some deep work on moderation in a censorship-resistant social media network that we should probably analyze carefully and learn from.

https://www.techdirt.com/2024/03/27/why-bluesky-remains-the-most-interesting-experiment-in-social-media-by-far/ 
 Nostr is the only actually censorship resistant social network that exists today. Bluesky is working towards that but they’re quite a ways from it. That doesn’t mean they don’t have some great ideas that we should learn from, like how to do moderation. 
 Why do y’all keep scheduling things that conflict with Bitdevs? Bitdevs has had the same date for years. 
 using silent.link for data, I’m using the same cellular network I was before, for 25% the cost. 
 Cloaked is similar, but built by bitcoiners. https://cloakedwireless.com/btc 
 Honestly no idea if any of this is accurate, but I trust Daniel did some research here. nostr:note1lxfqh9y7ympx7g26gg34rkq0erws6dx3zc4kad2nyse3uj3w63hs3azjej 
 Ran rustup update a week ago and my local env is still broken.  I'm officially nix pilled 
 Just don’t use rustup. 
 Bro I’ve been saying this for years. 
 While I agree, to be fair, most new installs are far enough off the coast you can’t (materially) see them with the naked eye. 
 I strongly disagree. Lightning hasn’t seen a fundamental overhaul, sure, but tons is iterative improvements have been made to address the largest user-facing issues.

Whether it’s better interop and bug fixing to (substantially) reduce spurious force closures, slicing to ensure liquidity fragmentation isn’t an issue, BOLT12 to provide stateless payment instructions and recipient privacy, anchors to address some pinning vulnerabilities and fee spikes preventing payments, etc, there’s been a ton of changes!

In net, spurious force-closures have probably dropped by 5-10x, surprise payment failures by 50% and a ton of other features. 
 Huh? The things I mention (except splicing) are broadly available and have been for several years!

In terms of “major improvements”, I’m not really sure what you’re looking for - lighting isn’t going to be rewritten to be a totally different system, liquidity constraints isn’t a solvable problem with lighting, and someone has to pay fees in channel transactions. If you want a fully trusted/custodial system you’re welcome to use one, but I’m not really sure how much different lightning can get. Do you have specific ideas or issues you have in mind here?

In terms of the personal attacks, I’m happy to respond to any specific points or cases you want to discuss but blanket ad hominem isn’t really a thing to respond to (and if you think I’ve told people they’re “wrong” about Lightning’s limitations, I dunno if you’ve been paying attention). 
 Ah, except BOLT12 as well, sorry about that. Though that solves fewer of the issues users complain about, except for static payment instructions, admittedly. 
 I mean idiot is one thing, but I’m legitimately confused as to whether he can read. 
 If I see someone talk about who might be satoshi, I lose all respect for them instantly. Ignore whether we should or shouldn’t, accusing someone of being satoshi puts them at very real physical risk.

There’s plenty of people who want to kidnap satoshi seeking some bitcoin. Don’t set someone up, you might actually get them killed. 
 As a defendant in the case, my lawyers informed me I’m not allowed to comment on the case. 
 Just trashed Threads, Mastodon, BlueSky, Keybase apps on my phone. Also killed Blue wallet and Wa... 
 👀👀👀

What are your plans around this? Would love to chat lightning non custodial mobile! 
 Cool! Are you partnering with anyone for this (is it WIP or just a plan?)? What can we do to help? 
 For wallets wanting to get a head start on implementing human-readable bitcoin names, here’s a library that handles all the DNS parts!

* resolves against a local (/remote) TCP/53 resolver
* resolves against a DoH/DoT resolver
* creates/validates proofs

https://docs.rs/dnssec-prover/

It can even be run in WASM on a web page (and resolve via DoH directly)!

https://http-dns-prover.as397444.net 
 I mean it could work over that too but then you have to handle truncation and tcp fallback and that’s annoying 
 Default yes but servers MUST support both, for fallback :). When talking to an authoritative server, UDP is important, but when talking to a recursive resolver, who cares? 
Event not found
 I strongly disagree. Lightning hasn’t seen a fundamental overhaul, sure, but tons is iterative improvements have been made to address the largest user-facing issues.

Whether it’s better interop and bug fixing to (substantially) reduce spurious force closures, slicing to ensure liquidity fragmentation isn’t an issue, BOLT12 to provide stateless payment instructions and recipient privacy, anchors to address some pinning vulnerabilities and fee spikes preventing payments, etc, there’s been a ton of changes!

In net, spurious force-closures have probably dropped by 5-10x, surprise payment failures by 50% and a ton of other features. 
Event not found
 Why? 
 I mean in cases where you have to FC, sure, but that should be rare (even if it isn’t so much today). 
 I dunno, FCs on anchor channels with nodes that aren’t stupidly buggy are really rare, doubly so if you’re counting FCs-per-payment.