3

How can I check if a key image has been successfully imported into a view wallet, particularly a cold wallet that has never spent any of the funds it has received?

2 Answers 2

3

The easiest thing to do, in my view (due to it being the most thorough), is to set up a normal wallet and daemon on an air-gapped computer (one not connected to the internet). Your air-gapped wallet will contain both the private viewkey and the private spendkey.

You can periodically save a copy of the blockchain from an internet-facing computer, transfer it via USB or whatever to the air-gapped computer, and have the wallet sync to that. During the sync process, this method will create key images for all outputs owned by that wallet (and, of course, it'll also check whether the key images have been spent).

This is the most thorough way of knowing that all key images are accounted for, since the wallet will create any that are missing. In fact, this is arguably the only way for a cold wallet to "know" it reflects an accurate balance, because it has the private spendkey to do the key image work.

If you have an internet-facing wallet which only contains a private viewkey, but does not contain a private spendkey, then this task may be more of a manual process. If you know the key image of a particular deposit, and you think you've imported the key image but you're not sure, you can run incoming_transfers_verbose to see the list of key images currently in the wallet. See this thread for more details on looking up key images.

-3

If the view key has been successfully imported you should be able to see your balance.

2
  • 2
    I think he meant, how do you tell the difference, ie you see some balance even without importing, for 'virgin' wallets it will be the same after the import, so how can you tell whether you've successfully imported a key image for each output you 'own', spent or unspent.
    – JollyMort
    Commented Jan 23, 2017 at 9:58
  • 2
    @JollyMort Yep.
    – user4
    Commented Jan 23, 2017 at 16:54

Your Answer

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