DeltaSync

DeltaSync

Encrypted KeePass sync — requires your own self-hosted server.

Hans Bjørck-Braun Cloud Storage & File Sync Password & 2FA Security

Description

⚠ REQUIRES YOUR OWN SERVER. DeltaSync does nothing on its own. You must first
install and run the self-hosted DeltaSync server (PHP + PostgreSQL), or have
access to someone else's, and enrol this device against it. There is no public
or default server — without one, this app has nothing to sync and cannot even
be set up. If you just want a standalone KeePass app, this is not it: use
KeePass2Android or KeePassDX instead.

DeltaSync keeps a KeePass (.kdbx) database synchronised across your devices
through a server that only ever sees encrypted blobs. Your master password
never leaves the device, and the server cannot read entry titles, usernames,
passwords, notes or attachments — even if it is compromised.

How it differs from other KeePass sync solutions:

• Entry-level deltas: only changed entries cross the wire, not the whole
.kdbx file. Fewer bytes uploaded, fewer wholesale conflicts.

• Real end-to-end encryption: per-entry XChaCha20-Poly1305 with a key
derived from your master password via Argon2id and HKDF-SHA256. The
server stores opaque ciphertext.

• Concurrent edits merge: two devices editing different entries (or even
different fields of the same entry) merge cleanly. Field-level
last-writer-wins on conflicts.

• Multi-user sharing without key escrow: NaCl sealed-box wraps the
database master key to each recipient's device public key. The server
sees who has access, not what they can decrypt.

• Open source from end to end: the AGPL-3.0 server (PHP/PostgreSQL),
GPL-3.0 desktop client (Go), and this GPL-3.0 Android client are all
published. You can self-host the server, or use someone else's.

This app pairs with KeePass2Android or KeePassDX as your editor — DeltaSync
itself is a background sync service and does not display your passwords.
You point it at a .kdbx file on the device, supply the master password
once, and it keeps the file in sync with the server through WorkManager.

Project: https://gitlab.com/Star95/keepass-deltasync
Website: https://deltasync.bjoerck-braun.dk

Groups sync too: group structure and which group each entry belongs to stay
in sync across devices, alongside the entry contents.

Status: v0.4 — the sync layer (entries + groups) is feature-complete and
tested; the UI is functional but still minimal. Treat as beta.

What’s new (0.4.2)

Self-hosting on a local network, and a phone can now start on its own.

• A server on your own network can be reached over plain HTTP. The app refused unencrypted connections outright, which ruled out the setup it exists for — a NAS or a box on the LAN with no certificate. The enrollment screen marks an http:// address as unencrypted while you type it, so the choice is yours to make knowingly. What travels is encrypted vault data and a token either way.
• You can create a database from the phone

Versions

Version Date Size Requires Android Download
0.4.2 current
bfeef009dd536902…
2026-09-12 23 MB API 23

Permissions

What the app asks the system for. Android only grants sensitive access after you confirm it.

  • Internet accessSend and receive data over the internet.
  • Network stateCheck whether and how the device is connected.
  • CameraTake photos and videos.
  • BiometricsUnlock with fingerprint or face.
  • FingerprintUnlock with a fingerprint.
  • Prevent sleepingKeep the device from going to sleep.
  • Run at startupStart automatically after the device is switched on.
  • Foreground serviceKeep running in the background, visible in the status bar.
Show 1 more permissions
  • deltasync.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

Comments