Author

Topic: I might've messed up on my Multi-Sig Wallet. HELPPP! (Read 232 times)

newbie
Activity: 8
Merit: 0
bad-txns-inputs-missingorspent
You might have a local transaction in your wallet that this transaction builds on top.
You need to either broadcast or remove the local tx."

I'm really concerned? because as far as I'm aware my BTC is still confirmed on my main multi-sig wallet . On the wallet that I recently restored via your advice(laptop). I'm currently shown the original BTC transaction, but with a local transaction that is adding almost the same amount of BTC to that wallet but the inputs for the address are unknown, which shouldn't be possible?!
First thing first, the error is caused by spending that local transaction's output as input of the transaction that you've broadcasted.
Since the network isn't aware of it, it will cause that "bad-txns-inputs-missingorspent" for spending a missing input.

Don't know how you got an inbound local transaction but it's mostly caused by having an unconfirmed transaction dropped from the selected server's mempool
or for outbound txns; created a transaction but didn't broadcasted it and used "Add to History" instead.
"Address Unknown" are just scripts that Electrum can't decode, you can try to tick "download missing data" in the setting icon on the top-right side of it to see if it'll update.
If not, it's impossible to tell without the actual raw transaction.

In any case, backup it first by opening the transaction (double-click) and using "Share->Save to file" menu; (in case you need to restore it)
so that you can safely remove it from your history via "Right-click->Remove" so it wont be used in your transaction.
Alternatively, you can enable the coins tab via "Show->Coins", then go to that tab and freeze that specific output through "Right-click->Freeze->freeze Coin".
Thank you so much for your help! if I could I would kiss you!  Grin Grin
Removing the local transactions has fixed the problem and now I've transferred all of my BTC out of my electrum wallet.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
bad-txns-inputs-missingorspent
You might have a local transaction in your wallet that this transaction builds on top.
You need to either broadcast or remove the local tx."

I'm really concerned? because as far as I'm aware my BTC is still confirmed on my main multi-sig wallet . On the wallet that I recently restored via your advice(laptop). I'm currently shown the original BTC transaction, but with a local transaction that is adding almost the same amount of BTC to that wallet but the inputs for the address are unknown, which shouldn't be possible?!
First thing first, the error is caused by spending that local transaction's output as input of the transaction that you've broadcasted.
Since the network isn't aware of it, it will cause that "bad-txns-inputs-missingorspent" for spending a missing input.

Don't know how you got an inbound local transaction but it's mostly caused by having an unconfirmed transaction dropped from the selected server's mempool
or for outbound txns; created a transaction but didn't broadcasted it and used "Add to History" instead.
"Address Unknown" are just scripts that Electrum can't decode, you can try to tick "download missing data" in the setting icon on the top-right side of it to see if it'll update.
If not, it's impossible to tell without the actual raw transaction.

In any case, backup it first by opening the transaction (double-click) and using "Share->Save to file" menu; (in case you need to restore it)
so that you can safely remove it from your history via "Right-click->Remove" so it wont be used in your transaction.
Alternatively, you can enable the coins tab via "Show->Coins", then go to that tab and freeze that specific output through "Right-click->Freeze->freeze Coin".
newbie
Activity: 8
Merit: 0
-snip-
Heyo sorry for the long reply,

The first keypool of the 2fa wallet matched the third keypool in the Multi-Sig wallet.
This is good since all you have to do is to get the master private key from the console (View->Show console) using the command: getmasterprivate()
Then create a new MultiSig wallet (2nd Cosigner) using that master private key, set the other two keypool of the MultiSig wallet (1st and 2nd) as the wallet's cosigners.

Just make sure to use the same "required signatures - of - number of cosigners" as shown in the name of your current MultiSig wallet. (e.g.: My_Wallet_Name [2of3])
Then select the option "Use a master key" instead of the seed phrase.

If the setting is [3-of-3], you'll have to create another cosigner using the other 2fa wallet's master private key as the third cosigner,
otherwise if it's [2-of-3], you can fully sign your transactions with those two cosigners.

P.S.: That was quite long, I have to re-read the whole topic to make this reply Tongue

