Help! My IOTA balance is zero! (steps to help you find your balance v2.5.7)


Help! My IOTA balance is zero! (steps to help you find your balance...
Author
Message
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
manelomanu - 15 Nov 2017
Winston - 15 Nov 2017
manelet del cul estret - 15 Nov 2017
Hi everybody, Yesterday I did all the recovery process and at the end it told me something like "your funds are going to be sent to this Address:WHATEVERADRESSOFEIGHTYONECAPITALLETTERSANDNUMBERNINE"
And I pressed the generaron address botton and it appeared the first one but still pending.
So hopefully I just have to wait for my MIOTA to be sent to my New address in my new Seed of my justdownloaded Wallet.


It happened to someone else?
IS anybody in the same situation?

Thanks

@manelet del cul estret It sounds like the reclaim was successful. You'll just need to wait for the reclaim to be processed now.

Yes, I 'll wait...do you know for how long it will be? maximum 2 weeks?
thanks indeed for your help guys, specialy Winston.
Even with all this stuff I keep believing a lot in this project!
Good luck to all of you

@manelomanu Unfortunately nobody knows how long it will be. Hopefully by next year I guess? It's probably smartest to just plan on a long wait so that everyone is pleasantly surprised whenever the process actually ends up being completed
manelet del cul estret
m
Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)Attaching to Tangle (45 reputation)
Group: Forum Members
Posts: 13, Visits: 0
Waw Next year?!that's a lot of time...how can I know if my funds are okey??
And, another question: its the actual wallet safe? I want to get more IOTA s but I am afraid of having them vanished from my wallet. Its crazy but, are they going to be safer in the exchange?
Thanks
Herbie88
H
Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)Attaching to Tangle (7 reputation)
Group: Forum Members
Posts: 2, Visits: 0
Hi,

As said before I found my address marked with the tag KEY_REUSE_OCT on this page:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

I completed the reclaim process phase 2 with wallet v. 2.5.4 as described here:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

I read somewhere that the locked funds are suppossed to be sent to the new address starting from 13th November. 
What I am missing here again is transparency. Today my balance is still 0 and I do not have any idea whether it is only because this phase2 takes days to be completed for everyone or whether there is an issue again or ...

So can someone please give guidance when the old funds should be accessible again after completing the phase 2 of the reclaim proces???

Thanks

manelomanu
m
Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)Attaching to Tangle (20 reputation)
Group: Forum Members
Posts: 10, Visits: 0
Herbie88 - 16 Nov 2017
Hi,

As said before I found my address marked with the tag KEY_REUSE_OCT on this page:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

I completed the reclaim process phase 2 with wallet v. 2.5.4 as described here:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

I read somewhere that the locked fundsC are suppossed to be sent to the new address starting from 13th November. 
What I am missing here again is transparency. Today my balance is still 0 and I do not have any idea whether it is only because this phase2 takes days to be completed for everyone or whether there is an issue again or ...

So can someone please give guidance when the old funds should be accessible again after completing the phase 2 of the reclaim proces???

Thanks

Thanks, I checked my address in the page that you linked and it say CURL NOT TRANSITIONED ....now at least I know that they are not lost...what I don't understand very well...I guess I JUST HAVE TO WAIT IF I'VE ALREADY DONDE THE RECLAIM PROCESS, ISN'T IT?


stefano d
s
Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)Attaching to Tangle (16 reputation)
Group: Forum Members
Posts: 6, Visits: 0

Hello to all,
I think I did the recovery procedure for 2 times
Maybe I created some problem in recovering my Iota?
I am very worried !! 
Is there a way to know when the restart phase begins?

Thank you very much

Bella1234567
B
Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)
Group: Forum Members
Posts: 25, Visits: 0
Winston - 14 Nov 2017
stefano d - 14 Nov 2017
Hello,
I would like to ask for help: I have run the 2.5.4 key recovery for KEY REUSE.
I ran all the procedure correctly using the old SEED and the new SEED, which confirmed the operation correctly
but I still don't see Iota in the wallet.
do you think it's the case to wait again or do I have to do some special procedure? thank you

@stefano d Thanks for the post. If you completed both phase 1 and phase 2 of the reclaim process, then you'll just need to wait for your balance to be finalized. This means that you will continue to see a balance of zero until the claim is processed. There's nothing that you need to do now other than wait.

For reference:
For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

Want some help here my proof of address has been pending since yesterday tried reclaim button with no luck is this normal?
Thank you very much for your reply really helped me.
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
manelet del cul estret - 16 Nov 2017
Waw Next year?!that's a lot of time...how can I know if my funds are okey??
And, another question: its the actual wallet safe? I want to get more IOTA s but I am afraid of having them vanished from my wallet. Its crazy but, are they going to be safer in the exchange?
Thanks

@manelet del cul estret Nobody knows the official timeline, so I was just tossing out random times.

Your funds are okay if they're stuck at and IOTA Foundation address waiting to be reclaimed for the snapshot. I wouldn't worry too much about that.

The wallet itself seems to be very safe if you know how to use it. Make sure you don't reuse an address or generate a seed on a scam website and you'll be very safe. If you trust an exchange to hold your funds more than you trust yourself, that might be a smarter option
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
Herbie88 - 16 Nov 2017
Hi,

As said before I found my address marked with the tag KEY_REUSE_OCT on this page:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

I completed the reclaim process phase 2 with wallet v. 2.5.4 as described here:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

I read somewhere that the locked funds are suppossed to be sent to the new address starting from 13th November. 
What I am missing here again is transparency. Today my balance is still 0 and I do not have any idea whether it is only because this phase2 takes days to be completed for everyone or whether there is an issue again or ...

So can someone please give guidance when the old funds should be accessible again after completing the phase 2 of the reclaim proces???

Thanks

@Herbie88 Thanks for the post.

"What I am missing here again is transparency. Today my balance is still 0 and I do not have any idea whether it is only because this phase2 takes days to be completed for everyone or whether there is an issue again or ...

So can someone please give guidance when the old funds should be accessible again after completing the phase 2 of the reclaim proces???"

Nobody knows anything more than what has officially been said. It seems like the IOTA Foundation is conducting the whole reclaim process very deliberately so as to not make any silly mistakes, so there's no telling when reclaims will actually be processed. I'm just some random guy, so keep that in mind, but I've been telling people to just hope for reclaims to be processed by the beginning of next year. We've got no control over the situation, so we might as well set non-aggressive expectations, right

Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
manelomanu - 16 Nov 2017
Herbie88 - 16 Nov 2017
Hi,

As said before I found my address marked with the tag KEY_REUSE_OCT on this page:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

I completed the reclaim process phase 2 with wallet v. 2.5.4 as described here:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

I read somewhere that the locked fundsC are suppossed to be sent to the new address starting from 13th November. 
What I am missing here again is transparency. Today my balance is still 0 and I do not have any idea whether it is only because this phase2 takes days to be completed for everyone or whether there is an issue again or ...

So can someone please give guidance when the old funds should be accessible again after completing the phase 2 of the reclaim proces???

Thanks

Thanks, I checked my address in the page that you linked and it say CURL NOT TRANSITIONED ....now at least I know that they are not lost...what I don't understand very well...I guess I JUST HAVE TO WAIT IF I'VE ALREADY DONDE THE RECLAIM PROCESS, ISN'T IT?


@manelomanu This is correct. Now that you have done the reclaim process, there's nothing left to do other than wait for the IOTA Foundation to process your reclaim. Nobody knows how long that will take
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
stefano d - 16 Nov 2017

Hello to all,
I think I did the recovery procedure for 2 times
Maybe I created some problem in recovering my Iota?
I am very worried !! 
Is there a way to know when the restart phase begins?

Thank you very much

@stefano d Completing the recovery procedure 2 times should not cause any problems. You'll just need to wait for the IOTA Foundation to process your reclaim. Nobody knows how long it'll take for the balance to show up in your wallet again, so all we can do is wait patiently for that time to come
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
Bella1234567 - 16 Nov 2017
Winston - 14 Nov 2017
stefano d - 14 Nov 2017
Hello,
I would like to ask for help: I have run the 2.5.4 key recovery for KEY REUSE.
I ran all the procedure correctly using the old SEED and the new SEED, which confirmed the operation correctly
but I still don't see Iota in the wallet.
do you think it's the case to wait again or do I have to do some special procedure? thank you

@stefano d Thanks for the post. If you completed both phase 1 and phase 2 of the reclaim process, then you'll just need to wait for your balance to be finalized. This means that you will continue to see a balance of zero until the claim is processed. There's nothing that you need to do now other than wait.

For reference:
For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

Want some help here my proof of address has been pending since yesterday tried reclaim button with no luck is this normal?
Thank you very much for your reply really helped me.

@Bella1234567 Thanks for your post.

A bunch of people have been struggling with the reclaim process because the proof of address takes too long to confirm (it remains pending for a long time). The solution to this problem is connecting your wallet to a different host (Tools > Edit Node Configuration > choose a different host from the dropdown menu). You can fiddle around with this a bit, and it might require changing hosts, logging out of the wallet, logging back in, and re-trying the reclaim process several times before it works, but this has worked for nearly everyone else with your same problem. Please post here with the results so that others can learn from your experience
julian0506
j
Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)
Group: Forum Members
Posts: 17, Visits: 0
EricHop - 25 Oct 2017
First of all, don't panic, your IOTAs are most likely perfectly safe.

Second, no matter who or what, *never* give your seed to anyone. Especially not if they say they are an IOTA developer who will help you recover your balance. These people are scammers and will steal your IOTA.

I will show the steps you can take to recover your balance. I will also try to explain to you why this happened. I recommend you take the time to read and understand the how and why. Understanding what you invested in is the best thing you can do to keep your investment safe.


Steps to find your balance

  1. First, make sure you upgrade to version 2.5.4 of the *desktop* wallet. You can safely skip older versions if you did not install those before. These older versions will no longer work. The process for the Android wallet should be similar. Just make sure you update to the latest version first. You can find version 2.5.4 of the desktop wallet for Windows, Mac, and Linux here (don’t get confused by the title of the page, this is the latest wallet):
    https://github.com/iotaledger/wallet/releases

  2. Next, determine if you need to reclaim your funds. Do not start the reclaim tool yet. If you used the previous wallets (2.5.1+) and you had any funds that were visible in that wallet you do not need to reclaim these funds using the reclaim tool. Just continue with step 3 first to find your balance again. If you last used your wallet before the transition in August, or if you already know that the IOTA foundation took custody of some of your funds, then you need to take some extra steps to reclaim your funds after you restored your balance. I will discuss those later. If you did start the reclaim tool unnecessarily there's no problem. You can still use your old seed and use the next steps to find your balance.

  3. After installing the new wallet you need to set up your wallet correctly. What you need to do is go to Tools->Edit Node Configuration.

  4. Make sure that a Host node is selected. If you see 'Select Your Host' in the Host field, use the drop down to select one. Usually any one will do. However, keep in mind that a host may be temporarily offline, so if after selecting one the wallet indicates No Connection you may want to select another Host. My experience shows that the iotatoken.nl hosts are pretty reliable and fast.

  5. Make sure that Min Weight Magnitude is set to 14. Higher values should be no problem but will just cause the Proof of Work to take longer unnecessarily.

  6. Finally, you see a field that says Curl Implementation. The default is WebGL, which is a new setting that allows the wallet to use your graphics card to do the Proof of Work, thereby speeding up the process. However, some people will find that they get an Invalid Transaction Hash when they use this setting. The solutions for that are to either select CCURL instead, or to follow the instructions found in this link to make sure the wallet uses the correct graphics card:
    https://steemit.com/iota/@tector/iota-light-wallet-2-5-1-dealing-with-invalid-transaction-hash

  7. Note that it may be necessary to close and restart the wallet after changing any of those settings. I would do that just to be sure that the changes are active.

  8. Now you can use your seed to log into the wallet, so you can start finding your balance again. Make absolutely sure that you are using the correct seed. Any typo in the seed will result in a different wallet, and trying to find your balance in there is not going to work, obviously. There is a helpful checksum field next to the field where you can enter your seed. The wallet will tell you if your seed is too short or too long. And if you have entered exactly 81 characters it will show you a 3 character checksum that should always be the same for every version of the wallet. It will allow you to very quickly see if you made a typo, since any typo will result in a different checksum. If you are not sure if you used the correct seed there are instructions further down to help you make sure.

  9. After logging into the wallet you click on the Receive section. It will show you a new receive address. Now click Attach To Tangle. It will show ‘Attaching to Tangle’ for a while. Just wait for that to complete. If it takes too long you could try a different, faster node as outlined in step 4. Once it says ‘Address Attached’ you may see your total balance get updated with the balance of that address. If not, then click ‘Address Attached’. It will now say ‘Generate New Address’. Click that again. That will cause the next address to be generated and it will show ‘Attaching to Tangle’ again. Keep repeating this loop until you have recovered your balance completely. You can click the History section to see how many and which addresses you have generated so far. Addresses can be in pending state but that does not matter for finding your balance. You will need to generate all addresses you have used before for your entire balance to show up again. So if you have an idea of how many you used before that will be helpful. Most people should be able to find some or all of their balance within the first 20-30 addresses. But I know of people who needed to do 150+ re-attachments because they had been very active with their wallet. If your balance started to show up but never completely shows, and does not change any more after re-attaching don't bother continuing. The funds are usually clustered at the end of the address list. Any funds still missing have probably been taken into custody. See below for details on how to verify that.

  10. If you did not manage to find your balance using these steps, I suggest you take the time to read through the explanations below. You need to be able to understand why it still does not show and what you can do about it. If you did find your balance? Congratulations! But I still suggest you educate yourself so you know what you are invested in. I know it’s a drag to have to go through such a long document, but we’re still in beta software stage with the wallet and IOTA as a whole. Understanding how it works is equal to protecting yourself from losing your funds.


How does an IOTA wallet work?

Contrary to what most people believe your IOTA wallet does *not* contain your IOTAs. Instead, your IOTAs are safely stored in one or more addresses in the Tangle. You can see your wallet as a browser that knows how to retrieve the balance of an address. To do that it contacts a so-called node, and asks it to find the balance of that address in the distributed ledger database that the Tangle actually is. To be able to retrieve your entire balance, the wallet will usually have to retrieve the balances of multiple addresses that belong to your wallet and add them all up. The end result is displayed as your current balance.

Now here is an important thing: the wallet does not know at first how many and which addresses exactly to retrieve to accumulate your balance. The only starting point it has is the 81-character seed you provided when you logged into the wallet. This seed is the key that enables the wallet to always re-generate the addresses used by your wallet deterministically. Deterministically means that given the same seed it will always be able to generate the exact same sequence of addresses one by one. To determine your total accumulated balance the wallet will ask the node for each address balance in succession until the node indicates that an address cannot be found because it is not present in a transaction in the Tangle. This indicates to the wallet that it has not generated/used that address before, so it can safely stop accumulating address balances. This fact is important to remember, because it will shortly explain why your balance is currently zero.

The wallet will generate new addresses as needed in two important ways. First, and most visible, when you want to receive IOTAs in your wallet you will need to generate a new receive address and attach that to the Tangle. Addresses are not supposed to be re-used because the signing process used to spend funds from an address uses one-time signatures. Because of the one-time nature of the signing process, the private key for that address gets partially exposed by every spend from the same address, opening it to a brute force attack. And since anyone that has the private key to an address can spend the funds in that address it's not very wise to open yourself up to such an attack. That's why the wallet tries to defend itself against such attacks by automatically moving the remaining funds after spending to a new address in the wallet. It will also give you a 'private key reuse' error whenever you try to spend from an address you have already spent from.

So the second way in which the wallet will generate new addresses is by moving the remainder of a spent address to a new address. When you instruct it to send a certain amount of IOTAs to another address, what it will do is go through the known addresses in your wallet one by one, starting from the first, by generating the addresses in sequence from the seed. The wallet accumulates the amount of IOTAs it finds along the way on addresses with a non-zero balance, until it has accumulated enough IOTAs to cover the amount you want to send. The contents of the non-zero addresses it has accumulated in this way will be sent as a single transfer to the receiving address and -if there is a remainder- the remainder will be sent as a second transfer to a newly generated address in your wallet. This will cause the latter address to be attached to the Tangle, so it lives there now, and the wallet will be able to see it as in use already whenever it scans for your balance as outlined above. All addresses used as the input for the transaction will end up having a zero balance, so they are not likely to be re-used any more, unless you make the mistake of not creating a new receive address but re-using a previous one.

It is important for the recovery process that you have an idea of how many addresses were in use before you 'lost' your balance (before the Snapshot happened, see below). For most people that will be up to one or two dozen addresses. But for people who used the wallet regularly before the snapshot happened that can easily go up in the hundreds. I personally have helped someone retrieve his balance who had 150+ addresses in use in his wallet.


Why is my balance zero?

To understand what happened you need to know what happens when the IOTA foundation generates a new Snapshot of the IOTA ledger database. This is done every now and then for maintenance reasons. The last Snapshot was created on Tuesday October 24th, 2017. One reason for taking a Snapshot is that the Tangle is constantly expanding, and therefore taking up more and more memory. To help nodes in keeping the amount of memory they need for storing the database limited, the Tangle is pruned by removing the history of transactions. Remember that after every transaction you end up with no longer used addresses with a zero balance. The transactions that caused these only take up space and are no longer necessary for correct functioning of the nodes. There are even more ways that can cause zero balance transactions to occur, like when a wallet generates and attaches a new address to the Tangle. There are also transactions that are used as messages between systems and do not contain any balance.

So after a Snapshot is taken the end result is a simple list of all addresses that contain a non-zero balance and their respective balances, and no history of how those balances happened is preserved on the regular nodes. By the way, this history *does* get preserved on so called perma-nodes, like ioatsear.ch, which will keep track of the entire history all the way back to the first transaction ever. But for most use cases this history is not necessary. It's only the non-zero end balances that are important, since they are the only ones that can be spent.

Note that the Snapshot process is such that any transactions that were not confirmed yet while the Snapshot was being taken will be canceled and it will be as if the funds never left the wallet of the sender. So that means some transactions may have to be performed again once you have restored your wallet. A deposit from your wallet to Bitfinex that was canceled will have never left your wallet. A withdrawal from Bitfinex to your wallet that was canceled will have never left the Bitfinex wallet. Just send those transactions again when that happened. They should pose no problem.

Now, remember how the wallet will figure out its balance? It will ask a node to retrieve the balances of each address it generates in succession from the seed, starting with the first one, that has been used in a transaction, until it finds a non-used address, which indicates that the wallet did not generate that address before. However, since the Snapshot has removed all historical transactions the first address it checks will not be found to be used by a transaction in the Tangle, and so the wallet stops scanning for balances immediately, because it thinks it has not generated that address yet, ultimately resulting in a zero accumulated balance.

So that's the reason you see a zero balance. The wallet simply stopped scanning for addresses with balances too soon, because it does not know that the Snapshot process has removed the transaction history. This means that the remedy for finding your balance is simple. Start re-generating and attaching your previously used receive addresses one by one. This will cause zero-balance transactions using that address to be connected to the Tangle. Which means the wallet now can see the address is in use in the Tangle and ask the node for the corresponding balance. In particular, you need to do this as many times as you had used addresses in the past, so that they can all be found in the Tangle again. To be sure, this can be a tedious process and it would have been nice if the wallet designers had included a command that allows you to tell it to generate the next X addresses until it finds one with a balance. But that is not the case at the moment, so there is no use in complaining right now. I am sure this feature will show up in a next incarnation of the wallet.


Why is the wallet still not able to find my balance?

The Sep 22nd and Oct 24th Snapshot processes have done two additional maintenance tasks that may result in you still not being able to successfully retrieve your correct balance. First, since the implementation of the Proof of Work function has changed from kerl to curl in August there was a need to transition balances to the use of the new curl implementation. A lot of people already did this transition as part of their upgrading their wallet from an older version to version 2.4.0. Since it turned out that there are people who managed to lose their seed and also many people who did not transition yet, the IOTA foundation has taken the precaution to remove those old-style kerl addresses from the Tangle and has taken custody of them. So if your previous wallet was from before version 2.4.0 you may fall into that category. You will need to use the reclaim tool as explained further down to reclaim those funds.

Second, because it was found that quite a number of people had spent multiple times from the same address, thereby exposing their funds to being stolen, the IOTA foundation decided to take similar custody of those addresses so they are no longer vulnerable. That means if you accidentally spent from the same address more than once in the past, and this address was still holding a balance, you will need to use the reclaim tool as explained further down to reclaim those funds.

In both cases one or more of your address balances may still be 'missing' even after the wallet has re-generated the missing address in the Tangle. The balance of such addresses was moved to the IOTA foundation custody address. You can check for those addresses if you think that may be what has happened to them here:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

Allow for the page to load before searching through it, as it is a huge list.

You just copy an address you want to find out about to the clipboard, and then use control-F and paste to search on that page. Make sure you only use the first 81 characters of the address, as the 9 character checksum is not present in this list. I just paste the address and delete the last 9 characters.

If your address shows a category of KEY_REUSE or KEY_REUSE_OCT in this list then you have executed more than one spend from that address and the balance is now in custody of the IOTA foundation until you reclaim it.

If your address shows a category of CURL_UNUSED then your address was not transitioned to the new curl implementation yet and the balance is also in custody of the IOTA foundation until you reclaim it.

For more details, see this announcement from the foundation:
https://forum.iota.org/t/snapshot-public-validation-22-09-2017/4256


How do I make sure I am using the correct seed?

If you don’t remember the 3-character checksum or in any other way are unsure if you are using the correct seed, here are ways to find out:

If you know roughly how many addresses you used to have in your wallet, just go ahead and re-generate at least that amount of new receive addresses (detailed steps below). Along the way, usually towards the end, you should see your balance increasing. If your balance becomes non-zero that is a clue that you are definitely in your own wallet with the correct seed. If you cannot seem to get the entire balance you may either need to generate even more addresses, or some of your funds were taken into custody by the IOTA foundation for the reasons described above. In that case you will have to check the addresses which you think should contain a non-zero balance against the snapshot list. And if you find them there, you will have to reclaim them using the reclaim tool.

Making double sure that you are using the correct wallet can be easily done by using the iotasear.ch Tangle browser to check the history of an address. This means you can copy the first address and see if in the past funds were there. Assuming the first address was the first one to receive funds of course. If it did contain funds the amount is probably recognizable as your first IOTA withdrawal ever. Anyway, when any funds are there in the iotasear.ch history you can be sure you have used this seed before.

Finally,


How do I use the reclaim tool?

If you are absolutely sure that the IOTA foundation took custody of some of your funds after checking the above, you will need to use the reclaim tool to reclaim your funds. Note that the reclaim process is a two-step process currently.
NOTE: to make sure that you don't make any typos when entering your old and new seeds with this tool i highly suggest you copy/paste them from a proven working copy. It would be silly to finally reclaim your funds to a seed that contains a typo and therefore the reclaimed funds would become irretrievable.
UPDATE: The reclaim tool in phase 2 will ask once again for the new seed, so unless you make the same typo twice this seems not really to be a problem.
In case multiple reclaims were put in, the one confirmed in the lowest milestone will be the one processed.


For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46


I hope this was helpful

Enjoy IOTA, let’s make it a success!

Hi,
My 700 IOTA disappeared roughly a month or two ago.
I have tried all the things you have suggested, and none of the them have worked. This includes:
- I have put in the new node settings, restarted the wallet.
- I checked the snapshots of September and October, looking for my seed with the last 9 characters taken off
- I checked the custody address list, looking for my seed with the last 9 characters taken off.
Please can you urgently advise. 
Thanks and regards,
Julian

Bella1234567
B
Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)Attached to Tangle (250 reputation)
Group: Forum Members
Posts: 25, Visits: 0
Winston - 16 Nov 2017
Bella1234567 - 16 Nov 2017
Winston - 14 Nov 2017
stefano d - 14 Nov 2017
Hello,
I would like to ask for help: I have run the 2.5.4 key recovery for KEY REUSE.
I ran all the procedure correctly using the old SEED and the new SEED, which confirmed the operation correctly
but I still don't see Iota in the wallet.
do you think it's the case to wait again or do I have to do some special procedure? thank you

@stefano d Thanks for the post. If you completed both phase 1 and phase 2 of the reclaim process, then you'll just need to wait for your balance to be finalized. This means that you will continue to see a balance of zero until the claim is processed. There's nothing that you need to do now other than wait.

For reference:
For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

Want some help here my proof of address has been pending since yesterday tried reclaim button with no luck is this normal?
Thank you very much for your reply really helped me.

@Bella1234567 Thanks for your post.

A bunch of people have been struggling with the reclaim process because the proof of address takes too long to confirm (it remains pending for a long time). The solution to this problem is connecting your wallet to a different host (Tools > Edit Node Configuration > choose a different host from the dropdown menu). You can fiddle around with this a bit, and it might require changing hosts, logging out of the wallet, logging back in, and re-trying the reclaim process several times before it works, but this has worked for nearly everyone else with your same problem. Please post here with the results so that others can learn from your experience

Thank you for your post
So now I somehow got into my wallet because it was giving me error and and see that in history there is only one pending address, balance is still zero the problem is when I used to reclaim then it said proof of address pending but now I can enter old and new seed to reclaim what does this mean I am still in phase 1 in wallet 2.5.2
TangleFriend
T
Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)Attaching to Tangle (167 reputation)
Group: Forum Members
Posts: 4, Visits: 53
Sharing Is Caring & BIG Shout Out To The Admins/Mods

First of all I want to say big thank you to the whole support team who make a real great job despite of the unpleasant situation for all.
I always found a helping hand and guiding light here by reading the threads and asking questions.

To share my experience with you
As for me, I learned to be patient and I can advise to read all posts carefully and give the tangle some time:
– Personally I stopped generating addresses too early,
– was to unpatient while reattaching which made me cause a real mess (multiple reclaims started) and
– rushed through some processes without reading everything in detail upfront.

I really learned a lot about the product I strongly believe and invested in, which gives me an even better understanding as well as a very good `gut feeling`– and, hey folks, it's still Beta (!)
Plus: I deeply do appreciate the security measures taken, I mean, better reclaiming your funds rather than loosing them, or?!
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
julian0506 - 16 Nov 2017
EricHop - 25 Oct 2017
First of all, don't panic, your IOTAs are most likely perfectly safe.

Second, no matter who or what, *never* give your seed to anyone. Especially not if they say they are an IOTA developer who will help you recover your balance. These people are scammers and will steal your IOTA.

I will show the steps you can take to recover your balance. I will also try to explain to you why this happened. I recommend you take the time to read and understand the how and why. Understanding what you invested in is the best thing you can do to keep your investment safe.


