BLU bricked, SPFlash Read yields encrypted contacts2.db, what next - Android General

I have a BLU phone that was my only source of contacts with no Google or backup (yes, I know). It was dropped a significant distance. It won't show any indication of charging or powering up, no lights or sounds. However when I plugged in the USB port I noticed the toggling of the USB driver install, typical for a MTK device so I decided to try to read from it with SPFlash tool.
To try to get at the contacts I downloaded a factory restore ROM and loaded the scatter file to see what location I needed to seek to find the user data for download. I first found userdata.img location from the factory scatter file and set up SPF under the ReadBack tab and used the Add button to specify a range beginning with and including the same numbers where the scatter file indicated the user data was, plus with SPF tool I stated I wanted the user data area read and saved as userdata.img. Now clicking on the read and then plugging the phone in with the read button pre-pushed, the SPF tool took off reading as soon as the dead phone USB was plugged in, operating just like I was flashing or writing to the phone. (Excitement was mounting.)
From here on my Windows machine I installed DiskInternals Linux Reader and mounted the userdata.img with that software and was able to navigate to the db file containing the contacts and the android call list located at
/data/data/com.android.providers.contacts/databases/contacts2.db.
Now the DiskInternals software allowed me to save the contacts2.db as a Windows file anywhere on the laptop but when I tried to open it with SQLite, it said the file is encrypted. I viewed the file using a Linux friendly editor (Context) and saw some names and numbers in readable text, but they were surrounded by tons of formatting and unprintable characters. (Looked something like a MS Word docx file.) I also tried the FireFox plugin for SQLite in addition to the SQLiteManager and the SQLite browser software. All of them said the file had a password that was needed to open it. (Exit excitement.)
Now it looks like my options are to either try to find someone or thing that can hack the password of the contacts2.db, locate the password perhaps hidden somewhere in a system.img that I can attempt to extract via the same method as I did the userdata, or I can try to assemble a working group of restore "parts" which include this userdata.img, adding it to some mix of the restore file and other IMG files I can possibly extract from the "bricked all but for flash tool" mostly dead phone. Theoretically, with such a reassembled package of IMG files I would then go look for an exact same model of this bricked phone and then try to load the new assembly of IMG files onto that good used phone.
I am open for suggestions of how to solve the puzzle. The objective is to get a list of readable contacts from the crashed phone and ideally get them exported into a format that can be input into another phone.
Thanks in advance.
P.S. Android 5.0 on the phone

Related

Activesync restore

Today I lost all the data on my phone.. no problem I thought, I shall do a restore using my backup activesync makes every time i plug my phone in, so all is fine and dandy. When it gets about half way through the restoration, activesync crashes (always at the same point). It is during processing a file called fldr1001dd8.
This means I cannot fully restore my device - very annoying!!
Can anyone help with this... can I make it so it skips errors instead of crashing? Any help at all appreciated!! Device is a Blue Angel, using ActiveSync 4.1
You want to download a free utility called STGViewer - this utility allows you to examine the contents of the backup file activesync creates so you can identify which data you want restored. If there is a corrupt file then you can decide not to restore that particular one but retrieve everything else.
Thankyou so much, I will try that!!
OK I have found it, but I cant work out how to delete a file from the archive with it. All it seems able to do is 'copy' files out of the archive :-(
Any tips?
You cannot delete individual files from the .stg file but the program does allow you to restore selected folders and files. So you can restore Program Files folder all at once - if that works then restore My Documents folder and so on.
You may find that by restoring individually there may not be any corrupt files. But if there are, then you just select everything else except the corrupted file - you can use drag and highlight to speed things up. A little bit tedious but at least you can get all your files back from a bad .stg file.
BTW, the file you mentioned is in Pegasus Databases which are system files
Have you used the program yourself Ian? If so could you please help me with the restore folder button.. when I select a folder, then the restore folder option on the menu, nothing happens. This is very frustrating!
Also, when I extract the files from the pegasus database and put them on the phone, the pegasus folder shows in the phone's file manager (obviously, because I just put it there). How do I restore them to the (presumably hidden) folder, where they are meant to be?
I appreciate all help on this matter, all I need back are my contacts, appointments and message data etc, the rest I can start afresh with.
No I have not used this to restore an entire phone, only to retrieve individual files. It does sound like you will need to start afresh and just use STGViewer to recover personal files from My Documents etc. Most installed programs in Program Files will work fine if restored via STGViewer- there is often no need to actually use an installation program as many programs work as standalone folders.
If you have synced with your PC previously, all your contacts, notes and messages will be in Microsoft Outlook so you can use Activesync to restore these back onto your phone. (assuming you had opted to sync these items)
I would suggest in future that you use Xbackup in the Programs folder to regularly save your contacts/notes data into permanent Storage. I also from time to time make a copy of my .stg file so that I do not need to start anew if my current .stg file is corrupted. Good luck!

[Q] IMEI has gone after wipe

Hello, I have a jiayu G3T ( G3QCT ) with JB Android 4.2.1 installed , but yesterday it occurred to me to look for a custom rom 4.2.2 , I downloaded the rom, and follow the instructions ( wipe data / factory reset wipe cache && && wipe dalvik ) then install the new rom, everything seems to be right , but when the phone rebooted , I noticed that said " INVALID IMEI " and did not detect the SIM card ...
I have no backup of the IMEI ( if I have the sticker underneath the battery)
I reinstalled the rom I had before jiayu , which comes standard rooted ,I have tried uncle tools and the application of jiayu , I entered the engineer mode so I went to connectivity CDS information Radio information, phone 1 & 2 wrote 2 lines (one for each option )
AT + EGMR = 1.7, " IMEI "
AT + EGMR = 1.10 , " IMEI "
but when you click on send command says " command failed to send, even after pressing repeatedly says " command was mSent " but on reboot, nothing has changed, and the IMEI is still not valid .
I tried the mtkdroidtools but says it was all right , the result is the same, nothing changes
I also tested the MAUI META 3G & IMEI and SN WRITER but I have not gotten any results ...
Someone could tell me how to fix it? thanks
I'd suggest you re flash stock rom using SP Tools, then use SN Gen to create a MP0B_001 file. Then place the generated file on your SD card, use root explorer, copy the file you have placed on the SD card and move it to /data/nvram/md/NVRAM/NVD_IMEI/, and set the file's permission to rw-rw----.
Then reboot and enjoy.
stock rom
and where i cant get that stock rom? could you link it to me?
sn_gen
ViKtory36 said:
I'd suggest you re flash stock rom using SP Tools, then use SN Gen to create a MP0B_001 file. Then place the generated file on your SD card, use root explorer, copy the file you have placed on the SD card and move it to /data/nvram/md/NVRAM/NVD_IMEI/, and set the file's permission to rw-rw----.
Then reboot and enjoy.
Click to expand...
Click to collapse
the stock rom could be any of http://www.jiayu.es/software.php?soft&jiayu=G3QCT ?
I have used (4.2.1)ROM Oficial Jiayu.es 20131203-000001 (the latest) and sn_gen to recover my IMEI.... but after copy and set the permissions, and reboot, anything changes, what Im doing wrong?
tdguchi said:
the stock rom could be any of http://www.jiayu.es/software.php?soft&jiayu=G3QCT ?
I have used (4.2.1)ROM Oficial Jiayu.es 20131203-000001 (the latest) and sn_gen to recover my IMEI.... but after copy and set the permissions, and reboot, anything changes, what Im doing wrong?
Click to expand...
Click to collapse
I see that the website is in Spanish, so I may interpret the files incorrectly.
I'm gonna presume that you have already downloaded and installed the required MTK VCOM Drivers, and the device's drivers which are also given on the website. Install both if you haven't already.
I see there is a scatter loading file present under the downloads. Download the scatter loading and the latest ROM. Extract both the ROM files and the Scatter Loading file to a same single folder. Then use SPFlashtool and select the scatter loading file from the extracted folder, and check ALL the boxes.
Then remove the battery from your phone, connect the phone to the PC, and click "Download" on SP Flash Tool. After it finishes, you should see a box with a green circle, which indicates the flashing was successful.
After that, put the MP0B_001 file on your SD card, and follow the steps given by me on post #2.
And don't forget to hit thanks if I have helped. =]
tried.....but no working
ViKtory36 said:
I see that the website is in Spanish, so I may interpret the files incorrectly.
I'm gonna presume that you have already downloaded and installed the required MTK VCOM Drivers, and the device's drivers which are also given on the website. Install both if you haven't already.
I see there is a scatter loading file present under the downloads. Download the scatter loading and the latest ROM. Extract both the ROM files and the Scatter Loading file to a same single folder. Then use SPFlashtool and select the scatter loading file from the extracted folder, and check ALL the boxes.
Then remove the battery from your phone, connect the phone to the PC, and click "Download" on SP Flash Tool. After it finishes, you should see a box with a green circle, which indicates the flashing was successful.
After that, put the MP0B_001 file on your SD card, and follow the steps given by me on post #2.
And don't forget to hit thanks if I have helped. =]
Click to expand...
Click to collapse
Well... that is what I did... was unsucccessful... imei is till missing... i have contacted jiayu support.. they said me that some phone are not able to restore IMEI in a easy way..... the ask me 18€ ( $24) aswell they ask me to pay the Shipping rates... so they could try to fix it...
tdguchi said:
Well... that is what I did... was unsucccessful... imei is till missing... i have contacted jiayu support.. they said me that some phone are not able to restore IMEI in a easy way..... the ask me 18€ ( $24) aswell they ask me to pay the Shipping rates... so they could try to fix it...
Click to expand...
Click to collapse
They want to just rip money off you.. All MTK devices have only that one way of restoring device's IEMI which I have listed above., as far as I know.
You can try doing the following (This is just speculation, I have never tried this but it MAY work, as a MP0B_001 file and a backup generated by Mobileuncle MTK tools have the same output when opened via a text editor.)-
After generating an IEMI file, open it using Notepad. Then copy everything written in it, make a new notepad file and paste it there. Save that file as "IEMI.bak" file, and put that in your sd card.
Then install Mobileuncle MTK tools from Play Store, give it root access and go to IEMI backup/restore option. You should find your saved backup there. Hit restore from SD card, and pray that it works.
If it doesn't work, then I'm sorry. Send the phone over to your manufacturer if all else fails.
ViKtory36 said:
They want to just rip money off you.. All MTK devices have only that one way of restoring device's IEMI which I have listed above., as far as I know.
You can try doing the following (This is just speculation, I have never tried this but it MAY work, as a MP0B_001 file and a backup generated by Mobileuncle MTK tools have the same output when opened via a text editor.)-
After generating an IEMI file, open it using Notepad. Then copy everything written in it, make a new notepad file and paste it there. Save that file as "IEMI.bak" file, and put that in your sd card.
Then install Mobileuncle MTK tools from Play Store, give it root access and go to IEMI backup/restore option. You should find your saved backup there. Hit restore from SD card, and pray that it works.
If it doesn't work, then I'm sorry. Send the phone over to your manufacturer if all else fails.
Click to expand...
Click to collapse
well.... or Im not generaing a valid file... or it doesnt work.....:crying::crying::crying::crying::crying:
I did everything right but when I press "send AT Command" appear An error on my screen "failed to send AT command" what did I do wrong? what can I do to fix it?
How to create that MP0B_001 file ?
ViKtory36 said:
I'd suggest you re flash stock rom using SP Tools, then use SN Gen to create a MP0B_001 file. Then place the generated file on your SD card, use root explorer, copy the file you have placed on the SD card and move it to /data/nvram/md/NVRAM/NVD_IMEI/, and set the file's permission to rw-rw----.
Then reboot and enjoy.
Click to expand...
Click to collapse
How to create that MP0B_001 file please help!

[TOOL] Merjapp - merge whatsapp databases

If you ever lost your phone due to an accident, or just had to use a temporary phone for some reason...
And you're one of those who hates to lose history, even if you know you hardly look at it...
This tool is for you.
Pre-requisites:
Neither of your phones where your whatsapp is installed need be rooted.
You must enable USB debugging on both devices
You must have Android SDK, we will be using the Android Debug Bridge (ADB)
Have Android Backup Extractor ready, we will use it.
Instructions:
Connect the phone which holds your old database to your computer, and enable USB debugging.
Use ADB to make a backup of the whatsapp database
Code:
adb.exe backup -f whatsapp.ab com.whatsapp
Use 'Android Backup Extractor' to extract whatsapp.ab to whatsapp.tar
Open whatsapp.tar with 7zip (or any other compression utility) and extract the file called 'msgstore.db'
Rename the file to 'old.db'
Repeat the above steps for your new phone, but rename the file to 'new.db'
Run merjapp in the following fashion:
Code:
java.exe -jar merjapp.jar -old old.db -new new.db
You can also use the -simulation mode if you like, it will not create any output database, and you will be able to read the log created in the working directory.
If you want extra debug information you can use the -debug mode.
If everything went correctly and "Done!' is displayed, rename output.db (which is your merged database) to msgstore.db
Connect your new phone to your computer, open the Whatsapp/Databases directory on the internal SD card and backup its contents to some other location.
Copy msgstore.db created in the previous steps to this directory
Clear whatsapp's data from your new phone and force stop it.
Open whatsapp and when prompted, elect to restore from backup, and voila!
Download
Download merjapp v141201 (runnable jar file)
Backup
Backup
Just registered to say thank you. It works!
Official whatsapp method wasn't working for me: "unable to recover chat history". So your tool saved me. Thanks!
namnoops said:
If you ever lost your phone due to an accident, or just had to use a temporary phone for some reason...
And you're one of those who hates to lose history, even if you know you hardly look at it...
This tool is for you.
Pre-requisites:
Neither of your phones where your whatsapp is installed need be rooted.
You must enable USB debugging on both devices
You must have Android SDK, we will be using the Android Debug Bridge (ADB)
Have Android Backup Extractor ready, we will use it.
Instructions:
Connect the phone which holds your old database to your computer, and enable USB debugging.
Use ADB to make a backup of the whatsapp database
Code:
adb.exe backup -f whatsapp.ab com.whatsapp
Use 'Android Backup Extractor' to extract whatsapp.ab to whatsapp.tar
Open whatsapp.tar with 7zip (or any other compression utility) and extract the file called 'msgstore.db'
Rename the file to 'old.db'
Repeat the above steps for your new phone, but rename the file to 'new.db'
Make back-ups of both old.db and new.db, as merjapp will make changes in them
Run merjapp in the following fashion:
Code:
java.exe -jar merjapp.jar -old old.db -new new.db
You can also use the -simulation mode if you like, it will not change your databases and you will be able to read the log created in the working directory.
If you want extra debug information you can use the -debug mode.
If everything went correctly and "Done!' is displayed, rename old.db (which is your merged database now) to msgstore.db
Connect your new phone to your computer, open the Whatsapp/Databases directory on the internal SD card and move its contents to some other location
Copy msgstore.db created in the previous steps to this directory
Clear whatsapp's data from your new phone and force stop it.
Open whatsapp and when prompted, elect to restore from backup, and voila!
Download
Download merjapp v141005 (runnable jar file)
Click to expand...
Click to collapse
A pretty neat tool!
I was trying to merge two databases. It seemed that everything went okay and all with the "Done!" message. However, there seems to be no changes made two any of the database. Their filesizes remains the same for old.db and new.db.
I tried loaded the old.db anyway since you said that is the merged one. However, I am getting only the old one.
Please advise.
And you didn't use the '-simulation' flag by chance, right?
Can you attach the log file?
Hi,
I think I have done everything as instructed above. But the phone doesn't seem to recognize the new mgstore.db backup file.
I notice that the new file isn't crypt7 as the original mgstore.db file from the internal drive. Is that causing my problems? How do I fix it?
Greetz
clevernam said:
mgstore.db
Click to expand...
Click to collapse
Did you make a typo with the file like you did here? It should be msgstore.db, not mgstore.db.
No, it doesn't have to be encrypted in order for whatsapp to recognize it.
namnoops said:
Did you make a typo with the file like you did here? It should be msgstore.db, not mgstore.db.
No, it doesn't have to be encrypted in order for whatsapp to recognize it.
Click to expand...
Click to collapse
Nope, that's not it, just checked.
Do i have to put it into the msgstore.tar file? Where i extracted new and old from?
Greetz (thanks for helping btw., if this works, its a realy big help to me!!)
Nope, you just have to place msgstore.db inside the 'whatsapp' directory on your internal SD card (I'd make sure it's the only file there).
Then clear data on whatsapp, force close it, and run it.
Is that exactly what you're doing?
Multiple Databases
Can this app merge multiple databases...
Like if i want to merge 3-4 old databases into one? is it possible? if either one of these databases have same data, will that be duplicated?
It can merge more than one, but that's under the assumption they're mutually exclusive (in terms of messages - i.e., no message appears twice)
So if you used one phone (1), started with a clean whatsapp on a second phone (2), then another clean whatsapp on a third (3), and so on...
You'll merge (1) as 'old' and (2) as 'new', then use the output as 'old' and merge it with (3) as 'new', etc.
namnoops said:
Nope, you just have to place msgstore.db inside the 'whatsapp' directory on your internal SD card (I'd make sure it's the only file there).
Then clear data on whatsapp, force close it, and run it.
Is that exactly what you're doing?
Click to expand...
Click to collapse
Yes, thats exactly what i did. Any other idea what could be wrong?
I'm sorry - it should be under WhatsApp/Databases like the opening post says...
namnoops said:
I'm sorry - it should be under WhatsApp/Databases like the opening post says...
Click to expand...
Click to collapse
That's what i figured, because I was already thinking about all the other files with dates like msgstore-2014-10-12.1.db.crypt7 that i took out of the Database folder.
namnoops said:
I'm sorry - it should be under WhatsApp/Databases like the opening post says...
Click to expand...
Click to collapse
The output file, that I renamed to msgstore.db has "gear wheels" as an icon, but the msgstore file from the database of the phone has no icon at all. Is that somehow significant? Does that maybe lead you to my mistacke?
The fact the the output file has the 'gear wheel' icon just means Windows detects it as a database, I think it's quite meaningless...
The other files it didn't give this icon are *.db? Or are you referring to the encrypted databases? They encrypted ones probably won't have this icon.
It seems to me you're doing everything right:
Renaming the file to 'msgstore.db'
Put it in your internal SD card under WhatsApp/Databases
Making sure there's no other file there except this file
Force closing whatsapp, clearing data, opening the app...
So you're doing all this, and when whatsapp loads it initializes from scratch and doesn't tell you a backup has been found?
It just goes on to initialize an empty database as though you just installed whatsapp for the first time?
namnoops said:
The fact the the output file has the 'gear wheel' icon just means Windows detects it as a database, I think it's quite meaningless...
The other files it didn't give this icon are *.db? Or are you referring to the encrypted databases? They encrypted ones probably won't have this icon.
It seems to me you're doing everything right:
Renaming the file to 'msgstore.db'
Put it in your internal SD card under WhatsApp/Databases
Making sure there's no other file there except this file
Force closing whatsapp, clearing data, opening the app...
So you're doing all this, and when whatsapp loads it initializes from scratch and doesn't tell you a backup has been found?
It just goes on to initialize an empty database as though you just installed whatsapp for the first time?
Click to expand...
Click to collapse
Precisley. Nothing comes, when I reinstall whatsapp.
It is not like when I put the normal backup data back in the databse folder. Then whatsapp realises that there is a backup file in the internal memory and gives me the option to restore the history. Not so with the merged file.
Btw. I have no sd card. I connect the phone with usb. I figured that it is an unessencial diffrence? Am I wrong? My phone btw. is Motorola Moto G. If that helps
I'll check, if the old an new are mutually exclusive. I think in the progress I got a message on the new and old one. What would happen in that case? Would your program do the job, but then creat a bad "output" file?
If the only problem was, that I messed up the historys, I'm sorry, namnoops.
Are you using the latest version of whatsapp?
iclumyc Doctrine
namnoops said:
Are you using the latest version of whatsapp?
Click to expand...
Click to collapse
Well if I didn't then, now I do. And it still doesn't work
I checked if there are any intersecting messages... It turns out there weren't any.
@namnoops: Does the oldest message in the new history have to be more recent then any old message from the old history? I mean: Is it a problem for merjapp if the timelines intersect in any way, although there are no double messages?
Thanks for your help in advance

[GUIDE] Merge Multiple Whatsapp Backup File Into One (No Root Required)

I am not sure if I post at the right place but I would like to share this to everyone as I understand how hard it is to find a solution that works. With this guide, you will get to keep the original WhatsApp message information (such as thumbnail, link, emoticon, etc.) and work like it is a restore file that backup from itself.
There will be three main phase you need to perform. You can get all required file in the attachment. Make sure you backup your end result before jump into the next phase.
Phase A: Decrypt and obtain msgstore.db file
This is the easiest method I can find and NO ROOT is required to perform this. All you need is to follow the instruction below.
INSTRUCTIONS:
Extract "WhatsAppKeyExtract.zip" (from attachment) on your computer maintaining the directory structure.
Browse to the extracted folder and click on "WhatsAppKeyExtract.bat".
Enable USB Debugging on your device.
Connect your device via USB**, unlock your screen and wait for "Full backup" to appear.
Leave the password field blank and tap on "Back up my data".
The "extracted" folder will now contain your "whatsapp.key", "msgstore.db" and "wa.db".
**If you have never used USB Debugging before, you may also need to verify the fingerprint.
(Credited to TripCode for providing this application! Here is the link to original thread.)
For my case, I have three backup files that named msgstore.db.crypt, msgstore.db.crypt7 and msgstore.db.crypt8. Although I know there might be other easier method to achieve this, I choose to restore each file (by uninstall and install WhatsApp) and run the above method to get my decrypted file. Hence I can be sure that all decrypted file will come in the same structure (I will show you what this mean later) and prevent any error that may cause by that.
Phase B: Edit and prepare database for merge
This will be a bit tricky. But in general, you MUST make sure that you have no overlapping message history between your files.
INSTRUCTION:
Download SQLite Database Browser and install on your computer.
Open the database you want to edit.
Click on [Browse Data] tab.
In Table drop down menu, click on [messages] (You will see all your WhatsApp message here).
Use it like you are using Excel, select any row that is overlapping (EXCEPT the row with many [-1] value) and click on [Delete Record], then click on [Write Changes] (this means you have save the change to the database).
Keep doing this for your remaining file and close all windows of SQLite Database Browser when you are done.
(Thanks ztedd for posting his own method where I get inspired from. This is the link to his original post.)
For my case, the number of column of all my file when display in "messages" table is different (newer WhatsApp database file have more data type). This is the reason I restore and run backup again to make sure all my file have the same structure. Also, a quick tips to figure out which row is overlapping or duplicate is export the messages table to CSV file and open it with Excel. You will need to copy the first few column of each database and paste them together, then use the feature that come with Excel such as Filter and Remove Duplicate to identify which row number you need to remove from actual database file.
IMPORTANT - Never edit your database on excel and import it back to your original database. This will remove all thumbnail, link, emoticon and etc. and show you some weird message when you restore back to your device.
Phase C: Merge database file
This method only can merge two file at once. You may need to do this several time depending how many database you want to merge. I suggest you start from the oldest to newest.
INSTRUCTION:
Rename the older file to old.db.
Rename the newer file to new.db
Create a new folder called Merge and copy the file old.db, new.db and merjapp.jar into it.
Run Command Prompt on your computer (or click on Start Menu and search for cmd)
In Command Prompt, type each of the following separately and press Enter:
Code:
cd desktop
cd merge
You now should see [C:\Users\<UserName>\Desktop\Merge>] in cmd window.
Now type the following and press Enter:
Code:
java.exe -jar merjapp.jar -old old.db -new new.db
You should see a "Done!" is displayed and a new file named output.db will be created in the Merge folder.
If you have other database to merge, repeat the steps above by rename the output.db to old.db.
Once you are done, rename the output.db to msgstore.db and it is ready to restore into WhatsApp.
(Credited to namnoops for this merge application! This is the link to original thread.)
For my case, I have to run this steps twice to merge 3 databases. I get error the first time I run this because some messages is overlapping and this is the reason for Phase B to edit my database. Once I got my merged database, I renamed it to msgstore.db (without encrypt again) and have no problem restore back to my device. I also copy and paste all my backed up WhatsApp folder to my device (except the file in Database folder) for the picture in WhatsApp to work.
Disclaimer: I do not know any coding behind all these so if you have any questions I will try to answer but the best bet is to go back to the original thread.
Below is some other method that I found online but can't figure out how to do it. You may try it at your own risk.
Additional Method:
sch3m4's wforensic Method
Alternate sch3m4's wforensic Method
Reserve for later use.
Reserve for later use, again.
How could i restore the merged database file ?
Xperia000sola said:
How could i restore the merged database file ?
Click to expand...
Click to collapse
I think you should overwrite new merged DB uninstall whatsapp then reinstall it
Thank you! I' ve tried the method in the thread of the merge tool, but your procedure did the trick for me =)
i cannot use it
help us with video please
big fail after attemped retrieve msgstore.db
when tested edit under sqlitebrowser, save change then exit. copy backup the "msgstore.db" file to my device original place and set permission as before. run whatsapp then all my message on list has been gone. no idea wut happen. even though i copy back my original msgstore.db to same place. so **** and make me down becoz i forgot to backup the list b4 make this test.
i use whatsapp ver 2.12.367. and dun add or del row under sqlitebrowser, only retrieve some text on same row, but why i copy back the original msgstore.db also fail? lost all message
While it might not be a lot of fun, it's quite easy to merge those databases using this method
I have used the Android WhatCrypt-app to decrypt my databases on the smartphone, copied both unencrypted ones to my PC and then trimmed the newer one down.
After merging, the only problem was getting Whatsapp to accept my database - the first attempt resulted in Whatsapp deleting all my messages.
My solution was to "Clear Data" on Whatsapp and simply drop the newly created database in Whatsapp's folder inside /data.
It accepted the new file and created the missing files by itself.
Now I have finally got all those messages in my Whatsapp
Thank you very much!
Hey,
I have a problem : everytime I try to do the last step e.g. merge the old.db and new.db via cmd - i get the error message " -E- Database old.db cannot be found! " . I renamed the old database to "old.db" still it doesnt work? What I am doing wrong?
Is my old.db file corrupted? I can read it with Whatsapp Viewer tool.. So it seems to work.
And there shouldnt be any overlapping messages - I have an old database and a fresh new one without any old backups.
(my old phone broke and i just jused the new one for the incoming messages)
Help
Hi,
I just wanted to ask, I have the msgsstore.db.crypt8 File from my old whatsapp back on older device but I am unable to copy it to the database folder in my new device.
Help Please
Guys I have 2 backups, 1 crypt9 and 1 crypt12. I decrypted and merged both succesfully but when I try to restore my messages through Whatsapp it tells me "Cannor restore your messagges......." . What can be the problem? Whatsappviewer open without problems outout.db, so I think it is not corrupted. There may be some overlapping msgs? How can I notice them? I whatched the table column received_timestamp and I didn't see any equal row. However the column timestamp has multiple equal column, can be this my problem?
Thank in advance
Now I'm on phase B, and with the DB Browser for SQLite, I opened (tab Browse Data) the msgstore file in the "extracted" folder and then selected messages In Table drop down menu.
I didn't not understand what to do next.
DLz88 said:
Now I'm on phase B, and with the DB Browser for SQLite, I opened (tab Browse Data) the msgstore file in the "extracted" folder and then selected messages In Table drop down menu.
I didn't not understand what to do next.
Click to expand...
Click to collapse
You would need to delete the records you do not want and then save the changes. In any case, what is the end result you are trying to achieve? Do you wish to import the merged database back to WhatsApp? Are the databases from separate accounts? If you intend to write back msgstore.db to /data/data/com.whatsapp/databases? How are you going to do that without root? If you do intend to use your merged database with WhatsApp then you may run into difficulties. Things have changed a lot since this guide was written.
I have previous crypted (crypt8) backup files from whatsapp database (same account) and I want to merge those old messages with others whatsapp messages I have on my LG G5. Basically my galaxy s4 died, I managed to rescue the whatsapp database and now I want those messages in my new LG G5 (no backup on whatsapp servers because it was setted off by mistake). The folder is inside the main storage/WhatsApp/Database Also, I want all the records and excel told me that there are not any duplicates values.
Don't work on Nexus 5X, show message like strong AES encryption. :'(
Guys, I have FINALLY found a way to merge two differten WhatsApp backup files. I'll post the guide asap (have to translate it). Is different from the one on the first page for the first two parts.
How to merge two different WhatsApp backup files:
We have two different WhatsApp backup file (doesn't matter if encrypted by different methods, for example, I had a crypt9 file and one crypt8) and we want to combine them into one so we can read them with WhatsApp.
Requirements: OS: Windows Vista, Windows 7 or Windows 8
Programs you need:
1) WhatsApp Xtract: http://forum.xda-developers.com/showthread.php?t=2770982
2) SQLite Database Browser: https://github.com/sqlitebrowser/sql....2.0-win32.exe
3) merjapp (merjapp.jar) https://github.com/namnoops/merjapp/releases
4) JDK http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
5) Java: https://www.java.com/en/download/
6) ADB (Android Debug Bridge) Drivers - If not installed: http://developer.android.com/sdk/index.html
Enable USB Debugg: Settings \ Developer options \ USB debugging (to activate them go to Settings-> About phone-> Software Information-> click many times on the Build number).
Before proceeding further, I suggest to temporarily remove all security protocols such as pin, lock screen with a sequence or other method and scanning fingerprints. In order to avoid the forced backup password.
I also suggest to make the extension of the files, visible (on windows, go to Tools-> Folder Options-> View-> uncheck "Hide extensions for known files").
First phase: decrypt
Extract the "WhatsAppKeyExtract.zip" program in a PC folder, making sure to maintain the folder structure.
a) Start "WhatsAppKeyExtract.bat"
b) Once started, connect your phone via USB, unlock the screen.
c) Wait until the screen that tells you to back up your data appears.
d) Leave the password field blank and click "Back up my data".
e) When finished, inside the "extracted" folder (located inside the WhatsAppKeyExtractor folder) you will find the files "whatsapp.key", "msgstore.db" and "wa.db". (That's if the latest versions of whatsapp).
At this point I recommend to save these files in a folder, calling it "new backup."
Now we must do the same process with the old backup, then:
Uninstall Whatsapp.
Remove all backups from the folder Whatsapp\databases (inside the phone).
Put back in the old backup file ( "msgstore").
Reinstall whatsapp, and let it reopen old messages (restore backup). When done, remove the connection data from the phone (both wifi, and UMTS).
Redo the same procedure as before, from point a) to e).
Save these new files "msgstore.db" and "wa.db" in a folder, this time calling it "old backup."
The first part is finished.
Second phase: organizing the chat
Before you start, create backup copies of previously decrypted file (you never know).
Open SQLiteBrowsers, position yourself in BrowseData tab and select Open Database. Choose the old backup file msgstore.db (that previously we have decrypted).
Click the lower Tab, select "messages".
With the scroll menu, go down to the last message. Here, count the "_id" number of the last message, for example "65422"
Open the new backup file (the new msgstore.db we had decrypted) always with the SQLite Database Browser program. By the same process: open the inferior tab and select messages. Highlight entirely the first line that has the fields, for the most part, containing the value "-1", and delete the line with the Delete Record command.
Make a note now of the number of the first message, under "_id" for example "12"
Now go in the tab "Execute SQL" and write the following string: UPDATE messages Set_id = (65422 + 1 + _id - 12) (put the numbers that you had marked earlier, in this case 65422 and 12). Click ExecuteSQL ( "Play" button)
Close SQLiteBrowers.
End of the second phase.
Third phase: merge
Create a new folder on your desktop called "merge".
Rename the old backup file (the msgstore.db file that is inside the "old backup" folder) that we had decrypted, in old (so we have the file old.db).
Rename the new backup file (the msgstore.db file that is inside the "new backup" folder) that we had decrypted and on which we had executed the SQLiteBrowser string, in new (so we have the file new.db).
Copy and paste the two files in the directory "merge".
Copy merjapp (merjapp.jar) in the "merge" folder.
Now run the command prompt as an administrator.
Enter the following commands:
cd C: \ Users \ [username] (press "ENTER")
cd desktop (press "ENTER")
cd merge (press "ENTER")
java.exe -jar merjapp.jar-old old.db -new new.db (press "ENTER")
It must appear "Done!"
At this point in the "merge" folder there must be a file called output (output.db file)
Copy it in desktop and rename it msgstore (so we have the msgstore.db file).
Open the phone's internal memory, go into WhatsApp \ Database folder, and delete all the files that are in there.
Copy "msgstore" (the msgstore.db file that was named output) in the folder Whatsapp \ Database.
Uninstall and reinstall WhatsApp (obviously choosing to restore backups).
END
DLz88 said:
Guys, I have FINALLY found a way to merge two differten WhatsApp backup files. I'll post the guide asap (have to translate it). Is different from the one on the first page for the first two parts.
Click to expand...
Click to collapse
Many thanks for finding the time to post your updated working method. I'm sure your contribution will come in handy for many users.
Hi. With this tutorial can I merge 2 backups from different numbers? Basically I would like to move the conversations from my second number to the first number I have.
Thanks.
foxmolder1985 said:
Hi. With this tutorial can I merge 2 backups from different numbers? Basically I would like to move the conversations from my second number to the first number I have.
Thanks.
Click to expand...
Click to collapse
I don't know if my guide can works with backups from two different numbers. You can always try it and let us know

