[General Questions and Answers] Marvolo1590:
First of all -

the long text I wrote above may not be up to date any longer. I didn't bother re-reading through it, but I'm sure a lot of things I thought I knew back then have now proven to be wrong and I've learned a lot more.

I've almost finished my project of merging different databases, I did a lot of research into how SQL and databases work, what certain tables inside the WhatsApp DB do and I had a lot of good help from either software engineers / computer scientists or people who happen to know a lot about all this stuff (SQL, coding, databases, WhatsApp-specific database), without which I wouldn't have succeeded.

Long story short:

Merging is possible - in fact, almost anything is possible, even taking single chats from foreign databases / different accounts and merging them with your own database. You only have to know how and why it works as it does.

BUT... It's an extremely time-consuming and complicated undertaking. There are no tools or software solutions for this. The only way to achieve anything like that is knowing a lot about SQL based coding, knowing SQL structure in general (to understand how the WhatsApp database works) and then compiling your own merge-coding-script, adapted to your very own individual needs and circumstances.

Also, a LOT of trial & error is involved. After each "merge attempt", there's something else that won't work for 100% and you'll have to debug and test again and see what will work and what won't. It will hardly work after the very first try. At least it didn't for me.

Both databases on the same phone? What do you mean by databases? Since you say your phone is not rooted, I assume you're not actually referring to the unencrypted WhatsApp database itself which (if you have root) lies freely accessible in data/data/com.whatsapp/databases.

I assume you're referring to the encrypted backups *crypt14 / *crypt15 - these are backups of the database, however, limited in content. They don't contain all the tables that the "true", unencrypted database in the root directory contain. Some tables are missing in the encrypted backup-databases. But still enough to work with.

If your phone is not rooted and you want access to your databases without root, it's not possible to access the unencrypted database which is in the root directory data/data/com.whatsapp/databases.

This is only possible if you have root access.

But.. There are some workarounds:

1.) First of all you need to check what extension your backup files have. If they are *crypt14, I would strongly advise to immediately update them to *crypt15 as for crypt15-files you will manage and control your own key for decryption. If you use crypt14, you will be dependent on WhatsApp, which stores the key for decryption on their servers AND the big problem is: WhatsApp will regularly rotate keys for security reasons and assign new keys to your backups. If you never recovered these keys, it may happen that you lose access to these backups forever very quickly. I had backups from early 2024 which I couldn't access any longer because WA must have changed / rotated the key for them.

All of this can be avoided if you stop trusting WhatsApp to manage the keys for your backups by activating crypt15 backups. You will then create your own 64-digit key which you MUST SAVE FOR ALL ETERNITY because it will be your master key and the only way to ever access your future backups. WhatsApp will not have it on their servers, they can't help you any longer.

You activate crypt15 by going into the settings --> Chats --> Chat Backup --> End-to-End backup encryption. Then tap on "backup". Then DON'T choose a password but instead go for 64-digit code. It will then generate a random 64-digit code which you have to screenshot or write it down with pen and paper / or do both. You must never lose it!

Then tap on "backup" and it will then create new backup files which will now be crypt15.

With the help of your 64-digit key you will now be forever able to decrypt your future backups at any time. Sadly, this doesn't work for past backups made under crypt14, unless you have still access to them within a working WhatsApp, so you can repeat the steps above and activate backup encryption.

2.) If you have crypt14 files and there's no way for you to change them into crypt15 like above because you can no longer load them into WhatsApp and activate backup encryption, the only way to access them is to get the key file for them and to hope WhatsApp might not have changed the key for them already.

For older phones, WhatsApp Key Database Extractor worked nicely and it would simply go into the root directory and grab / pull the relevant files such as key file, decrypted database and a couple of other relevant files. So it's a perfect workaround for unrooted phones.

HOWEVER... As you noticed, this method stopped working for newer Android versions because ADB pull is no longer supported on newer Android versions. The only solution would be to migrate your account to an older phone with an older Android version and then use this tool.

HOWEVER... As I understand it, this is no longer possible for you because you got banned from YoWhatsapp, so there is no possibility to install your YoWhatsApp account on an older phone, then restore the backup for it and then let Key Database Exctractor grab the key.

So this is your biggest problem at the moment.

Even if you have the crypt14 backup files of your YoWhatsApp account, without a key file, it's impossible to access them.

The only way would now be to root your phone, however, I wouldn't do it if your phone is still new and has warranty left. You'd void the warranty immediately. That's why for my project I moved my WA account onto an old Galaxy S6 Edge which was not problematic to root.

Root access is the best solution if you want to merge or do major changes to the database. Because all the testing and trial and error will require to replace the unencrypted database in the root directory with a new one, then see if everything works and if not, continue making changes and again replace it in the root directory to see if everything works now and so on...

So conclusion...

The way I understood your post you now have two WhatsApp accounts on the same phone? One official, one inofficial. For both accounts you have access to the encrypted backup databases, but no key file for each of them?

You can solve the first problem by activating crypt15 for your official WA account. It will then give you access to the crypt15 file with the help of the generated 64-digit key. More on how to decrypt, later.

But I currently I dont know how to solve the other problem about the YoWhatsApp account... You can't reinstall it on an older phone to get WhatsApp Key Extractor to work because your account is dead? You can't access root directory to grab the key file for crypt14 because you're not rooted. You can't root the phone because it will probably delete your YoWhatsApp root directory containing the key file.

Difficult situation. The only thing that comes to my mind is installing a custom bootloader such as TWRP which is mandatory for rooting anyway, but instead of continuing to flash / root a software, deleting your entire phone, you would have to stop right there and then use TWRP's internal file manager to access the root directory of the phone, locate the key file for crypt14 and then copy it outside of ROOT, for example into DCIM folder or Download folder where you could then access it freely.

HOWEVER... I'm not quite sure at the moment if installing a new bootloader / TWRP will be able without deleting your existing OS and content. I think it should be possible because rooting / flashing would take place AFTER having installed TWRP anyway, not DURING.

But you'd have to check this very carefully before starting. Maybe someone on here will know if installing a custom bootloader will be possible without deleting the existing contents of the phone.

This is the only way that comes to my mind that could work. All the other ways are blocked either because you're not rooted, you don't have access to YoWhatsapp any longer or your Android version is too new to work for Key Extractor...

[Also, English is not my native language, so if anything sounds weird... point it out to me and I'll try to rephrase]