Pages:
Author

Topic: BTC stuck in Electrum multi-sig (will pay $1k reward) - page 2. (Read 476 times)

member
Activity: 81
Merit: 30
Correct!   Need all three sets of seeds to recreate the multisig.


legendary
Activity: 2268
Merit: 18748
When I open ex) the Trezor file, I don't see any balance
Then those files are set up incorrectly. Every one of the three multi-sig files should show the same addresses and the same balance when you open them. This probably explains why you cannot currently spend your coins.

In the first instance, I would try creating a brand new Electrum wallet using your two hardware devices and your Electrum seed phrase, and without importing any master public keys/xpubs/ypubs/zpubs. This should create a new 2-of-3 multi-sig wallet which shows your coins, and which you can spend from. This is safe enough to do on your current computer since you are still protected by your hardware wallets. If doing this generates a different wallet with different addresses than your funded 2-of-3 multi-sig, then we have other issues to address before addressing any errors you are experiencing.

How long ago did you set up this multi-sig wallet? Do you remember how you did it? Have you reset either of the hardware wallets since you did it? Have you ever used a passphrase/13th word/25th word/seed extension?

Obviously the two sets of the seeds you used to recreate the multisig on the the phone  would have to be 2 of the 3 used when you created the Mac multisig.
This is not how multi-sig works. You cannot "convert" a 2-of-3 multi-sig in to a 2-of-2 multi-sig by recovering from only 2 out of the 3 seeds. You must use information from all 3 shares, be that hardware wallets, seed phrases, or master public keys.
legendary
Activity: 952
Merit: 1385
Is it possible that you somehow misconfigured hardware wallet? Is it possible that wallet is created with a wrong derivation path and that's why Trezor does not detect amount input?
Did you try to create a brand new wallet (I mean restore from backup) and verify again derivation path?
You may want to take a look: https://bitcoin.stackexchange.com/questions/108296/cant-sign-using-trezor-t-derived-multisig-wallet-using-electrum-invalid-scrip
You are not the only one who has problems with multisig... https://github.com/spesmilo/electrum/issues/1383

Would it change anything if you try to do it on Linux machine (maybe emulated via https://www.virtualbox.org/wiki/Downloads + for example https://kubuntu.org/getkubuntu/) ? Or on Windows, but then probably you need another machine or play with https://support.apple.com/en-us/HT201468

Or take a look at that article, maybe 'how to restore' part would help you: https://saleemrashid.com/2018/01/27/hardware-wallet-electrum-multisig/
member
Activity: 81
Merit: 30
I'm no expert but would try this,

Buy cheap android phone £50 and Install Electrum from Google play or better from Electrum.org using their method to verify the download is genuine.

From this point make sure the phone NEVER has internet until funds moved to your new hardware wallet address.

Using Anroid phone import a 2of2 multisig into Electrum with option "I already have seeds".  Use Bip39 when importing the hardware wallet seed.  The share addresses should match those on Mac when setup complete.

Now create the online transaction with your Mac computer and export the QR code so the phone can scan and sign the transaction.

Export the signed QR code from phone back to the Mac computer using scan option and transmit the transaction from your Mac computer to your new hardware wallet address.

Obviously the two sets of the seeds you used to recreate the multisig on the the phone  would have to be 2 of the 3 used when you created the Mac multisig.

newbie
Activity: 7
Merit: 31
Not sure if that makes sense
Not really, lol.

When you say you open the hardware wallet with Electrum, are you opening the 2-of-3 multi-sig wallet that we are discussing here? Or are you just opening a standard single sig wallet with your hardware wallet connected?

If you are opening Electrum on its own and seeing one balance, and opening Electrum with the hardware wallet attached and seeing a different balance, then you are opening two different wallets. You will never be able to sign a transaction from a multi-sig doing this. You should be opening the same wallet in both situations.

So I have different Electrum wallet files for the Electrum multi-sig, Trezor, and Ledger.

It's only when I open the Electrum multi-sig file that I see my balance that I want to access.

When I open ex) the Trezor file, I don't see any balance
legendary
Activity: 2268
Merit: 18748
Not sure if that makes sense
Not really, lol.

When you say you open the hardware wallet with Electrum, are you opening the 2-of-3 multi-sig wallet that we are discussing here? Or are you just opening a standard single sig wallet with your hardware wallet connected?

