Introduction

Definitions

Here are some definitions which may help you understand the rest of the documentation better.

label
A label is a string that you use to identify the passphrase. This can be a domain name of the service the passphrase is used for, e.g. ‘google.com’.

Since this program asks for a password/passphrase to generate another password/passphrase, things may get a bit confusing. I’ve decided to use the words ‘password’ and ‘passphrase’ differently and consistent.

password
Use of the word ‘password’ is dedicated to the input password, i.e. the password you are asked to enter and only you know. Whenever you read password, this is the one I mean. The password needs to be at least 8 characters long and does not have a maximum length.
passphrase
With ‘passphrase’ I always mean the output passphrase, i.e. the passphrase that is unique and generated from a label, password and sequence number. Generated passphrases are 30 characters long. The length can be optionally changed.

Labelfile

DisPass does not store your passwords or passphrases, but it does store labels and their settings (algorithm, length and sequence_number) for convenience. However, please keep in mind that you should try to name labels in a way that you can easily ‘dispass generate’ a passphrase on any computer/device that has DisPass at any given moment without having your labelfile at hand.

When dispass is run without arguments it will try to find a labelfile. The location of this file varies and depends on the platform type you use, the file flag and the environment variables that may be set:

You can override the location of the labelfile using the -f <labelfile>, --file=<labelfile> flag. This can be a way for you to use different sets of labels/passphrases with a different ‘master’ password for each set.

  1. If -f flag is given, that value is used.
  2. If environment var DISPASS_LABELFILE is set, that value is used.
  3. If environment var XDG_DATA_HOME is set, $XDG_DATA_HOME/dispass/labels is used.
  4. If none of the above applies, the labelfile will default to the following locations:
    • GNU/Linux and Mac OS X: ~/.dispass/labels
    • *BSD and other Unixen: ~/.dispass/labels
    • Windows: C:\Users\<username>\dispass\labels