Oddbean new post about | logout

Notes by alfred | export

 How long does the flash memory in a hardware wallet last without being plugged in? USB drives and flash memory usually fall prey to bitrot. Any numbers that we can reasonably go by?
@NVK 
 Pushtx -- the Privacy-focused Bitcoin Transaction Broadcast Tool -- has received quality of life updates in v0.4.0:

- broadcast to a single peer for more privacy 
- wait to see the transaction on the network for better confidence 
- misc improvements 

https://github.com/alfred-hodler/pushtx 
 Fellow plebs, what kind of Bitcoin or privacy software would scratch an itch for you right now? Anything that you'd actively use but just isn't there yet?

#bitcoin 
 💯. Constant API breakages make rust-bitcoin really hard to use when different dependencies rely on different versions of it and expose it as part of their public API. Every upgrade is an uphill battle.

Unfortunately the ecosystem does not offer an alternative yet. Should it? nostr:note18rx7rrg20xfwfy6savawrxx8p8dy62dwf6cs7477a822mf28rnes8k3ml2 
 Saylor's message is not "bitcoin should not change" or "bitcoin should go slow and steady". 

No.... 
 Did he actually call them "central planners"? I listened through the whole interview and don't remember anything like that.

To my ears at least, his message was that we need to be very deliberate and slow with changes to the base protocol. 
 Twitter is broken for me so I'll just take your word for it. I agree that the interview was heavy on hyperbole. I didn't particularly care for the "changes to bitcoin are inflationary" argument. 
 I just finished listening to @saylor 's WBD episode on "ossification".

I largely agree with regard to the base protocol -- stop messing with it. Whatever you think you're bringing to the base layer probably isn't worth the risk.

But this shouldn't preclude innovation **on top of** Bitcoin. We need more L2 software, software that interacts with Bitcoin and lives symbiotically with it. 
 A new version of the Coldcard CLI and Rust lib has been published. 

Use Bitcoin responsibly, do not use centralized services and custodians.

https://github.com/alfred-hodler/rust-coldcard

#rust #bitcoin https://image.nostr.build/3f425d237335c8a08724f8383b0684e35fae05a3d0280e2097c3d2799d9c333b.gif  
 The user-side upgrade process verifies that the firmware checksums match.

The actual cryptographic verification (i.e. "this firmware is official")  is done by the Coldcard bootloader during the install process, since you should never trust the computer anyway. 
 From Coinkite's official list of releases:

https://raw.githubusercontent.com/Coldcard/firmware/master/releases/signatures.txt

The PGP verification is done by the device itself. 
 Politicians need to realize that not allowing permissionless innovation is a national security risk. Regardless of how you feel about the nation-state as a concept, putting a damper on innovation just causes your tribe to fall behind in civilizational terms.

Every time you require a license for people to build stuff, your enemies rejoice. 
 Never use Electrum unless you're hosting your own backend. There is no telling how many public Electrum servers are run by chain analysis companies and other adversaries that are in the business of attributing IP addresses to UTXOs.

Electrum was a great piece of software 10 years ago, but the surveillance landscape has changed a lot since then and it is not really safe to use it in its default state.

TLDR: run your own Electrum backend or don't use Electrum. 
 Tor doesn't help because Electrum bulk requests all your addresses from the remote server. At best Tor will keep your IP private but all your addresses are correlated as belonging to the same entity the moment you connect. 
 There is no way to prevent it other than by running your own Electrum backend. There are some lightweight ones like the EPS (which still requires Core): https://github.com/chris-belcher/electrum-personal-server

The problem reduces to this: you're asking a potentially adversarial server to tell you your address balances. At which point the server knows what addresses you're interested in and therefore likely belong to "you" (they may not know who you are though). 

Do this with a wallet that contains clean coinjoin outputs and you've just undone all your coinjoins. 

AFAIK Sparrow isn't a good tool here because it uses public Electrum servers by default, thereby negating any benefits that its coinjoin feature provides. 
 Yesterday I published a lightweight tool that broadcasts transactions in a private manner through Tor. Seems much simpler than Dandelion. It can be integrated into wallets too.

https://github.com/alfred-hodler/pushtx https://image.nostr.build/3a1acd8fd21b5e649b14e340f136c0dd5611a3bf1d23b3cd2201fbf666f27fc1.gif  
 I have released a unique privacy tool and code library that broadcasts Bitcoin transactions **directly** into the P2P network. 

1. No external dependencies whatsoever. 
2. No centralized backends. 
3. Uses Tor if found running on the same system. Having the Tor Browser open in the background is enough.

Find the CLI here:
https://crates.io/crates/pushtx-cli

And the Rust crate here:
https://crates.io/crates/pushtx https://image.nostr.build/3a1acd8fd21b5e649b14e340f136c0dd5611a3bf1d23b3cd2201fbf666f27fc1.gif  
 Broadcasting through Core has always worked well, if you have Core. This is meant for situations where Core isn't available or where you have serious privacy concerns.

Think mobile and desktop wallets that need to send out a set of transaction quickly and privately. Core is a massive dependency with a long bootstrap time and not available in many situations. 
 The same way: DNS seeds with a fixed peer list for fallback. 
 Want to upgrade your Coldcard firmware with the latest release over USB? The right tool for the job is now available.

https://github.com/alfred-hodler/rust-coldcard/tree/master/coldcard-cli

#coldcard #rust 
 v0.11.0 of the #coldcard interface in Rust has been released. Support for Miniscript has been added.

https://github.com/alfred-hodler/rust-coldcard 
 If you're a cypherpunk, you need to write code. There's just no way around it. Ideas won't implement themselves, no matter how cool they are.

If you can't write code and you're into privacy, consider funding or promoting useful projects and their devs. 
 Strictly speaking Wasabi is worse because of the peeling model.

"Additionally Wasabi outputs are in the order in which they are registered". Has this been fixed?

https://twitter.com/ODELL/status/1151882688053334016

Maybe ODELL​ wants to chime in.