Steps to find your balance

  1. First, make sure you upgrade to version 2.5.4 of the *desktop* wallet. You can safely skip older versions if you did not install those before. These older versions will no longer work. The process for the Android wallet should be similar. Just make sure you update to the latest version first. You can find version 2.5.4 of the desktop wallet for Windows, Mac, and Linux here (don’t get confused by the title of the page, this is the latest wallet):
    https://github.com/iotaledger/wallet/releases

  2. Next, determine if you need to reclaim your funds. Do not start the reclaim tool yet. If you used the previous wallets (2.5.1+) and you had any funds that were visible in that wallet you do not need to reclaim these funds using the reclaim tool. Just continue with step 3 first to find your balance again. If you last used your wallet before the transition in August, or if you already know that the IOTA foundation took custody of some of your funds, then you need to take some extra steps to reclaim your funds after you restored your balance. I will discuss those later. If you did start the reclaim tool unnecessarily there's no problem. You can still use your old seed and use the next steps to find your balance.

  3. After installing the new wallet you need to set up your wallet correctly. What you need to do is go to Tools->Edit Node Configuration.

  4. Make sure that a Host node is selected. If you see 'Select Your Host' in the Host field, use the drop down to select one. Usually any one will do. However, keep in mind that a host may be temporarily offline, so if after selecting one the wallet indicates No Connection you may want to select another Host. My experience shows that the iotatoken.nl hosts are pretty reliable and fast.

  5. Make sure that Min Weight Magnitude is set to 14. Higher values should be no problem but will just cause the Proof of Work to take longer unnecessarily.

  6. Finally, you see a field that says Curl Implementation. The default is WebGL, which is a new setting that allows the wallet to use your graphics card to do the Proof of Work, thereby speeding up the process. However, some people will find that they get an Invalid Transaction Hash when they use this setting. The solutions for that are to either select CCURL instead, or to follow the instructions found in this link to make sure the wallet uses the correct graphics card:
    https://steemit.com/iota/@tector/iota-light-wallet-2-5-1-dealing-with-invalid-transaction-hash

  7. Note that it may be necessary to close and restart the wallet after changing any of those settings. I would do that just to be sure that the changes are active.

  8. Now you can use your seed to log into the wallet, so you can start finding your balance again. Make absolutely sure that you are using the correct seed. Any typo in the seed will result in a different wallet, and trying to find your balance in there is not going to work, obviously. There is a helpful checksum field next to the field where you can enter your seed. The wallet will tell you if your seed is too short or too long. And if you have entered exactly 81 characters it will show you a 3 character checksum that should always be the same for every version of the wallet. It will allow you to very quickly see if you made a typo, since any typo will result in a different checksum. If you are not sure if you used the correct seed there are instructions further down to help you make sure.

  9. After logging into the wallet you click on the Receive section. It will show you a new receive address. Now click Attach To Tangle. It will show ‘Attaching to Tangle’ for a while. Just wait for that to complete. If it takes too long you could try a different, faster node as outlined in step 4. Once it says ‘Address Attached’ you may see your total balance get updated with the balance of that address. If not, then click ‘Address Attached’. It will now say ‘Generate New Address’. Click that again. That will cause the next address to be generated and it will show ‘Attaching to Tangle’ again. Keep repeating this loop until you have recovered your balance completely. You can click the History section to see how many and which addresses you have generated so far. Addresses can be in pending state but that does not matter for finding your balance. You will need to generate all addresses you have used before for your entire balance to show up again. So if you have an idea of how many you used before that will be helpful. Most people should be able to find some or all of their balance within the first 20-30 addresses. But I know of people who needed to do 150+ re-attachments because they had been very active with their wallet. If your balance started to show up but never completely shows, and does not change any more after re-attaching don't bother continuing. The funds are usually clustered at the end of the address list. Any funds still missing have probably been taken into custody. See below for details on how to verify that.

  10. If you did not manage to find your balance using these steps, I suggest you take the time to read through the explanations below. You need to be able to understand why it still does not show and what you can do about it. If you did find your balance? Congratulations! But I still suggest you educate yourself so you know what you are invested in. I know it’s a drag to have to go through such a long document, but we’re still in beta software stage with the wallet and IOTA as a whole. Understanding how it works is equal to protecting yourself from losing your funds.


How does an IOTA wallet work?

Contrary to what most people believe your IOTA wallet does *not* contain your IOTAs. Instead, your IOTAs are safely stored in one or more addresses in the Tangle. You can see your wallet as a browser that knows how to retrieve the balance of an address. To do that it contacts a so-called node, and asks it to find the balance of that address in the distributed ledger database that the Tangle actually is. To be able to retrieve your entire balance, the wallet will usually have to retrieve the balances of multiple addresses that belong to your wallet and add them all up. The end result is displayed as your current balance.

Now here is an important thing: the wallet does not know at first how many and which addresses exactly to retrieve to accumulate your balance. The only starting point it has is the 81-character seed you provided when you logged into the wallet. This seed is the key that enables the wallet to always re-generate the addresses used by your wallet deterministically. Deterministically means that given the same seed it will always be able to generate the exact same sequence of addresses one by one. To determine your total accumulated balance the wallet will ask the node for each address balance in succession until the node indicates that an address cannot be found because it is not present in a transaction in the Tangle. This indicates to the wallet that it has not generated/used that address before, so it can safely stop accumulating address balances. This fact is important to remember, because it will shortly explain why your balance is currently zero.

The wallet will generate new addresses as needed in two important ways. First, and most visible, when you want to receive IOTAs in your wallet you will need to generate a new receive address and attach that to the Tangle. Addresses are not supposed to be re-used because the signing process used to spend funds from an address uses one-time signatures. Because of the one-time nature of the signing process, the private key for that address gets partially exposed by every spend from the same address, opening it to a brute force attack. And since anyone that has the private key to an address can spend the funds in that address it's not very wise to open yourself up to such an attack. That's why the wallet tries to defend itself against such attacks by automatically moving the remaining funds after spending to a new address in the wallet. It will also give you a 'private key reuse' error whenever you try to spend from an address you have already spent from.

So the second way in which the wallet will generate new addresses is by moving the remainder of a spent address to a new address. When you instruct it to send a certain amount of IOTAs to another address, what it will do is go through the known addresses in your wallet one by one, starting from the first, by generating the addresses in sequence from the seed. The wallet accumulates the amount of IOTAs it finds along the way on addresses with a non-zero balance, until it has accumulated enough IOTAs to cover the amount you want to send. The contents of the non-zero addresses it has accumulated in this way will be sent as a single transfer to the receiving address and -if there is a remainder- the remainder will be sent as a second transfer to a newly generated address in your wallet. This will cause the latter address to be attached to the Tangle, so it lives there now, and the wallet will be able to see it as in use already whenever it scans for your balance as outlined above. All addresses used as the input for the transaction will end up having a zero balance, so they are not likely to be re-used any more, unless you make the mistake of not creating a new receive address but re-using a previous one.

It is important for the recovery process that you have an idea of how many addresses were in use before you 'lost' your balance (before the Snapshot happened, see below). For most people that will be up to one or two dozen addresses. But for people who used the wallet regularly before the snapshot happened that can easily go up in the hundreds. I personally have helped someone retrieve his balance who had 150+ addresses in use in his wallet.


Why is my balance zero?

To understand what happened you need to know what happens when the IOTA foundation generates a new Snapshot of the IOTA ledger database. This is done every now and then for maintenance reasons. The last Snapshot was created on Tuesday October 24th, 2017. One reason for taking a Snapshot is that the Tangle is constantly expanding, and therefore taking up more and more memory. To help nodes in keeping the amount of memory they need for storing the database limited, the Tangle is pruned by removing the history of transactions. Remember that after every transaction you end up with no longer used addresses with a zero balance. The transactions that caused these only take up space and are no longer necessary for correct functioning of the nodes. There are even more ways that can cause zero balance transactions to occur, like when a wallet generates and attaches a new address to the Tangle. There are also transactions that are used as messages between systems and do not contain any balance.

So after a Snapshot is taken the end result is a simple list of all addresses that contain a non-zero balance and their respective balances, and no history of how those balances happened is preserved on the regular nodes. By the way, this history *does* get preserved on so called perma-nodes, like ioatsear.ch, which will keep track of the entire history all the way back to the first transaction ever. But for most use cases this history is not necessary. It's only the non-zero end balances that are important, since they are the only ones that can be spent.

Note that the Snapshot process is such that any transactions that were not confirmed yet while the Snapshot was being taken will be canceled and it will be as if the funds never left the wallet of the sender. So that means some transactions may have to be performed again once you have restored your wallet. A deposit from your wallet to Bitfinex that was canceled will have never left your wallet. A withdrawal from Bitfinex to your wallet that was canceled will have never left the Bitfinex wallet. Just send those transactions again when that happened. They should pose no problem.

Now, remember how the wallet will figure out its balance? It will ask a node to retrieve the balances of each address it generates in succession from the seed, starting with the first one, that has been used in a transaction, until it finds a non-used address, which indicates that the wallet did not generate that address before. However, since the Snapshot has removed all historical transactions the first address it checks will not be found to be used by a transaction in the Tangle, and so the wallet stops scanning for balances immediately, because it thinks it has not generated that address yet, ultimately resulting in a zero accumulated balance.

So that's the reason you see a zero balance. The wallet simply stopped scanning for addresses with balances too soon, because it does not know that the Snapshot process has removed the transaction history. This means that the remedy for finding your balance is simple. Start re-generating and attaching your previously used receive addresses one by one. This will cause zero-balance transactions using that address to be connected to the Tangle. Which means the wallet now can see the address is in use in the Tangle and ask the node for the corresponding balance. In particular, you need to do this as many times as you had used addresses in the past, so that they can all be found in the Tangle again. To be sure, this can be a tedious process and it would have been nice if the wallet designers had included a command that allows you to tell it to generate the next X addresses until it finds one with a balance. But that is not the case at the moment, so there is no use in complaining right now. I am sure this feature will show up in a next incarnation of the wallet.


Why is the wallet still not able to find my balance?

The Sep 22nd and Oct 24th Snapshot processes have done two additional maintenance tasks that may result in you still not being able to successfully retrieve your correct balance. First, since the implementation of the Proof of Work function has changed from kerl to curl in August there was a need to transition balances to the use of the new curl implementation. A lot of people already did this transition as part of their upgrading their wallet from an older version to version 2.4.0. Since it turned out that there are people who managed to lose their seed and also many people who did not transition yet, the IOTA foundation has taken the precaution to remove those old-style kerl addresses from the Tangle and has taken custody of them. So if your previous wallet was from before version 2.4.0 you may fall into that category. You will need to use the reclaim tool as explained further down to reclaim those funds.

Second, because it was found that quite a number of people had spent multiple times from the same address, thereby exposing their funds to being stolen, the IOTA foundation decided to take similar custody of those addresses so they are no longer vulnerable. That means if you accidentally spent from the same address more than once in the past, and this address was still holding a balance, you will need to use the reclaim tool as explained further down to reclaim those funds.

