Releases: DevX-Dragon/vokul
Release list
V1.0.0 | First Release
Vokul Release Log
Version: 1.0.0
Author: DevX-Dragon
License: MIT
Overview
Vokul is a modern, local-first command-line interface (CLI) password manager built in Python. Designed with a primary focus on security, data privacy, and developer ergonomics, Vokul provides a robust alternative to cloud-based password solutions by keeping all sensitive credentials encrypted directly on the user's local filesystem.
This inaugural release (v1.0.0) establishes the core architecture of the Vokul ecosystem, including the primary CLI engine, a native messaging bridge for browser integration, and an initial version of the Chrome browser extension.
Key Features
Secure Cryptography
The Vokul CLI engine leverages industry-standard cryptographic primitives to ensure the highest level of data protection.
-
Encryption: Utilizes AES-GCM (Advanced Encryption Standard in Galois/Counter Mode) for authenticated encryption, providing both confidentiality and data integrity.
-
Key Derivation: Implements Argon2id for deriving encryption keys from the master password. This hybrid algorithm is resistant to both GPU-based cracking and side-channel timing attacks, utilizing significant memory (64 MiB) and computational resources to deter brute-force attacks.
Vault Management and Resilience
Vokul prioritizes data safety through sophisticated vault management features.
-
Local-First Storage: All data is stored exclusively on the local machine in an encrypted JSON format.
-
Automatic Backups: Before every save operation, the current vault state is automatically backed up to a timestamped file.
-
Self-Healing Recovery: In the event of a corrupted or missing main vault file, Vokul automatically attempts to recover data from the most recent valid backup, notifying the user upon successful restoration.
-
Password History: The system maintains a history of the last three passwords for each service, allowing users to revert to previous credentials if necessary.
Command-Line Interface (CLI)
The vokul CLI provides a rich, interactive terminal experience powered by the rich library.
-
Core Operations: Supports complete CRUD (Create, Read, Update, Delete) operations for service credentials.
-
Search and Listing: Enables users to easily list stored services or perform case-insensitive searches.
-
TOTP Support: Generates Time-based One-Time Passwords (2FA codes) directly from the command line for supported services.
-
Password Generation: Includes a robust password generator capable of creating strong random strings or memorable phrases.
-
Clipboard Integration: Automatically copies retrieved passwords to the clipboard and securely clears them after a configurable delay (default: 15 seconds).
Security Hardening
To further protect the vault, Vokul implements persistent security throttling mechanisms.
-
Brute-Force Protection: Tracks failed master password attempts using a persistent lock file.
-
Progressive Lockout: If multiple failed attempts are detected within a 5-minute window, the system enforces a progressive time penalty (starting at 15 seconds, increasing by 10 seconds per additional attempt) before allowing further execution.
Ecosystem Integration
Vokul extends its functionality beyond the terminal through native messaging.
-
Native Messaging Bridge: A Python-based bridge (
bridge.py) that communicates with the Chrome extension using length-prefixed JSON messages. -
Browser Extension (Prototype): An initial version of the Chrome extension (Manifest V3) that demonstrates the ability to retrieve passwords via the native messaging bridge.
Architectural Breakdown
The Vokul project is structured into distinct modules to maintain separation of concerns:
| Component | Description | Key Technologies |
|---|---|---|
| CLI Entry Point | Handles argument parsing, user interaction, and command dispatching. | argparse, rich |
| Vault Manager | Manages the vault lifecycle, including creation, loading, saving, and CRUD operations. | json, shutil, pathlib |
| Cryptographic Engine | Handles key derivation and data encryption/decryption. | cryptography (Argon2id, AES-GCM) |
| Native Bridge | Facilitates communication between the CLI and browser extensions. | subprocess, struct |
Known Issues and Limitations
As this is the initial release of the Vokul ecosystem, several known issues and limitations have been identified:
-
Export Command: The
vokul exportcommand is currently registered in the argument parser but lacks an implementation branch in the main execution logic. -
Version Discrepancy: There is a version mismatch between the PyPI package metadata (
0.1.0) and the internal runtime version constant (1.0.0). -
Browser Extension Maturity: The current Chrome extension is in a prototype state. The popup UI is minimal, and the service selection is currently hardcoded (e.g., to "github"). It does not yet support full vault management operations.
-
Testing Coverage: The project currently lacks an automated test suite, relying on manual verification for feature integrity.
-
Documentation Gaps: While core documentation exists, the contributing guidelines and extension setup instructions are currently placeholders.
Dependencies
The Vokul CLI requires the following Python packages:
-
cryptography(>= 42.0.0) -
pyperclip -
pyotp -
rich
Installation
To install Vokul, ensure Python 3.8 or higher is available on your system.
pip install vokulTo initialize your first vault:
vokul init