All notable changes to PassLock will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
2.3.5 - 2026-02-22
- Configurable Clipboard Timeout - Users can now customize clipboard auto-clear duration
- Available options: 10s, 30s, 60s, 120s, 300s, Never (disabled)
- Accessible from Settings screen (Esc → Options → Settings)
- Default: 30 seconds
- Right-Click Context Menu - Complete rewrite of clickable area detection
- Now dynamically calculates clickable regions based on actual entry content
- Properly handles entries with varying fields (URL, 2FA, History)
- Maintains proper spacing regardless of entry length
- Fixed issue where clickable areas were misaligned for entries with different field counts
- Context menu now accurately responds to mouse clicks on any part of an entry
- Right-click detection now uses dynamic row mapping instead of hardcoded calculations
- Settings screen now displays current clipboard timeout value
2.3.4 - 2026-02-21
-
TOTP/2FA Support - Time-based One-Time Password generation
- Base32 secret key support
- Automatic 6-digit code generation every 30 seconds
- Live countdown timer showing seconds remaining
- Invalid key detection and error display
- Uses
SystemTimefor accurate time-based generation - Compatible with Google Authenticator, Authy, and other TOTP apps
- Accessible from Add/Edit/View screens
-
Right-Click Context Menu - Mouse-driven password management
- 5 quick actions: Copy Password, Copy Username, Copy URL, Edit Entry, View History
- Full mouse integration with right-click detection
- Keyboard navigation support (↑/↓ arrows, Enter, Esc)
- URL option grayed out when not available
- Mouse scrolling support in password list
- Clickable area detection for each entry
- TOTP field integration in add/edit forms
- Tab navigation now includes 2FA secret field
- Context menu positioning and boundary detection
- Added dependencies:
totp-lite(v2.0),base32(v0.4) - Created
src/totp.rsmodule for TOTP functionality - Enhanced
Entrymodel withtotp_secretfield - Implemented dynamic clickable regions for context menu
2.2.3 - 2026-02-16
- Options menu with ASCII art
- 8 beautiful themes (Gruvbox, Dracula, Nord, Tokyo Night, Catppuccin, Solarized, One Dark, Cyberpunk)
- Settings screen with theme selector
- Comprehensive help screen with all keybinds
- Shift+Tab to navigate backwards through fields
- Ctrl+S to save from any field in add/edit screens
- Removed redundant help text from main menu (now in Help screen)
- Esc in main menu now opens Options menu
- Exit moved to '7' key, theme selector on 'T' or '8'
- Terminal cleanup issues when pressing Esc
- Ctrl+S now properly saves instead of typing 's'
2.0.0 - 2026-02-15
PassLock v2.0.0 is a complete rewrite with massive improvements in security, performance, and usability!
- Adaptive Encryption - Automatically selects AES-256-GCM (with AES-NI) or ChaCha20-Poly1305 (without)
- CPU Feature Detection - Detects AES-NI support for optimal performance
- Beautiful TUI - Complete terminal user interface with Gruvbox theme
- Password History - Track up to 5 previous passwords per entry
- Tags & Categories - Organize passwords with custom tags
- Advanced Search - Fast search across names, usernames, URLs, and tags
- Filter by Tags - View passwords by category
- Password Generator - Generate strong, random passwords (4-64 characters)
- Password Strength Meter - Real-time feedback on password quality
- Go API Server - RESTful API for web frontend
- HTML Frontend - Modern web interface (development)
- Argon2id Key Derivation - GPU/ASIC-resistant password hashing
- Authenticated Encryption - AEAD with Poly1305 MAC prevents tampering
- Secure Memory Zeroing - Sensitive data cleared after use
- Vault File Versioning - Support for multiple encryption formats
- Auto-lock on Exit - TUI properly cleans up temporary files
- Modular UI Architecture - 10 separate UI modules for maintainability
- Comprehensive Documentation - README, COMMANDS, CONTRIBUTING, SECURITY
- Professional Makefile - Easy build, test, install, and release
- Zero Clippy Warnings - Clean, idiomatic Rust code
- GitHub Actions Ready - CI/CD workflows prepared
passlock info cpu- Show CPU features and recommended cipherpasslock version- Show version informationpasslock help- Improved help textpasslock tui- Launch TUI interface
- Encryption - Migrated from AES-256-GCM-only to adaptive encryption
- UI Framework - Switched to ratatui with custom Gruvbox theme
- Vault Format - New format with cipher metadata (backward compatible)
- C Crypto Core - Optimized vault_engine.c for better performance
- Build System - Enhanced Makefile with color output and better targets
- Exit Handling - Fixed TUI cleanup (no more unicode mess on exit!)
- Terminal not properly cleaned up on exit
- ESC key causing terminal corruption
- Password visibility in edit mode
- Vault locking issues
- Memory leaks in crypto operations
- Compiler warnings and clippy issues
- 6x faster encryption on CPUs without AES-NI (ChaCha20-Poly1305)
- 3-5 GB/s encryption speed on modern CPUs with AES-NI
- Optimized vault loading and saving
- Reduced memory allocations in hot paths
- Complete command reference (COMMANDS.md)
- Security documentation (SECURITY.md)
- Contributing guidelines (CONTRIBUTING.md)
- Updated README with features comparison
- Installation instructions for multiple distros
- Troubleshooting guide
- Professional Makefile with 20+ targets
- Support for both system-wide and local installation
- Go server build integration
- Dependency checking
- Code formatting and linting
- Size optimization
Special thanks to:
- Community members who reported issues
- RokyBeast who submitted PRs for ChaCha20-Poly1305 support
- Early testers who provided feedback
1.0.0 - 2025-XX-XX
- Basic password management
- AES-256-GCM encryption
- CLI interface
- Vault creation and unlocking
- Password CRUD operations
- Attachment support for credentials
- Secure notes functionality
- Export vault to encrypted formats
- Import from other password managers
- Browser extension (Chrome/Firefox)
- Mobile apps (iOS/Android)
- Team/family sharing
- Emergency access
- Hardware key support (YubiKey)
- Passkey/WebAuthn support
- HaveIBeenPwned breach checker