Expand description
trove-core — kdbx I/O and vault primitives.
Format compatibility with KeePassXC is non-negotiable: this crate must
round-trip any valid .kdbx file. Scope is KDBX 4 with a password master
key, optionally composited with a keyfile (*_with_key; any format
KeePassXC accepts). Hardware tokens and KDBX 3 land later.
As of v0.0.10, trove-core depends on the published keepass = "0.12" crate
directly — no more vendored fork. The earlier vendored 0.7.33 + three
binary-attachment patches is gone; upstream’s PR #294 already restructured
attachments as first-class Database-owned objects, and the new
EntryMut::add_attachment(name, Value::Unprotected(bytes)) /
EntryRef::attachment_by_name(name) pair does what we need without any
local patches. The _SDPM_BIN_* Protected-string fallback that v0.0.4
introduced for backwards compat is also gone, since no v0.0.1–0.0.3.x
production vaults exist (the project hadn’t shipped yet).
Structs§
- DbInfo
- Non-secret database facts for
db-info. - EntryId
- Stable identifier for an entry within a vault.
- Entry
Summary - Non-secret summary of an entry. Suitable for listing without unlocking secrets.
- Merge
Summary - Counts from a
Vault::merge_from, by merge-event kind. - Totp
Code - One generated TOTP code plus its validity window, for display.
- Vault
- An open, in-memory vault.
Enums§
Constants§
- RECYCLE_
BIN_ GROUP - Name of the recycle-bin group we create on demand, matching KeePassXC’s
default so both tools resolve the same bin. The authoritative pointer is
Meta/RecycleBinUUID; the name is only cosmetic.