QtPass is a multi-platform GUI for pass, the standard unix password manager.
C++ QMake Inno Setup Other
Permalink
Failed to load latest commit information.
artwork Doxygen May 31, 2016
icons Cleaned-up icons by @jsimplicio via #143 (comment) Feb 4, 2016
localization Updated changelog and localization Oct 19, 2016
.appveyor.yml Qt 5.7 mingw53_32 Oct 10, 2016
.coafile Added coala bears and did some minor cleanup Apr 20, 2016
.gitignore Added doc/qtpass.1 from @innir and some minor cleanup May 11, 2016
.linthub.yml aparently a single . is not valid yml Nov 23, 2015
.travis.yml Re-enabled node (appdmg) on travis OSX Oct 20, 2016
CHANGELOG.md CHANGELOG updated to 1.1.5 Oct 19, 2016
CONTRIBUTING.md Reverted moving docs to docs Jun 9, 2016
Doxyfile Doxygen too Oct 19, 2016
FAQ.md Update FAQ.md Sep 21, 2016
LICENSE license and cleanup Jul 31, 2014
README.md silently droppign Qt4 again Oct 19, 2016
appdmg.json added appdmg config file for shiny .dmg file May 18, 2015
configdialog.cpp Init length and selected, minor cleanup / style Oct 12, 2016
configdialog.h smaller Bugfixes for previous commit and comments added Oct 11, 2016
configdialog.ui Increase maximum password length to 255 Oct 17, 2016
key_management.bat Change release Makefile to include gpg4win. Jun 14, 2015
keygendialog.cpp Consistensy Oct 10, 2016
keygendialog.h Updated docs Jun 9, 2016
keygendialog.ui Added coala bears and did some minor cleanup Apr 20, 2016
main.cpp Consistensy Oct 10, 2016
mainwindow.cpp Updated changelog and localization Oct 19, 2016
mainwindow.h Missing documentation Oct 18, 2016
mainwindow.ui HTTPS everywhere May 13, 2016
passworddialog.cpp Disable character selection when using pwgen, fixes #207 Oct 12, 2016
passworddialog.h Disable character selection when using pwgen, fixes #207 Oct 12, 2016
passworddialog.ui Increase maximum password length to 255 as fixed in configdialog by @… Oct 17, 2016
qprogressindicator.cpp Missing documentation Oct 18, 2016
qprogressindicator.h Missing documentation Oct 18, 2016
qtpass.1 Apparently the man was completely wrong Oct 17, 2016
qtpass.appdata.xml Add appdata file for software centers May 17, 2016
qtpass.desktop Expand upon the current desktop file May 17, 2016
qtpass.iss pre 1.1.5 Oct 19, 2016
qtpass.plist Naming conventions Nov 23, 2015
qtpass.pro pre 1.1.5 Oct 19, 2016
qtpass.spec pre 1.1.5 Oct 19, 2016
release-linux linux release May 8, 2015
release-mac Updated CHANGELOG, release-mac (MD urls new doxygen) and (Dutch) tran… Oct 3, 2016
release-zip.mak Change release Makefile to include gpg4win. Jun 14, 2015
resources.qrc Spelling fail on 'dialouge' thanks svetlemodry for finding. Sep 5, 2016
singleapplication.cpp Lots of source documentation, some minor cleanup and added a previous… Jun 20, 2016
singleapplication.h Missing documentation Oct 18, 2016
storemodel.cpp Lots of source documentation, some minor cleanup and added a previous… Jun 20, 2016
storemodel.h Updated docs Jun 9, 2016
trayicon.cpp Consistensy Oct 10, 2016
trayicon.h Added Hide, Show, Minimise and Maximise to trayicon menu, fixes #139 Jul 19, 2016
usersdialog.cpp Lookup validity field to check if keys are valid Sep 27, 2016
usersdialog.h Missing documentation Oct 18, 2016
usersdialog.ui Removed clearButtonEnabled from .ui files Jan 31, 2016
util.cpp Lots of source documentation, some minor cleanup and added a previous… Jun 20, 2016
util.h Updated docs Jun 9, 2016
windows.rc icons and such Aug 4, 2014

README.md

QtPass

Build Status Build status Coverity scan

QtPass is a GUI for pass, the standard unix password manager.

Features

  • Using pass or git and gpg2 directly
  • Configurable shoulder surfing protection options
  • Cross platform: Linux, BSD, OS X and Windows
  • Per-folder user selection for multi recipient encryption
  • Multiple profiles

Logo based on Heart-padlock by AnonMoos.

Installation

From package

OpenSUSE & Fedora yum install qtpass dnf install qtpass

Debian, Ubuntu and derivates like Mint, Kali & Raspbian apt-get install qtpass

Arch Linux pacman -S qtpass

Gentoo emerge -atv qtpass

FreeBSD pkg install qtpass

macOS brew cask install qtpass

Windows choco install qtpass

From Source

Dependencies

  • QtPass requires Qt 5.
  • The Linguist package is required to compile the translations.
  • For use of the fallback icons the SVG library is required.

At runtime the only real dependency is gpg2 but to make the most of it, you'll need git and pass too.

Your GPG has to be set-up with a graphical pinentry when applicable, same goes for git authentication. On Mac OS X this currently seems to only work with MacGPG2 from gpgtools.

On most *nix systems all you need is:

qmake && make && make install

Security considerations

Using this program will not magically keep your passwords secure against compromised computers even if you use it in combination with a smartcard.

It does protect future and changed passwords though against anyone with access to your password store only but not your keys. Used with a smartcard it also protects against anyone just monitoring/copying all files/keystrokes on that machine and such an attacker would only gain access to the passwords you actually use. Once you plug in your smartcard and enter your PIN (or due to CVE-2015-3298 even without your PIN) all your passwords available to the machine can be decrypted by it, if there is malicious software targeted specifically against it installed (or at least one that knows how to use a smartcard).

To get better protection out of use with a smartcard even against a targeted attack I can think of at least two options:

  • The smartcard must require explicit confirmation for each decryption operation. Or if it just provides a counter for decrypted data you could at least notice an attack afterwards, though at quite some effort on your part.
  • Use a different smartcard for each (group of) key.
  • If using a YubiKey or U2F module or similar that requires a "button" press for other authentication methods you can use one OTP/U2F enabled WebDAV account per password (or groups of passwords) as a quite inconvenient workaround. Unfortunately I do not know of any WebDAV service with OTP support except ownCloud (so you would have to run your own server).

Known issues

  • Filtering (searching) breaks the tree/model sometimes
  • Starting without a correctly set password-store folder gives weird results in the tree view
  • On Mac OS X only the gpgtools MacGPG2 version works with passphrase or PIN

Planned features

  • Plugins based on field name, plugins follow same format as password files
  • Colour coding folders (possibly disabling folders you can't decrypt)
  • Optional table view of decrypted folder contents
  • Opening of (basic auth) urls in default browser? Possibly with helper plugin for filling out forms?
  • WebDAV (configuration) support
  • Some other form of remote storage that allows for accountability / auditing (web API to retrieve the .gpg files?)

Further reading

FAQ and CONTRIBUTING documentation.

Website Source code Issue queue