spesmilo / spesmilo/electrum

Problems showing address on coldcard with multisig wallet

Open
#6,496 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
8.6k
Forks
3.5k
Avg merge
2d 8h
Merged PRs (30d)
61

Description

I created a 1-of-2 multisig wallet using a mobile electrum Zpub as the first key and a coldcard to get the second key. I wanted to see if I could verify that the address on the hardware wallet, since that's important to be able to receive money without the possibility that a virus has corrupted your electrum and gives a bad address.

However, when first creating the wallet and clicking on "Show on ColdCard" on an address, electrum gives an "InvalidMasterKeyVersionBytes error". When closing the wallet, reopening, and doing the same thing, it now gives me "RuntimeError("Expecting c53912ac but that's not what's connected?!". Checking my ColdCard's identity, however, does show exactly C53912AC.

I created another 1-of-2 multisig wallet, this time using the coldcard as the first key, and the electrum Zpub as the second key. Now it tells me "Error showing address. Make sure you have imported the correct wallet description file on the device for this multisig wallet. Coldcard Error: Multisig wallet with those fingerprints not found". Looking more into how ColdCard does multisig, I think this error is trying to say that you should ensure that you've imported the correct wallet description file into the ColdCard. However, if that's the case, I'd say that error message isn't clear. Having not known about ColdCard's multisig settings (until I just looked them up), it wasn't clear to me what to do or that this was even something I had to do. I thought maybe electrum had failed to send the information to the ColdCard when the wallet was setup. Is there no way for Electrum to upload that data via USB into the cold card?

Trying again with the first configuration, I wasn't able to repro the InvalidMasterKeyVersionBytes error for some reason.

I tried doing this on a Trezor as well, but it told me the address didn't match. Is this simply not implemented for multisig on Trezors?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the wallet address action labeled "Show on ColdCard" and reproduce the reported multisig cases with ColdCard and Trezor. Compare the InvalidMasterKeyVersionBytes, fingerprint, and address-mismatch errors, including the required ColdCard wallet description file. Done means the supported multisig flows work reliably and any unsupported or setup-required case has a clear error.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.