In both cases one or more of your address balances may still be 'missing' even after the wallet has re-generated the missing address in the Tangle. The balance of such addresses was moved to the IOTA foundation custody address. You can check for those addresses if you think that may be what has happened to them here:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

Allow for the page to load before searching through it, as it is a huge list.

You just copy an address you want to find out about to the clipboard, and then use control-F and paste to search on that page. Make sure you only use the first 81 characters of the address, as the 9 character checksum is not present in this list. I just paste the address and delete the last 9 characters.

If your address shows a category of KEY_REUSE or KEY_REUSE_OCT in this list then you have executed more than one spend from that address and the balance is now in custody of the IOTA foundation until you reclaim it.

If your address shows a category of CURL_UNUSED then your address was not transitioned to the new curl implementation yet and the balance is also in custody of the IOTA foundation until you reclaim it.

For more details, see this announcement from the foundation:
https://forum.iota.org/t/snapshot-public-validation-22-09-2017/4256


How do I make sure I am using the correct seed?

If you don’t remember the 3-character checksum or in any other way are unsure if you are using the correct seed, here are ways to find out:

If you know roughly how many addresses you used to have in your wallet, just go ahead and re-generate at least that amount of new receive addresses (detailed steps below). Along the way, usually towards the end, you should see your balance increasing. If your balance becomes non-zero that is a clue that you are definitely in your own wallet with the correct seed. If you cannot seem to get the entire balance you may either need to generate even more addresses, or some of your funds were taken into custody by the IOTA foundation for the reasons described above. In that case you will have to check the addresses which you think should contain a non-zero balance against the snapshot list. And if you find them there, you will have to reclaim them using the reclaim tool.

Making double sure that you are using the correct wallet can be easily done by using the iotasear.ch Tangle browser to check the history of an address. This means you can copy the first address and see if in the past funds were there. Assuming the first address was the first one to receive funds of course. If it did contain funds the amount is probably recognizable as your first IOTA withdrawal ever. Anyway, when any funds are there in the iotasear.ch history you can be sure you have used this seed before.

Finally,


How do I use the reclaim tool?

If you are absolutely sure that the IOTA foundation took custody of some of your funds after checking the above, you will need to use the reclaim tool to reclaim your funds. Note that the reclaim process is a two-step process currently.
NOTE: to make sure that you don't make any typos when entering your old and new seeds with this tool i highly suggest you copy/paste them from a proven working copy. It would be silly to finally reclaim your funds to a seed that contains a typo and therefore the reclaimed funds would become irretrievable.
UPDATE: The reclaim tool in phase 2 will ask once again for the new seed, so unless you make the same typo twice this seems not really to be a problem.
In case multiple reclaims were put in, the one confirmed in the lowest milestone will be the one processed.


For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46


I hope this was helpful

Enjoy IOTA, let’s make it a success!

Hi,
My 700 IOTA disappeared roughly a month or two ago.
I have tried all the things you have suggested, and none of the them have worked. This includes:
- I have put in the new node settings, restarted the wallet.
- I checked the snapshots of September and October, looking for my seed with the last 9 characters taken off
- I checked the custody address list, looking for my seed with the last 9 characters taken off.
Please can you urgently advise. 
Thanks and regards,
Julian

@Julien Hey Julien, thanks for the post. The key takeaway here is that you need to be looking for ADDRESSES in the snapshots, not seeds. That's an important distinction. I would recommend using the Balance Finder tool in the pinned thread at the top of this forum
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
Bella1234567 - 17 Nov 2017
Winston - 16 Nov 2017
Bella1234567 - 16 Nov 2017
Winston - 14 Nov 2017
stefano d - 14 Nov 2017
Hello,
I would like to ask for help: I have run the 2.5.4 key recovery for KEY REUSE.
I ran all the procedure correctly using the old SEED and the new SEED, which confirmed the operation correctly
but I still don't see Iota in the wallet.
do you think it's the case to wait again or do I have to do some special procedure? thank you

@stefano d Thanks for the post. If you completed both phase 1 and phase 2 of the reclaim process, then you'll just need to wait for your balance to be finalized. This means that you will continue to see a balance of zero until the claim is processed. There's nothing that you need to do now other than wait.

For reference:
For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

Want some help here my proof of address has been pending since yesterday tried reclaim button with no luck is this normal?
Thank you very much for your reply really helped me.

@Bella1234567 Thanks for your post.

A bunch of people have been struggling with the reclaim process because the proof of address takes too long to confirm (it remains pending for a long time). The solution to this problem is connecting your wallet to a different host (Tools > Edit Node Configuration > choose a different host from the dropdown menu). You can fiddle around with this a bit, and it might require changing hosts, logging out of the wallet, logging back in, and re-trying the reclaim process several times before it works, but this has worked for nearly everyone else with your same problem. Please post here with the results so that others can learn from your experience

Thank you for your post
So now I somehow got into my wallet because it was giving me error and and see that in history there is only one pending address, balance is still zero the problem is when I used to reclaim then it said proof of address pending but now I can enter old and new seed to reclaim what does this mean I am still in phase 1 in wallet 2.5.2

@Bella1234567 Make sure that incoming transaction gets confirmed. You should see the pending transaction in your wallet history, and it should have a value of 0. Click on Show Bundle and then click Reattach. You can do this every 30 minutes until the transaction confirms. The next step after that is completing phase 2 of the reclaim process
le_yass
l
Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)Attaching to Tangle (25 reputation)
Group: Forum Members
Posts: 6, Visits: 0
Hi,

Phase 2 of the reclaim tool was supposed to start on the 11/13. I used the reclaim tool yesterday to collect the funds from these two adresses (here and here) that are listed under CURL_NOT_TRANSITIONED and held by the IOTA Foundation according to this page: https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

1) I've been generating and attaching 6 adresses on my new seed since then but my balance is still 0 - can anyone let me know if I've done anything wrong or if the wait time is normal?
2) Did I make a mistake by generating several adresses after using the reclaim tool?
3) Shall I retry to use the reclaim tool?

Thanks a lot,

Yacine


julian0506
j
Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)Attaching to Tangle (17 reputation)
Group: Forum Members
Posts: 17, Visits: 0
Winston - 17 Nov 2017
julian0506 - 16 Nov 2017
EricHop - 25 Oct 2017
First of all, don't panic, your IOTAs are most likely perfectly safe.

Second, no matter who or what, *never* give your seed to anyone. Especially not if they say they are an IOTA developer who will help you recover your balance. These people are scammers and will steal your IOTA.

I will show the steps you can take to recover your balance. I will also try to explain to you why this happened. I recommend you take the time to read and understand the how and why. Understanding what you invested in is the best thing you can do to keep your investment safe.


Steps to find your balance

  1. First, make sure you upgrade to version 2.5.4 of the *desktop* wallet. You can safely skip older versions if you did not install those before. These older versions will no longer work. The process for the Android wallet should be similar. Just make sure you update to the latest version first. You can find version 2.5.4 of the desktop wallet for Windows, Mac, and Linux here (don’t get confused by the title of the page, this is the latest wallet):
    https://github.com/iotaledger/wallet/releases

  2. Next, determine if you need to reclaim your funds. Do not start the reclaim tool yet. If you used the previous wallets (2.5.1+) and you had any funds that were visible in that wallet you do not need to reclaim these funds using the reclaim tool. Just continue with step 3 first to find your balance again. If you last used your wallet before the transition in August, or if you already know that the IOTA foundation took custody of some of your funds, then you need to take some extra steps to reclaim your funds after you restored your balance. I will discuss those later. If you did start the reclaim tool unnecessarily there's no problem. You can still use your old seed and use the next steps to find your balance.

  3. After installing the new wallet you need to set up your wallet correctly. What you need to do is go to Tools->Edit Node Configuration.

  4. Make sure that a Host node is selected. If you see 'Select Your Host' in the Host field, use the drop down to select one. Usually any one will do. However, keep in mind that a host may be temporarily offline, so if after selecting one the wallet indicates No Connection you may want to select another Host. My experience shows that the iotatoken.nl hosts are pretty reliable and fast.

  5. Make sure that Min Weight Magnitude is set to 14. Higher values should be no problem but will just cause the Proof of Work to take longer unnecessarily.

  6. Finally, you see a field that says Curl Implementation. The default is WebGL, which is a new setting that allows the wallet to use your graphics card to do the Proof of Work, thereby speeding up the process. However, some people will find that they get an Invalid Transaction Hash when they use this setting. The solutions for that are to either select CCURL instead, or to follow the instructions found in this link to make sure the wallet uses the correct graphics card:
    https://steemit.com/iota/@tector/iota-light-wallet-2-5-1-dealing-with-invalid-transaction-hash

  7. Note that it may be necessary to close and restart the wallet after changing any of those settings. I would do that just to be sure that the changes are active.

  8. Now you can use your seed to log into the wallet, so you can start finding your balance again. Make absolutely sure that you are using the correct seed. Any typo in the seed will result in a different wallet, and trying to find your balance in there is not going to work, obviously. There is a helpful checksum field next to the field where you can enter your seed. The wallet will tell you if your seed is too short or too long. And if you have entered exactly 81 characters it will show you a 3 character checksum that should always be the same for every version of the wallet. It will allow you to very quickly see if you made a typo, since any typo will result in a different checksum. If you are not sure if you used the correct seed there are instructions further down to help you make sure.

  9. After logging into the wallet you click on the Receive section. It will show you a new receive address. Now click Attach To Tangle. It will show ‘Attaching to Tangle’ for a while. Just wait for that to complete. If it takes too long you could try a different, faster node as outlined in step 4. Once it says ‘Address Attached’ you may see your total balance get updated with the balance of that address. If not, then click ‘Address Attached’. It will now say ‘Generate New Address’. Click that again. That will cause the next address to be generated and it will show ‘Attaching to Tangle’ again. Keep repeating this loop until you have recovered your balance completely. You can click the History section to see how many and which addresses you have generated so far. Addresses can be in pending state but that does not matter for finding your balance. You will need to generate all addresses you have used before for your entire balance to show up again. So if you have an idea of how many you used before that will be helpful. Most people should be able to find some or all of their balance within the first 20-30 addresses. But I know of people who needed to do 150+ re-attachments because they had been very active with their wallet. If your balance started to show up but never completely shows, and does not change any more after re-attaching don't bother continuing. The funds are usually clustered at the end of the address list. Any funds still missing have probably been taken into custody. See below for details on how to verify that.

  10. If you did not manage to find your balance using these steps, I suggest you take the time to read through the explanations below. You need to be able to understand why it still does not show and what you can do about it. If you did find your balance? Congratulations! But I still suggest you educate yourself so you know what you are invested in. I know it’s a drag to have to go through such a long document, but we’re still in beta software stage with the wallet and IOTA as a whole. Understanding how it works is equal to protecting yourself from losing your funds.


