Palimpsest
app.palimpsest
Zapstore Catalog Encrypted notes, diary and to-dos with hidden vaults behind one password
Palimpsest is an encrypted diary and notes app with **deniable vaults**: one password field, any number of vaults, and no way to tell from the file how many there are. Every password opens its own vault. A decoy password shows a believable diary; another shows the real one. **Experimental, not audited.** It protects against a curious partner, a thief and a quick border check. It does not protect against a forensic lab, spyware on the phone, or someone who keeps demanding passwords. If an adversary keeps copies of the file from different moments and knows a decoy password, a hidden vault can give itself away. The threat model in the source repository has the details. **Writing** - Notes in a grid with folders, tags, pins and colours; a diary with a timeline and a month calendar; to-dos - Markdown editor that hides the markers away from the line you edit - Photos and voice notes captured in memory, never in the gallery; photos cropped before they are stored, EXIF and location dropped - Links between entries, backlinks and a graph of links where you link entries by dragging one onto another - Search, search inside an entry, trash with 30-day expiry **Vaults** - Create, change the password, delete a vault (its blocks are overwritten in place) - A one-shot rule: on the next opening of this vault, destroy the vault with password X - Backup of everything, restore, export of one vault under its own password, import with merging **Privacy** - No internet permission, no trackers, no ads - Screenshots blocked unless you allow them; no preview in recent apps - Incognito keyboard, no autofill, copied text cleared after 60 seconds - Locks on screen off, after idle time and in the background The core is written in Rust: Argon2id, XChaCha20-Poly1305 and BLAKE2b; the container is a pile of 4096-byte blocks that all look like random bytes, with random chaff added all the time.
First release: Nov 12, 2026, 1 total release.
Most recent release: Nov 12, 2026.
Appears in 0 app stacks.
0 sats / 0 zaps received in the past year.
Sats Received
Underlying data available via MCP: app_zaps, app_releases.
Zap Count
Underlying data available via MCP: app_zaps, app_releases.
Releases
- Nov 12, 2026 0.4.0## Palimpsest 0.4.0 ### Sync and transfer - Sync between phones through one file in Google Drive, Syncthing, a Cryptomator vault or anything the system file picker offers. The app still has no internet access. Sync needs no password, merges every vault at once and never shows which vaults exist. See "Syncing between phones" in the README. - A new phone joins by replacing its container with the sync file; the app offers it. - "Merge with a copy": one sync by hand with any copy of the container, such as an older backup. - Export of one vault as Markdown files in a ZIP, unencrypted, behind a warning.
More…
- Restoring a backup asks for the password of a vault in it, so the wrong file cannot replace everything. ### Writing - Tables, edited as a grid: rows and columns from the formatting bar, column alignment. - Code blocks highlighted by language (kotlin, python, rust, js/ts, c/c++, go, sql and more). - Drafts are saved every 2 minutes while you type and when you leave the app. ### Locking - "Lock after leaving the app" can be set up to specific time, or never. - The inactivity timer counts only while the app is on screen. ### Security and format - Chaff comes in rarer, larger bursts (about 23 MB a year): a hidden vault as active as the decoy is caught by file growth in 13% of 30-day snapshot pairs instead of 48% (T5). - A password change writes a revocation, so an old password stays dead even if an old copy of the file is merged back. - Erased revisions keep the random part of their nonce, so a merge or sync never brings them back. A vault destroyed by the wipe rule or deleted cannot come back through sync on that phone, and its password finds nothing. - Imported attachments take their seed from their content, so a crafted file cannot cause a nonce reuse. - The nonce cache can no longer disagree with the file after a crash. - A password that opens two vaults after a merge pours one into the other. ### Documentation - The threat model now states plainly that one copy of the file plus the decoy password works like two snapshots: deniability from one snapshot holds only without a password. - The specification covers merging, sync, erasing and the new procedures; the T5 simulation has the one-copy scenario. ### Other - License: GPL-3.0-or-later. - GitHub Actions updated. - Settings end with links to star the project and report problems on GitHub.