Fact-checked by Grok 2 weeks ago

KeePassX

KeePassX is a free and open-source cross-platform designed for secure personal data management, allowing users to store usernames, passwords, URLs, attachments, and comments in an encrypted database protected by or encryption with a 256-bit key. It features a lightweight interface, customizable entry groups and icons, a built-in secure password generator, and a search function for quick access to stored data, while maintaining compatibility with the KeePass Password Safe database format. Originally developed as KeePass/L, a Linux port of the Windows-based KeePass Password Safe, it was renamed KeePassX on March 22, 2006, to reflect its expanded cross-platform support for systems, macOS, and Windows. Released under the , KeePassX emphasizes high security standards for users with demanding needs in password handling. However, active development of KeePassX ceased in December 2021, with the project no longer maintained, and users are recommended to migrate to , its community-driven successor based on KeePassX codebase. The final stable release, version 2.0.3, was issued in October 2016, incorporating bug fixes and improved database handling.

History

Origins and initial development

KeePassX originated as KeePass/L, a port of the Windows-based KeePass Password Safe designed specifically for users, to address the lack of a native for non-Windows platforms. The project aimed to deliver secure password storage without dependence on frameworks like Mono, instead leveraging the library for a lightweight, cross-platform interface compatible with systems. On March 22, 2006, KeePass/L was renamed to KeePassX to reflect its evolution into a fully cross-platform application supporting and macOS alongside potential Windows compatibility. Initial development occurred in the mid-2000s through the efforts of a small team of open-source contributors seeking to maintain fidelity to the original KeePass 1.x database format, which used .kdb files for encrypted storage. Felix Geyer emerged as a key early developer, contributing significantly to the codebase and serving as a primary maintainer, as evidenced by his coordination of project announcements and updates starting around . The core motivation was to enable reliable password management on diverse operating systems while preserving essential security features like database encryption and entry organization. The first public releases in the 0.x series prioritized basic functionality, including the creation and management of encrypted databases, group-based entry categorization, and simple search capabilities within the password vault. These early versions established KeePassX as a viable to the Windows-centric KeePass, focusing on usability for users transitioning from the foundational software.

Key releases and milestones

The development of KeePassX 2.0 began with its first alpha release on May 7, 2012, which marked a significant rewrite of the application to support the KeePass 2.x database format (KDBX 3.1). This transition enabled compatibility with advanced features from the upstream KeePass project, such as entry attachments and password history tracking, while maintaining cross-platform functionality. Subsequent alpha releases continued to build on this foundation between 2012 and 2014. Notably, Alpha 4, released on March 30, 2013, introduced a and merged the description tab into the entry tab for improved usability. Later alphas, such as Alpha 5 in December 2013 and Alpha 6 in April 2014, focused on enhancements like improved translations, auto-type support on /X11, and database locking mechanisms. Beta releases followed from mid-2015 to early 2016, refining stability and adding polish ahead of the stable version. The first beta arrived on July 19, 2015, with improvements to the and file handling. Beta 2, released on September 9, 2015, addressed crashes related to locking and search functions, along with fixes for file extensions and platform-specific issues on macOS. The stable release of KeePassX 2.0 came on December 9, 2015, after over three years of development, incorporating multi-language support, resizable entry columns in the database view, and basic options for enhanced . This version solidified the shift from KeePass 1.x compatibility to full 2.x support, allowing users to leverage features like custom key-value pairs and multiple attachments without compatibility limitations. Post-stable minor updates addressed bugs and . Version 2.0.1, released on January 31, 2016, introduced a database repair function for XML parsing errors and other fixes. Version 2.0.2 followed immediately on February 2, 2016, resolving regressions from the prior update, including issues with special characters. The final official release, 2.0.3, arrived on October 8, 2016, with improvements to error reporting, custom icon handling, and overall enhancements like symlink support and UUID repairs. These updates represented the culmination of KeePassX's evolution toward a robust, feature-complete aligned with modern KeePass standards.

Features

Core functionality

KeePassX enables users to create and manage encrypted database files in the .kdbx , which serve as secure containers for sensitive information. These databases are protected by a , an optional , or a combination of both, allowing flexible authentication methods while maintaining a single file for all stored data. Users can open, create, or merge databases through the application's interface, supporting seamless organization of personal credential vaults. Entries within the database are organized into a hierarchical structure of customizable groups and subgroups, facilitating categorization such as by , application, or personal use. Each entry includes standard fields for titles, usernames, passwords, URLs, , and attachments, with additional support for expiration dates to prompt periodic credential reviews. Icons and custom attributes can be assigned to entries for enhanced visual identification and metadata management. The application features a built-in password generator that produces strong, random passwords based on user-specified parameters, including length, inclusion of uppercase/lowercase letters, numbers, and symbols. Options for levels and pronounceable word-based passwords ensure versatility for different needs and memorability preferences. Generated passwords can be directly inserted into new entries or copied for use elsewhere. KeePassX provides auto-type functionality to simulate keystrokes, automatically filling login forms in target applications or browsers with entry data like usernames and s, thereby avoiding the need to copy sensitive information to the and reducing exposure risks. This feature supports customizable sequences and global hotkeys for quick activation without manual intervention. Search capabilities allow for rapid retrieval of entries by querying titles, usernames, URLs, or notes, with an integrated tool that scans individual groups or the entire database. Advanced searches support regular expressions for more precise filtering, enabling complex patterns to locate specific data efficiently. For data migration, KeePassX supports importing from formats such as , XML, and KeePass 1.x (.kdb) files, as well as exporting to , XML, and the native .kdbx format for compatibility with other KeePass variants. This ensures straightforward transfer of credentials from legacy managers or backups.

Security mechanisms

KeePassX secures its password database using robust cryptographic standards, primarily the (AES-256, also known as Rijndael) or the , both employing 256-bit keys to encrypt the entire contents, including usernames, passwords, URLs, notes, and attachments. This ensures that even remains protected, preventing unauthorized access to any portion of the data without the master key. The choice between AES and Twofish allows users to select based on performance or perceived security preferences, with the encryption applied in a mode that authenticates the via HMAC-SHA-256. The master key derivation process begins with SHA-256 hashing of the user-provided components, such as the master password and any key file, to create a base key. This base key then undergoes a transformation using the (AES-KDF) in an iterated scheme using , where the output of each round serves as input for the next. By default, this occurs thousands of times (configurable up to hundreds of thousands), significantly increasing the computational cost of brute-force attacks and protecting against or guessing attempts on weaker passphrases. Authentication in KeePassX relies on a composite master key system, supporting a primary master password, optional key files (which contain randomly generated hashed into the master key and can be stored separately for two-factor-like ). Key files enhance by distributing the authentication factors, making it harder for an attacker to compromise the database with only one component. This multi-method approach allows flexible yet strong tailored to user needs. To support auditing and recovery, KeePassX implements an entry history mechanism that automatically saves previous versions of each password entry upon modification, storing up to a configurable number of versions (e.g., 10) with size limits to manage database growth. These historical snapshots enable users to view or restore prior states, such as reverted passwords, while all history data remains encrypted within the main database, ensuring no plaintext exposure even during rollback operations. KeePassX operates under a zero-knowledge model, where all cryptographic operations—encryption, decryption, and entry management—occur entirely on the local device without any data transmission to remote servers or third parties. This design eliminates risks associated with cloud storage vulnerabilities, server breaches, or man-in-the-middle attacks, as the application never requires internet connectivity for core functionality. For protection against malware such as keyloggers and clipboard-monitoring tools, KeePassX includes an auto-type feature that directly injects credentials into target applications via simulated keystrokes or window messages, avoiding the use of the system clipboard that could be intercepted or cleared by malicious software. This method reduces the window of exposure during password entry, though users are advised to combine it with secure desktop options where available for enhanced safety.

Technical aspects

Database format and compatibility

KeePassX primarily utilizes the KDBX (KeePass Database eXtended) format as its native database structure, which is an evolution of the original KeePass design. The 2.0 series of KeePassX supports KDBX versions 2.x and 3.x for full read and write operations, while providing legacy import capabilities for KeePass 1.x databases in the older .kdb format. This format ensures cross-application portability within the KeePass ecosystem, allowing users to maintain consistent data storage across different implementations. The KDBX structure consists of an XML core that organizes entries into groups, storing details such as usernames, passwords, URLs, notes, and attachments, alongside for embedded files like images or documents. The XML is compressed with to reduce file size and then fully encrypted to protect the contents. A dedicated header precedes the encrypted body, containing critical including a 32-byte master for key diversification, iteration counts for the (typically AES-KDF in supported versions), and initialization values for the inner (Salsa20 stream) that further obfuscates the data blocks. This design balances security, efficiency, and extensibility, with the file divided into HMAC-protected blocks of up to each for during access. The encryption employs AES-256 in mode by default, ensuring robust protection against unauthorized access. In terms of , KeePassX seamlessly reads and writes .kdbx files from KeePass 2.x up to version 3.x, preserving core elements like entry fields and group hierarchies. It also imports .kdb files from KeePass 1.x, converting them to the KDBX format upon saving, though some legacy features may not translate perfectly. Partial compatibility exists with enhancements in KeePass 2.5x releases, such as support for custom icons per entry or group, which KeePassX handles during import but may not fully edit or export without . Interoperability with the original KeePass application on Windows is complete for supported KDBX versions, enabling users to exchange databases without format conversion. KeePassX further extends accessibility by importing data from other password managers through standard or XML files, facilitating migration from tools like or , though this process requires manual mapping of fields and does not support automated syncing or cloud integration natively. A key limitation of KeePassX is its lack of support for KDBX 4.x, introduced in KeePass 2.34 in 2016, which includes advanced features like the key derivation function for enhanced resistance to brute-force attacks and ChaCha20 encryption as an alternative to . Databases saved in KDBX 4.x cannot be opened or modified in KeePassX, requiring users to maintain older format versions or migrate to successor applications for newer security options.

Platform support and dependencies

KeePassX is a cross-platform constructed using the framework, primarily version 4.x, which facilitates a native appearance and functionality across multiple operating systems. It supports as its primary target platform, along with secondary ports for macOS (version 10.7 and later) and and later, with security updates required). This design leverages Qt's cross-platform capabilities to ensure consistent behavior, such as rendering and input handling, without platform-specific rewrites. On Linux, KeePassX integrates seamlessly with distributions like , , , , and through native package repositories, allowing installation via commands such as apt-get install keepassx on Debian-based systems or yum install keepassx on Red Hat-based ones. It relies on the X11 windowing system for core operations, including extensions like XRandR, , and XTest for features such as support and automated typing. The macOS and Windows builds, while not the primary focus, incorporate platform-tailored enhancements like drag-and-drop for entries and system tray minimization for quick access. Key runtime dependencies include Qt libraries (version 4.3 or higher, encompassing , , and modules) for the user interface, zlib for database , and libXtst for testing extensions, with (version 1.6 or higher) as an optional component for . A portable execution mode is available, enabling the application to run without system-wide by bundling necessary files. As an open-source project licensed under the GNU General Public License version 2, KeePassX can be compiled from source using CMake (version 2.8.12 or higher) for configuration and GNU Make for building, requiring tools like g++ (version 4.7 or higher) or Clang (version 3.0 or higher). Pre-built binaries for Linux, macOS, and Windows were distributed via the official website until the final release in 2016.

Development and discontinuation

Project governance

KeePassX operated under an open-source model, hosted initially on and later mirrored on , with its source code released under the GNU General Public License version 2 (GPLv2). The core development team consisted of a small group of volunteers without formal company backing, primarily led by maintainer Felix Geyer, who coordinated releases and commits, alongside other contributors handling specific enhancements and fixes. Development practices emphasized community involvement, with issue tracking and bug reporting managed through SourceForge's Trac system and the project's development site, where feedback drove bug fixes, feature requests, and support for over 40 languages via Transifex for translations. Version control began with Subversion (SVN) on SourceForge for early releases and transitioned to Git on GitHub to facilitate pull requests and collaborative contributions, prioritizing database stability and compatibility over rapid feature iterations. Due to its volunteer-driven nature, the project faced challenges including a slow development pace, resulting in a significant of pull requests—such as 69 open ones by —that accumulated without timely merges, contributing to delayed releases like the long-awaited 2.0 series.

End of active development

The last official release of KeePassX was 2.0.3, a bugfix update that improved error reporting for database operations and fixed crashes related to entry attachments, issued on , . No further official updates or releases have occurred since then, marking the effective end of active development approximately five years prior to the formal announcement. On December 9, 2021, project maintainer Felix Geyer announced via the official KeePassX news page that the software is no longer actively maintained. The brief statement directed users to consider switching to , a community-driven , without elaborating on specific reasons beyond the cessation of . This formal discontinuation followed years of minimal activity, contributing to broader challenges such as slow progress on enhancements and bug fixes. Existing installations of KeePassX continue to function for basic password management tasks, as the core encryption and database handling remain intact. However, without ongoing updates, versions like 2.0.3 lack patches for potential new vulnerabilities in dependencies or the underlying codebase, increasing risks from evolving threats such as memory-based attacks observed in related KeePass implementations. Security researchers and distribution maintainers have emphasized that unmaintained software like KeePassX exposes users to unaddressed flaws, recommending immediate migration to supported alternatives to ensure protection against contemporary exploits. The project's source code has been preserved in its primary repository, which was officially archived by the owner on December 9, 2021, rendering it read-only and confirming no new contributions thereafter. The last recorded commit, addressing a build compatibility issue with 5.11, dates to late 2018, underscoring the prolonged inactivity even before archival. The KeePassX website now features prominent notes and redirects encouraging users to transition to for continued compatibility with the .kdbx database format and modern security features.

Legacy and successors

Community reception

KeePassX garnered positive reception from users and the open-source community for its straightforward approach to password management, emphasizing and a completely , ad-free model that appealed to privacy-conscious individuals. Testimonials frequently praised its design and reliable performance across platforms, particularly in environments where it offered native integration without the bloat of commercial alternatives. Users appreciated the zero-cost accessibility, which made it an attractive option for managing sensitive data securely without recurring fees or . The software enjoyed significant adoption in Linux communities, evidenced by its inclusion in major distributions like , where it remained available via official repositories until the project's discontinuation. On , KeePassX achieved a strong user rating of 4.8 out of 5 based on 51 reviews, reflecting appreciation for its cross-platform compatibility and ease of use in handling password databases. While exact download figures are not publicly aggregated, its presence in package managers and community forums indicated widespread use among Linux enthusiasts seeking a robust, open-source solution. Criticisms centered on its dated , which appeared outdated compared to modern password managers and posed challenges for less technical users navigating its minimalistic layout. The absence of native synchronization and browser integration features often required cumbersome manual methods, such as via external services, limiting its convenience for multi-device workflows. Additionally, the project's slow pace and eventual halt in 2021 left users frustrated with unaddressed bugs and missed opportunities for enhancements like improved autofill support. Early 2010s tech articles positioned KeePassX as a dependable KeePass for non-Windows users, lauding its core reliability while noting its appeal primarily to advanced users tolerant of its spartan features. Reviews highlighted its effectiveness as a secure, local storage tool but cautioned that its minimalism might deter those expecting polished integrations or frequent updates. Regarding , KeePassX reported no major breaches throughout its lifespan, with its open-source nature enabling community scrutiny of the AES-256 implementation. Two vulnerabilities were disclosed in the older 0.4.3 release—DLL hijacking (CVE-2015-8359) and cleartext exposure on XML export cancellation (CVE-2015-8378)—but these were resolved in later versions, including the 2.0 series, maintaining its reputation for encryption integrity among users.

Forks including KeePassXC

Due to a sharp decline in development activity on KeePassX following its last major update in early 2016, a group of community contributors initiated a known as in 2016 to revive and extend the project. The fork aimed to address stalled pull requests, incorporate long-requested features, and ensure ongoing maintenance for cross-platform compatibility. KeePassXC modernizes the user interface using the Qt5 framework for improved aesthetics and responsiveness across Linux, Windows, and macOS. It introduces key enhancements such as native support for Time-based One-Time Passwords (TOTP) for two-factor authentication, seamless browser integration for autofill capabilities, and full compatibility with the KDBX 4.x database format, enabling advanced encryption options like key derivation. As of 2025, KeePassXC remains actively developed under the GPLv3 license, with regular releases—such as version 2.7.10 in March 2025—focusing on bug fixes, security improvements, and feature refinements. While minor forks of KeePassX, such as short-lived community efforts or integrations into larger open-source projects, have appeared sporadically, has emerged as the dominant and most actively maintained successor. These forks generally preserve with the .kdbx database format, facilitating straightforward of existing KeePassX databases without or reconfiguration. KeePassXC's sustained development and feature expansions have led to its widespread adoption, surpassing the original KeePassX in user base and , while providing continuous updates to address evolving threats.

References

  1. [1]
    KeePassX
    KeePassX is an application for people with extremly high demands on secure personal data management. It has a light interface, is cross platform.
  2. [2]
    KeePassX
    ### Summary of Development Stopping Announcement
  3. [3]
    KeePassX
    ### System Requirements, Platform Support, and Dependencies for KeePassX
  4. [4]
    None
    Nothing is retrieved...<|control11|><|separator|>
  5. [5]
    KeePassX
    ### Changelog Summary for Early KeePassX Versions
  6. [6]
  7. [7]
    KeePassX
    ### Changelog Summary for KeePassX Versions
  8. [8]
  9. [9]
  10. [10]
  11. [11]
  12. [12]
  13. [13]
    KeePassX
    ### Core Features of KeePassX
  14. [14]
    KeePassX is a cross platform port of the windows ... - GitHub
    Dec 9, 2021 · KeePassX offers a little utility for secure password generation. The password generator is very customizable, fast and easy to use. Especially ...
  15. [15]
  16. [16]
    KeePassX
    ### Summary of KeePassX Database and Compatibility
  17. [17]
    KeePassX: Keeping Your Passwords Safe - Linux Journal
    Jul 16, 2012 · Upon initial launch, KeePassX prompts the user to create a new database. As shown in Figure 1, the Set Master Key box will be displayed ...<|control11|><|separator|>
  18. [18]
    Security - KeePass
    The authenticity and integrity of the data is ensured using a HMAC-SHA-256 hash of the ciphertext (Encrypt-then-MAC scheme). See also: KDBX file format ...Missing: mechanisms | Show results with:mechanisms
  19. [19]
    Is KeePass's method for key derivation secure?
    Sep 30, 2015 · KeePass first hashes the user's password using SHA-256, encrypts the result N times using the Advanced Encryption Standard (AES) algorithm.Is applying AES multiple times safer?Is 1Password more secure than an AES encrypted text file?More results from security.stackexchange.comMissing: mechanisms | Show results with:mechanisms
  20. [20]
    Master Key - KeePass
    This master key can consist of multiple components: a master password, a key file and/or a key that is protected using the current Windows user account. For ...Missing: KeePassX | Show results with:KeePassX
  21. [21]
    Entry Dialog - KeePass Password Safe
    You can search for expired entries using the menu 'Find' → 'Expired'. Expired entries can also be displayed automatically when opening the database (menu 'Tools ...General · Advanced · PropertiesMissing: KeePassX | Show results with:KeePassX
  22. [22]
    KeePass features
    KeePass features strong security, multiple user keys, portability, auto-type, a random password generator, and is open source.Missing: core | Show results with:core
  23. [23]
  24. [24]
    KDBX File Format Specification - KeePass
    KDBX is the KeePass 2.x database file format, which is used for storing user data (user names, passwords, URLs, etc.). It features encryption, data ...General · Header · Computation of Keys · HMAC-Protected Block Stream
  25. [25]
    KeePassX is a cross platform port of the windows ... - GitHub
    Dec 9, 2021 · KeePassX is an application for people with extremely high demands on secure personal data management. It has a light interface, is cross platform
  26. [26]
    Compatibility - KeePass Password Safe
    KDBX files (created by KeePass 2.x) and KDB files (created by KeePass 1.x) are not compatible, because KeePass 2.x supports more features than KeePass 1.x.
  27. [27]
    KDBX 4 - KeePass Password Safe
    All versions of Argon2d (1.0 to 1.3) are supported; KeePass uses the latest version 1.3 by default. Extensible Key Derivation. Plugins can provide other key ...Introduction · Argon2 · Improved Data Authentication · ChaCha20Missing: KeePassX | Show results with:KeePassX
  28. [28]
    KeePassX
    ### Summary of KeePassX Development Status, Discontinuation, and Alternatives
  29. [29]
    KeePassX is a cross platform port of the windows application ...
    KeePassX is a cross-platform application for secure data management, saving usernames, passwords, URLs, and more in an encrypted database.
  30. [30]
  31. [31]
    KeePassX download | SourceForge.net
    Rating 4.8 (51) KeePass Password Safe is a free, open source, lightweight, and easy-to-use password manager for Windows, Linux and Mac OS X, with ports for Android, iPhone/iPad ...Missing: page | Show results with:page
  32. [32]
    News - KeePassX
    Dec 9, 2021 · We're proud to announce the first stable release of the KeePassX 2 series after several years of development.
  33. [33]
  34. [34]
    Discussion: why not collaborate with KeePassX? · Issue #43 - GitHub
    Oct 15, 2016 · If the original maintainer of KeePassX in the future will be more active and will accept our merge and changes, maybe we should consider to re- ...
  35. [35]
    Index of /releases/2.0.3 - KeePassX
    Index of /releases/2.0.3 ; [ ], KeePassX-2.0.3.dmg, 2016-10-08 16:09 ; [ ], KeePassX-2.0.3.dmg.sig, 2016-10-08 16:09 ; [ ], KeePassX-2.0.3.zip, 2016-10-08 16:10 ...Missing: stable August
  36. [36]
    Documentation and FAQ - KeePassXC
    KeePassXC is a password manager that stores passwords in an encrypted database, for users who want to improve password security without using online services.
  37. [37]
    Commits · keepassx/keepassx
    - **Earliest Commit Information**: Insufficient relevant content provided to determine the earliest commit date, author, or initial development details. The page snippet does not include commit history specifics.
  38. [38]
    KeePassX – Testimonials
    ### Summary of Testimonials from https://www.keepassx.org/testimonials/
  39. [39]
    Debian -- Details of package keepassx in bullseye
    Cross Platform Password Manager. KeePassX is a free/open-source password manager or safe which helps you to manage your passwords in a secure way.
  40. [40]
    KeePass vs. KeePassX 2025: Which One Is Better?
    KeePass's interface is outdated and complex, especially for non-technical users, but I found the setup process to be pretty straightforward. Still, I discovered ...
  41. [41]
    KeePass Review 2025 | How Good is it? - Comparitech
    Rating 3.5 (1) Apr 13, 2022 · As mentioned earlier, KeePass' interface looks quite outdated, and for this reason, it does not always feel intuitive or simple to use.<|control11|><|separator|>
  42. [42]
    KeePass Password Safe review - gHacks Tech News
    Rating 3.5 (26) May 28, 2018 · KeePass Password Safe is a free open source password manager for Windows ; ports of the password manager are available for Linux, Mac OS X, Android, iOS, and ...
  43. [43]
    What's the difference between KeePass / KeePassX / KeePassXC?
    Feb 17, 2015 · KeePassX was a "Contributed/Unofficial KeePass Port" of KeePass that was started in 2005 (if the copyright notice on the bottom of their ...Missing: origins initial
  44. [44]
    KeepassXC – A cross-platform community fork of KeepassX
    Jan 24, 2017 · KeePassXC is a community fork of KeePassX which aims to incorporate stalled pull requests, features, and bug fixes that have never made it into ...
  45. [45]
  46. [46]
    KeePassXC Password Manager
    KeePassXC is a secure, open-source password manager that stores and manages sensitive information, auto-filling passwords, and is cross-platform.Download · Documentation and FAQ · Screenshots · KeePassXC 2.7.10 released
  47. [47]
    Releases · keepassxreboot/keepassxc - GitHub
    Note: This is the most recent version of KeePassXC that supports macOS 10.x. Changes. Significant improvement to visual when drag/drop entries [#9698] ...Missing: KeePassX | Show results with:KeePassX
  48. [48]
    lgg/awesome-keepass: Curated list of KeePass-related projects
    A curated list of KeePass-related projects. Thanks everyone who has starred the project, it means a lot! KeePass is a free open source password manager.
  49. [49]
    User Guide - KeePassXC
    We recommend using a storage service that keeps automatic backups (version history) of your database file in the event of corruption or accidental deletion.<|control11|><|separator|>
  50. [50]