Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

KeePassHTTP Encryption Key not recognized when multiple databases are open #530

Closed
backaf opened this issue Apr 26, 2017 · 6 comments
Closed

Comments

@backaf
Copy link

backaf commented Apr 26, 2017

Have been using KeePassXC using multiple open databases on Debian Jessie and MacOS Sierra for the last 5 days. My main browser is Firefox and I have the PassiFox plugin installed and connected to KeePassXC. The KeePassHTTP is enabled and configured to use multiple databases at one.

Every now and then, around 7-8 times a day, I am getting a notification in Firefox that the encryption key is unrecognized and that I need to Re-connect to KeePass. At this point, none of the passwords in my 3 open databases are being found in Firefox. When I attempt to reconnect to KeePassXC I am asked for a new key association request. If I provide a name I already used before, I'm asked if I want to overwrite it. Then the passwords are accessible again.

screenshot from 2017-04-25 14 54 48
screenshot from 2017-04-26 09 32 50
screenshot from 2017-04-26 09 33 01

Is this a known issue caused by having multiple open databases at once? Have already tried to use different names for the shared encryption key but it doesn't seem to make a difference.

@droidmonkey
Copy link
Member

Do you have auto save after every change on? Is anyone else using these databases simultaneously with you? Are you storing them in a cloud service (drive, icloud, etc)?

@backaf
Copy link
Author

backaf commented Apr 26, 2017

I had it on auto save a few days ago but only for a few hours since it makes a change every time it requests access to a password. Then I disabled it, just have save on exit for now.

There's another person using two of the databases. These two are being synced over Synology Cloud Station. The other person is rarely writing to the database though, it mostly reads the passwords using KyPass on MacOS. When saving on my second workstation, I did notice the message saying to reload the database (only a few times since I mostly write only on one station) but that didn't seem to trigger this behavior.

As a bit more background, we have been using the same setup for around 2 years, the only difference is that I have been using KeepPass (on two workstations Debian Jessie). I recently found KeepPassXC when looking for an alternative to run KeepPass on Mac and I liked it so much I decided to switch my Linux machine to KeePassXC as well.

@droidmonkey
Copy link
Member

Interesting, thanks! With this info I'll look through the code to see if there is an obvious issue.

Can you try creating a new databas, add one entry, and share it in the same manner to see if you get the same behavior?

@phoerious phoerious added the bug label May 7, 2017
@backaf
Copy link
Author

backaf commented May 18, 2017

Sorry for the late reply, I was away for a while. I tried this quickly and it seems I cannot reproduce it when only one database is opened at a time. I kept only one database opened on a Debian and a Mac, synced through the NextCloud client. I tried saving on one or the other, waited to sync but it cannot be reproduced.

Then I had to open another database and 5 minutes later realized the passwords from the first database cannot be access anymore. I closed the second database and I can see them again.

So it looks to be related by multiple databases being opened at the same time rather than the sync. I have the advanced option search in all opened databases for matching entries enabled.

@duk3luk3
Copy link

duk3luk3 commented Aug 2, 2017

KeePassXC looks for a matching key only in the currently selected (as in "selected tab") database, and only looks at the first match as well (if there are multiple entries called "KeePassHttp Settings" in the database).
EDIT: I take that back - it seems to be weirder than that.

This is definitely annoying and imo the focus on selected db is generally a bad thing - KeePassXC is supposed to stay in the background as much as possible, so e.g. if you create a new a password via KeePassHttp, having to open KeePassXC first and selecting the correct database is a bad workflow - it would be much better if a popup opened asking which database the entry should go to.

duk3luk3 added a commit to duk3luk3/keepassxc that referenced this issue Aug 6, 2017
* !WIP!
* Creates a new dialog widget for accepting keys - needed for keepassxreboot#838

For keepassxreboot#838, keepassxreboot#530
duk3luk3 added a commit to duk3luk3/keepassxc that referenced this issue Sep 21, 2017
* !WIP!
* Creates a new dialog widget for accepting keys - needed for keepassxreboot#838

For keepassxreboot#838, keepassxreboot#530
@droidmonkey droidmonkey changed the title Encryption key is unrecognized KeePassHTTP Encryption Key not recognized when multiple databases are open Oct 11, 2017
duk3luk3 added a commit to duk3luk3/keepassxc that referenced this issue Dec 12, 2017
* !WIP!
* Creates a new dialog widget for accepting keys - needed for keepassxreboot#838

For keepassxreboot#838, keepassxreboot#530
@droidmonkey
Copy link
Member

This is no longer an issue as of 2.4.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants