Skip to content

Secure command-line password manager with AES encryption, HMAC authentication, and local database storage. Generate, store, and retrieve passwords safely.

License

Notifications You must be signed in to change notification settings

MartinXCVI/password-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Personal Password Manager

📄 Introduction

A secure, command-line password manager built with Python. Features strong AES encryption, SHA-256 hashing, and local MySQL database storage. Store, retrieve, and generate passwords with confidence using industry-standard cryptographic practices and a clean, intuitive CLI interface


🔐 Security Features

  • AES-256-CBC encryption with HMAC authentication
  • PBKDF2 key derivation (100,000 iterations)
  • Salt-based protection against rainbow table attacks
  • Device-specific secrets for additional security layer
  • No cloud storage - your passwords stay on your device

📋 Quick Start

Prerequisites

  • Python 3.8+
  • MySQL Server

Installation

  1. Clone the repository:
git clone https://github.com/MartinXCVI/password-manager.git
cd password-manager
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up your MySQL database and update src/config/db_config.py

  2. Run initial setup:

python -m src.config.config

Environment Variables

Create an .env file in the root directory.

DB_HOST=
DB_USER=
DB_PASSWORD=
DB_PORT=
DB_NAME=
DEBUG=

Usage

Add a password entry:

python -m src.password_manager add -s "Gmail" -u "https://gmail.com" -l "[email protected]"

Retrieve passwords:

python -m src.password_manager extract -s "Gmail"
python -m src.password_manager extract -s "Gmail" --copy  # Copy to clipboard

Generate secure passwords:

python -m src.password_manager generate --length 32

📚 Learn More


📜 License

This project is licensed under the MIT License.


🧑‍💻 Developer

About

Secure command-line password manager with AES encryption, HMAC authentication, and local database storage. Generate, store, and retrieve passwords safely.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages