YAVA is a command-line application written in Rust that provides secure file compression with integrity verification through SHA-256 checksums.
To install YAVA, run the following command:
TODO: bash script for installing the binary
# To compress a file
yava <filename>
# To decompress a .yava file
yava <filename.yava>
- File compression with metadata preservation
- SHA-256 checksum verification
- Creation date tracking
- Original file extension preservation
- Secure decompression with integrity checks
When compressing a file, YAVA:
- Calculates the SHA-256 hash of the file content
- Records the current timestamp and original file extension
- Compresses the file using XZ compression
- Saves the compressed data along with metadata in a
.yava
file
When decompressing a .yava
file, YAVA:
- Extracts the metadata (original hash, date, extension)
- Calculates a new SHA-256 hash of the compressed content
- Verifies the integrity by comparing the original and new hashes
- If verification passes, decompresses the file to its original format
SHA-256 hash verification ensures file integrity
Timestamp tracking for compression date
Automatic integrity checks during decompression
Clear security verification output
Written in Rust
Uses XZ compression (via xz2 crate)
SHA-256 for checksum verification
Preserves original file metadata
Rust (latest stable version)
Compatible with Windows, Linux, and macOS
git clone https://github.com/Nichokas/YAVA.git
cd YAVA
cargo build --release