A high-performance hybrid password manager that leverages C++ for its core cryptographic operations and Python for the application logic.
This project is organized into three main components:
-
vault_core.cpp- Role: Backend Engine.
- Function: Implements AES-256-CBC encryption/decryption using the OpenSSL library. It is designed to be interfaced with Python via pybind11.
-
CMakeLists.txt- Role: Build Configuration.
- Function: Handles the compilation process, linking OpenSSL and Python development headers to produce the shared library module.
-
manager.py- Role: Application Layer.
- Function: Manages the local JSON database, hex encoding of binary data, and provides the command-line interface for the user.
To build and run this project, you must have the following installed:
- Compiler: GCC / Clang / MSVC (C++17 support).
- Libraries: OpenSSL, pybind11.
- Tools: CMake, Python 3.x.
- Navigate to the project root.
- Run the following commands:
mkdir build && cd build cmake .. cmake --build .
- Ensure the compiled module (
vault_core.soor.pyd) is in the same directory asmanager.py.
- Symmetric Encryption: AES-256-CBC.
- Initialization Vector (IV): Randomly generated for every encryption cycle.
- Local Storage: No cloud dependencies; data stays on your machine.
This project is licensed under the MIT License.