Merge branch 'pthreads'
[pwmd.git] / README
blob39ac71c818c29b110861773851bcbda4bb7246c4
1 Password Manager Daemon is a server that provides a way to securely store
2 data. The data is saved in an AES256 encrypted XML file. Here are some of the
3 features:
5     * Shared memory key cache supporting multiple files and protected with a
6       mutex.
7     * Server configuration file which supports file specific settings
8       including encryption iterations, cache expiration, and encryption key or
9       key file.
10     * Compressed data file support.
11     * Secure memory usage. PWMD will zero out memory before freeing it.
13 I needed this because I use a few applications that require the same
14 credentials but hate having to update all those configuration files to reflect
15 any changes in the account. This way, there is a central location for the
16 data.
18 Requirements:
20     pthreads     - For locking of the file/key cache.
22     libassuan    - http://www.gnupg.org
23                    Protocol.
25     libgpg-error - http://www.gnupg.org
26                    Error handling.
28     glib2        - http://www.gtk.org
29                    Portability library among other things.
31     libxml2      - http://xmlsoft.org
32                    For XML parsing and data manipulation.
34     libgcrypt    - http://www.gnupg.org
35                    Encryption, decryption and hashing.
37     libz         - http://www.zlib.net version 1.2.2.1 or later
38                    For compressing the data file.
40 Debian has packages for all of these. Your distro may have them too.
42 You can test it out by connecting to the socket with the socat utility
43 (http://www.dest-unreach.org/socat/). Start the daemon then run socat:
45     socat GOPEN:$HOME/.pwmd/socket -
47 There is a library available (see below) that makes it easy for other
48 applications (mail, www, etc) to use the server. A command line client is
49 included that reads protocol commands from stdin and handles password
50 retrieval.
52 The latest version of the server and library can be found at
53 http://bjk.sourceforge.net/pwmd/.
55 Read COMMANDS for protocol commands and syntax. Send me patches or any ideas
56 you may have.
58 Ben Kibbey <bjk@luxsci.net>