Releases: Arean-Max/OpenCrypt
Releases · Arean-Max/OpenCrypt
Release list
v0.2.0
[0.2.0] - 2026-08-01
Added
- Rust core engine (
rust_core) handling all cryptographic and platform logic:- ChaCha20-Poly1305 file encryption and decryption, both password-based
and random-key based - Secure file deletion via multi-pass overwrite
- Random key generation (URL-safe Base64, 32 bytes)
- File format versioning and integrity verification
- ChaCha20-Poly1305 file encryption and decryption, both password-based
- C FFI layer exposing the core to the UI, with a typed error code for every
failure scenario (I/O, invalid format, invalid password, output exists,
invalid input, unsupported operation, etc.) - Pre-flight path validation in Rust: missing input, directory input, missing
output directory, wrong extension for decryption, same-path and overwrite
protection — an existing output file is never touched - Windows context-menu registration implemented in Rust (registry writes,
command construction, frozen/development packaging detection) - Test suite: 54 tests covering encryption roundtrips, tamper detection,
wrong-password rejection, path-validation rules, and registry
register/unregister - Automated build pipeline: Rust release build → PyInstaller → Inno Setup
Changed
- The Python UI is now a thin wrapper over the Rust FFI; all crypto, registry
and validation logic lives in the core - Python exception mapping aligned with the FFI error codes
- Encrypted streams are flushed and synced to disk before the operation
completes (data durability) - Version bumped from 0.1.0 to 0.2.0 across the project
Fixed
- Windows context-menu registration compatibility with the
winregcrate 0.52 - Wrong error class returned for a missing input file (I/O error →
invalid input) - Key generation contract: guaranteed null-terminated output, short buffers
rejected with an explicit error - Registry registration now verifies the target executable exists before
writing any keys
Security
- Passwords and keys are zeroized in memory after use
- FFI functions are panic-guarded: a panic inside the core is converted into
a typed error instead of crashing the process - Overwrite protection enforced in the core: existing output files are
never modified
OpenCrypt 0.2.1
[0.2.1] — 2026-08-01
Fixed
- Installer: PATH refresh reliability. The environment broadcast was
sent manually viaSendMessageTimeout; replaced with Inno Setup's
nativeChangesEnvironment=yes, which reliably notifies running
applications after install and uninstall. - Installer: PATH deduplication.
EnvAddPathnow checks the full
path list before appending, so re-installs don't grow the PATH
variable with duplicates.
Changed
- README: documented the headless
opcCLI (usage, key auto-detection,
exit codes, dev entry point in the venv).