Skip to content

R-100/Rust-CLI-Password-Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rust CLI Password Manager

Rust License

A small terminal tool for securely storing, retrieving, and managing passwords using encrypted JSON storage, master password protection, and overwrite prompts. Perfect for practicing Rust, CLI programming, and basic encryption.


Features

  • add <name> – Add a new password (with confirmation and overwrite prompt)
  • list – Show all account names
  • get <name> – Retrieve the password for an account
  • AES-256-GCM encryption with Scrypt key derivation
  • Master password authentication

Installation

git clone https://github.com/R-100/Rust-CLI-Password-Manager.git
cd rust-cli-password-manager
cargo build
cargo run -- <COMMAND>

Usage

Add a password

cargo run -- add gmail

Enter and confirm the password If the account exists, you'll be asked: "Do you want to overwrite it? (y/n)"

List accounts

cargo run -- list

Get a password

cargo run -- get gmail

Screenshots

Add & Overwrite Prompt

Open Password Manager enter your Masterpassword:
Password matches via your Input
Entry "gmail" already exists. Do you want to overwrite it? (y/n)

List

 ========= List for Password Names =========
github
google
...

Get

 ========= Password Element =========
gmail: mypassword123

Learning Goals

  • Rust CLI programming with clap
  • JSON persistence using serde
  • Encryption using aes-gcm & key derivation with scrypt
  • CLI interaction and overwrite handling

Security Notice

This project is for learning purposes only. Do not use for real sensitive data.

File Structure

src/
├── main.rs        # Main program
├── passwords.json # Encrypted password storage
Cargo.toml
README.md

About

Rust CLI Password Manager – A small terminal tool for securely storing, retrieving, and managing passwords with encrypted JSON storage, master password protection, and overwrite prompts. Perfect for practicing Rust, CLI programming, and basic encryption.

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages