xeals / signal-back

Decrypt Signal encrypted backups outside the app
Apache License 2.0
680 stars 66 forks source link

Import/export signal-desktop backup data #14

Open breznak opened 6 years ago

breznak commented 6 years ago

hi @xeals , I'm really happy you've started the work on this project, as I'm frustrated with the backup/restore functionality of Signal (desktop (hackable), Android (should be better since v4.20), and iOS (missing completely!)).

Would it be in scope of this project to: ?


With regards to the Desktop backup and restore, I have figured a (manual) way which could well integrate in your CLI: https://github.com/signalapp/Signal-Desktop/issues/522#issuecomment-389101774 Eg.: signal-back backup <path to Signal's folder> <output file name.zip> signal-back restore <input desktop backup.zip> <path to Signal>

xeals commented 6 years ago

Most of these aren't on the radar currently, and probably won't be unless there's significant interest.

build extended functionality of Signal's backup & restore?

What are you interested in for this?

support migration from android/iOS/desktop

Last I was aware iOS didn't support backup/restores (not sure that it's changed), and desktop doesn't use the same format. This would likely be time consuming, and I'm not convinced there'd be a large group interest in it.

offer signal backup data in a widely supported format (your current plaintext XML, CSV)

Always looking for suggestions on what people might find useful, and what they want in a format (if not just a DB dump).

possibility to import from/to other clients (SMS, whatsapp, ...)

SMS is supported indirectly (by XML and other tools). No plans to support WhatsApp, Telegram, etc.

With regards to the Desktop backup and restore...

I could consider this, but it would potentially make things confusing (is this tool for Android or desktop? What works for which?), and desktop presents multi-platform issues that aren't even consistent per platform (i.e., file layout is different between Windows and Linux, and Linux has both native and Snap installs that have different file locations).

IslandFun73 commented 6 years ago

I followed the instructions for converting the Signal Messenger backup file and it appears to have been successful. The one part missing in the instructions was to rename the windows file with an ".exe" at the end so it runs as an executable.

I figured that out by instinct, I figure most people desperate enough to migrate out of Signal because of their recent problems with the newer versions (for me anything after 4.18.3) seems to have significant issues not importing the backups, or just crash repeatedly no matter if you use the GPS or sideload the APK. Anyhow, I digress...

I see that the output XML file is significantly smaller than the signal backup. Is that due to the bloated nature of the Signal storage method or is it just removing all media (e.g. music, photos, videos, etc.)? Is it just pulling in only plain text? Is there a way to get all the media imported as well? I think this would be a fantastic feature but then again I do not know enough about how all this stuff works to really understand what it is and is not capable of. Can you help a noob understand? Thanks!