How does an IOTA wallet work?

Contrary to what most people believe your IOTA wallet does *not* contain your IOTAs. Instead, your IOTAs are safely stored in one or more addresses in the Tangle. You can see your wallet as a browser that knows how to retrieve the balance of an address. To do that it contacts a so-called node, and asks it to find the balance of that address in the distributed ledger database that the Tangle actually is. To be able to retrieve your entire balance, the wallet will usually have to retrieve the balances of multiple addresses that belong to your wallet and add them all up. The end result is displayed as your current balance.

Now here is an important thing: the wallet does not know at first how many and which addresses exactly to retrieve to accumulate your balance. The only starting point it has is the 81-character seed you provided when you logged into the wallet. This seed is the key that enables the wallet to always re-generate the addresses used by your wallet deterministically. Deterministically means that given the same seed it will always be able to generate the exact same sequence of addresses one by one. To determine your total accumulated balance the wallet will ask the node for each address balance in succession until the node indicates that an address cannot be found because it is not present in a transaction in the Tangle. This indicates to the wallet that it has not generated/used that address before, so it can safely stop accumulating address balances. This fact is important to remember, because it will shortly explain why your balance is currently zero.

The wallet will generate new addresses as needed in two important ways. First, and most visible, when you want to receive IOTAs in your wallet you will need to generate a new receive address and attach that to the Tangle. Addresses are not supposed to be re-used because the signing process used to spend funds from an address uses one-time signatures. Because of the one-time nature of the signing process, the private key for that address gets partially exposed by every spend from the same address, opening it to a brute force attack. And since anyone that has the private key to an address can spend the funds in that address it's not very wise to open yourself up to such an attack. That's why the wallet tries to defend itself against such attacks by automatically moving the remaining funds after spending to a new address in the wallet. It will also give you a 'private key reuse' error whenever you try to spend from an address you have already spent from.

So the second way in which the wallet will generate new addresses is by moving the remainder of a spent address to a new address. When you instruct it to send a certain amount of IOTAs to another address, what it will do is go through the known addresses in your wallet one by one, starting from the first, by generating the addresses in sequence from the seed. The wallet accumulates the amount of IOTAs it finds along the way on addresses with a non-zero balance, until it has accumulated enough IOTAs to cover the amount you want to send. The contents of the non-zero addresses it has accumulated in this way will be sent as a single transfer to the receiving address and -if there is a remainder- the remainder will be sent as a second transfer to a newly generated address in your wallet. This will cause the latter address to be attached to the Tangle, so it lives there now, and the wallet will be able to see it as in use already whenever it scans for your balance as outlined above. All addresses used as the input for the transaction will end up having a zero balance, so they are not likely to be re-used any more, unless you make the mistake of not creating a new receive address but re-using a previous one.

It is important for the recovery process that you have an idea of how many addresses were in use before you 'lost' your balance (before the Snapshot happened, see below). For most people that will be up to one or two dozen addresses. But for people who used the wallet regularly before the snapshot happened that can easily go up in the hundreds. I personally have helped someone retrieve his balance who had 150+ addresses in use in his wallet.


Why is my balance zero?

To understand what happened you need to know what happens when the IOTA foundation generates a new Snapshot of the IOTA ledger database. This is done every now and then for maintenance reasons. The last Snapshot was created on Tuesday October 24th, 2017. One reason for taking a Snapshot is that the Tangle is constantly expanding, and therefore taking up more and more memory. To help nodes in keeping the amount of memory they need for storing the database limited, the Tangle is pruned by removing the history of transactions. Remember that after every transaction you end up with no longer used addresses with a zero balance. The transactions that caused these only take up space and are no longer necessary for correct functioning of the nodes. There are even more ways that can cause zero balance transactions to occur, like when a wallet generates and attaches a new address to the Tangle. There are also transactions that are used as messages between systems and do not contain any balance.

So after a Snapshot is taken the end result is a simple list of all addresses that contain a non-zero balance and their respective balances, and no history of how those balances happened is preserved on the regular nodes. By the way, this history *does* get preserved on so called perma-nodes, like ioatsear.ch, which will keep track of the entire history all the way back to the first transaction ever. But for most use cases this history is not necessary. It's only the non-zero end balances that are important, since they are the only ones that can be spent.

Note that the Snapshot process is such that any transactions that were not confirmed yet while the Snapshot was being taken will be canceled and it will be as if the funds never left the wallet of the sender. So that means some transactions may have to be performed again once you have restored your wallet. A deposit from your wallet to Bitfinex that was canceled will have never left your wallet. A withdrawal from Bitfinex to your wallet that was canceled will have never left the Bitfinex wallet. Just send those transactions again when that happened. They should pose no problem.

Now, remember how the wallet will figure out its balance? It will ask a node to retrieve the balances of each address it generates in succession from the seed, starting with the first one, that has been used in a transaction, until it finds a non-used address, which indicates that the wallet did not generate that address before. However, since the Snapshot has removed all historical transactions the first address it checks will not be found to be used by a transaction in the Tangle, and so the wallet stops scanning for balances immediately, because it thinks it has not generated that address yet, ultimately resulting in a zero accumulated balance.

So that's the reason you see a zero balance. The wallet simply stopped scanning for addresses with balances too soon, because it does not know that the Snapshot process has removed the transaction history. This means that the remedy for finding your balance is simple. Start re-generating and attaching your previously used receive addresses one by one. This will cause zero-balance transactions using that address to be connected to the Tangle. Which means the wallet now can see the address is in use in the Tangle and ask the node for the corresponding balance. In particular, you need to do this as many times as you had used addresses in the past, so that they can all be found in the Tangle again. To be sure, this can be a tedious process and it would have been nice if the wallet designers had included a command that allows you to tell it to generate the next X addresses until it finds one with a balance. But that is not the case at the moment, so there is no use in complaining right now. I am sure this feature will show up in a next incarnation of the wallet.


Why is the wallet still not able to find my balance?

The Sep 22nd and Oct 24th Snapshot processes have done two additional maintenance tasks that may result in you still not being able to successfully retrieve your correct balance. First, since the implementation of the Proof of Work function has changed from kerl to curl in August there was a need to transition balances to the use of the new curl implementation. A lot of people already did this transition as part of their upgrading their wallet from an older version to version 2.4.0. Since it turned out that there are people who managed to lose their seed and also many people who did not transition yet, the IOTA foundation has taken the precaution to remove those old-style kerl addresses from the Tangle and has taken custody of them. So if your previous wallet was from before version 2.4.0 you may fall into that category. You will need to use the reclaim tool as explained further down to reclaim those funds.

Second, because it was found that quite a number of people had spent multiple times from the same address, thereby exposing their funds to being stolen, the IOTA foundation decided to take similar custody of those addresses so they are no longer vulnerable. That means if you accidentally spent from the same address more than once in the past, and this address was still holding a balance, you will need to use the reclaim tool as explained further down to reclaim those funds.

In both cases one or more of your address balances may still be 'missing' even after the wallet has re-generated the missing address in the Tangle. The balance of such addresses was moved to the IOTA foundation custody address. You can check for those addresses if you think that may be what has happened to them here:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

Allow for the page to load before searching through it, as it is a huge list.

You just copy an address you want to find out about to the clipboard, and then use control-F and paste to search on that page. Make sure you only use the first 81 characters of the address, as the 9 character checksum is not present in this list. I just paste the address and delete the last 9 characters.

If your address shows a category of KEY_REUSE or KEY_REUSE_OCT in this list then you have executed more than one spend from that address and the balance is now in custody of the IOTA foundation until you reclaim it.

If your address shows a category of CURL_UNUSED then your address was not transitioned to the new curl implementation yet and the balance is also in custody of the IOTA foundation until you reclaim it.

For more details, see this announcement from the foundation:
https://forum.iota.org/t/snapshot-public-validation-22-09-2017/4256


How do I make sure I am using the correct seed?

If you don’t remember the 3-character checksum or in any other way are unsure if you are using the correct seed, here are ways to find out:

If you know roughly how many addresses you used to have in your wallet, just go ahead and re-generate at least that amount of new receive addresses (detailed steps below). Along the way, usually towards the end, you should see your balance increasing. If your balance becomes non-zero that is a clue that you are definitely in your own wallet with the correct seed. If you cannot seem to get the entire balance you may either need to generate even more addresses, or some of your funds were taken into custody by the IOTA foundation for the reasons described above. In that case you will have to check the addresses which you think should contain a non-zero balance against the snapshot list. And if you find them there, you will have to reclaim them using the reclaim tool.

