I think I already know the answer to this, but I just want to know for sure whether my funds are lost. I have Specter desktop connected to my Bitcoin Core. But because I also sometimes use the Core wallet as a hot wallet, I accidentally generated the address in the core wallet that is linked to my specter wallet, but the core wallet is a watch-only wallet with the priv keys disabled and then I sent funds to this address and not the address generated by Specter or my default Core hot wallet. But because this is watch-only my Core wallet does not have the priv keys. I doubt that but is there any way for the wallet to know it generated this key by enabling priv key?

1 Answer 1


The Bitcoin would then be whatever addresses your watch only wallet is watching. Bitcoin Core won't just generate a keypair and throw away the private key, that would result in fund loss. In a wallet with private keys disabled, it will only use what has been imported into it in order to create addresses. If nothing has been imported into it, then it won't be able to make new addresses at all.

If the watch only wallet was created by Specter and it imported keys into that wallet, then you should expect to see your Bitcoin in Specter as well.

  • Hello Andrew, thanks very much for you response. This is also what I thought, the only reason I asked the question is because, i do not see the address and balance in the specter wallet or in bitcoin core, although core says this is one of the receiving addresses. The other detail that I forgot to write in the OP, is that i imported a trezor nested segwit wallet, but since i generated this address in core with the default setting as bech32, so this is why I think i am not seeing the funds. I already tried importing the native seg from the trezor to specter to try and see it but i still don't.
    – user112263
    Nov 29, 2020 at 1:01
  • 1
    If you open the RPC console and do getaddressinfo <address> where <address> is the address in question, you will get a bit more information about the address. You should see a field named desc. In the string for that field, you should see something that looks like this: [e5dbc9cb/84h/0h/0h/0/0]. You can then look at the keys for each device in specter. You should see a similar string in the key. The device and key that address came from will have a string that is a prefix to the one getaddressinfo returned. For example, I see [e5dbc9cb/84h/0h/0h].
    – Ava Chow
    Nov 29, 2020 at 1:27
  • when I do this desc does no come up, but it does for other transactions in the wallet. Does this mean the address i used is from some other wallet, possibly an attackers?
    – user112263
    Nov 29, 2020 at 2:00
  • Do you see "ismine": true? Are you sure you have the right wallet selected?
    – Ava Chow
    Nov 29, 2020 at 2:04
  • ismine says false, but so do the other transactions, im very confident it is the right wallet because the payment request in core is that wallet and its the same wallet in the console
    – user112263
    Nov 29, 2020 at 2:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.