Security

Convenient, but not careless

A password manager is only as good as its caution. Here is what Simply KeePass stores where, what leaves the device – and where the limits are.

End-to-end encrypted

Your vault is a KDBX 4 file, encrypted with your master password and/or your key file (key derivation with Argon2). The WebDAV server only ever sees this encrypted file. Decryption happens exclusively in the app on your device.

Master password and biometrics

  • By default the master password lives in memory only and is discarded on locking. The key file is never stored.
  • It is only stored if you turn on biometrics – in the macOS Keychain (access only after Touch ID, expiring after 24 h), in the Android Keystore (bound to the currently enrolled fingers/faces) or in the iOS Keychain (this device only, only with a device passcode, with no fallback to the passcode).
  • A new finger or face invalidates the stored password on Android and iOS.

What sits on the device

  • The connection (URL, user, WebDAV password) is stored encrypted in the Keychain or Keystore – never in plaintext.
  • The offline copy on Android and iOS is the same KDBX-encrypted file as on the server, in private app storage and excluded from backups.
  • On iOS additionally: iOS file protection, a cover in the app switcher, third-party keyboards blocked in the app.

Clipboard

Copied passwords and codes are deleted after 15 seconds and once more when locking. On Mac and iOS only if exactly your copied text is still in there. On iOS the clipboard also stays local (no Universal Clipboard) and has an expiry date enforced by the system.

What leaves the device

  • Your WebDAV server: receives the encrypted vault file. Redirects are never followed, so nobody can slip in a different file.
  • Logos: For entries with a URL, the app loads the website’s icon, falling back to DuckDuckGo’s icon service (which learns the domain this way). Only over HTTPS to public addresses – an entry’s URL can’t make the app reach into your home network.
  • Optional DeepSeek: Only if you enter a DeepSeek API key yourself, the name of an entry without a URL is sent to find a matching logo. Without a key, nothing.
  • Passwords, usernames, notes or codes never leave the device unencrypted. There’s no account, no statistics, no ads.

Autofill and passkeys

  • No plaintext index of sites or names held by the system: which entries match is only known to the app after unlocking.
  • Filling happens only by URL or linked app, never by title. Entries that merely match the same domain are marked and need a tap.
  • Website addresses are only believed from known browsers (package and signature checked). Apps have to prove via the domain’s assetlinks.json that they belong to it – or you trust them explicitly, after a warning screen, for exactly that package, certificate and domain only.
  • A passkey’s private key is never shown and can’t be copied.

Unlocking through another device

Only requests signed with the key of a device registered in the vault are shown. Nothing is released without your Approve; the answer is encrypted for a one-time key that exists for this round only. Nothing is stored on the asking device. Always compare the four-digit code.

Honestly: the limits

  • The apps have not (yet) been audited by an external party. The protocol for device approval is our own composition of standard WebCrypto building blocks.
  • From version 13, Android briefly shows a preview of the copied text.
  • A password manager doesn’t protect you on a device that is already compromised.