Making double sure that you are using the correct wallet can be easily done by using the iotasear.ch Tangle browser to check the history of an address. This means you can copy the first address and see if in the past funds were there. Assuming the first address was the first one to receive funds of course. If it did contain funds the amount is probably recognizable as your first IOTA withdrawal ever. Anyway, when any funds are there in the iotasear.ch history you can be sure you have used this seed before.

Finally,


How do I use the reclaim tool?

If you are absolutely sure that the IOTA foundation took custody of some of your funds after checking the above, you will need to use the reclaim tool to reclaim your funds. Note that the reclaim process is a two-step process currently.
NOTE: to make sure that you don't make any typos when entering your old and new seeds with this tool i highly suggest you copy/paste them from a proven working copy. It would be silly to finally reclaim your funds to a seed that contains a typo and therefore the reclaimed funds would become irretrievable.
UPDATE: The reclaim tool in phase 2 will ask once again for the new seed, so unless you make the same typo twice this seems not really to be a problem.
In case multiple reclaims were put in, the one confirmed in the lowest milestone will be the one processed.


For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46


I hope this was helpful

Enjoy IOTA, let’s make it a success!

Hi,
My 700 IOTA disappeared roughly a month or two ago.
I have tried all the things you have suggested, and none of the them have worked. This includes:
- I have put in the new node settings, restarted the wallet.
- I checked the snapshots of September and October, looking for my seed with the last 9 characters taken off
- I checked the custody address list, looking for my seed with the last 9 characters taken off.
Please can you urgently advise. 
Thanks and regards,
Julian

@Julien Hey Julien, thanks for the post. The key takeaway here is that you need to be looking for ADDRESSES in the snapshots, not seeds. That's an important distinction. I would recommend using the Balance Finder tool in the pinned thread at the top of this forum

Hi Winston,

Many thanks - that's really helpful. After using the Balance Reuse tool, I got given a hit with a KEY_REUSE_OCT message. I looked at the reclaim tool, but I only have the old seed to put into it. I don't know how to generate the new seed to add as well. I've read through most of the forum posts but can't seem to find info on this.

Thanks again!

Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
le_yass - 17 Nov 2017
Hi,

Phase 2 of the reclaim tool was supposed to start on the 11/13. I used the reclaim tool yesterday to collect the funds from these two adresses (here and here) that are listed under CURL_NOT_TRANSITIONED and held by the IOTA Foundation according to this page: https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

1) I've been generating and attaching 6 adresses on my new seed since then but my balance is still 0 - can anyone let me know if I've done anything wrong or if the wait time is normal?
2) Did I make a mistake by generating several adresses after using the reclaim tool?
3) Shall I retry to use the reclaim tool?

Thanks a lot,

Yacine


@le_yass Answered this post in the other thread, thanks..
Winston
Winston
Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)Forum Admin (33K reputation)
Group: Administrators
Posts: 3.6K, Visits: 6.8K
julian0506 - 17 Nov 2017
Winston - 17 Nov 2017
julian0506 - 16 Nov 2017
EricHop - 25 Oct 2017
First of all, don't panic, your IOTAs are most likely perfectly safe.

Second, no matter who or what, *never* give your seed to anyone. Especially not if they say they are an IOTA developer who will help you recover your balance. These people are scammers and will steal your IOTA.

I will show the steps you can take to recover your balance. I will also try to explain to you why this happened. I recommend you take the time to read and understand the how and why. Understanding what you invested in is the best thing you can do to keep your investment safe.


Steps to find your balance

  1. First, make sure you upgrade to version 2.5.4 of the *desktop* wallet. You can safely skip older versions if you did not install those before. These older versions will no longer work. The process for the Android wallet should be similar. Just make sure you update to the latest version first. You can find version 2.5.4 of the desktop wallet for Windows, Mac, and Linux here (don’t get confused by the title of the page, this is the latest wallet):
    https://github.com/iotaledger/wallet/releases

  2. Next, determine if you need to reclaim your funds. Do not start the reclaim tool yet. If you used the previous wallets (2.5.1+) and you had any funds that were visible in that wallet you do not need to reclaim these funds using the reclaim tool. Just continue with step 3 first to find your balance again. If you last used your wallet before the transition in August, or if you already know that the IOTA foundation took custody of some of your funds, then you need to take some extra steps to reclaim your funds after you restored your balance. I will discuss those later. If you did start the reclaim tool unnecessarily there's no problem. You can still use your old seed and use the next steps to find your balance.

  3. After installing the new wallet you need to set up your wallet correctly. What you need to do is go to Tools->Edit Node Configuration.

  4. Make sure that a Host node is selected. If you see 'Select Your Host' in the Host field, use the drop down to select one. Usually any one will do. However, keep in mind that a host may be temporarily offline, so if after selecting one the wallet indicates No Connection you may want to select another Host. My experience shows that the iotatoken.nl hosts are pretty reliable and fast.

  5. Make sure that Min Weight Magnitude is set to 14. Higher values should be no problem but will just cause the Proof of Work to take longer unnecessarily.

  6. Finally, you see a field that says Curl Implementation. The default is WebGL, which is a new setting that allows the wallet to use your graphics card to do the Proof of Work, thereby speeding up the process. However, some people will find that they get an Invalid Transaction Hash when they use this setting. The solutions for that are to either select CCURL instead, or to follow the instructions found in this link to make sure the wallet uses the correct graphics card:
    https://steemit.com/iota/@tector/iota-light-wallet-2-5-1-dealing-with-invalid-transaction-hash

  7. Note that it may be necessary to close and restart the wallet after changing any of those settings. I would do that just to be sure that the changes are active.

  8. Now you can use your seed to log into the wallet, so you can start finding your balance again. Make absolutely sure that you are using the correct seed. Any typo in the seed will result in a different wallet, and trying to find your balance in there is not going to work, obviously. There is a helpful checksum field next to the field where you can enter your seed. The wallet will tell you if your seed is too short or too long. And if you have entered exactly 81 characters it will show you a 3 character checksum that should always be the same for every version of the wallet. It will allow you to very quickly see if you made a typo, since any typo will result in a different checksum. If you are not sure if you used the correct seed there are instructions further down to help you make sure.

  9. After logging into the wallet you click on the Receive section. It will show you a new receive address. Now click Attach To Tangle. It will show ‘Attaching to Tangle’ for a while. Just wait for that to complete. If it takes too long you could try a different, faster node as outlined in step 4. Once it says ‘Address Attached’ you may see your total balance get updated with the balance of that address. If not, then click ‘Address Attached’. It will now say ‘Generate New Address’. Click that again. That will cause the next address to be generated and it will show ‘Attaching to Tangle’ again. Keep repeating this loop until you have recovered your balance completely. You can click the History section to see how many and which addresses you have generated so far. Addresses can be in pending state but that does not matter for finding your balance. You will need to generate all addresses you have used before for your entire balance to show up again. So if you have an idea of how many you used before that will be helpful. Most people should be able to find some or all of their balance within the first 20-30 addresses. But I know of people who needed to do 150+ re-attachments because they had been very active with their wallet. If your balance started to show up but never completely shows, and does not change any more after re-attaching don't bother continuing. The funds are usually clustered at the end of the address list. Any funds still missing have probably been taken into custody. See below for details on how to verify that.

  10. If you did not manage to find your balance using these steps, I suggest you take the time to read through the explanations below. You need to be able to understand why it still does not show and what you can do about it. If you did find your balance? Congratulations! But I still suggest you educate yourself so you know what you are invested in. I know it’s a drag to have to go through such a long document, but we’re still in beta software stage with the wallet and IOTA as a whole. Understanding how it works is equal to protecting yourself from losing your funds.


How does an IOTA wallet work?

Contrary to what most people believe your IOTA wallet does *not* contain your IOTAs. Instead, your IOTAs are safely stored in one or more addresses in the Tangle. You can see your wallet as a browser that knows how to retrieve the balance of an address. To do that it contacts a so-called node, and asks it to find the balance of that address in the distributed ledger database that the Tangle actually is. To be able to retrieve your entire balance, the wallet will usually have to retrieve the balances of multiple addresses that belong to your wallet and add them all up. The end result is displayed as your current balance.

Now here is an important thing: the wallet does not know at first how many and which addresses exactly to retrieve to accumulate your balance. The only starting point it has is the 81-character seed you provided when you logged into the wallet. This seed is the key that enables the wallet to always re-generate the addresses used by your wallet deterministically. Deterministically means that given the same seed it will always be able to generate the exact same sequence of addresses one by one. To determine your total accumulated balance the wallet will ask the node for each address balance in succession until the node indicates that an address cannot be found because it is not present in a transaction in the Tangle. This indicates to the wallet that it has not generated/used that address before, so it can safely stop accumulating address balances. This fact is important to remember, because it will shortly explain why your balance is currently zero.

The wallet will generate new addresses as needed in two important ways. First, and most visible, when you want to receive IOTAs in your wallet you will need to generate a new receive address and attach that to the Tangle. Addresses are not supposed to be re-used because the signing process used to spend funds from an address uses one-time signatures. Because of the one-time nature of the signing process, the private key for that address gets partially exposed by every spend from the same address, opening it to a brute force attack. And since anyone that has the private key to an address can spend the funds in that address it's not very wise to open yourself up to such an attack. That's why the wallet tries to defend itself against such attacks by automatically moving the remaining funds after spending to a new address in the wallet. It will also give you a 'private key reuse' error whenever you try to spend from an address you have already spent from.

So the second way in which the wallet will generate new addresses is by moving the remainder of a spent address to a new address. When you instruct it to send a certain amount of IOTAs to another address, what it will do is go through the known addresses in your wallet one by one, starting from the first, by generating the addresses in sequence from the seed. The wallet accumulates the amount of IOTAs it finds along the way on addresses with a non-zero balance, until it has accumulated enough IOTAs to cover the amount you want to send. The contents of the non-zero addresses it has accumulated in this way will be sent as a single transfer to the receiving address and -if there is a remainder- the remainder will be sent as a second transfer to a newly generated address in your wallet. This will cause the latter address to be attached to the Tangle, so it lives there now, and the wallet will be able to see it as in use already whenever it scans for your balance as outlined above. All addresses used as the input for the transaction will end up having a zero balance, so they are not likely to be re-used any more, unless you make the mistake of not creating a new receive address but re-using a previous one.

It is important for the recovery process that you have an idea of how many addresses were in use before you 'lost' your balance (before the Snapshot happened, see below). For most people that will be up to one or two dozen addresses. But for people who used the wallet regularly before the snapshot happened that can easily go up in the hundreds. I personally have helped someone retrieve his balance who had 150+ addresses in use in his wallet.


Why is my balance zero?

To understand what happened you need to know what happens when the IOTA foundation generates a new Snapshot of the IOTA ledger database. This is done every now and then for maintenance reasons. The last Snapshot was created on Tuesday October 24th, 2017. One reason for taking a Snapshot is that the Tangle is constantly expanding, and therefore taking up more and more memory. To help nodes in keeping the amount of memory they need for storing the database limited, the Tangle is pruned by removing the history of transactions. Remember that after every transaction you end up with no longer used addresses with a zero balance. The transactions that caused these only take up space and are no longer necessary for correct functioning of the nodes. There are even more ways that can cause zero balance transactions to occur, like when a wallet generates and attaches a new address to the Tangle. There are also transactions that are used as messages between systems and do not contain any balance.

So after a Snapshot is taken the end result is a simple list of all addresses that contain a non-zero balance and their respective balances, and no history of how those balances happened is preserved on the regular nodes. By the way, this history *does* get preserved on so called perma-nodes, like ioatsear.ch, which will keep track of the entire history all the way back to the first transaction ever. But for most use cases this history is not necessary. It's only the non-zero end balances that are important, since they are the only ones that can be spent.

Note that the Snapshot process is such that any transactions that were not confirmed yet while the Snapshot was being taken will be canceled and it will be as if the funds never left the wallet of the sender. So that means some transactions may have to be performed again once you have restored your wallet. A deposit from your wallet to Bitfinex that was canceled will have never left your wallet. A withdrawal from Bitfinex to your wallet that was canceled will have never left the Bitfinex wallet. Just send those transactions again when that happened. They should pose no problem.

Now, remember how the wallet will figure out its balance? It will ask a node to retrieve the balances of each address it generates in succession from the seed, starting with the first one, that has been used in a transaction, until it finds a non-used address, which indicates that the wallet did not generate that address before. However, since the Snapshot has removed all historical transactions the first address it checks will not be found to be used by a transaction in the Tangle, and so the wallet stops scanning for balances immediately, because it thinks it has not generated that address yet, ultimately resulting in a zero accumulated balance.

So that's the reason you see a zero balance. The wallet simply stopped scanning for addresses with balances too soon, because it does not know that the Snapshot process has removed the transaction history. This means that the remedy for finding your balance is simple. Start re-generating and attaching your previously used receive addresses one by one. This will cause zero-balance transactions using that address to be connected to the Tangle. Which means the wallet now can see the address is in use in the Tangle and ask the node for the corresponding balance. In particular, you need to do this as many times as you had used addresses in the past, so that they can all be found in the Tangle again. To be sure, this can be a tedious process and it would have been nice if the wallet designers had included a command that allows you to tell it to generate the next X addresses until it finds one with a balance. But that is not the case at the moment, so there is no use in complaining right now. I am sure this feature will show up in a next incarnation of the wallet.


Why is the wallet still not able to find my balance?

The Sep 22nd and Oct 24th Snapshot processes have done two additional maintenance tasks that may result in you still not being able to successfully retrieve your correct balance. First, since the implementation of the Proof of Work function has changed from kerl to curl in August there was a need to transition balances to the use of the new curl implementation. A lot of people already did this transition as part of their upgrading their wallet from an older version to version 2.4.0. Since it turned out that there are people who managed to lose their seed and also many people who did not transition yet, the IOTA foundation has taken the precaution to remove those old-style kerl addresses from the Tangle and has taken custody of them. So if your previous wallet was from before version 2.4.0 you may fall into that category. You will need to use the reclaim tool as explained further down to reclaim those funds.

Second, because it was found that quite a number of people had spent multiple times from the same address, thereby exposing their funds to being stolen, the IOTA foundation decided to take similar custody of those addresses so they are no longer vulnerable. That means if you accidentally spent from the same address more than once in the past, and this address was still holding a balance, you will need to use the reclaim tool as explained further down to reclaim those funds.

In both cases one or more of your address balances may still be 'missing' even after the wallet has re-generated the missing address in the Tangle. The balance of such addresses was moved to the IOTA foundation custody address. You can check for those addresses if you think that may be what has happened to them here:
https://gist.githubusercontent.com/cyclux/2bb05d873c4ec6115cad1d100263d489/raw/612a49e46091586957448f6606ea981ab18022e7/snapshot_validation_20171023.txt

Allow for the page to load before searching through it, as it is a huge list.

You just copy an address you want to find out about to the clipboard, and then use control-F and paste to search on that page. Make sure you only use the first 81 characters of the address, as the 9 character checksum is not present in this list. I just paste the address and delete the last 9 characters.

If your address shows a category of KEY_REUSE or KEY_REUSE_OCT in this list then you have executed more than one spend from that address and the balance is now in custody of the IOTA foundation until you reclaim it.

If your address shows a category of CURL_UNUSED then your address was not transitioned to the new curl implementation yet and the balance is also in custody of the IOTA foundation until you reclaim it.

For more details, see this announcement from the foundation:
https://forum.iota.org/t/snapshot-public-validation-22-09-2017/4256


How do I make sure I am using the correct seed?

If you don’t remember the 3-character checksum or in any other way are unsure if you are using the correct seed, here are ways to find out:

If you know roughly how many addresses you used to have in your wallet, just go ahead and re-generate at least that amount of new receive addresses (detailed steps below). Along the way, usually towards the end, you should see your balance increasing. If your balance becomes non-zero that is a clue that you are definitely in your own wallet with the correct seed. If you cannot seem to get the entire balance you may either need to generate even more addresses, or some of your funds were taken into custody by the IOTA foundation for the reasons described above. In that case you will have to check the addresses which you think should contain a non-zero balance against the snapshot list. And if you find them there, you will have to reclaim them using the reclaim tool.

Making double sure that you are using the correct wallet can be easily done by using the iotasear.ch Tangle browser to check the history of an address. This means you can copy the first address and see if in the past funds were there. Assuming the first address was the first one to receive funds of course. If it did contain funds the amount is probably recognizable as your first IOTA withdrawal ever. Anyway, when any funds are there in the iotasear.ch history you can be sure you have used this seed before.

Finally,


How do I use the reclaim tool?

If you are absolutely sure that the IOTA foundation took custody of some of your funds after checking the above, you will need to use the reclaim tool to reclaim your funds. Note that the reclaim process is a two-step process currently.
NOTE: to make sure that you don't make any typos when entering your old and new seeds with this tool i highly suggest you copy/paste them from a proven working copy. It would be silly to finally reclaim your funds to a seed that contains a typo and therefore the reclaimed funds would become irretrievable.
UPDATE: The reclaim tool in phase 2 will ask once again for the new seed, so unless you make the same typo twice this seems not really to be a problem.
In case multiple reclaims were put in, the one confirmed in the lowest milestone will be the one processed.


For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46


I hope this was helpful

Enjoy IOTA, let’s make it a success!

Hi,
My 700 IOTA disappeared roughly a month or two ago.
I have tried all the things you have suggested, and none of the them have worked. This includes:
- I have put in the new node settings, restarted the wallet.
- I checked the snapshots of September and October, looking for my seed with the last 9 characters taken off
- I checked the custody address list, looking for my seed with the last 9 characters taken off.
Please can you urgently advise. 
Thanks and regards,
Julian

@Julien Hey Julien, thanks for the post. The key takeaway here is that you need to be looking for ADDRESSES in the snapshots, not seeds. That's an important distinction. I would recommend using the Balance Finder tool in the pinned thread at the top of this forum

Hi Winston,

Many thanks - that's really helpful. After using the Balance Reuse tool, I got given a hit with a KEY_REUSE_OCT message. I looked at the reclaim tool, but I only have the old seed to put into it. I don't know how to generate the new seed to add as well. I've read through most of the forum posts but can't seem to find info on this.

Thanks again!

@julian0506 You can use one of these seed generators to create a new seed: https://kb.helloiota.com/KnowledgebaseArticle50005.aspx

Here's some more info/steps on how to the reclaim process works:
For reference:
For more details on how to use the reclaim tool see this link for phase 1:
https://blog.iota.org/gui-v2-5-2-latest-release-with-iota-reclaim-tool-32d364d6241a
And this link for phase 2:
https://blog.iota.org/gui-wallet-phase-two-of-the-reclaim-process-f5913109cf46

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Login

Explore
Messages
Mentions
Search