KeePassium 1.34 released

KeePassium 1.34

KeePassium 1.34 brings a new shiny password/passphrase generator and fixes a few old issues.

Password generator

The new password generator has several modes:

  • Basic — when you need just a random alphanumeric sequence.
  • Passphrase — to generate passwords that are easy to remember but hard to guess.
    • Also known as Diceware or XKCD passwords.
  • Expert — when your password must follow specific rules.
Random generator in Passphrase mode.
Random generator in Passphrase mode.

You can also quickly insert a random text via a context menu in almost any text field. This brings up a list of pre-generated passwords to pick from.

Insert random texts via the context menu.

If you need more control, welcome to the Expert mode. There, each character set can be:

  • Allowed — these characters CAN be present in the password.
  • Required — at least one character MUST be present in the password.
  • Excluded — these characters MUST NOT be present in the password.

The standard character sets are predefined, but you can also allow, require or exclude your own Unicode characters.

Random generator in Expert mode. It can even <em>accidentally</em> generate easter eggs from popular culture.
Random generator in Expert mode. It can even accidentally generate easter eggs from popular culture.

KeePassium can also handle password requirements that forbid identical characters repeating consecutively (max-consecutive rule).

VoiceOver accessibility

Password generator was carefully polished for VoiceOver users. Even though the Expert mode is abundant with buttons, is remains fully accessible.

Two fixed issues worth mentioning

“On My iPhone does not respond”

What? iPhone’s local storage takes a minute to serve a file to KeePassium? How is this even possible?

For many months, this remained a mystery for both self-hosting KeePassium users and its developer.

Eventually, the issue was narrowed down to a common symptom: a network drive (SMB server) integrated to the Files app. When such a server becomes unreachable from the current network, some file operations suddenly became unresponsive at the system level. Even the Files app could not preview locally stored PDF files. KeePassium also could not read local files.

After some deep work, KeePassium now carefully avoids problematic system calls, so it won’t freeze while reading a local file. Of course, no app can get a file from a disconnected network drive — but KeePassium will remain responsive and show you the latest cached database.

Optimized memory consumption

Previously, KeePassium used an easy but resource-heavy approach to work with files — an unfortunate side effect of an early design decision. This was particularly important in the AutoFill module which has very tight memory limits set by the OS. In some cases, AutoFill could even run out of memory when trying to display the list of databases.

Starting with this release, KeePassium uses a more lean and efficient approach to work with files. This was a deep under-the-hood change that took several months to implement and refine. Thankfully, this is over and now KeePassium is lighter, faster and ready for new features!