xeals / signal-back

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

Usable output formats #2

Closed xeals closed 6 years ago

xeals commented 6 years ago

I've gotten the core body of the backup decoded, so I can start looking at what output formats are useful to people. I suspect an XML format compatible with stuff like SMS Backup & Restore might be popular. Other things that spring to mind are something IRC-esque where you can review conversations for interest's sake.

troygiorshev commented 6 years ago

A csv format might be nice, with columns for date and time, sender, receiver, and the message text. Especially for data analysis, many people are much more comfortable working with csv format than anything else. Obviously it wouldn't work for MMS messages, but those could be ignored, or just labelled as such.

xeals commented 6 years ago

CSV is doable. I can basically just export the entire SMS database as CSV, or I can translate some fields (e.g., protocol) into human-readable ones, or add them on, or remove others off. I'll throw up a few proposals when I get some time.

I suppose the main question I'd be wanting to answer with formats other than XML is: who is intending to read them? If it's for analysis, then pretty names and values probably aren't needed. If it's for people, then it might be worth making stuff readable.

Thanks for your contribution.

xeals commented 6 years ago

236af7d18de6e8e8d6975ed0d759e70fa4c94f81 adds basically dumping the SMS database to CSV, so give that a try. I'll add MMS as well when I get some more time. In the meantime, I'll close this issue in favour of individual tracking issues.

wfn commented 6 years ago

I'm considering implementing an additional HTML output format for signal-back; wonder if there's been any interest in that?

My intention would be to have a format which would show both SMS and MMS (where possible - e.g., images) messages on a per-conversation (individual or group chat) basis, collating both SMS and MMS. Motivation is to have an easily-user-searchable but also user-friendly format which would be able to show the full history in one go. (An old Signal Desktop client managed to lose its key, so lost conversation history on Signal Desktop, etc. etc.)

Not sure if the right place, but - a question: how easy would it be to collate both SMS and MMS messages into a single stream/output? I suppose (and had a quick / not thorough glance at the code) that the only way to collate/correlate messages of both types is through timestamps? (i.e., there's no field in message pointing to the previous message, etc.) Hope this question makes sense :) (it's probably the only way, and quite trivial, but was curious).

xeals commented 6 years ago

SMS Backup & Restore offers some in-browser formatting for XML backup files, which is why I haven't considered other styling before.

I believe the only ordering is through timestamps and thread IDs, but I'm not 100% certain that thread IDs are properly unique either.