question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Any reason for new wallets to use SLIP132 version bytes going forward?

See original GitHub issue

I originally wrote my seedpicker implementations (golang as well as in python in GUI, CLI, and Electrum formats) to use SLIP132 because that was the Electrum standard, but now that Specter-Desktop has gotten so much better than Electrum, I wonder if SLIP132 support still makes sense?

The main benefit I can see is that SLIP132 encoding does inform Specter-Desktop of the script type (p2wsh vs p2wpkh for example), but it seems like SLIP132 adds a lot complexity for this very simple purpose.

Would Specter-Desktop want to make a standard for exporting public keys from hardware wallets? Then we could retire SLIP132 for new wallet creation.

I’m thinking something like this but very open to other ideas: [f7d04090/48h/1h/0h/1h]tpubDF7FTuPECTePtSLgeKZsbMif6c91sq1q7gis9sTVMu1Y8CTfpSew1SYsv5k7vwHUojmrmoLSnZzfvQ6h1VNg2j7J84WSD14u3yyfkzbGB5x-p2wsh or [xfphex/path]xpub-scripttype

– It does lead to confusion, and also this part of the setup people will “set-it-and-forget-it” so whatever people use today they will likely still be using for many years/decades to come.

Sorry if this is the wrong place to post this.

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:1
  • Comments:12 (4 by maintainers)

github_iconTop GitHub Comments

2reactions
craigrawcommented, Nov 19, 2020

Thanks for the cc @ChristopherA.

Regarding SLIP32, I think there is a general movement away from it and towards using output descriptors to define wallets - certainly that’s the direction the Core wallet is moving in.

@mflaxman rather than a suffix with the script type, the specification for output descriptors already supports defining the script type as follows:

wsh([f7d04090/48h/1h/0h/1h]tpubDF7FTuPECTePtSLgeKZsbMif6c91sq1q7gis9sTVMu1Y8CTfpSew1SYsv5k7vwHUojmrmoLSnZzfvQ6h1VNg2j7J84WSD14u3yyfkzbGB5x)

The crypto-account specification @ChristopherA linked to above uses this to allow hardware wallets to supply a set of output descriptors with different script types for a particular BIP44 account. This allows the script type to be defined in Specter (implicitly or explicitly) and the correct xpub to be extracted from the set when pairing the hardware wallet, making for a simpler user experience. It seems this could be useful for seedpicker as well.

1reaction
Fonta1n3commented, Nov 19, 2020

Agree with @craigraw here, output descriptors make slip0132 obsolete.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Bitcoin & SatoshiLabs improvement proposals (BIPs and SLIPs)
SLIP132 - Registered HD version bytes for BIP-0032. This SLIP acts as a registry for all coin HD version bytes. In Bitcoin-like cryptocurrencies,...
Read more >
Version History – COLDCARD User Docs
This may save a byte in transaction size, and makes our signatures identical to ... to a new spot and takes effect going...
Read more >
About the iPhone Leather Wallet with MagSafe - Apple Support
The new wallet features a secure NFC chip which enables support for Find My. It can hold up to three cards, and it's...
Read more >
Your guide to crypto wallets - Coinbase Bytes newsletter
Let's take a closer look: Coinbase Wallet enables you to send crypto around the world without a financial institution in the middle, and...
Read more >
4. Keys, Addresses, Wallets - Mastering Bitcoin [Book] - O'Reilly
To generate a new key with the Bitcoin Core client (see Chapter 3), use the ... we first add a prefix to the...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found