DigitalForensics

70 13 63 23

WhatsApp teknisk: lokal database, backup og hvad en chat‑eksport mangler

WhatsApp teknisk: lokal database, backup og hvad en chat-eksport mangler

Forside › iPhone-forensik · Gennemgået oktober 2026 · Af John Nielsen

WhatsApp gemmer alle beskeder i en lokal database på telefonen, og den rummer langt mere end den tekstfil, appens egen eksportfunktion laver. Databasen har entydige besked-id’er, tidsstempler med millisekunder, leverings- og læsestatus, svar og citater, redigeringer, reaktioner og gruppedeltagere. En chat-eksport er en redigerbar tekstfil med tidsstempler i minutter og uden de fleste af disse oplysninger. I en sag, hvor ægtheden af en samtale kan blive bestridt, bør beskederne derfor sikres fra databasen ved et udtræk, med eksporten som supplement. Sådan laves eksporten, og hvad den kan bruges til, står på hub-sitet: → Sådan eksporterer du en WhatsApp-samtale

Hvor data ligger

På iPhone ligger beskederne i en SQLite-database i en delt container for WhatsApp, typisk benævnt ChatStorage.sqlite, sammen med mapper til medier og en database med kontakter. Databasen indgår i en lokal iOS-backup og kan dermed sikres ved et logisk udtræk. → iOS-backup: krypteret, ukrypteret og indhold

På Android ligger hoveddatabasen, typisk msgstore.db, i appens private område, som almindelige apps og backupfunktioner ikke har adgang til. WhatsApp laver desuden dagligt en krypteret lokal backup af databasen på telefonens delte lager. Nøglen til den lokale backup ligger i appens private område. Adgang til den private database kræver derfor et udtræk, som forensiske værktøjer kan lave med telefonens kode og samtykke, ofte ved hjælp af særlige metoder til netop WhatsApp. Navne, placeringer og krypteringsformat for de lokale backupfiler har skiftet flere gange, hvilket ses på filendelser som crypt14 og crypt15, så værktøjets understøttelse af den konkrete WhatsApp-version skal kontrolleres.

Medier som billeder, video og talebeskeder ligger som separate filer. Databasen henviser til dem med sti, størrelse og ofte en hashværdi. Medier, der er slettet fra telefonens lager, eller som aldrig blev hentet ned, kan mangle, selv om beskeden findes.

Hvad databasen indeholder

Strukturen varierer med versionen, men databasen rummer typisk:

  • Beskeder med entydigt id, samtale, afsender, tekst, type, tidsstempel for afsendelse eller modtagelse og status.
  • Kvitteringer for levering og læsning, i grupper pr. deltager.
  • Svar og citater med henvisning til den oprindelige besked.
  • Redigeringer og tilbagekaldte beskeder (“slettet for alle”), hvor den oprindelige tekst ikke altid bevares.
  • Reaktioner, gruppedeltagere med ind- og udmeldelser og administratorændringer.
  • Opkaldslog for WhatsApp-opkald.
  • Indstillinger for forsvindende beskeder pr. samtale.

Tidsstempler gemmes typisk som millisekunder siden 1. januar 1970 UTC på Android og som Apples tidsformat på iPhone. → Tidsstempelformater og konvertering

Slettede beskeder kan i begrænset omfang findes i databasens frie sider og skrivejournal. Realistiske forventninger på tværs af apps står i Slettede beskeder på telefonen, og tilknyttede computere og browsere i Tilknyttede enheder i beskedapps. → SQLite i forensic: WAL-filer, frie sider og slettede rækker

Cloud-backup

WhatsApp kan tage backup til iCloud på iPhone og til Google Drive på Android. Backuppen er knyttet til telefonnummeret og kontoen. Brugeren kan slå end-to-end-kryptering af backuppen til, beskyttet med en adgangskode eller en krypteringsnøgle på 64 cifre, og nyere versioner tilbyder også en adgangsnøgle knyttet til enhedens skærmlås. WhatsApp oplyser, at adgangskoden eller nøglen er den eneste vej ind i den krypterede backup, og at WhatsApp hverken kan nulstille den eller gendanne backuppen uden den. Gendannelse kræver desuden samme telefonnummer og samme iCloud- eller Google-konto som ved backuppen.

Cloud-backuppen er relevant, hvis telefonen er væk, nulstillet eller beskeder er slettet efter seneste backup. Den gendannes typisk til en testtelefon med samme nummer, hvilket kræver kontoejerens medvirken og ændrer kontoens tilstand. Det er en lovlig vej med samtykke, men den skal planlægges og dokumenteres omhyggeligt.

Hvad chat-eksporten mangler

Den indbyggede eksport laver en tekstfil pr. samtale, eventuelt med medier. Sammenlignet med databasen mangler:

  • Entydigt besked-id · Nej
  • Tidsstempel med millisekunder og tidszone · Kun minut i telefonens lokale visningsformat
  • Leverings- og læsestatus · Nej
  • Hvilken besked der svares på · Nej
  • Redigeringshistorik · Højst en markering af, at beskeden er redigeret
  • Gruppeændringer med detaljer · Delvist som systembeskeder
  • Medier · Kun hvis valgt, og evt. med begrænsning

WhatsApps hjælpesider har angivet et loft over, hvor mange af de seneste beskeder en eksport kan rumme, lavere med medier end uden. Grænsen kan ændre sig, så kontrollér, om den ældste besked i eksporten svarer til samtalens begyndelse. En samtale, der er sat som begrænset chat, kan ikke eksporteres.

