Crush — Format Reference

Built from crush/data/build_formats_db.py at commit 640a2a9928f4 on 2026-10-21 06:46:19 UTC.

← All formats

SQLite Database

FormatSQLite Database
Short nameSQLite
Categorydatabase
PlatformsWindows, macOS, Linux, iOS, Android, QNX
Crush supportSupported (SQLiteParser)
StatusReviewed
Last reviewed2026-10-04

Forensic relevance

The dominant embedded database on iOS, Android, macOS, and Windows. Used by virtually every app for messages, call logs, contacts, browser history, location data, and app state. Identified by a 16-byte magic string ('SQLite format 3\000') at offset 0. 100-byte file header contains: page size, write version (rollback=1, WAL=2), encoding, and change counter. Key forensic recovery mechanisms: (1) Freelist — deleted pages retained in a free-page list; records survive until overwritten by new insertions. (2) Freeblocks and page slack space — deleted records within active pages may survive in freeblocks or partially in the unallocated area below the live cell pointer array. (3) WAL (Write-Ahead Log) — in WAL mode, the -wal file contains uncommitted and recently checkpointed pages; must be analysed alongside the main DB. WAL slack: after checkpoint, old pages remain in the WAL until overwritten from the start — prior database states are recoverable. CRITICAL: opening a WAL-mode database with a standard SQLite driver triggers a checkpoint, irreversibly committing and clearing the WAL — use read-only forensic tools or low-level parsing only. sqlite_sequence table gaps reveal deleted AUTOINCREMENT rows.

Signatures

OffsetHex ASCII (non-printable as .)Description
offset 0 (0x0)53 51 4C 69 74 65 20 66 6F 72 6D 61 74 20 33 00SQLite format 3.SQLite magic string ('SQLite format 3\x00')

Known extensions

.db, .sqlite, .sqlite3, .db3

References

Cite this entry

Crush Format Reference, “SQLite Database”. https://kalink0.github.io/crush-forensics/formats/sqlite/ — source: crush/data/build_formats_db.py at commit 640a2a9928f4e36a976b89901512a8dce824d093, built 2026-10-21 06:46:19 UTC.

Entry in the source at this commit · Change history of the source · Report a correction