If you are opening Electrum on its own and seeing one balance, and opening Electrum with the hardware wallet attached and seeing a different balance, then you are opening two different wallets. You will never be able to sign a transaction from a multi-sig doing this. You should be opening the same wallet in both situations.
newbie
Activity: 7
Merit: 31
~
This didn't work
(Though I don't know how to do the part "create the transaction with the hardware wallet" - if you can let me know/link to a good guide on how to do that, I can give it a try)

What I meant was that you can try starting the process with the hardware wallet, rather than your Electrum wallet.  So, open your hardware wallet, create a new transaction that you want to make, sign it, and save it.  Then import the partially signed transaction into the (non-hardware) Electrum wallet to add the second signature and broadcast.

Doing things in this order has worked for me in the past, but I use a Trezor wallet.  I have never played with a multi-sig wallet using the Nano.  It sounds like you have one of each brand, so it may work with one or the other hardware wallet.

So when I open the hardware wallet with Electrum, it doesn't show the coins I have in the non-hardware Electrum wallet

For example, let's say I have 1 BTC in the non-hardware wallet.

When I open the hardware wallet, that 1 BTC doesn't show, and I don't think I can make a txn with 1 BTC from the non-hardware wallet?

Not sure if that makes sense
HCP
legendary
Activity: 2086
Merit: 4361
Yes the Ledger Nano S works correctly with Ledger Live
Also, I don't have Ledger Live open when running Electrum
...

I tried opening just the Ledger wallet, and it still couldn't find the device
If the Nano S is working fine with Ledger Live, then it would appear that the issue is specifically with Electrum and it's Ledger plugin. You might want to raise an issue on the Electrum Github Issue tracker: https://github.com/spesmilo/electrum/issues

Note that the Devs will require that you're trying this on the latest version of Electrum (currently 4.1.5) before they offer any support.
copper member
Activity: 2338
Merit: 4543
Join the world-leading crypto sportsbook NOW!
~
This didn't work
(Though I don't know how to do the part "create the transaction with the hardware wallet" - if you can let me know/link to a good guide on how to do that, I can give it a try)

What I meant was that you can try starting the process with the hardware wallet, rather than your Electrum wallet.  So, open your hardware wallet, create a new transaction that you want to make, sign it, and save it.  Then import the partially signed transaction into the (non-hardware) Electrum wallet to add the second signature and broadcast.

Doing things in this order has worked for me in the past, but I use a Trezor wallet.  I have never played with a multi-sig wallet using the Nano.  It sounds like you have one of each brand, so it may work with one or the other hardware wallet.
legendary
Activity: 2268
Merit: 18748
However, If I buy a new computer/laptop, create a brand new 2-of-3 multi-sig wallet in Electrum, import the three seed phrases, and then sign a transaction from that single wallet, would it be ok to use that computer later on as my main computer (with Internet access)?
Presumably you would want to move all the coins out of this broken multi-sig wallet to a new wallet set up which you can access properly, such as a single sig hardware wallet, or a new multi-sig without the hardware wallets. Once you have done that, then there is no major security risk to that device then going online, since the old multi-sig wallet will be empty.

There is still a risk to your privacy if you were to leak the addresses from that wallet (if that concerns you), or a risk to the coins if you were to accidentally receive some coins to this old multi-sig set up in the future. I would probably just format the hard drive once I was done and start fresh. Alternatively, boot the new computer to a live Linux OS for the purposes of restoring your wallet, and then boot to the hard drive once you are done and want to use it as a regular computer.
newbie
Activity: 7
Merit: 31

When I try to sign a transaction with Electrum (and then sign + broadcast with Ledger Nano S), it won't work because Electrum won't detect the Ledger Nano S.

Which OS version do you have? Newer than 10.14? Does Nano S works correctly with Ledger Live?

macOS Big Sur 11.6

And yes Nano S works well with Ledger Live

Have you installed the firmware for your ledger nano s? Normally there's a driver or something you have to install to get it to work, ledger will likely have it on their website.

This link contain info on installing the ledger firmware: https://support.ledger.com/hc/en-us/articles/360002731113-Update-Ledger-Nano-S-firmware?docs=true
This is then the one for connecting the ledger to electrum (just in case you get a problem): https://support.ledger.com/hc/en-us/articles/115005161925-Set-up-and-use-Electrum?docs=true

Yep updated all firmware


When I try to sign a transaction with Electrum (and then sign + broadcast with Ledger Nano S), it won't work because Electrum won't detect the Ledger Nano S.
Why does that happen? When you made the setup, didn't it detect it?

Not sure and yes but I setup the wallet years ago. I think due to the various changes that have happened since then with Electrum/Trezor/Ledger, things are breaking


Is it possible that you selected several inputs and at least one of them is empty?



First at all - did you update firmware on both hardware wallets?


No inputs are empty

And firmware on both hardware wallets is up to date


Does the Ledger Nano S work correctly if you use Ledger Live? If not, then maybe try following the MacOS troubleshooting here: https://support.ledger.com/hc/en-us/articles/115005165269-Fix-USB-connection-issues-with-Ledger-Live?support=true

If it normally works with Ledger Live OK, did you have Ledger Live open and running when trying to use Electrum? Often, having multiple applications that are attempting to communicate with the Ledger device at the same time will cause problems. I've had issues in the past with Electrum being unable to communicate with a Nano S if Ledger Live was running. So, make sure Ledger Live is not running before you start Electrum and see if that helps with the communication process between Electrum and the Nano S.


NOTE: I have a Ledger Nano S and a Trezor ONE, and am able to use both with an Electrum 4.1.5 MultiSig "OK"... but I'm running Windows 10.

Yes the Ledger Nano S works correctly with Ledger Live

Also, I don't have Ledger Live open when running Electrum


Another method that may work is to open a watch only version of the wallet, create an unsigned transaction, sign it with the hardware wallet first, then import it into the Electrum wallet to add the second signature and broadcast.  I had a similar issue some time ago, sorry I don't remember the exact details, but signing the transaction with the hardware wallet first was effective.  Simply creating the transaction with the hardware wallet might also work.

I hope that helps, and best of luck.

This didn't work
(Though I don't know how to do the part "create the transaction with the hardware wallet" - if you can let me know/link to a good guide on how to do that, I can give it a try)


Another thought occurred to me... Do you just have one wallet file setup within Electrum... or did you create different wallet files for each hardware device using the Master Public Keys from the other device and the "normal" Electrum wallet? Huh

I was just mucking around testing some stuff... and found that the Ledger detection could be a bit "inconsistent" with multiple wallets open within Electrum... sometimes it would find it, sometimes it worked first time, sometimes it just refused to find it no matter how many times I rescanned etc.

With just a single wallet open, it was much more reliable, finding the device every time.


I tried opening just the Ledger wallet, and it still couldn't find the device



Thank you everyone for your responses so far...

I'm going to contact Ledger and Trezor support now (and post on their Reddits).

Also, I will try o_e_l_e_o 's method, but need to buy a new computer first.
(I've been meaning to buy a new one, but I guess this sped up my decision  Smiley)

However, If I buy a new computer/laptop, create a brand new 2-of-3 multi-sig wallet in Electrum, import the three seed phrases, and then sign a transaction from that single wallet, would it be ok to use that computer later on as my main computer (with Internet access)?

Or should I buy a new computer/laptop specifically to fix this wallet issue and never connect it to the Internet afterwards?

Thank you all!
legendary
Activity: 2268
Merit: 18748
Or you could do what Leo said and import your seed phrases from one of the hardware wallets into a new wallet in Electrum. But you'll need to figure out what derivation path your hardware wallet used.
The default derivation paths for Electrum multi-sigs are as follows:

Hardware wallets via Electrum:
Legacy (P2SH) - m/45'/0
P2SH-segwit (P2WSH-P2SH) - m/48'/0'/0'/1'
Segwit (P2WSH) - m/48'/0'/0'/2'

Electrum seed phrases:
Legacy: m
Segwit: m/1'
hero member
Activity: 2800
Merit: 595
https://www.betcoin.ag
Do you have the seed phrases backed up for the three parts of your multi-sig wallet? If you do, then I would think the easiest solution here would be to just create a brand new 2-of-3 multi-sig wallet in Electrum, and import the three seed phrases (remembering to select BIP39 for the two hardware wallet seed phrases). You can then sign a transaction from that single wallet without having to worry about compatibility issues with your two hardware wallets.

The downside to this is that you completely lose the security of your multi-sig wallet by importing all three seed phrases in to the same wallet. Therefore, you should only do this on a clean and airgapped computer.

He is about to send $1K to someone who can help anyway I think he will be glad to send all his funds to a safer version of the wallet.
Importing the three seed phrases will be the best option if I were him. It would however be great to send the error to the devs of the wallets particularly the Trezor for them to fix for the next update.  I guess Leo's suggestion fixes your issue.
legendary
Activity: 3472
Merit: 10611
After SegWit the signer needs the amount of each input to be included during the signing operation when the hash is produced. It also became mandatory to prevent some exploits in hardware wallets that could lead to losses either through huge fees or even sending to a maliciously included output.
This is why you need to upgrade and use the new format with your hardware wallets.

I'd focus on figuring out why new version of Electrum couldn't be installed on your system. You could also use a live offline Linux to run the latest version a lot easier and even with more security compared to your closed source Mac OS!

Or you could do what Leo said and import your seed phrases from one of the hardware wallets into a new wallet in Electrum. But you'll need to figure out what derivation path your hardware wallet used.
HCP
legendary
Activity: 2086
Merit: 4361
The wallet is set up as a 2/3 multi-sig wallet, with #1 being Electrum, #2 being Trezor One, and #3 being Ledger Nano S.

When I try to sign a transaction with Electrum (and then sign + broadcast with Ledger Nano S), it won't work because Electrum won't detect the Ledger Nano S.
When I try to sign a transaction with Electrum (and then sign + broadcast with Trezor One), it won't work because of the error "DataError: Expected input with amount".
Another thought occurred to me... Do you just have one wallet file setup within Electrum... or did you create different wallet files for each hardware device using the Master Public Keys from the other device and the "normal" Electrum wallet? Huh

I was just mucking around testing some stuff... and found that the Ledger detection could be a bit "inconsistent" with multiple wallets open within Electrum... sometimes it would find it, sometimes it worked first time, sometimes it just refused to find it no matter how many times I rescanned etc.

With just a single wallet open, it was much more reliable, finding the device every time.
copper member
Activity: 2338
Merit: 4543
Join the world-leading crypto sportsbook NOW!
I second o_e_l_e_o's advice.  Hardware wallets are notorious for having issues with multi-sig.  For holding large sums I prefer cold wallets, which can also be multi-sig.  To reap the full benefit of having multi-sig cold wallets you'll want to recover them only when absolutely needed and only on an air-gapped machine, or have them loaded on multiple air-gapped machines that are stored separately.

Another method that may work is to open a watch only version of the wallet, create an unsigned transaction, sign it with the hardware wallet first, then import it into the Electrum wallet to add the second signature and broadcast.  I had a similar issue some time ago, sorry I don't remember the exact details, but signing the transaction with the hardware wallet first was effective.  Simply creating the transaction with the hardware wallet might also work.

I hope that helps, and best of luck.
legendary
Activity: 952
Merit: 1385

When I try to sign a transaction with Electrum (and then sign + broadcast with Trezor One), it won't work because of the error "DataError: Expected input with amount".


There is a presentation of that operation: https://www.youtube.com/watch?v=40mdFIAEh4E&t=8376s
(jump to 2:48:27)
At which stage you have the problem?
legendary
Activity: 2268
Merit: 18748
Do you have the seed phrases backed up for the three parts of your multi-sig wallet? If you do, then I would think the easiest solution here would be to just create a brand new 2-of-3 multi-sig wallet in Electrum, and import the three seed phrases (remembering to select BIP39 for the two hardware wallet seed phrases). You can then sign a transaction from that single wallet without having to worry about compatibility issues with your two hardware wallets.

The downside to this is that you completely lose the security of your multi-sig wallet by importing all three seed phrases in to the same wallet. Therefore, you should only do this on a clean and airgapped computer.
HCP
legendary
Activity: 2086
Merit: 4361
The wallet is set up as a 2/3 multi-sig wallet, with #1 being Electrum, #2 being Trezor One, and #3 being Ledger Nano S.

When I try to sign a transaction with Electrum (and then sign + broadcast with Ledger Nano S), it won't work because Electrum won't detect the Ledger Nano S.

I am on Mac and using Electrum 3.3.8.
Does the Ledger Nano S work correctly if you use Ledger Live? If not, then maybe try following the MacOS troubleshooting here: https://support.ledger.com/hc/en-us/articles/115005165269-Fix-USB-connection-issues-with-Ledger-Live?support=true

If it normally works with Ledger Live OK, did you have Ledger Live open and running when trying to use Electrum? Often, having multiple applications that are attempting to communicate with the Ledger device at the same time will cause problems. I've had issues in the past with Electrum being unable to communicate with a Nano S if Ledger Live was running. So, make sure Ledger Live is not running before you start Electrum and see if that helps with the communication process between Electrum and the Nano S.


NOTE: I have a Ledger Nano S and a Trezor ONE, and am able to use both with an Electrum 4.1.5 MultiSig "OK"... but I'm running Windows 10.
legendary
Activity: 2534
Merit: 6080
Self-proclaimed Genius
(I tried updating to the most recent Electrum version, and it didn't work either. I think that's because according to the release notes, after 3.3.8 something changed with the Electrum partial transaction format - which I'm guessing applies to multi-sig transactions).
This only affects compatibility between the raw transactions exported by versions lower than 4.x and the newest.
So, it mainly affects Cold-Storage and MultiSig Electrum wallets that have different versions.

If you're using an outdated wallet for either 1 of the cosigners, update them all fist, then create the transaction.
Pages:
Jump to: