Cristian Cezar Moisés
f3e39fb8e6
v2.1.7: Zupt is now licensed under the GNU Affero General Public License v3.0 or later (AGPL-3.0-or-later) + VaptVupt v2.46.1(GPLv3)
2026-04-26 01:47:45 -03:00
Cristian Cezar Moisés
9b8cbf91b4
2026-04-22 22:20:24 -03:00
Cristian Cezar Moisés
461bd3456f
2026-04-22 03:54:32 -03:00
Cristian Cezar Moisés
d4660e6539
Release: v2.1.6 - Added VaptVupt 2.40
2026-04-22 03:46:59 -03:00
Cristian Cezar Moisés
6abe72ffc0
Update README.md
2026-04-12 19:23:40 -03:00
Cristian Cezar Moisés
b672fa43ec
apt install zupt-web-readme -y
2026-04-12 19:22:08 -03:00
Cristian Cezar Moisés
db38c625cc
Release: 2.1.5 - Block-level deduplication (--dedup), XXH64 fingerprint index, DEDUP_REF block type, 81 tests
2026-04-12 15:29:42 -03:00
Cristian Cezar Moisés
d8de951b6d
Release: 2.1.4 - Resolved high-severity vulnerabilities by removing TOCTOU filesystem races via fd-first open()/fstat() patterns and enforcing non-optimizable secure memory zeroization for cryptographic material.
2026-04-11 17:24:32 -03:00
Cristian Cezar Moisés
28b2744c67
Release 2.1.3: Fix disk backup corruption, solid PQ encryption, block I/O, and format mismatches
...
- Corrected LZHP prediction encoding in disk backups to prevent data corruption
- Disabled spurious SOLID flag for per-block disk archives
- Shared write_enc_header() across all encryption paths to eliminate format mismatches
- Enabled solid compression with PQ encryption support
- Updated block device restore to use O_SYNC + fsync/sync
- Improved Termux/Android host detection for safer builds
- Made zupt_w8(), zupt_w16le(), zupt_w64le() non-static for shared use
2026-04-11 15:59:59 -03:00
Cristian Cezar Moisés
181da41550
Update README.md
2026-04-06 19:55:24 -03:00
Cristian Cezar Moisés
62af09ad9c
Zupt v2.1.2: add full-disk backup/restore, expand test suite, improve compression handling
...
- Introduced full-disk backup/restore (src/zupt_disk.c, ~530 LOC)
- Backup: streams 4MB blocks with sparse detection and all codecs
- Restore: per-block checksum validation for integrity
- Supports password (-p), PQ hybrid (--pq), or no encryption
- Real-time progress bar with throughput reporting (stderr)
- Implemented sparse detection (8-byte zero scan)
- Zero blocks stored as STORE (near-zero overhead)
- Added disk-aware safeguards
- ZUPT_FLAG_DISK_IMAGE prevents misuse with extract
- Immediate failure on wrong password during first block decrypt
- Cross-platform device size detection
- Linux: BLKGETSIZE64
- macOS: DKIOCGETBLOCKCOUNT
- Fallback: lseek
- Compression behavior
- ~2928:1 on highly repetitive data
- ~1.33:1 on random data (auto STORE fallback)
- Expanded test suite to 77 tests:
- 11 VV unit
- 13 NIST/RFC vectors
- 22 regression
- 14 multi-threaded
- 10 post-quantum
- 7 disk (normal, encrypted, PQ, sparse, LZHP, extreme compression, wrong-password)
Release stats:
- 74 files, 168KB, zero .o artifacts
- 77/77 tests passing
- Fully clean under ASAN + UBSan
2026-04-06 19:33:37 -03:00
Cristian Cezar Moisés
4972024013
Zupt v2.1.2: add full-disk backup/restore, expand test suite, improve compression handling
...
- Introduced full-disk backup/restore (src/zupt_disk.c, ~530 LOC)
- Backup: streams 4MB blocks with sparse detection and all codecs
- Restore: per-block checksum validation for integrity
- Supports password (-p), PQ hybrid (--pq), or no encryption
- Real-time progress bar with throughput reporting (stderr)
- Implemented sparse detection (8-byte zero scan)
- Zero blocks stored as STORE (near-zero overhead)
- Added disk-aware safeguards
- ZUPT_FLAG_DISK_IMAGE prevents misuse with extract
- Immediate failure on wrong password during first block decrypt
- Cross-platform device size detection
- Linux: BLKGETSIZE64
- macOS: DKIOCGETBLOCKCOUNT
- Fallback: lseek
- Compression behavior
- ~2928:1 on highly repetitive data
- ~1.33:1 on random data (auto STORE fallback)
- Expanded test suite to 77 tests:
- 11 VV unit
- 13 NIST/RFC vectors
- 22 regression
- 14 multi-threaded
- 10 post-quantum
- 7 disk (normal, encrypted, PQ, sparse, LZHP, extreme compression, wrong-password)
Release stats:
- 74 files, 168KB, zero .o artifacts
- 77/77 tests passing
- Fully clean under ASAN + UBSan
2026-04-06 19:25:24 -03:00
Cristian Cezar Moisés
754be4e84e
Zupt v2.1.1: fix cross-arch build issues, eliminate UB, improve Android/Termux support
...
- Removed all shipped .o files from tarball (fixes aarch64/Termux linker errors with x86_64 objects)
- Added arch-safety guard in Makefile to auto-detect and remove incompatible .o files
- Switched default compiler from gcc to cc (Termux uses clang)
- Skipped -lpthread on Android (bionic provides pthreads)
- Added Android detection via uname -o
- Fixed Keccak UB: ROL64(x,0) no longer expands to undefined x >> 64
- Achieved zero UBSan/ASAN issues across all PQ crypto paths
- Moved sys/syscall.h include to file scope with proper __linux__ guard
Release stats:
- 73 files, 159KB, zero .o artifacts
- 70/70 tests passing
- Fully clean under ASAN + UBSan
Note: full-disk encryption (--disk) deferred to v2.2.0 (requires raw device I/O, sparse detection, and privilege handling)
2026-04-06 19:17:37 -03:00
Cristian Cezar Moisés
c052a15b41
Adjust: Readme.md
2026-04-05 23:29:46 -03:00
Cristian Cezar Moisés
537e071e0d
Release: 2.1.0 Added:VaptVupt 1.4.0: cross-block dictionary carry, context decode prefetch, faster adaptive window trial (2.6× encode), integration API
2026-04-05 23:14:18 -03:00
Cristian Cezar Moisés
19ab9f280d
Updated: Docs
2026-04-05 15:30:55 -03:00
Cristian Cezar Moisés
6651842748
Feat: Added vaptvupt codec, fix jasmin tests
2026-03-30 06:56:52 -03:00
Cristian Cezar Moisés
06c877ec86
feat: add Jasmin assembly integration for crypto acceleration
...
- Integrated `zupt_mac_verify_ct` in `zupt_decrypt_buffer()` to replace C XOR loop for HMAC-SHA256
- Integrated `zupt_ct_select_32` in `zupt_mlkem768_decaps()` to replace C `cmov()` for FO transformation
- Added `include/zupt_jasmin.h` with extern declarations and ABI docs
- Added `#ifdef ZUPT_USE_JASMIN` guards with clean C fallbacks in `zupt_crypto.c` and `zupt_mlkem.c`
- Makefile now auto-detects `jasmin/*.s`, assembles and links with `-DZUPT_USE_JASMIN`
Closes #3
2026-03-28 23:03:04 -03:00
Cristian Cezar Moisés
a4d087b8a8
cabelo@opensuse.org: Available in all openSUSE and DiraQ Linux
2026-03-28 15:44:43 -03:00
Cristian Cezar Moisés
120ced9c6c
cabelo@opensuse.org: Available in all openSUSE distributions
2026-03-28 15:35:37 -03:00
Cristian Cezar Moisés
04ef3f518d
Update README with openSUSE manual installation instructions
2026-03-25 12:32:16 -03:00
Cristian Cezar Moisés
d75cd1d77c
Updated: Readme - added Logo
2026-03-24 22:00:15 -03:00
Cristian Cezar Moisés
92a7a799e4
Updated: Readme
2026-03-24 21:00:23 -03:00
Cristian Cezar Moisés
ebde577859
Updated: Install.sh
2026-03-24 20:58:22 -03:00
Cristian Cezar Moisés
8f12d1014c
Updated: Readme
2026-03-24 20:53:19 -03:00
Cristian Cezar Moisés
b377488f1e
Updated: Readme - OpenSuse pacakges
2026-03-24 20:22:06 -03:00
Cristian Cezar Moisés
deaf01dbca
Added: Donations
2026-03-24 19:57:48 -03:00
Cristian Cezar Moisés
f3e679ef53
Updated: Install.sh
2026-03-24 19:44:00 -03:00
Cristian Cezar Moisés
9ffe411a95
Updated: Readme - Build
2026-03-24 19:13:23 -03:00
Cristian Cezar Moisés
c3e65e1335
docs: document required password for -p option
...
Clarify in README that encryption mode (-p) requires a password.
Add example usage and reflect new behavior (fail early if missing).
Closes #5
2026-03-24 18:47:47 -03:00
Cristian Cezar Moisés
c74c62bec2
Updated: Readme
2026-03-23 20:08:13 -03:00
Cristian Cezar Moisés
da91ca90f7
Added: Install.sh - Fast installation on GNU+Linux
2026-03-23 20:02:02 -03:00
Cristian Cezar Moisés
aa48ad2887
Readme: Make Clean.
2026-03-23 19:42:00 -03:00
Cristian Cezar Moisés
c80332778f
Compress everything. Trust nothing. Encrypt always.
2026-03-21 22:06:03 -03:00