# Password Safe

Password Safe is a free and open-source password manager program originally written for Microsoft Windows but supporting a wide array of operating systems, with compatible clients available for Linux, FreeBSD, Android, IOS, BlackBerry and other operating systems.

## History

The program was initiated by Bruce Schneier at Counterpane Systems. As of 2024 the program is maintained on GitHub by a group of volunteers.

## Design

After filling in the master password the user has access to all account data entered and saved previously. The data can be organized by categories, searched, and sorted based on references which are easy for the user to remember.
There are various key combinations and mouse clicks to copy parts of the stored data (password, email, username etc.), or use the autofill feature (for filling forms). The program can be set to minimize automatically after a period of idle time and clear the clipboard. It is possible to compare and synchronize (merge) two different password databases. The program can be set up to generate automatic backups.
Password Safe does not support database sharing, but the single-file database can be shared by any external sharing method (for example Syncthing, Dropbox etc.). The password database is not stored online.

## Features

    Note: All uncited information in this section is sourced from the official Help file included with the application

### Password management

Stored passwords can be sectioned into groups and subgroups in a tree structure.
Changes to entries can be tracked, including a history of previous passwords, the creation time, modification time, last access time, and expiration time of each password stored. Text notes can be entered with the password details.

### Import and export

The password list can be exported to various file formats including TXT, XML and previous versions of Password Safe. Password Safe also supports importing these files.
Password Safe supports importing TXT and CSV files which were exported from KeePass version 1.x (V1). KeePass version 2.x (V2) allows databases to be exported as a KeePass V1 database, which in turn can be imported to Password Safe.
Password Safe cannot directly import an XML file exported by KeePass V1 or V2, as the fields are too different. However, the Help file provides instructions for processing an exported XML file with one of multiple XSLT files (included with Password Safe) which will produce a Password Safe compatible XML file that can then be imported.

### File encryption

Password Safe can encrypt any file using a key derived from a passphrase provided by the user through the command-line interface.

### Password generator

The software features a built-in password generator that generates random passwords. The user may also designate parameters for password generation (length, character set, etc.), creating a "Named Password Policy" by which different passwords can be created.

## Cryptography

The original Password Safe was built on Bruce Schneier's Blowfish encryption algorithm. Rony Shapiro implemented Twofish encryption along with other improvements to the 3.xx series of Password Safe. The keys are derived using an equivalent of PBKDF2 with SHA-256 and a configurable number of iterations, currently set at 2048.
In a 2012 paper analysing various database formats of password storage programs for security vulnerabilities the researchers found that the format used by Password Safe (version 3 format) was the most resistant to various cryptographic attacks.

## Reception

Reviewers have highlighted the program's simplicity as its best feature.