This page uses content from Wikipedia and is licensed under CC BY-SA.

KeePass

KeePass Password Safe
KeePass icon.svg
KeePass 2.x Main Window
KeePass 2.x Main Window
Developer(s) Dominik Reichl
Initial release November 16, 2003; 14 years ago (2003-11-16)
Stable release 2.40[1] (September 10, 2018; 30 days ago (2018-09-10)) [±]
Repository Edit this at Wikidata
Written in C# (2.x version),
C++ (1.x version)
Operating system Windows Vista and later (plus other platforms in unofficial derivatives)
Platform .NET Framework, mono
Type Password manager
License GNU GPLv2+
Website keepass.info

KeePass Password Safe is a free and open-source password manager primarily for Windows. It officially supports macOS and Linux operating systems through the use of Mono.[2] Additionally, there are several unofficial ports for Windows Phone, Android, iOS, and BlackBerry devices.[3][4][5][6][7] KeePass stores usernames, passwords, and other fields, including free-form notes and file attachments, in an encrypted file. This file can be protected by a master password, key file, and/or the current Windows account details. By default, the KeePass database is stored on a local file system (as opposed to cloud storage).[8]

KeePass supports a number of plugins.[9] It has a password generator and synchronization function, supports two-factor authentication, and has a Secure Desktop mode. It can use a two-channel auto-type obfuscation feature to offer additional protection against keyloggers.[10] KeePass can import from over 30 other most commonly used password managers.[10]

A 2017 Consumer Reports article described KeePass as one of the four most widely used password managers (alongside 1Password, Dashlane and LastPass), being "popular among tech enthusiasts" and offering the same level of security as non-free competitors but being more difficult to install.[11]

Overview

Password management

Passwords stored by this application can be further divided into manageable groups. Each group can have an identifying icon. Groups can be further divided into subgroups in a tree-like organization.

Further, KeePass tracks the creation time, modification time, last access time, and expiration time of each password stored. Files can be attached and stored with a password record, or text notes can be entered with the password details. Each password record can also have an associated icon.

Import and export

The password list is saved by default as a .kdbx file, however it can be exported to various formats like TXT, HTML, XML and CSV. The XML output can be used in other applications and re-imported into KeePass using a plugin. The CSV output is compatible with many other password safes like the commercial closed-source Password Keeper and the closed-source Password Agent. Also, the CSVs can be imported by spreadsheet applications like Microsoft Excel or OpenOffice/LibreOffice Calc. Exports from these programs can be imported to KeePass databases. KeePass can parse and import TXT outputs of CodeWalletPro, a commercial closed-source password safe. It can import TXT files created by Bruce Schneier's Password Safe v2. File format support can be expanded through the use of KeePass plugins.

Multi-user support

Keepass supports simultaneous access and simultaneous changes to a shared password file by multiple computers (often by using a shared network drive), however there is no provisioning of access per-group or per-entry.[12] As of May 2014, there are no plugins available to add provisioned multi-user support, but there exists a proprietary password server (Pleasant Password Server) that is compatible with the KeePass client and includes provisioning.[13]

Auto-type, global auto-type hot keys, and drag and drop

An example of KeePass' Auto-Type function, which is triggered by a global hotkey

KeePass can minimize itself and type the information of the currently selected entry into dialogs, webforms, etc. KeePass has a global auto-type hot key. When KeePass is running in the background (with opened database) and the user presses the hot key, it looks up the correct entry and executes its auto-type sequence.[14] All fields, title, username, password, URL and notes can be drag and dropped into other windows.

