monero-project / monero

Monero: the secure, private, untraceable cryptocurrency
https://getmonero.org
Other
8.93k stars 3.1k forks source link

Failed to import outputs: Transaction extra has unsupported format at index 17 #3109

Closed bullno1 closed 6 years ago

bullno1 commented 6 years ago

I could not import outputs using monero-cli 0.11.1.

First I export outputs from a monero-cli connected to an online and synced monerod: export_outputs outputs.

Then I move that outputs file to the offline machine, start monero-wallet-cli and do: import_outputs outputs

All I get is:

Failed to import outputs: Transaction extra has unsupported format at index 17

So I tried to rescan_bc on the hot wallet and the outputs still can't be imported. Now both the hot and cold wallet are showing different balances because outputs can't be imported and I believe my wallet is unusable now that outputs aren't properly tracked in the hot/cold wallet. I have already tried to export key images and importing to hot wallet anyway in case that error is just a warning but the balances shown still differ.

Monero version: 0.11.1.0 for Linux 64bit.

OS of monerod: ArchLinux

OS of monero-wallet-cli: Fedora-25 guest inside QubesOS 3.2.

I am willing to provide viewkey if needed.

bullno1 commented 6 years ago

I dig through the code base and found the problem here:

https://github.com/monero-project/monero/blob/master/src/wallet/wallet2.cpp#L8643

The loop will break for a single invalid extra field in output. If I understood this correctly an invalid extra field which can totally be set by a sender can render my wallet unusable? Is it safe to just warn instead of throwing on this? How important are extra field? I tried looking up here https://github.com/monero-project/monero/blob/master/src/cryptonote_basic/tx_extra.h#L186 but the names are totally cryptic (mysterious_minergate)

moneromooo-monero commented 6 years ago

Fixed in https://github.com/monero-project/monero/pull/3065

+resolved