Skip to content

A tool to download encrypted WhatsApp backups from Google Drive and decrypt them locally.

License

Notifications You must be signed in to change notification settings

giacomoferretti/whatsapp-backup-downloader-decryptor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WhatsApp Backup Google Driver Downloader Decryptor

PyPI - Version

Prerequisites

  • End-to-end encrypted backups on Google Drive
  • 64-digit encryption key (PASSWORD IS NOT SUPPORTED)

Usage

Using PyPi

  1. Install the wabdd package

    pip install wabdd

    or by using pipx

    pipx install wabdd
  2. Get token (change with your Google account email used in WhatsApp backup settings)

    wabdd token YOUR_GOOGLE@EMAIL.ADDRESS
    • If you need additional information, check the guide
  3. Download backup

    wabdd download --token-file /tokens/YOUR_GOOGLE_EMAIL_ADDRESS_token.txt

    or with filters (e.g. excluding videos)

    wabdd download --exclude "Media/WhatsApp Video/*" --token-file /tokens/YOUR_GOOGLE_EMAIL_ADDRESS_token.txt
    
  4. Decrypt backup (only if end-to-end encryption is enabled)

    wabdd decrypt --key-file keys/PHONE_NUMBER_decryption.key dump backups/PHONE_NUMBER_DATE

Getting the 64-digit encryption key

Creating a new backup

  1. Under Settings > Chats > Chat backup > End-to-end encrypted backup

  2. Tap on Turn on

  3. Choose Use 64-digit encryption key instead

    64-Digit Key Step 1
  4. Generate your 64-digit key

  5. Copy the value into a text file (e.g. in this case bf902e3b590af0ba781b75134c08026614ef6af12b754ee0139ebbd25f58481c)

    64-Digit Key Step 2

Using root access

  1. Copy the /data/data/com.whatsapp/encrypted_backup.key to your pc

  2. Run the following script

    with open("encrypted_backup.key", "rb") as f:
        print(f.read()[-32:].hex())
  3. Copy paste the output string into a new file

Getting the oauth_token

  1. Visit https://accounts.google.com/EmbeddedSetup

  2. Login using the Google account associated in the WhatsApp backup settings.

  3. You will get the following screen

    OAuth Step 1
  4. Now click on "I agree", the form will load indefinitely.

    OAuth Step 2
  5. Open the Developer Tools using F12, CTRL+SHIFT+I or by right-cliking the page > Inspect

  6. Now go to the Application tab, under Cookies select https://accounts.google.com

  7. Copy the value of the oauth_token cookie

    OAuth Step 3

Frequently Asked Question

Does this tool support normal backups (.crypt14)?

No, this tool only supports end-to-end encrypted backups .crypt15. Follow #18 for more.

I made the backup using a password instead of the 64-digit encryption key. Can I use this tool?

No, this tool only supports end-to-end encrypted backups that use the 64-digit encryption key. Follow #14 for more.

💖 Support My Work

If you find my projects useful, consider supporting me:

Donate on Liberapay
Support me on Ko-fi
Donate via PayPal

Your support helps me continue improving these tools and creating new ones. Thank you! 🙌

If you can't donate, I also appreciate stars ⭐ on my repositories!