Ok so I ended up doing a Test to send my BTC to my exchange wallet. I ended up sending only 10 dollars CAD worth, and the transaction ended up completing, which is "8547a96e35a3b2d29eeb08c621ce649c77bdbc0b7c133d5d91fcccb68b07a865".

So I figured I'd be good to send another transfer of BTC. I'm able to cosign on both wallets now I'm getting an error when attempting to broadcast the local transaction:
"The server returned an error when broadcasting the transaction.
Consider trying to connect to a different server, or updating Electrum.

bad-txns-inputs-missingorspent
You might have a local transaction in your wallet that this transaction builds on top.
You need to either broadcast or remove the local tx."

I'm really concerned? because as far as I'm aware my BTC is still confirmed on my main multi-sig wallet . On the wallet that I recently restored via your advice(laptop). I'm currently shown the original BTC transaction, but with a local transaction that is adding almost the same amount of BTC to that wallet but the inputs for the address are unknown, which shouldn't be possible?!

Did I get hacked somehow?

legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
-snip-
Heyo sorry for the long reply,

The first keypool of the 2fa wallet matched the third keypool in the Multi-Sig wallet.
This is good since all you have to do is to get the master private key from the console (View->Show console) using the command: getmasterprivate()
Then create a new MultiSig wallet (2nd Cosigner) using that master private key, set the other two keypool of the MultiSig wallet (1st and 2nd) as the wallet's cosigners.

Just make sure to use the same "required signatures - of - number of cosigners" as shown in the name of your current MultiSig wallet. (e.g.: My_Wallet_Name [2of3])
Then select the option "Use a master key" instead of the seed phrase.

If the setting is [3-of-3], you'll have to create another cosigner using the other 2fa wallet's master private key as the third cosigner,
otherwise if it's [2-of-3], you can fully sign your transactions with those two cosigners.

