Post
Topic
Board Speculation (Altcoins)
Re: [XMR] Monero Speculation
by
luigi1111
on 15/09/2016, 14:52:58 UTC
Question in regards it to a cold wallet, moneroaddress.

When depositing coins to your cold wallet, you can check to see if you received them. You just have to enter the view key, public address, and tx id on xmr.llcoins.

Now, how can I check if there have been any transactions since you've initially deposited them? Verifying that there hasn't been a hack on your wallet>
There is currently no easy way to do this. However, in the future there might:

https://www.reddit.com/r/Monero/comments/51i0n7/solved_it_hopefully_heres_how_we_can_make_the/
What would be the best currently available (though not easy) way to do this?
First, you'd have to fully sync the blockchain on an online computer. Second, copy simplewallet, bitmonerod, and the blockchain to an USB and plug that into the offline computer. Third, use bitmonerod in offline modus (--offline flag) and it should use the blockchain you have already synced on the online computer. Fourth, use --restore-deterministic-wallet to create a wallet with your seed offline. Lastly, use refresh to sync your wallet. It will refresh up to the last block you have synced online. It should then show all the transactions (both incoming and outgoing) of your offline wallet up to that block.
That's quite an ordeal. I think someone (moneromooo?) was working on a way of getting the key image from a transaction so you can check the spent status using Moneroblocks API... (like Luigi's coin checker)
Note if you are already checking arrival of funds via the checktx page, there's a rather simple way you could generate the key image offline for just the output(s) you care about. This would take only a minute or two and not require syncing the chain or restoring a wallet.

I would need to set up the code to do it though.  Cheesy
That sounds potentially very useful. What information would be required on the offline computer to generate the key images in that simple way without restoring a wallet or syncing the chain?


You can generate the key images with the account keys, tx_public_key, and real_output_index (for each output).

You would have to feed your offline machine this information to allow the generate_key_image_helper function to generate the KIs.

The generate_key_image_helper function has a few steps in the KI creation where it calls the base generate_key_image function below:

Code:
void crypto_ops::generate_key_image(const public_key &pub, const secret_key &sec, key_image &image)

generate_key_image_helper code:

Code:
bool generate_key_image_helper(const account_keys& ack, const crypto::public_key& tx_public_key, size_t real_output_index, keypair& in_ephemeral, crypto::key_image& ki)

Sorry for quoting the code, I needed to post it for myself as a refresher given it's been a bit since I looked at these functions.

i speculate c++ code.  Tongue


Copying over the JSON for the tx in question would be the simplest way, i.e., http://moneroblocks.info/api/get_transaction_data/56c41127d1a3bc8a896379666c60a0c6aac0b41916ae3b2dfc3057149949bbc1

Put that in a text document and copy over on a flash drive to an offline computer (ideally one that always stays offline).

You would then copy/paste the tx into the utility along with your seed, and it'd spit out the key images (which you can copy to an online PC and watch for in the blockchain).

I would probably just release a webpage, similar to https://xmr.llcoins.net/addressgen.zip (download and use offline), because:
1. the code basically all exists already
2. it's easier  Roll Eyes
3. it needs no compiling for different platforms
4. (almost) everything has a web browser
5. performance is irrelevant

6. It's a GOOOOEY (!!!)