web-dev-qa-db-de.com

wie konvertiert man msgstore.db.crypt7 in msgstore.db von WhatsApp in Android?

Ich möchte hinzufügen, dass ich diese Nachricht automatisch in Whatsapp kontaktiert, so dass ich für mein Programm auf Whatsapps Datenbank zugreifen muss. Die Whatsapp-Datenbank ist jedoch nicht im .db-Format und im .crypt7-Format. Ich kann sie nicht verwenden. Wie kann ich Whatsapp db verwenden oder .crypt7 in .db konvertieren?

4
mahdi

Wie bereits von Ashesh erwähnt, können Sie das Tool auf der XDA-Entwickler-Website verwenden: [TOOL] WhatsApp Xtract: Backup Messages Extractor/Database Analyzer/Chat-Backup

Alternativ können Sie dies manuell wie folgt tun:

Die WhatsApp-Datenbank wird nverschlüsselt ​​unter diesem Pfad auf dem Gerät Android gespeichert:

/data/data/com.whatsapp/databases/msgstore.db

Sicherungen der Datenbank werden auch verschlüsselt ​​auf der SD-Karte in der Regel an folgendem Speicherort gespeichert:

/sdcard/WhatsApp/Databases/msgstore.db.crypt7

Der eindeutige Schlüssel für die verschlüsselten Sicherungsdatenbanken wird hier gespeichert:

/data/data/com.whatsapp/files/key

Der Zugriff auf das Verzeichnis/data/data erfordert Root-Zugriff. Alternativ kann ADB (Android Debug Bridge) verwendet werden, um die oben genannten Dateien nach dem Booten zur Wiederherstellung auf dem Gerät zu extrahieren.

So entschlüsseln Sie WhatsApp crypt7-Datenbanknachrichten:

(Befehle unten werden unter Linux ausgeführt)

  1. Extrahieren Sie die Schlüsseldatei: /data/data/com.whatsapp/files/key
  2. Extrahieren Sie die crypt7-Datei: /sdcard/WhatsApp/Databases/msgstore.db.crypt7
  3. Entschlüsselungsschlüssel aus der in Schritt 1 extrahierten "Schlüssel" -Datei extrahieren:

    • 256-Bit-AES-Schlüssel:

      hexdump -e '2/1 "%02x"' key | cut -b 253-316 > aes.txt

    • IV (Initialisierungsvektor):

      hexdump -e '2/1 "%02x"' key | cut -b 221-252 > iv.txt

  4. Strip Header in crypt7 Datei:

    dd if=msgstore.db.crypt7 of=msgstore.db.crypt7.nohdr ibs=67 skip=1

    Hinweis: Die Größe der Header-Datei in Bytes muss durch 16 teilbar sein

  5. Crypt7 entschlüsseln Datei:

    openssl enc -aes-256-cbc -d -nosalt -nopad -bufsize 16384 -in msgstore.db.crypt7.nohdr -K $(cat aes.txt) -iv $(cat iv.txt) > msgstore.db

8
moo

Entwickler bei XDA haben Werkzeuge für solche Operationen entwickelt.

Hier ist eins (nur Fenster) 

[WERKZEUG] Whatsapp Xtract

Es ist alt, aber ich bin sicher, dass es da draußen neuere geben wird.

0