P.S.: That was quite long, I have to re-read the whole topic to make this reply :P
newbie
Activity: 8
Merit: 0
Ok I found that the public key for the 3rd keystore on the multi-sig wallet matches the one on my 2fa laptop wallet.
Good, if it's 2-of-3 you may already have the required keystore to spend, given that the MultiSig wallet itself has one. (if it doesn't say "watching only", it has one)
So, which keypool of the 2FA wallet matched with the third keypool of the MultiSig wallet?

  • If it's the first, you only need to use the command getmasterprivate() to get the master private key which you can use to restore another cosigner.
    The options should be: "Multi-signature wallet -> n-of-m (same setting) -> Use a master key -> Add Cosigner 1 (paste your 2fa wallet's master private key)"
    In Cosigners 2 and 3, paste the other two master public keys, that would be the MultiSig wallet's 'keystore 1' and 'keystore 2'.

  • If it's the second, you need to restore the 2fa wallet's seed and disable 2fa when prompted, then do not set a password so that the wallet file will be human-readable.
    The go to Electrum's wallet directory (location) and open that newly created wallet as "text".
    Find the keystore 2 which is under "x2/": {, its master private key should be closely below it, then restore using the same instructions above.

  • If it's the third, I'm afraid that it's TrustedCoin's master key which is Electrum's 2FA service provider.
Heyo sorry for the long reply,

The first keypool of the 2fa wallet matched the third keypool in the Multi-Sig wallet.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
Ok I found that the public key for the 3rd keystore on the multi-sig wallet matches the one on my 2fa laptop wallet.
Good, if it's 2-of-3 you may already have the required keystore to spend, given that the MultiSig wallet itself has one. (if it doesn't say "watching only", it has one)
So, which keypool of the 2FA wallet matched with the third keypool of the MultiSig wallet?

  • If it's the first, you only need to use the command getmasterprivate() to get the master private key which you can use to restore another cosigner.
    The options should be: "Multi-signature wallet -> n-of-m (same setting) -> Use a master key -> Add Cosigner 1 (paste your 2fa wallet's master private key)"
    In Cosigners 2 and 3, paste the other two master public keys, that would be the MultiSig wallet's 'keystore 1' and 'keystore 2'.

  • If it's the second, you need to restore the 2fa wallet's seed and disable 2fa when prompted, then do not set a password so that the wallet file will be human-readable.
    The go to Electrum's wallet directory (location) and open that newly created wallet as "text".
    Find the keystore 2 which is under "x2/": {, its master private key should be closely below it, then restore using the same instructions above.

  • If it's the third, I'm afraid that it's TrustedCoin's master key which is Electrum's 2FA service provider.
legendary
Activity: 3584
Merit: 1560
I believe I ended up using the master private key when assigning the cosigners instead of the seeds.

You mean you ended up using the master public keys from wallet menu > information?  On reddit you said that you don't have the seeds for the 2fa wallets so getting at the master private keys will be hard. Without the seed you only have access to one master private key per 2fa wallet. If it corresponds to the master public key you used then you are good but if it doesn't you have lost access to the coins.

To see if the master private key stored in the wallet file corresponds to the master public key you used open the 2fa wallet and go to wallet menu > password and enter the password in the first two fields but leave the last field blank. Click on ok to disable the password. Then go to file > save backup and save the wallet file somewhere convenient. Open it with notepad and search for the master public key you used in the multisig wallet. See if the corresponding xprv is present or not. For example:

Code:
"x1/": {
        "derivation": "m/0'",
        "pw_hash_version": 1,
        "root_fingerprint": "4a92ff79",
        "type": "bip32",
        "xprv": "ZprvAk1Z5ih7iCiGSgtQJ7CRSSW1mWJg6sH1qcPUmQiwbZEJkbySoicmAJ94P4UxMbJdUBfuwRLzf2L4pkE485boSZv2FvYaLMWJjD3Xn54CbPd",
        "xpub": "Zpub6xzuVEE1YaGZfAxsQ8jRoaSkKY9AWKzsCqK5Zo8Z9tmHdQJbMFw1i6TYEJ9frswkq8qK6RxCjVruypj3Wm81tpHEF8M4ZeipSq5xhmgLgP1"
    },


In the example above the xprv is present. If you see the corresponding xprv then you can use that to restore the multisig wallet and spend your coins. To restore the wallet you select "use a master key" in the "add cosigner step" and then paste in the xprv in the next step.
legendary
Activity: 2380
Merit: 5213
I'm still figuring out how to get the 3rd wallet from my old phone on android.
The mobile version of electrum allows you to see your master public key(s) too.

If you are using the version 4.4.0 or any version newer than, to see your master public key(s), tap on your wallet name at top left bottom of the screen and then go to "Wallet details".
If you are using a version older than 4.4.0, to see your master public key(s), just tap on your wallet name at top of the screen.
newbie
Activity: 8
Merit: 0
Quote from: purepwn8830
How do I find the Public Key of my cosigners ? Also is there any way to change the wallet used for cosigning?
Open your MultiSig wallet and click the menu: "Wallet->Information"
The "master public keys" are viewable in "keystore n", there'll be multiple keystores (clickable) depending on your MultiSig setup.

Ok I found that the public key for the 3rd keystore on the multi-sig wallet matches the one on my 2fa laptop wallet.

I'm still figuring out how to get the 3rd wallet from my old phone on android.
legendary
Activity: 2380
Merit: 5213
I believe I ended up using the master private key when assigning the cosigners instead of the seeds.
As stated by nc50lc, if you created your multi-signature wallet with importing master private keys, it contains all the required keys and you should be able to make transaction. What's the problem now?
Is it you don't have access to the wallet file anymore and you want to recover the wallet now? Is it you have the wallet file, but the wallet is empty?
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
-snip-
Can you please elaborate more on how you created your wallet? How did you generate your keys?
I believe I ended up using the master private key when assigning the cosigners instead of the seeds.
In that case, you should be able to spend from that MultiSig wallet since it contains all the necessary private keys.
What makes a 2-of-3 MultiSig wallet to require another cosigner to sign is if you've used the cosigners' "master public keys" instead.
newbie
Activity: 8
Merit: 0
Turns out 2 /3 of the cosigning accounts used were both 2fa instead of being a multi-signature wallet.
Let's confirm if it's really the case:
  • Take note of the three keystores of your MultiSig wallet in 'Wallet->Information'.
  • Open your alleged 2fa wallet cosigner and open its wallet information and check if one of its keystore matches any of the keystore of your MultiSig setup.
  • Open the other 2fa wallet if it has a matching master public key as well.

If it's the case, your chance to recover is based on which keystore you've used because one of them is from the 2FA service provider.
Also if you have the seed phrases or passwords of those 2fa wallet.

Ok I will try this now thanks and I'll let you know of my findings.
newbie
Activity: 8
Merit: 0
I am not sure I am understating you correctly.

You created a multi-signature wallet using electrum in 2021 with 3 co-signers.
You are saying 2 out of the 3 seed phrases used for creating the multi-signature wallet was 2FA seeds. Am I getting you correctly?

If so, that's not possible at all. Electrum 2FA wallet itself is 2 of 3 multi-signature wallet and you can't use its seed phrase as a cosigner seed when creating a multi-signature wallet.


Can you please elaborate more on how you created your wallet? How did you generate your keys?

I believe I ended up using the master private key when assigning the cosigners instead of the seeds.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
master public keys show up in that window not master private keys. otherwise this is a good post.
Oops thanks, that was a typo.
He asked for "public key" so I naturally pointed him to check the keystores where the master public keys are listed.

I've edited the post to fix it, thanks for pointing that out.
legendary
Activity: 3584
Merit: 1560
Quote from: purepwn8830
How do I find the Public Key of my cosigners ? Also is there any way to change the wallet used for cosigning?
Open your MultiSig wallet and click the menu: "Wallet->Information"
The "master private keys" are viewable in "keystore n", there'll be multiple keystores (clickable) depending on your MultiSig setup.


master public keys show up in that window not master private keys. otherwise this is a good post.
legendary
Activity: 2394
Merit: 5531
Self-proclaimed Genius
Turns out 2 /3 of the cosigning accounts used were both 2fa instead of being a multi-signature wallet.
Let's confirm if it's really the case:
  • Take note of the three keystores of your MultiSig wallet in 'Wallet->Information'.
  • Open your alleged 2fa wallet cosigner and open its wallet information and check if one of its keystore matches any of the keystore of your MultiSig setup.
  • Open the other 2fa wallet if it has a matching master public key as well.

If it's the case, your chance to recover is based on which keystore you've used because one of them is from the 2FA service provider.
Also if you have the seed phrases or passwords of those 2fa wallet.
hero member
Activity: 672
Merit: 855
Your question is not straight forward, but I also understand it as hosseinimr93, the seed you seem to have is actual that of a 2FA wallet which is a 2 of 3 multi sig wallet and not directly or the regular multi sig wallet you might be thing thinking.

As such in trying to restore the wallet you can follow this guide to restore the 2FA wallet https://trustedcoin.com/static/recover/standalone.html


I've been attempting to find the seed phrase for my 2fa laptop wallet but it's grayed out and I'm unable to select it in the menu unlike the multi-sig wallet.

This is a case of security measures, according to trustedcoin, you’re only able to see the display seed phrase once and that is when you were creating the wallet. It is because with that seed can be used to disable the authenticator.
legendary
Activity: 2380
Merit: 5213
I am not sure I am understating you correctly.

You created a multi-signature wallet using electrum in 2021 with 3 co-signers.
You are saying 2 out of the 3 seed phrases used for creating the multi-signature wallet was 2FA seeds. Am I getting you correctly?

If so, that's not possible at all. Electrum 2FA wallet itself is 2 of 3 multi-signature wallet and you can't use its seed phrase as a cosigner seed when creating a multi-signature wallet.


Can you please elaborate more on how you created your wallet? How did you generate your keys?
newbie
Activity: 8
Merit: 0
Hey guys I'm pretty new here but I created an electrum wallet for my BTC back in 2021 that was a multi-signature.

I tried to migrate the BTC back to my account via cosigning but nothing ended up happening, I've tried using both the cosigning plugin and also loading the partially signed transaction and opening it on my laptop wallet. Turns out 2 /3 of the cosigning accounts used were both 2fa instead of being a multi-signature wallet.

I have access to all of the wallets via passwords and seeds but I've been having a lot of trouble trying to restore my wallet with the multi-sig wallet that has BTC on it.
Everytime I attempt to recover the wallet with the seed phrase + extended custom words, it just loads an empty wallet with no BTC.

I've been attempting to find the seed phrase for my 2fa laptop wallet but it's grayed out and I'm unable to select it in the menu unlike the multi-sig wallet.

How do I find the Public Key of my cosigners ? Also is there any way to change the wallet used for cosigning?
Jump to: