เพียงเพื่อการอ้างอิงของผู้อื่นนี่คือพื้นหลังบางส่วนในรูปแบบไฟล์. ab
ไฟล์ Android Backup (* .ab) เป็นไฟล์TAR ที่ถูกบีบอัด มันถูกบีบอัดโดยใช้อัลกอริทึมDEFLATE ยิ่งไปกว่านั้นสามารถใช้การเข้ารหัส AESได้ สิ่งนี้จะถูกกำหนดเมื่อคุณสร้างการสำรองข้อมูลหากคุณป้อนรหัสผ่านการสำรองข้อมูลจะถูกเข้ารหัสมิฉะนั้น ไม่มีการเข้ารหัสมันถูกบีบอัดเท่านั้น
HEADER ของไฟล์แตกต่างจากไฟล์ DEFLATE ปกติเล็กน้อย มันมีข้อมูลเกี่ยวกับการสำรองข้อมูลและมีลักษณะดังต่อไปนี้:
ANDROID BACKUP
1
1
none
บรรทัดแรกเป็น"เวทมนตร์" บรรทัด บรรทัดถัดไปเป็นเวอร์ชันของรูปแบบไฟล์สำรองของ Android บรรทัดถัดไปคือบูลีน (จริงหรือเท็จ, 1 หรือ 0) เพื่อระบุว่าไฟล์ถูกบีบอัดหรือไม่ บรรทัดสุดท้ายคือประเภทของการเข้ารหัส ตัวอย่างนี้ไม่ได้ใช้การเข้ารหัสใด ๆ หากมีรหัสผ่านบรรทัดจะอ่าน "AES-256" หลังจากนั้นเป็นรหัสการเข้ารหัส หากไม่มีรหัสผ่าน DEFLATE "เก็บถาวร" จะเริ่มต้นขึ้น
มันถูกบีบอัดโดยใช้Java deflater ซึ่งจากมุมมองของนักพัฒนาทำให้เกิดปัญหาหากคุณต้องการใช้อะไรนอกเหนือจาก Java เพื่อแยกมันออก ฉันไม่สามารถค้นหาสิ่งใดที่สามารถทำให้ยุบได้โดยใช้อัลกอริทึมเดียวกันแม้ว่าสิ่งที่ฉันพบ (เช่น C #) ควรจะทำตาม "SPEC"
ด้วยที่กล่าวว่ามีโครงการโอเพนซอร์สภายใต้ใบอนุญาต Apache 2.0 เขียนโดยNikolay Elenkovที่จะช่วยให้คุณสามารถแยก. ab ในไฟล์ tar
การใช้งาน:
java -jar abe.jar unpack <backup.ab> <backup.tar> <password>
หากคุณไม่แน่ใจว่าจะใช้งานอย่างไร (ซึ่งเกินขอบเขตคำตอบนี้) รุ่นถัดไปของDroid Explorer v0.8.8.7 ( มีให้ที่นี่ ) จะช่วยให้คุณทำสิ่งนี้ได้อย่างถูกต้องและอีกมากจาก Explorer คุณสามารถอ่านเพิ่มเติมเกี่ยวกับฟีเจอร์ต่าง ๆ ในบล็อกของฉัน (ใช่ฉันรู้ปลั๊กไร้ยางอายฉันทำอย่างนั้นเมื่อมันเหมาะกับคำถาม)