For 2 days, I've desperately been trying to recover a very important, accidentally deleted text conversation from Message+. Let me say, I know NOTHING about tech! After trying questionable softwares that could not assist without rooting (and I felt doubtful they be helpful even if I had rooted), it seemed like the best option was to try to find the deleted files by downloading ADB and doing a backup. After a lot of frustration, I was finally successful in creating a backup.ab file. The phone did require be to encrypt it. But the issue that has plagued me today is unpacking that to a .tar file. After tons more research, I have installed Android Backup Extractor and java. While I have found a couple people ask similar questions on the web, my error message appears to be different. I was praying for some help in translating it and figuring out what to do next. Here is what I typed along with the error message. BTW, my phone is a Galaxy S10+ running on Android Version 12. And the backup file has over 40,000 kb.
C:\Program Files\Java\jdk-21\bin>java -jar abe.jar unpack backup.ab [password]This backup is encrypted, please provide the passwordPassword:Calculated MK checksum (use UTF-8: true): 37BDEBD1C840E3B9C82E9EE3D221758E8358AC92DF1C2FD274BBDC525066311DException in thread "main" java.lang.RuntimeException: java.io.FileNotFoundException: [password] (Access is denied) at org.nick.abe.AndroidBackup.extractAsTar(AndroidBackup.java:233) at org.nick.abe.Main.main(Main.java:40)Caused by: java.io.FileNotFoundException: [password] (Access is denied) at java.base/java.io.FileOutputStream.open0(Native Method) at java.base/java.io.FileOutputStream.open(FileOutputStream.java:289) at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:230) at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:118) at org.nick.abe.AndroidBackup.getOutputStream(AndroidBackup.java:314) at org.nick.abe.AndroidBackup.extractAsTar(AndroidBackup.java:199) ... 1 more
Update 1
After fixing the missing tar file argument problem the error message changed:
C:\Program Files\Java\jdk-21\bin>java -jar abe.jar unpack backup.ab backup.tar [belle]Exception in thread "main" java.lang.RuntimeException: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption. at org.nick.abe.AndroidBackup.extractAsTar(AndroidBackup.java:233) at org.nick.abe.Main.main(Main.java:40)Caused by: javax.crypto.BadPaddingException: Given final block not properly padded. Such issues can arise if a bad key is used during decryption. at java.base/com.sun.crypto.provider.CipherCore.unpad(CipherCore.java:861) at java.base/com.sun.crypto.provider.CipherCore.fillOutputBuffer(CipherCore.java:941) at java.base/com.sun.crypto.provider.CipherCore.doFinal(CipherCore.java:734) at java.base/com.sun.crypto.provider.AESCipher.engineDoFinal(AESCipher.java:446) at java.base/javax.crypto.Cipher.doFinal(Cipher.java:2244) at org.nick.abe.AndroidBackup.extractAsTar(AndroidBackup.java:131) ... 1 more
Thank you so much for any help!
Update 2
I also just tried using android tools processor instead.
C:\Program Files\Java\jdk-21\bin>java -jar abp.jar unpack backup.ab backup.tarBackup encrypted, enter password (will NOT be displayed):Password:
No error message was produced, so I thought it might have worked. Yet no .tar file in sight!