Skip to content

pbleser/mdp

 
 

Repository files navigation

NAME
     mdp - minimalist password safe

SYNOPSIS
     mdp [-c config] [-erq] [keyword ...]

DESCRIPTION
     mdp is an acronym for "Mot de Passe" which means "password" in French. It
     wraps GnuPG for encryption and deals with all the small details of
     generating, managing and fetching your passwords.

     mdp is similar to a dozen other programs. What differentiate it from
     others is an overall goal for simplicity, not your average button-driven
     simplicity but more like a Unix-y less is more style. For example, beyond
     the use of GnuPG for encryption, mdp lets you use your own editor to
     manage your passwords, categorize them and delete them. I wouldn't use
     anything but my favorite editor to manage a list, would you?

     In order to avoid passwords to linger on your screen, the results from
     the queries are displayed through a custom pager that gets cleared after
     a customizable timeout (default 10 seconds).

     The options are as follows:

     -c config
             Use an alternate configuration file.

     -e      Edit your password file (decrypt and re-encrypt after the fact).

     -q      Start mdp in query mode instead of displaying results directly.
             This will avoid you from entering your GPG password multiple
             time. Query mode times out after a few seconds of inactivity.

     -r      Displays the result without pager, plain terminal dump.

     -g length
             Generates 4 passwords of the given length.

     -V      Print version.

     -h      Print usage.

USAGE
     1. Create your GPG key if you don't already have one.

     2. Setup your EDITOR variable if it's not already done.

     3. Create a .mdp/config file from the example (at least gpg_key_id).

     4. Pick a password from randomly generated ones (e.g. 16 chars):

                   mdp -g 16

     5. Run mdp -e and add a line like such:

                   twitter sponge@bob.com yHVHPnqXyx6qUuki

     6. Now when you need your Twitter password, you can just type:

                   mdp twitter

CONFIGURATION
     This is a summary of all the available configuration variables and
     options:

     set gpg_path path
             GnuPG absolute path (default: /usr/bin/gpg)

     set gpg_key_id key_id
             GnuPG key id (default: none). If no key is selected, gpg will
             attempt to pick the key bound to the password file. When saving
             the file, you will be prompted to pick the encryption key. This
             can get quickly annoying, you're highly suggested to set this
             value.

     set gpg_timeout seconds
             Number of seconds to give GnuPG for password and pipe
             interaction. The default value is 10 seconds. This will kill
             GnuPG if you leave it on the password prompt or of anything
             blocks it while it communicates with the parent process.

     set editor path
             Path to your favorite editor. You typically don't need to set
             this variable since mdp will use your default editor (as defined
             by $EDITOR).

     set password_count count
             Define how many password to show when using -g. Default: 4.

     set timeout seconds
             This variable define how long the pager will display your
             passwords. The default value is 10 seconds.  mdp will use your
             default editor (as defined by $EDITOR).

FAQ
     Why not 'shred' the temporary file?
             If you're afraid of getting your disk stolen, encrypt it. Shred
             only has limited use on most filesystems (due to journaling for
             example).

     What if I don't trust 'root'?
             You're screwed, you can't trust this machine with your valuable
             information.

     What if my server is virtualized?
             Same answer as above, but I certainly hope you can trust your
             hosting or IaaS provider.

ENVIRONMENT
     EDITOR           The content of this variable will be used as default
                      editor if the configuration does not alter it.

FILES
     $HOME/.mdp/config                 Main configuration file for mdp.  You
                                       should seriously consider putting at
                                       least your gpg_key_id in there.

     $HOME/.mdp/passwords              Encrypted list of passwords.

     $HOME/.mdp/passwords.bak          This file is a copy of your password
                                       file, before the last edit. Only one
                                       copy is kept in case you with to revert
                                       your last change. You can override the
                                       main password file with this one to do
                                       that.

     $HOME/.mdp/lock                   This file is created while you edit
                                       your password list to avoid two copies
                                       of mdp to run at the same time for the
                                       same user.

SEE ALSO
     gpg(1), sh(1)

BUGS
     None so far.

AUTHORS
     mdp was written by Bertrand Janin <b@janin.com> and is distributed under
     an ISC license (BSD compatible, OSI compatible).

     A bunch of utility functions are borrowed from OpenBSD and OpenSSH, both
     under ISC and BSD licenses, with copyrights from the following authors:

         Copyright (c) 2004 Ted Unangst and Todd Miller
         Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
         Copyright (c) 2000 Markus Friedl.  All rights reserved.
         Copyright (c) 2005,2006 Damien Miller.  All rights reserved.

     The random password generator was mostly borrowed from apg (also BSD
     licensed), with the following copyright notice:

         Copyright (c) 1999, 2000, 2001, 2002, 2003
         Adel I. Mirzazhanov. All rights reserved

     The array and xmalloc libraries are taken from tmux, with the following
     copyright notices:

         Copyright (c) 2004 Nicholas Marriott <nicm@users.sourceforge.net>
         Copyright (c) 2006 Nicholas Marriott <nicm@users.sourceforge.net>

About

minimalist password safe

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 90.0%
  • C++ 5.2%
  • Shell 3.6%
  • Objective-C 1.2%