[GUIDE] Extract and Restore Contacts, SMS, Call logs from nandroid backups(TWRP)

So yesterday My phone, Sony Xperia S, decided to go into bootloop and not boot at all, no matter what I did. Tried flashing stock PRF, stock firmware, some stock based firmware, but it would get stuck in bootloop. The reason for this being I was not formatting the data partition, which I needed to preserve since it had all My sms, contacts, call logs and other app data. Luckily, I had a working recovery(TWRP) and was able to take a backup. Then using I was able to recover My contacts, sms, call logs and app data. After a lot of Google searches, I was finally able to work it out. The process is as follows:
Needed software:
Code:
yaffs-mmssmsdb-calls-extractor.zip from [URL="http://forum.xda-developers.com/showthread.php?t=1585957"]here[/URL].
Firefox Browser
Firefox addon of SQLite manager : [URL="https://addons.mozilla.org/en-US/firefox/addon/sqlite-manager"]link[/URL].
Excel macro to convert .db contacts to .csv : [URL="http://thydzik.com/downloads/convert-contacts2.db-data-to-vcard-vcf.xlsm"]link[/URL].
Software for csv to vcard conversion (Windows) : [URL="http://www.csvtovcard.com/"]link[/URL].
CSV to vcard conversion (online) : [URL="http://labs.brotherli.ch/vcfconvert/"]link[/URL].
SMS Backup & Restore android app : [URL="https://play.google.com/store/apps/details?id=com.riteshsahu.SMSBackupRestore"]link[/URL].
Call Log Backup and Restore app : [URL="https://play.google.com/store/apps/details?id=com.riteshsahu.CallLogBackupRestore"]link[/URL].
The procedure is a lot crude as of yet, I would update as more universal and convenient options are found.
I know there is Titanium backup app which can restore contact, sms etc from nandroid backups, but You need a paid version of the app.
First we need to extract the data partition of nandroid
Rename the data.ext4.win to data.ext4.tar.gz . If Your files are like data.ext4.win000, data.ext4.win001, then rename each of them to data.ext4.tar.gz in separate folders.
On windows, now You can directly extract them using WinRaR or 7zip application, although You don’t need to extract it entirely.
On linux, You can do so using the following command. It is recommended to store the file in a separate folder as the file gets extracted directly.
Code:
tar –xf data.ext4.tar.gz
Now we need to find two files contacts2.db and mmssms.db . The contacts2.db files is for contacts as well as the call logs and the mmssms.db is for messages. The contacts2.db is constant across most ROM’s and OEM firmware apps. The mmssms.db file may vary as per app and ROM’s. So what You need to do is look for a .db file inside the SMS app You have been using with the firmware/ROM.
We will restore the SMS and Call logs first.
Currently it is limited to Windows OS only.
Extract the contents of yaffs-mmssmsdb-calls-extractor.zip to a folder.
Copy the mmssms.db file and contacts2.db file to the above folder.
Now open a command prompt at location of the above folder. This can be done by opening the folder, right clicking using shift key pressed in blank space. You get the “Open command window here” option.
In it type:
Code:
extract -s mmssms.db
It will ask You to enter a name for the output .xml file, You can press enter to let it give a default name. This will convert Your sms to a .xml file .
Then type:
Code:
extract –c contacts2.db
It will also ask You to enter a name for the output .xml file, You can press enter to let it give a default name. This will convert Your call logs to a .xml file .
Copy both of these files to Your newly formatted phone and then use the two before mentioned apps (Call Log backup& Restore and SMS Backup & Restore) to restore Your SMS and call logs.
Now retrieving contacts. It is a bit lengthy, but simple process.
Start firefox browser. In it, after You have installed the addon do following to enable the addon
Go to options (3 horizontal lines).
Select “Customize” and drag the “SQLite Manager” to the blue bordered box.
Now open options and select SQLite Manager. In it select Database>Connect Database. In the opened dialog box, select All Files(*.*). Then select Your contacts2.db .
From the left side tree structure in the SQLite Manager window, right click on “data” and select “Export Table”.
Now in right side part of the window, You will get CSV tab and SQL tab. Under CSV tab, simply press OK button without changing any other options.
It will ask You to save Your .csv file. Save it.
Now if You try to open this file directly, You will notice that file is not properly arranged.
To arrange it properly, open the convert-contacts2.db-data-to-vcard-vcf.xlsm file. If You don’t know how to enable Macros don the following:
It will show You a warning “Security Warning Macros have been disabled. Options..”
Press the Options button. Select “Enable this content” and press ok.
Now Press the office button present at left top corner. In it select “Excel Options”.
Select Customize tab from left side. Then from “Choose commands from:” drop down menu, select Macros.
Now add convertDatatoContacts and writeContactstovCard to right pane from left pane by selecting them and pressing add. Press OK button.
Now as You can see two white square icons have been added at top right corner next to save undo redo options.
Select the first white square icon. Select “Enable Macros” button. Now select Your .csv file in the opened dialog box.
Now the file must have opened in a separate excel. The format should be 4 rows with they being First Name, Last Name, Phone 1 and Phone 2.
Then select Save As>Excel Workbook>Save Type as CSV(Comma delimited).csv . Press ok and yes on the two warnings generated.
At the left bottom, right click on “contacts” sheet and press delete. Save and close the file.
Run CSV to vCard software and open the above saved .csv file. Here You can save all contacts as single vCard file or separate files.
In the “Properties” section on the window, in front of “Phone 1” and “Phone 2” select “Mobile Phone” from options. Press “Convert” button.
Alternative to above two steps, You can also convert .csv to vcard using the website.
Now a .vcf file will be created where the .csv file was stored.
Now simply copy the .vcf file to phone and import using the phone contacts app!
Done!
Credits and sources:
@abbot2
[TOOL] yaffs extractor, mmssms.db & contacts2.db converter
http://thydzik.com/export-android-contacts-contacts2-db-to-vcard-vcf-on-windows/
Reserved.
Awesome concept
Thanks for posting this! Im working on a sprint S4 that is bootlooping. ive extracted all data and am attempting to recover contacts with your method. I am getting an error with the yaffs extract.exe that im hoping you could give me some direction on.
**EDIT**
I was never successful using yaffs (dependency issue perhaps) but i downloaded firefox and was able to extract everything with the sqlite extension. THANK YOU!!!! This tool is one of those things you dont need often, but when you do it's a godsend!
when i issue the contacts extraction command i get this output
C:\Users\PartSwap\Desktop\DB_xtract>extract -c contacts2.db
Read 0 calls
Failed to extract calls: list index out of range
contacts2.db is present in the yaffs folder.
Any ideas/suggestions would be greatly appreciated!
This doesn't work anymore, just puts 0 in all of the phone number fields, you can even see the numbers before hand, just jumbled up, so this script needs to be updated.
Stillworks July 2020
This worked in July 2020 to restore SMS messages (I didn't need contacts). I tried to restore selectively from a full OrangeFox (OF) NANDroid backup (a full restore didn't work, encryption/password issues) with Titanium Backup (TB), but this didn't work (maybe I simply didn't know what to restore?). I tried the old Nandroid Manager's facility to restore SMS from a NANDdroid backup, but it hung.
I then successfully extracted mmssms.db as described here and further extracted the xml file with the yaff extractor. TB's "Restore data from XML" hung, but SMS Backup & Restore worked fine.
Xiaomi Redmi Note 7 (lavender), all software current as of July 2020: xiaomi.eu 20-07-23 weekly ROM, TB 8.4.0.2, others downloaded today. A useful way to find the SMS file if it has a different name than mmssms.db: after extracting from the tar.gz, search the extracted files for a string that only appears in your SMS (I used "bekonscot").
Incidentally, a note on Titanium Backup, which can restore either from its own files or a NANDroid backup: the directory for the NANDroid file is hard-wired to the directories used by TWRP and CWM. I use the current OrangeFox instead of TWRP, and it uses a different directory. But the OF backup is compatible with TWRP; moving it to /storage/emulated/0/TWRP/BACKUPS/ works.
HTH
I used a Note 4 (Android 6) full nandroid to Note9 (Android 10). For contacts I just copied the .db to the new location (the directories where .db are located might not be the same) and rebooted - it worked (on rooted), but this will remove any contacts already made, replacing them with the backup.
SMS and Call logs were restored as described, but I used a newer version of the app (which combines both SMS and logs restoration), searched the backup archives with ZArchiver, and I ran the python2 version of the converter (https://github.com/abbot/android-restore-tools) on TermuxArch (meaning that, unlike the Windows version in the tutorial, this should work on any OS supporting python2, allowing me to do all steps on my phone).
Also, in the directories where. db files are located there are big .db-wal files, too, which might contain some data that aren't in the .db yet, so you might need to VACUUM with sqlite3 (https://stackoverflow.com/questions...f-sqlite-3-7-wal-file-into-main-database-file). I did it on TermuxArch as well, but the size of the db didn't change much, while the wal disappeared, so I don't know if that did anything.
P.S. Sqlite3 wouldn't open db at all just on Termux for some reason, opened on TermuxArch. Python2 also exists for Termux, didn't try but should work.

Categories

Resources