From b85968c5fb7fdbe2bfce5de18f208199b7eb90c9 Mon Sep 17 00:00:00 2001 From: ZeekA McZeekA <148893598+TheZeekA@users.noreply.github.com> Date: Thu, 24 Sep 2026 05:30:35 +1200 Subject: [PATCH 1/3] Fix decryption cleanup, RS repair and keyfile header MAC; bump to v1.52 Security: - Derive the header-MAC subkey after the keyfile key is mixed in. For keyfile-only volumes it depended only on argon2id("", salt), so the header could be forged; since the data MAC doesn't cover the nonce, a forged nonce decrypted "successfully" to garbage. Breaking change for keyfile volumes from v1.50/1.51, which are recognized (never accepted) and pointed at v1.51. Password-only volumes are unaffected. - broken() deleted outputFile instead of outputFile.incomplete, leaving unauthenticated plaintext behind and deleting a file the user chose to overwrite. - Failed/cancelled deniable decrypts left the unwrapped .tmp (which has a readable header) next to the volume. Temp inputs are now tracked and removed by removeTempInput(), which only deletes files work() created and refuses to clobber an existing *.tmp. Fixes: - RS repair pass re-ran recombine/unwrap: crashed on deniable volumes, always failed on split ones. work(prepared bool) skips preparation. - Crashes on an invalid PKCS#7 byte, a <136-byte RS tail, a too-short deniable file, and a deniable keyfile volume opened without keyfiles. - Split cleanup used the wrong chunk names and globbed with metacharacter-unsafe paths. - Enter could start a second work() mid-operation; the update modal and applyUpdate could exit mid-operation. Co-Authored-By: Claude Opus 5.5 (1M context) --- Changelog.md | 15 ++ Internals.md | 4 +- VERSION | 2 +- dist/windows/installer.wxs | 2 +- src/ZeeCrypt.go | 310 ++++++++++++++++++++++++------------- src/winres/winres.json | 6 +- 6 files changed, 222 insertions(+), 117 deletions(-) diff --git a/Changelog.md b/Changelog.md index 983591b..1746ffd 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,5 +1,20 @@ > History prior to the ZeeCrypt fork belongs to the original [Picocrypt](https://github.com/Picocrypt/Picocrypt) project. New entries for ZeeCrypt will be added above this note going forward. +# v1.52 (Unreleased) + + # v1.51 (Released 08/02/2026)