Skip to content
/ ssap Public

Secure and blazingly fast password manager tool written in Rust: safely store, organize, generate and retrieve passwords from your local hard disk blazingly quickly

License

Notifications You must be signed in to change notification settings

San7o/ssap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ssap - simply secure all passwords

 ________   ________  ________  ________
|\   ____\ |\   ____\|\   __  \|\   __  \
\ \  \___|_\ \  \___|\ \  \|\  \ \  \|\  \
 \ \_____  \\ \_____  \ \   __  \ \   ____\
  \|____|\  \\|____|\  \ \  \ \  \ \  \___|
    ____\_\  \ ____\_\  \ \__\ \__\ \__\
   |\_________\\_________\|__|\|__|\|__|
   \|_________\|_________|

Version: 1.0.0

USAGE:
    ssap [OPTIONS] [INPUT] [FLAGS]

OPTIONS:
    new               Create a new password
    get               Get an existing password
    delete            Delete an existing password
    list              List all registered passwords

INPUT:
    The name of the password to create or get to query
    the real encrypted password.

FLAGS:
    -h, --help         Prints help information
    -c, --clipboard    Copy the generated password to clipboard
    -s, --silent       Do not print the generated password
    -p, --path <path>  Specify the path to the password file
    -e, --encryption <encryption> Specify the encryption algorithm
                       Supported algorithms: aes_128_cbc, aes_256_cbc
    -l, --length <length> Specify the length of the generated password
                          default: 30

EXAMPLES:
    ssap new my_password
    ssap get my_password
    ssap generate my_password

ssap is a secure and blazingly fast password manager tool written in Rust. You can safely store, organize, generate and retrieve passwords from your local disk blazingly quickly. All the passwords will be stored in an encrypted form.

saap is:

  • secure: written in Rust, but using battle tested encryption libraries (openssl) written in C
  • blazingly fast: did I tell you that this program is blazingly fast? It is because It's written in Rust!
  • kiss: keep It simple, stupendo! ssap follows the unix principle of doing one thing and doing it right.

Installation

Compile the program:

cargo build

Run ssap:

cargo run

Usage

Ssap is useful to generate and safely store random passwords in your local disk.

You can generate a new password using the new option:

ssap new linkedin

This will generate a new random password. You can specify the length of the password via the -l flag. Ssap will prompt you to insert a password to encrypt the random one, and then save it in .vault.ssap. You can specify the file path with the --path flag.

ssap new linkedin -l 20 --path ~/.my_secure_store
> Creating new password with name: linkedin
> Generated Password: NTp9g5yWgr%TU$f@!hwh
> Enter vault password:
> Re-enter vault password:
> Saving password to file in path: /home/lanto/.my_secure_store
> Password created successfully

You can list the registered passwords with the list option:

ssap list --path ~/.my_secure_store
> List of registered passwords:
>  - linkedin
>  - youtube

Get the password with the get option:

ssap get linkedin --path ~/.my_secure_store
> Enter vault password:
> Re-enter vault password:
> Decrypted Password: NTp9g5yWgr%TU$f@!hwh

And delete the password with delete:

ssap delete linkedin --path ~/.my_secure_store
> Password delete successfully

Version Control

The program saves It's version on the vault file and ensures backward compatibility with old versions, so any vault will work correctly in any version even if newer versions have more features.

Security tip

For even more security, you can change the permissions of the password file on linux with the following line:

chmod o-wr ./.my_secure_file

No other user will be able to read or write to it, adding an additional layer of security in your system.

Developmement

Run tests:

cargo test

Build documentation:

cargo doc

Format code:

cargo fmt

About

Secure and blazingly fast password manager tool written in Rust: safely store, organize, generate and retrieve passwords from your local hard disk blazingly quickly

Resources

License

Stars

Watchers

Forks

Packages

No packages published