Eksporten er almindelig tekst og kan ændres i et tekstprogram uden spor. Den bærer ingen indbygget integritet. Hash af eksporten ved modtagelsen viser kun, at filen ikke er ændret derefter, ikke at den svarer til telefonen. Eksporten er god til gennemlæsning og bilag, men ikke som eneste grundlag, hvis ægtheden bestrides.

Andre kilder

  • WhatsApp på computer og web: Desktopklienten har sin egen lokale database med de beskeder, der er synkroniseret til den. Den kan være en kilde, hvis telefonen er væk, men den dækker kun perioden efter tilknytningen.
  • Modpartens telefon: Samme samtale ligger hos den anden part, med egne id’er og status. Sammenligning kan bekræfte eller afkræfte en fremlagt version.
  • WhatsApp Business: Virksomheders konti bruger en særskilt app med sin egen database, der i opbygning ligner den almindelige, men skal sikres for sig.
  • Notifikationer og systemdata: Kan i nogle tilfælde rumme uddrag af beskeder.

Sikring

  1. Isolér telefonen fra netværket for at undgå forsvindende beskeder, synkroniseret sletning og fjernsletning. Vær opmærksom på, at forsvindende beskeder kan blive fjernet ved næste åbning af appen, uanset netværk.
  2. Lav det mest omfattende lovlige udtræk af telefonen, så databasen, journaler og medier kommer med.
  3. Lav chat-eksporten bagefter, hvis den skal bruges til gennemlæsning, og notér, at den er lavet efter udtrækket.
  4. Sikr cloud-backup og desktopklienter, hvis de er relevante, med kontoejerens medvirken.
  5. Dokumentér appens version og telefonens tidszone.

Kontrol af en fremlagt samtale

Når en part fremlægger en eksport eller skærmbilleder, og den anden part bestrider dem, kan databasen bruges til kontrol. Fremgangsmåden er:

  1. Find samtalen i databasen ud fra telefonnummer eller gruppe-id, ikke ud fra kontaktnavn.
  2. Match beskederne på tekst og tidspunkt. Tag højde for, at eksporten viser lokal tid i minutter, mens databasen har UTC i millisekunder.
  3. Se efter afvigelser: beskeder i eksporten, der ikke findes i databasen, beskeder i databasen, der mangler i eksporten, ændret tekst eller ændret rækkefølge.
  4. Forklar afvigelser teknisk, før de tolkes som manipulation. Redigeringer, sletninger for alle, forsvindende beskeder og eksport fra en anden enhed kan give naturlige forskelle.
  5. Sammenlign med modpartens telefon, hvis den er tilgængelig. To uafhængige databaser, der stemmer overens, er et stærkt bevis.

Den samme metode bruges for skærmbilleder, hvor billedets egne kendetegn også vurderes. → Falske chatbilleder: verifikation mod kildeenheden og appens database

Fejlkilder i fortolkningen

  • Tidszone: Eksporten viser telefonens lokale tid uden zone. Databasen viser UTC. Blandes de, bliver rækkefølgen forkert ved sammenligning med andre kilder.
  • Læst er ikke læst: Læsekvitteringer kan være slået fra, og “læst” betyder, at samtalen var åben på en enhed, ikke at personen har forstået indholdet.
  • Flere enheder: En besked kan være sendt fra desktopklienten, ikke fra telefonen.
  • Kontaktnavne kommer fra telefonens adressebog og kan være ændret. Telefonnummeret er den stabile identifikator.
  • Parserfejl: Databaseskemaet ændres jævnligt. Afgørende fund kontrolleres direkte i databasen.

Hvad databasen kan og ikke kan bevise

Databasen kan vise, at en besked med et bestemt id og indhold blev sendt eller modtaget fra et bestemt nummer på et bestemt tidspunkt og fik en bestemt status. Den kan ikke vise, hvem der fysisk skrev beskeden. Den juridiske side af WhatsApp som bevis er beskrevet her: → WhatsApp som bevis i civile sager

Dokumentation

Angiv udtrækstype, værktøj og version, WhatsApp-version, databasens hash, hvilke samtaler der indgår, tidszone for alle tidsstempler, og hvordan eventuelle eksporter og cloud-backups er sikret.

Kilder og versioner

Senest gennemgået: oktober 2026.

Næste skridt

Del af: iPhone-forensik

Læs også: Slettede beskeder på telefonen: hvad kan realistisk gendannes? · sms.db og iMessage: struktur og fortolkning

→ Mobilforensik i civile sager · Haster det? Forensisk sikring (hastesager koster ekstra) · For sagkyndige · Tlf. 70 13 63 23 · Digital bevissikring hos Nielco IT

Skrevet af John Nielsen, IT‑sagkyndig og indehaver af Nielco IT. Selvstændig siden 2009 og mere end 30 års erfaring med IT‑sikkerhed. Har været IT‑sagkyndig i danske retskredse og ved Den Fælles Europæiske Patentdomstol (UPC). Om John Nielsen · LinkedIn · Redaktionel politik

John Nielsen, IT-sagkyndig

Brug for en forensisk undersøgelse?

Skriv kort, hvilke systemer eller enheder det drejer sig om, og om noget haster, så vender jeg tilbage. Kun civile sager.

Tak for din henvendelse. Jeg vender tilbage hurtigst muligt.