Kunzisoft / Kunzisoft/KeePassDX

"Could not load the database" with high memory usage

Open
#2,671 12 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

bug enhancement
Dominant language
Kotlin
Stars
7.3k
Forks
403
Avg merge
2d 10h
Merged PRs (30d)
1

Description

Checks
  • I have read the Wiki, searched the open issues, and still think this is a new bug.
Explain the problem clearly and succinctly:

After installing the KeepassDX update from the 29th of August 2026 through Google Playstore, KeepassDX is giving the error message: "Could not load the database" when attempting to open any of my 3 different .kdbx vaults.

I have never encountered this problem before and was still able to open my main .kdbx vault on the 29th of August (before downloading the update).

To reproduce:

  • Launch KeepassDX after installing 29th of August update
  • Open previously existing .kdbx file (created roughly 2 years ago)
  • Carefully enter password (no Keyfile, no Hardware key)
  • Error pop-up "Could not load the database" (it usually takes around 4 seconds to attempt to unlock the vaults on my device due to their encryption settings, but the error message is output instantly after hitting the "Unlock" button)
Describe what you expected to happen:
  • Launch KeepassDX after installing 29th of August update
  • Open previously existing .kdbx file (created roughly 2 years ago)
  • Carefully enter password (no Keyfile, no Hardware key)
  • .kdbx vault should unlock and open
KeePassDX version:

4.5.1

Build:

Free

Database version:

No response

File provider (content:// URI)

No response

Android version:

Android 17 (GrapheneOS 2026081301)

Android device:

Google Pixel 10 Pro XL

Additional context:

I'm using the newest build (security preview) of GrapheneOS (2026081301). Using this GrapheneOS build, I was successfully able to open my main .kdbx file on multiple occasions using KeepassDX prior to the update from August 29th.

The encryption settings of the vault were modified and set to Argon2id, 2 iterations, either 6144 MIB or 8192, I don't remember, 4 parallelism. This results in the database taking roughly 4 seconds to attempt an unlock on my Pixel 10 Pro XL.

The database was created several years ago and was opened successfully hundreds of times using various versions of both KeepassDX and GrapheneOS on both a Pixel 7 Pro and a Pixel 10 Pro XL.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the unlock flow in KeePassDX 4.5.1 with an existing .kdbx vault using Argon2id and high memory settings on the reported Android environment. Compare behavior before and after the August 29 update and trace why the unlock attempt fails immediately. Done means previously working vaults open successfully without the "Could not load the database" error.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, kotlin
Domain
mobile-dev, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.