Windows clipboard handling allows double-clicking on any field of the password list to copy its value to the Windows clipboard. KeePass can clear the clipboard automatically some time after the user has copied one of their passwords into it. KeePass features a protection against clipboard monitors (other applications won't get notifications that the clipboard content has been changed).

It did have a paste-once functionality: allow only one paste operation, after pasting, the clipboard is cleared automatically by KeePass, but this was removed in version 2.x due to incompatibility and insufficient effectiveness.[15]

Browser support

The auto-type functionality works with all windows, and consequently with all browsers. The KeeForm extension allows users to open websites with Internet Explorer and Mozilla Firefox and fill in user details automatically. For Internet Explorer, there's also a browser integration toolbar available.[16]

For Firefox there's another extension called KeeFox which connects to KeePass when a user needs to access a password from it.[17]

Built-in password generator

User Interface of the password generator

KeePass features a built-in password generator that generates random passwords. Random seeding can be done through user input (mouse movement and random keyboard input).[14]

Plugins

KeePass has a plugin architecture. There are various plugins available from the KeePass website (such as import/export from/to various other formats, database backup, integration and automation, etc.). Note that plugins may compromise the security of KeePass, because they are written by independent authors and have full access to the KeePass database.

Cryptography

Runtime security

"Add Entry" dialog in KeePass

According to the utility's author, KeePass was one of the first password management utilities to use security-enhanced password edit controls, in this case one called CSecureEditEx.[18] The author makes several claims regarding the security of the control and its resistance to password revealing utilities; however, the author does not cite or make any references to any third-party testing of the control to corroborate the claims of its security.[19]

Passwords are protected in memory while KeePass is running. On Windows Vista and later versions, passwords are encrypted in process memory using Windows Data Protection API, which allows storing the key for memory protection in a secure, non-swappable memory area. On previous Windows systems, KeePass falls back to using the ARC4 cipher with a temporary, random session key.[20]

Offline security

Access to the database is restricted by a master password or a key file. Both methods may be combined to create a "composite master key". If both methods are used, then both must be present to access the password database. KeePass version 2.x introduces a third option—dependency upon the current Windows user.[21] KeePass encrypts the database with the AES or Twofish symmetric ciphers. The kdbx database is encrypted with AES in CBC/PKCS7 mode without proper authentication, as there are only SHA2 hashes guarding the integrity of ciphertext, while these might catch a typical file corruption they will not prevent malicious tampering.[22] AES is the default option, and Twofish is available in 1.x, but is not available in version 2.x. However, a separate plugin provides Twofish as an encryption algorithm. Beginning with version 2.35 ChaCha20 cipher is also available.[23]

Unofficial KeePass derivatives

KeePassX logo
  • KeePassX, a multi-platform open source KeePass clone for Linux and OS X, built using version 4.8 of the Qt libraries.[24]
  • KeePassXC (KeePassX Reboot) is a cross-platform community-driven fork of KeePassX.[25]
  • kpcli, a command line interface to KeePass database files, written in Perl and with a familiar Unix shell-style user interface.[26]
  • KeePassC, a curses-based password manager compatible to KeePass v.1.x and KeePassX, written in Python 3.[27]
  • 7Pass or WinPass for Windows Phones, a port of KeePass for Windows Phone devices.[28]
  • KeePass for Blackberry, a Blackberry port of KeePass for RIM devices
  • KeePassMobile, KeePass port for mobile phones (Java ME)
  • KeePass for J2ME, a Java ME port of KeePass for mobile phones
  • iKeePass, a port of KeePass for iOS
  • MiniKeePass for iOS
  • MyKeePass for iPhone
  • KeePassDroid, a port of KeePass for Android[29]
  • Keepass2Android, a port of KeePass 2.x for Android using Mono for Android[30]
  • KeepShare, an enhanced, read-only KeePass client for Android
  • KeePass for SmartDevices, a port of KeePass for Windows Mobile and PocketPC devices
  • KyPass, a port of KeePass for iOS and Mac OS X.[31][32]
  • KeePass for OS X, using Mono
  • PassDrop for iOS. Includes full read/write Dropbox support.[33]
  • KeePassB – native BlackBerry 10 app with read/write support[34]
  • KeePass for BlackBerry. Native port for BlackBerry 10 devices.[35]
  • MacPass, a free and open source native client for Mac OS X[36]
  • ownKeepass for Sailfish OS[37]
  • KeeFox for Mozilla Firefox[38]
  • CKP for Chrome OS and Google Chrome[39]
  • Passafari, an extension for Safari[40]
  • KeeWeb, an open-source port using HTML/JS/CSS, runnable in a web browser as static file or in desktop apps[41]

See also

References

  1. ^ KeePass 2.40 available! on KeePass website
  2. ^ "KeePass Setup". KeePass.
  3. ^ "Download page". KeePass.
  4. ^ "KeePass reader for Windows Phone".
  5. ^ "KeePassDroid".
  6. ^ "KeePass for Blackberry".
  7. ^ "iOS application".
  8. ^ Zukerman, Erez. "Tools for the paranoid: 5 free security tools to protect your data". PCWorld. Retrieved 14 July 2013.
  9. ^ "KeePass Plugins".
  10. ^ a b Rubenking, Neil. "KeePass Review & Ratings". PC Mag. Retrieved 11 Jun 2014.
  11. ^ Chaikivsky, Andrew (2017-02-17). "Everything You Need to Know About Password Managers". Consumer Reports. Retrieved 2018-06-23.
  12. ^ Dominik Reichl. "KeePass Help Center". Retrieved 2012-12-28.
  13. ^ "Pleasant Password Server". Retrieved 2014-05-29.
  14. ^ a b Markton, Ben. "KeePass Password Safe Professional". CNET.com. Retrieved 11 Jun 2014.
  15. ^ Dominik Reichl. "What happened to the paste-once functionality in 2.x? – KeePass Forums". Retrieved 2012-10-14.
  16. ^ KeeForm, undated, retrieved 24 June 2014
  17. ^ "Home". KeeFox. Retrieved 2014-06-24.
  18. ^ Dominik Reichl. "Secure Edit Controls – KeePass". Retrieved 2009-11-14.
  19. ^ Dominik Reichl (2005-04-17). "CSecureEditEx – A More Secure Edit Control". The Code Project. Archived from the original on 2006-02-17.
  20. ^ Dominik Reichl. "Security – KeePass". Retrieved 2007-12-13.
  21. ^ Dominik Reichl. "Composite Master Key – KeePass". Retrieved 2009-11-14.
  22. ^ "KeePass – questionable security | Hacker News". news.ycombinator.com. Retrieved 2018-05-29.
  23. ^ Reichl, Dominik. "News: KeePass 2.35 available!". keepass.info. Retrieved 10 January 2017.
  24. ^ "KeePassX 2.0 has arrived". Geyer, Felix. Retrieved 2015-12-07.
  25. ^ "KeePassXC Password Manager". keepassxc.org. Retrieved 26 January 2017.
  26. ^ "kpcli – A command line interface for KeePass". Kpcli.sourceforge.net. Retrieved 2014-06-24.
  27. ^ "raymontag/keepassc · GitHub". Github.com. Retrieved 2014-06-24.
  28. ^ "7Pass Official Blog". wordpress.com. Retrieved 2015-02-14.
  29. ^ "KeePassDroid – Android-apps op Google Play". Play.google.com. Retrieved 2016-02-26.
  30. ^ "Keepass2Android Password Safe – Android-apps op Google Play". Play.google.com. Retrieved 2014-06-24.
  31. ^ "KyPass on the App Store on iTunes". Itunes.apple.com. 2016-01-15. Retrieved 2016-01-15.
  32. ^ "KyPass Companion on the Mac App Store on iTunes". Itunes.apple.com. 2016-01-15. Retrieved 2016-01-15.
  33. ^ "PassDrop on the App Store on iTunes". itunes.apple.com. 2014-04-16. Retrieved 2016-02-26.
  34. ^ "KeePassB Password Manager – BlackBerry World". appworld.blackberry.com. Retrieved 2015-04-13.
  35. ^ "KeePass for BlackBerry – BlackBerry World". Appworld.blackberry.com. Retrieved 2014-06-24.
  36. ^ "MacPass by mstarke". Mstarke.github.io. Retrieved 2014-06-24.
  37. ^ "jobe-m/ownkeepass 路 GitHub". Github.com. Retrieved 2015-09-25.
  38. ^ "KeeFox by luckyrat". GitHub. Retrieved 3 February 2015.
  39. ^ "CKP by perfectapi". GitHub. Retrieved 19 June 2015.
  40. ^ "mmichaa/passafari.safariextension". GitHub. Retrieved 2016-01-13.
  41. ^ "Free Password Manager Compatible with KeePass: KeeWeb". keeweb.info. Retrieved 15 August 2017.

External links