Habr•October 18, 2026•🇷🇺Translated from Russian

Developer Builds Password Manager with Plausible Deniability Using Argon2id and XChaCha20-Poly1305

A developer who previously created a simple password manager using Electron, React and a symmetric cipher from npm has now rebuilt the application in Tauri and Rust, adding a robust implementation of plausible deniability.

The original design deliberately avoided any “wrong password” screen: any password either opened an existing vault or created a new empty one. This behavior was intended to provide plausible deniability similar to VeraCrypt hidden volumes, but on ordinary files stored in a folder.

Why the first version failed

The initial implementation stored each vault under a filename that was a bcrypt hash of the master password. This created an oracle: an attacker could simply hash a wordlist and match filenames. Additional folders named history/ and sync/ further revealed which vaults were actively used.

Current design

The updated format uses Argon2id (64 MiB memory, t=3, p=1) with one installation-wide salt to derive the key. Each file begins with a 24-byte nonce followed by XChaCha20-Poly1305 ciphertext. No version numbers, headers or magic bytes are present; all metadata resides inside the authenticated ciphertext.

File names are 32 random hexadecimal characters. Vaults are padded to the next power-of-two size bucket (4 KiB, 8 KiB, 16 KiB, …) so that small and large vaults appear identical on disk.

  • At first launch the application automatically creates two decoy files filled with random bytes.
  • After every write operation, creation, modification and access timestamps of all files in the folder are synchronized.
  • History and synchronization records are stored as additional encrypted files containing a “kind” field inside the ciphertext.

The developer notes that the scheme protects against a single snapshot of the disk but remains vulnerable to multiple snapshots taken over time, NTFS USN journals, Windows shadow copies or Time Machine backups.

Related articles

Habr•Privacy & Surveillance

LxBox Evolves from VPN Client to Comprehensive Network Traffic Management Ecosystem

LxBox has grown from a personal Android client for sing-box into a full ecosystem spanning mobile, desktop, and router platforms. The project now supports a wide range of VPN and proxy protocols within a single routing framework, allowing users to manage corporate SSL VPNs, home WireGuard connections, and proxy servers together. Key security features include default ingress blocking to prevent unauthorized reverse connections through VPN tunnels and protections against traffic leaks via excluded applications. The developer introduced progressive configuration levels, from one-click WARP setup to advanced JSON editing and AI-friendly documentation. The core sing-box-lx fork ranks among the top sing-box derivatives and powers third-party tools such as the upcoming NekoBox 6. LxBox is available on Google Play, F-Droid, and GitHub, with desktop launcher support for Windows 7 and later, macOS, and Linux.

Habr•Privacy & Surveillance

Understanding Russia's TSPU: How DPI Filtering, DNS Manipulation and Traffic Throttling Work

Russia's TSPU system combines hardware filters from RDP.ru with EcoFilter and EcoDPI software to perform both simple IP/port/transport blocking and advanced protocol recognition. The platform inspects DNS queries, SNI fields in TLS handshakes, QUIC packets and HTTP headers to enforce domain blacklists or apply throttling. When simple blocking fails, operators fall back to traffic shaping that drops packets or limits bandwidth after an initial window. Multiple bypass techniques including encrypted DNS tunnels, ECH, and specialized proxies such as Hysteria 2, NaiveProxy and Shadowsocks are examined in detail. The article also outlines future developments including expanded residential whitelists and neural-network-based traffic classification.

Habr•Privacy & Surveillance

ONYX 2.0 Removes Central Servers for Fully Decentralized Tor-Based Messaging and Calls

ONYX 2.0-beta marks a major shift from its previously centralized design to a serverless architecture that relies entirely on Tor for all communications. Each user account is now represented solely by a cryptographic key pair generated on first launch, with recovery handled through a 12-word seed phrase. Devices connect directly via onion services, and the application bundles its own Tor daemon on desktop platforms while using tor-android on mobile devices. Voice calls are supported through an embedded local TURN server, delivering acceptable quality with 1-3 second latency despite the anonymity overhead. Message delivery now depends on recipient availability, with undelivered messages stored locally on the sender and retried automatically. The update deliberately removes features such as HTTP or SOCKS5 proxies and link previews to prevent IP leaks or external traffic. Developers released the beta to gather feedback on stability across network changes and multi-device scenarios.

Habr•Privacy & Surveillance

Privacy-Focused Browser Tool Compresses PDFs Locally Without Uploading Sensitive Documents

A developer created a PDF compression tool that runs entirely inside the browser to protect sensitive personal and professional documents from third-party servers. The solution addresses repeated situations where embassy submissions, financial presentations, contracts, and internal reports exceeded size limits, forcing users to choose between installing desktop software or risking data exposure through online services. The tool reduces scanned and photographic PDFs by 66 to 97 percent depending on quality settings while honestly reporting weaker performance on text-heavy files compared with Ghostscript. It works on both desktop and mobile platforms, including iPhone and Android, requires no installation, and continues functioning offline after the first page load. On mobile devices the application respects memory constraints by limiting images to four megapixels, preserving readability for A4 documents intended for printing. The project originated from a single evening script built around Ghostscript and evolved into a full web application after similar compression needs recurred across multiple devices and locations.