Crush — Format Referenz

Erstellt aus crush/data/build_formats_db.py beim Commit 640a2a9928f4 am 2026-10-21 06:46:19 UTC.

← Alle Formate

LMDB / libmdbx Database

FormatLMDB / libmdbx Database
KurznameLMDB
KategorieDatenbank
PlattformenWindows, macOS, Linux, iOS, Android
Crush UnterstützungNoch nicht unterstützt
StatusÜberprüft
Zuletzt überprüft2026-10-06

Forensische Relevanz

Memory-mapped Key-Value-Store, aufgebaut als Copy-on-Write-B+-Tree. LMDB und dessen Ableger libmdbx teilen das Design, sind aber nicht dateikompatibel. Ein Environment besteht aus einer Datendatei und einer Lock-Datei: data.mdb und lock.mdb in einem Verzeichnis (LMDB), mdbx.dat und mdbx.lck (libmdbx) oder im Einzeldateimodus ein beliebiger Dateiname mit einer Lock-Datei mit dem Suffix -lock (LMDB) bzw. -lck (libmdbx). Im Einzeldateimodus hat die Datendatei oft gar keine Endung, daher ist die Meta-Page-Signatur der verlässliche Indikator. Die Datendatei beginnt mit zwei (LMDB) bzw. drei (libmdbx) Meta Pages mit der Signatur, der ID der letzten committeten Transaktion und den Roots des Free-Page-Trees und des Main Trees; benannte Sub-Datenbanken sind Einträge des Main Trees. Von einer Transaktion freigegebene Pages werden im Free-Page-Tree verwaltet und später wiederverwendet, daher können gelöschte und überschriebene Datensätze in nicht mehr referenzierten Pages erhalten bleiben, und die älteren Meta Pages verweisen auf frühere committete Zustände. Die Lock-Datei enthält nur die Reader Table und keine Datensätze. Header-Felder verwenden die Byte-Reihenfolge des erstellenden Systems (Little-Endian auf gängigen Plattformen). In LMDB 0.9 hängt der Offset der Signatur von der Größe der Page-Nummer des Builds ab: 16 bei 64-Bit, 12 bei 32-Bit. Verwendet von OpenLDAP und vielen eingebetteten Anwendungen, z. B. Monero-Node-Daten (lmdb/data.mdb), Ethereum-Clients wie Erigon und Reth (libmdbx) und Flutter-Apps mit Isar (siehe Isar Database).

Signaturen

OffsetHex ASCII (nicht druckbar als .)Beschreibung
Offset 16 (0x10)DE C0 EF BE 01 00 00 00........LMDB-0.9-Meta-Page: Magic 0xBEEFC0DE und Datenversion 1 (Little-Endian, 64-Bit-Build)
Offset 12 (0xC)DE C0 EF BE 01 00 00 00........LMDB-0.9-Meta-Page: Magic 0xBEEFC0DE und Datenversion 1 (Little-Endian, 32-Bit-Build)
Offset 20 (0x14)03 11 4C EF BD 9D 65 59..L...eYlibmdbx-Meta-Page: 56-Bit-Magic 0x59659DBDEF4C11 mit Datenversion 3 (Little-Endian)

Bekannte Dateiendungen

.mdb, .dat

Referenzen

Diesen Eintrag zitieren

Crush-Format-Referenz, „LMDB / libmdbx Database“. https://kalink0.github.io/crush-forensics/formats/de/lmdb/ — Quelle: crush/data/build_formats_db.py zum Commit 640a2a9928f4e36a976b89901512a8dce824d093, erstellt 2026-10-21 06:46:19 UTC.

Eintrag in der Quelldatei bei diesem Commit · Änderungshistorie der Quelle · Korrektur melden