Skip to content

krwg/j-password

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

JPassword

Local password manager with Tkinter — generate, encrypt, and organize by profile.

Python Crypto GUI Release


JPassword is a desktop password manager: strong random passwords, Fernet encryption, PBKDF2 key derivation from a master password, and multiple profiles (work, personal, etc.) in separate JSON files.

Everything stays on your machine — no cloud sync, no account.


Features

Generate Configurable length, optional symbols
Save / View Site name + encrypted password per profile
Profiles Create, rename, delete; switch at login
Settings Default length and symbol toggle
Security Master password unlocks per-profile Fernet key

Quick start

git clone https://github.com/krwg/j-password.git
cd j-password
pip install -r requirements.txt
python password_manager.py

On first run, create a profile and choose a strong master password. You need it every time you open the vault.


How it works

  1. Select or create a profile.
  2. Enter master password → derives encryption key (PBKDF2).
  3. Generate tab — copy a random password.
  4. Save tab — store it under a site label (encrypted in {profile}_passwords.json).
  5. View tab — decrypt and read entries after login.

Files created locally: profiles.json, *_passwords.json.


Security notes

  • Master password — if you lose it, encrypted data cannot be recovered.
  • Salt — demo uses a fixed salt; production use should use random per-profile salts (see roadmap in code history).
  • Backup — copy profiles.json and *_passwords.json to a safe place.
  • Updates — keep cryptography package current.

Requirements

  • Python 3.x with tkinter (usually bundled on Windows/macOS; on Linux: python3-tk)
  • cryptography — see requirements.txt

Roadmap

  • Per-profile random salts for PBKDF2
  • Password strength meter
  • Export / import
  • Optional browser autofill

License

Open source portfolio project. Use at your own risk for real secrets until hardened for production.


About

JPassword - local desktop password manager (Tkinter). Fernet encryption, PBKDF2 master key, multi-profile JSON vaults. No cloud sync. Python security portfolio.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors

Languages