Author

Topic: Cannot open armory wallet or remove encryption with correct passphrase (Read 1388 times)

newbie
Activity: 14
Merit: 0
Thanks for doing research before posting!  It's great to see people jump in and find previous issues so I don't always have to repeat it.

I used to get about 1 wallet-corruption complaint every 4-6 months... now I'm getting about 2 per month.    I wonder if the wallet code was somehow affected.  Or may have just have 10x the users I had before! 

I've intentionally tried not to mess with the wallet code, because it is thoroughly tested and everyone is happy.  Maybe it's corruption-resistence isn't as good as I thought it was...?  Granted, I've crashed Armory and endless number of times, tested these features endlessly, and never got corruption.  Maybe it's more likely to happen on Windows? 

Maybe I should be putting up scary in-app warnings about backing up your wallet BEFORE you use it for anything.  I have some warnings that pop up periodically after you've created it, but it doesn't help if you somehow corrupt your wallet between creation and making that backup.

Glad to hear that it worked out in the end.  Now that you have a paper backup, if that ever happens, you can just delete the wallet and restore from paper backup.  That was my intention to begine with anyway Smiley

Yeah, it's weird. I'll remember to create a paper backup first in the future.
cp1
hero member
Activity: 616
Merit: 500
Stop using branwallets
If it's deterministic like electrum then you don't need to pre-generate 100 addresses, you just have to write down the seed.
legendary
Activity: 1428
Merit: 1093
Core Armory Developer
Thanks for doing research before posting!  It's great to see people jump in and find previous issues so I don't always have to repeat it.

I used to get about 1 wallet-corruption complaint every 4-6 months... now I'm getting about 2 per month.    I wonder if the wallet code was somehow affected.  Or may have just have 10x the users I had before! 

I've intentionally tried not to mess with the wallet code, because it is thoroughly tested and everyone is happy.  Maybe it's corruption-resistence isn't as good as I thought it was...?  Granted, I've crashed Armory and endless number of times, tested these features endlessly, and never got corruption.  Maybe it's more likely to happen on Windows? 

Maybe I should be putting up scary in-app warnings about backing up your wallet BEFORE you use it for anything.  I have some warnings that pop up periodically after you've created it, but it doesn't help if you somehow corrupt your wallet between creation and making that backup.

Glad to hear that it worked out in the end.  Now that you have a paper backup, if that ever happens, you can just delete the wallet and restore from paper backup.  That was my intention to begine with anyway Smiley
newbie
Activity: 14
Merit: 0
Never mind. This is now fixed.

I believe what happened was that I calculated 200 additional addresses for this wallet, which caused some wallet corruption. That meant that I had to click through all the keys in order for it to find a match for my private/public key. I don't really know how/why it does this, but I found the info in the armory support thread and then intuitively worked through it:

https://bitcointalksearch.org/topic/m.1605893

If you get this error in your log, then one or more of your public keys got corrupted:

Code:
2013-05-07 02:18 (ERROR) -- Traceback (most recent call last):
  File "qtdialogs.pyc", line 281, in acceptPassphrase
  File "armoryengine.pyc", line 9083, in unlock
  File "armoryengine.pyc", line 2660, in unlock
  File "armoryengine.pyc", line 2691, in unlock
KeyDataError: Stored public key does not match priv key!

First, I reverted all settings for armory.

Then, after I clicked about 100 times and it accepted the passphrase, I created a paper backup.

Then, I deleted the wallet from armory, and imported it from the paper backup without encryption.

Works perfectly. Hopefully this thread will serve as a good guide for someone who has this problem in the future.
newbie
Activity: 14
Merit: 0
Here's what's in the armory log:

2013-05-07 02:18 (ERROR) -- Traceback (most recent call last):
  File "qtdialogs.pyc", line 281, in acceptPassphrase
  File "armoryengine.pyc", line 9083, in unlock
  File "armoryengine.pyc", line 2660, in unlock
  File "armoryengine.pyc", line 2691, in unlock
KeyDataError: Stored public key does not match priv key!

Here's the log for when I remove the encryption and armory doesn't pop up with an incorrect password flag:

2013-05-07 02:25 (ERROR) -- Traceback (most recent call last):
  File "qtdialogs.pyc", line 1315, in changeEncryption
  File "armoryengine.pyc", line 9083, in unlock
  File "armoryengine.pyc", line 2660, in unlock
  File "armoryengine.pyc", line 2691, in unlock
KeyDataError: Stored public key does not match priv key!
newbie
Activity: 14
Merit: 0
Does armory use some type of encryption that you could decrypt yourself, outside of the armory program?  (like gpg or whatever)

On the wallet view it says it's using AES256.


Did you try exporting the keys?  (If it is encrypted you will need to enter the passphrase so it might not work).

I assume you don't have a paper backup and you didn't test restoring the wallet before you used it.

Can't export the keys because of the same issue with entering the password. I had tested the paper backup option previously without printing it out, so I don't have one.

Here's the error report in event viewer when Armory crashes:

Faulting application name: Armory.exe, version: 0.0.0.0, time stamp: 0x49180193
Faulting module name: MSVCR90.dll, version: 9.0.30729.6161, time stamp: 0x4dace5b9
Exception code: 0x40000015
Fault offset: 0x0005beae
Faulting process id: 0x256c
Faulting application start time: 0x01ce4ae3953ca323
Faulting application path: C:\Program Files (x86)\Armory\Armory Bitcoin Client\Armory.exe
Faulting module path: C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll
Report Id: 6d9e78f7-b6d7-11e2-a81f-0026832c7a82
cp1
hero member
Activity: 616
Merit: 500
Stop using branwallets
Does armory use some type of encryption that you could decrypt yourself, outside of the armory program?  (like gpg or whatever)
newbie
Activity: 14
Merit: 0
I'd appreciate any help on this.

Was using version 0.88.1 and got some BTC sent to my wallet. When I tried to send it out again, armory will not let me enter a passphrase. When I enter my correct passphrase, I can't do anything. It's almost like Armory freezes. If I enter an incorrect passphrase, it will tell me it is incorrect.

If I try to go to my wallet properties and remove the encryption, I am able to enter my passphrase and press accept, BUT, armory still shows the wallet as encrypted.  I cannot make a paper backup because, again, armory freezes when I get to the passphrase box.

I went back to version 0.87.2 and I'm having the same problems. Armory will also cause a runtime error and crash.

Deleting the wallet and re-importing it does nothing.
Jump to: