Skip to main content

gui to temporarily save passwords to clipboard (paste-buffer)

Project description

What is pwclip?

pwclip has two operating modes. One is for operating on yubikeys to generate uniq responses which might be used as passwords while they can be generated by that exact yubikey only. The first yubikey found on the system and the first slot, configured with (HMAC-SHA1) challenge-response, will be used. For that function Windows is supported (see “Install” section). For now python2.7 is still also supported but might be discontinued. Therefor it should be sufficient to just apply the installation for python2 likewise.

To catch user input python’s Tk (tkinter) library is used to create a simple password input window. The appropriate response is saved for only 3 seconds by default to not have it exposed as soon as it’s used. The utility also supports the input of any integer which is then used as timer. Otherwise the environment is searched for PWCLIPTIME and uses the value of that environment variable as timer. The timer is used as time in which the received password stays in the paste buffer bevore its replaced by the previously copied value.

The second operating mode does currently only work (and so far tested) on Linux due to gpg4win limitation. It can be used to create a ~/.pwdcrypt file which is gpg encrypted text using either the value of GPGKEYS as gpg recipients if found in environment otherwise every key within the users keyring will be used. For password-list managing there is a simple “import” function. On startup it lookes for a ~/.pwd.yaml file and if found merged with the already known passwords from the ~/.passcrypt there is one. All entrys in ~/.passcrypt will be overridden by the entrys from the ~/.pwd.yaml file. As soon as it has been merged the ~/.pwd.yaml file will be deleted. The accepted yaml format: ——————– ---

realsystemuser:
- somename:

- Som3(rypt!cPass - Some optional info to display as popup notification

- othername:

- Som3other(rypt!cPass

Installation

pwclip requires the “xsel” package on Debian-Like Systems to have access to copy/paste buffers. On Windows Systems the libusb package must be integrated to python3 as “USB-Backend”.

If you are on a Debian-Like system the installation of the dependencies should work like the following (on root terminal):

$ apt-get install xsel gnupg2

Installing via pip3

You can install this package from the Python Package Index (pyPI) by running:

  • pip3 install pwclip

Installing from a source distribution archive

To install this package from a source distribution archive, do the following:

  1. Extract all the files in the distribution archive to some directory on your system.

  2. In that directory, run: python setup.py install

Usage

Although is was planed as GUI-Program it’s also possible to be executed from terminals. For Windows, Linux and OSX there is an appropriate executable packed which might be executed like the following examples will show:

Yubikey-Mode

pwclip

The PWCLIPTIME environment variable is used if found so the following command does pretty much the same:

pwclip $PWCLIPTIME

To have it wait for a specific time like 5 seconds (bevore resetting the paste buffer to the previously copied value) use the following command:

pwclip 5

GPG-Mode

pwclip -c

Alike in yubikey-mode the PWCLIPTIME variable is used as timer. If there is an environment variable called GPGKEYS it will use those keys to encrypt on changes to the password file

Change log

0.2.6 - 0.2.8 (current)

Released: 2016-10-22

  • minor documentation fixes (playing around with rst formatting)

0.2.5

Released: 2016-10-22

  • seperated the code into submodules within lib/ to be more compliant to my usual environment

  • added complete new encryption mode via python3-gnupg - now it’s capable of selecting gpg-keys by GPGKEYS environment variable to encrypt ~/.passcrypt

  • documentation updated and cleanup on typo/irrelevant text

  • FIXED: issue where the gpg-agent isn’t able decrypt without passphrase/pin and clould not ask for it

Documentation

http://packages.python.org/pwclip/

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pwclip-0.2.8.tar.gz (13.6 kB view hashes)

Uploaded Source

Built Distribution

pwclip-0.2.8-py3-none-any.whl (20.0 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page